Collegiate Sports Paging System

Softwarearchitekturdokument

 

Version 1.0

 

 

Revisionsprotokoll

Datum

Version

Beschreibung

Autor

30. November 1999 1.0 Erste Version  
Inhaltsverzeichnis

Einführung Seitenanfang

Zweck

Dieses Dokument bietet eine umfassende Übersicht über die Architektur des Systems und enthält verschiedene Architektursichten, um unterschiedliche Aspekte des Systems zu veranschaulichen. Es soll die wichtigen Entscheidungen hinsichtlich der Architektur, die bei der Entwicklung des Systems getroffen wurden, aufzeigen und vermitteln.

Umfang

Dieses Softwarearchitekturdokument findet Anwendung im Projekt Collegiate Sports Paging System, das im Rahmen der Kontextintegration für WebNewsOnLine entwickelt wird.

Definitionen, Akronyme und Abkürzungen

Siehe Glossar.

Referenzinformationen

  1. CSPS - Vision 1.0
  2. CSPS - Plan für das Anforderungsmanagement 1.0
  3. CSPS - Iterationsplan 1.0
  4. CSPS - Ergänzende Spezifikation 1.0
  5. CSPS - Anwendungsfall: Story freigeben 1.0
  6. CSPS - Anwendungsfall: Profil bearbeiten 1.0
  7. CSPS - Anwendungsfall: Gebühr mit Kreditkarte zahlen 1.0
  8. CSPS - Anwendungsfall: Berichte für Inserenten ausgeben 1.0
  9. CSPS - Anwendungsfall: Werbeinhalt bereitstellen 1.0
  10. CSPS - Anwendungsfall: Feedback abgeben 1.0
  11. CSPS - Anwendungsfall: Inhalt auf Website lesen 1.0
  12. CSPS - Anwendungsfall: Inhalt senden 1.0
  13. CSPS - Anwendungsfall: Seite senden 1.0
  14. CSPS - Anwendungsfall: Abonnieren 1.0

Darstellung der Architektur Seitenanfang

Dieses Dokument präsentiert die Architektur als eine Folge von Sichten: die Anwendungsfallsicht, die Prozess-Sicht, die Deployment-Sicht und die Implementierungssicht. Diese Sichten werden als Rational-Rose-Modelle dargestellt und verwenden die Unified Modeling Language (UML).

Ziele und Einschränkungen der Architektur Seitenanfang

Es gibt einige wichtige Anforderungen und Systemanforderungen, die eine große Bedeutung für die Architektur haben. Sie lauten wie folgt:

  • Die vorhandene Website von WebNewsOnLine stellt die meisten Inhalte für die Anzeige bereit. Eine Schnittstelle zu diesem System muss große Datenmengen bewältigen können.
  • Das vorhandene traditionelle Finanzsystem von WebNewsOnLine wird schließlich für die Rechnungsstellung an die Inserenten genutzt (dieser Punkt wird erst in einem späteren Release umgesetzt). Die Informationen zur Nutzung der Werbung müssen so beschaffen sein, dass sie an das System gesendet werden können.
  • Alle Funktionen müssen über einen der beiden handelsüblichen Webbrowser verfügbar sein.
  • Alle Kreditkarten- oder sonstigen Finanztransaktionen müssen gesichert übertragen werden.
  • Alle Leistungs- und Ladeanforderungen müssen, wie im Visionsdokument [1] und in der ergänzenden Spezifikation [7] festgelegt, bei der Entwicklung der Architektur berücksichtigt werden.

Anwendungsfallsicht Seitenanfang

Eine Beschreibung der Anwendungsfallsicht der Softwarearchitektur. Die Anwendungsfallsicht spielt eine wichtige Rolle bei der Auswahl der Szenarios und/oder Anwendungsfallgruppen, die Gegenstand einer Iteration sind. Sie beschreibt die Gruppe von Szenarios und/oder Anwendungsfällen, die wichtige, zentrale Funktionen repräsentieren. Ferner beschreibt die Anwendungsfallsicht die Gruppe von Szenarios, die einen großen Bereich der Architektur abdecken (d. h., viele Elemente der Architektur ausführen) oder einen spezifischen, sensiblen Punkt der Architektur hervorheben bzw. veranschaulichen.

Die Anwendungsfälle in diesem System sind unten aufgelistet. Anwendungsfälle in fetter Schrift sind wichtig für die Architektur. Eine Beschreibung dieser Anwendungsfälle finden Sie unten in diesem Abschnitt. 

  • Story freigeben
  • Auf Bannerwerbung klicken
  • Profil bearbeiten
  • Story ändern
  • Gebühr mit Kreditkarte zahlen
  • Berichte für Inserenten ausgeben
  • Feedback abgeben
  • Inhalt auf Website lesen
  • Öffentlichen Inhalt lesen
  • Story zurückweisen
  • Inhalt senden
  • Seite senden
  • Abonnieren

Die folgenden Diagramme veranschaulichen die Anwendungsfälle im System.

Abbildung, die im Inhalt beschrieben wird

Abbildung 1 - Anwendungsfälle für potenzielle Abonnenten

Abbildung, die im Inhalt beschrieben wird

Abbildung 2 - Anwendungsfälle für Abonnenten

Abbildung, die im Inhalt beschrieben wird

Abbildung 3 - Anwendungsfälle für Inserenten

Abbildung, die im Inhalt beschrieben wird

Abbildung 4 - Anwendungsfälle für aktuelles System

Abbildung, die im Inhalt beschrieben wird

Abbildung 5 - Anwendungsfälle für Pager-Gateway

Abbildung, die im Inhalt beschrieben wird

Abbildung 6 - Anwendungsfälle für Editoren

Beschreibungen wichtiger Anwendungsfälle

  1. Story freigeben
  2. Dieser Anwendungsfall tritt ein, wenn ein Editor eine Story zur Aufnahme in das Collegiate Sports Paging System freigibt. Einige Storys werden automatisch vom vorhandenen WebNewsOnLine-System weitergeleitet, andere erfordern die Intervention des Editors (weil das Thema nicht klar ist oder die Kategorien, zu denen die Story gehört, nicht klar sind). Dieser Ablauf wird auch verwendet, um Werbeinhalt, der übergeben werden soll, freizugeben.

  3. Profil bearbeiten
  4. Dieser Anwendungsfall tritt ein, wenn ein Abonnent seine Profildaten ändern oder ein neuer Abonnent sich registrieren lassen möchte.

  5. Gebühr mit Kreditkarte zahlen
  6. Dieser Anwendungsfall tritt ein, wenn ein neuer Abonnent seine jährliche Abonnementgebühr durch Angabe einer Kreditkartennummer und einer PIN zahlen möchte. Der Anwendungsfall kann auch verwendet werden, wenn ein vorhandener Abonnent seinen Vertrag verlängern möchte.

  7. Berichte für Inserenten ausgeben
  8. Dieser Anwendungsfall tritt ein, wenn ein Inserent im Collegiate Sports Paging System prüfen möchte, wie seine Werbeinhalte abgerufen werden. Der Inserent wählt das Format aus (Microsoft(r) Word(r), Microsoft(r) Excel(r) oder Browserfenster).

  9. Feedback abgeben
  10. Dieser Anwendungsfall tritt ein, wenn ein Systembenutzer (Inserent, Abonnent bzw. potenzieller Abonnent) einen Kommentar zum Service oder zur Website abgeben möchte.

  11. Werbeinhalt übergeben
  12. Dieser Anwendungsfall tritt ein, wenn ein Inserent Werbeinhalte (Bannerwerbung) an die Website übergeben und außerdem angeben möchte, welche Abonnentenprofile für die Anzeige verwendet werden sollen.

  13. Inhalt auf Website lesen
  14. Dieser Anwendungsfall tritt ein, wenn ein aktiver Abonnent oder ein nicht registrierter Benutzer eine Verbindung zum System herstellt, um Informationen anzuzeigen. Seiten werden dynamisch erstellt, um die Benutzerüberschriften, zu denen sie auf dem Pager benachrichtigt wurden, sowie allgemeine abonnierte Sportkategorien anzuzeigen.

  15. Inhalt senden
  16. Dieser Anwendungsfall tritt ein, wenn Inhalt an die vorhandene Website von WebNewsOnLine übergeben wird. Einige Storys werden für die Übertragung an das Collegiate Sports Paging System gekennzeichnet und gesendet, um Paging oder Anzeigen zu ermöglichen.

  17. Seite senden
  18. Dieser Anwendungsfall tritt ein, wenn neuer Inhalt an das Collegiate Sports Paging System übergeben wird. Dazu gehört die Lokalisierung der zu benachrichtigenden Abonnenten, das Formatieren der Seitennachricht und das Senden der Seite per E-Mail.

  19. Abonnieren
  20. Dieser Anwendungsfall tritt ein, wenn ein potenzieller Abonnent den Service abonnieren möchte. Der Benutzer wird über die Vertragsbedingungen benachrichtigt und kann, falls er diese akzeptiert, den Anwendungsfall aufrufen, um ein Profil zu editieren (Kategorien, die der Benutzer abonnieren möchte, Pager-Informationen, Kreditkartendaten etc.).

Logische Sicht Seitenanfang

Übersicht

Eine Beschreibung der logischen Sicht der Softwarearchitektur. Beschreibt die wichtigsten Klassen, ihre Organisation in Servicepaketen und Subsystemen sowie die Organisation dieser Subsysteme in Schichten. Beschreibt ebenfalls die wichtigsten Anwendungsfallrealisierungen, z. B. die dynamischen Aspekte der Architektur. Klassendiagramme können aufgenommen werden, um die Beziehungen zwischen Klassen, die für die Architektur wichtig sind, Subsystemen, Paketen und Schichten zu veranschaulichen.

Die logische Sicht des Collegiate Sports Paging System setzt sich aus 5 Hauptpaketen zusammen: 

  • Präsentation
    • Enthält Klassen für jedes der Formate, die die Akteure für die Kommunikation mit dem System verwenden. Es gibt Schnittstellenklassen, die folgende Aktionen unterstützen: Profil verwalten, Werbeinhalt übergeben, Berichte für Inserenten ausgeben, Story freigeben, Feedback abgeben, Abonnieren und Gebühren mit Kreditkarte zahlen.
  • Anwendung
    • Enthält Klassen für die wichtigen Verarbeitungsfunktionen im System.Es gibt Steuerungsklassen, die folgende Aktionen unterstützen: Werbeinhalte, Webinhalte und Profile verwalten, Abonnements verarbeiten, Gebühren mit Kreditkarte zahlen und Feedback abgeben.
  • Domäne
    • Enthält Pakete mit Klassen zur Unterstützung von Inhalten, Profilen, Abonnements sowie Unterstützungsklassen.
  • Persistenz
    • Enthält Klassen, mit denen spezifische Objekte im System persistent gespeichert werden. Beim gegenwärtigen Stand der Entwicklung werden nur Profile persistent gespeichert, möglicherweise wird die persistente Speicherung von Inhaltsobjekten zu einem späteren Zeitpunkt möglich sein (bei Auswahl eines im Paket enthaltenen Content-Management-Systems ist das eventuell überflüssig). 
  • Services
    • Enthält Klassen für Klassen auf Systemebene, die zu Verwaltungszwecken verwendet werden können - derzeit erfolgt die gesamte Verwaltung manuell.

Darstellung der logischen Sicht

Logische Sicht

Darstellung der logischen Sicht

Präsentationspaket

Darstellung des Präsentationspakets

Anwendungspaket

Darstellung des Anwendungspakets

Domänenpaket

Darstellung des Domänenpakets

Inhaltspaket

Darstellung des Inhaltspakets

Profilpaket

Darstellung des Profilpakets

Abbildung 2 des Profilpakets

Paket abonnieren

Darstellung der Paketabonnierung

Unterstützungspaket

 

Darstellung des Unterstützungspakets

Persistenzpaket

Prozess-Sicht Seitenanfang

In diesem Abschnitt wird die Aufteilung des Systems in Lightweight-Prozesse (einzelne Steuer-Threads) und Heavyweight-Prozesse (Zusammenfassungen von Lightweight-Prozessen) beschrieben. Fassen Sie den Abschnitt nach Gruppen von Prozessen, die kommunizieren oder interagieren, zusammen. Beschreiben Sie die Hauptmodi der Kommunikation zwischen Prozessen, z. B. Nachrichtenübergabe, Interrupts und Verknüpfungen.

An diesem Punkt des Designprozesses ist vorgesehen, dass ein einzelner Prozess Funktionen für das Collegiate Sports Paging System auf Serverebene bereitstellt. Threads für Anwendungsfunktionen sind Teil dieses Prozesses (Anwendungsfunktionen sind im vorherigen Abschnitt aufgelistet). Das Prozessdiagramm des Systems kann wie folgt angezeigt werden:

Darstellung der Prozess-Sicht

Deployment-Sicht Seitenanfang

In diesem Abschnitt werden eine oder mehrere physische Netzkonfigurationen (Hardware) für das Deployment und die Ausführung der Software beschrieben. Die Mindestanforderung für jede Konfiguration ist die Angabe der physischen Knoten (Computer, CPUs), die die Software ausführen, sowie deren Verbindungen zueinander (Bus, LAN, Punkt-zu-Punkt usw.). Geben Sie auch eine Zuordnung der Prozesse der Prozess-Sicht auf den verschiedenen physischen Knoten an.

Der CSPS-Server ist ein UNIX-Server. Das Clientsystem ist eine Einheit (höchstwahrscheinlich - jedoch nicht notwendigerweise - ein PC), die einen Webbrowser ausführen und über das Internet eine Verbindung zum CSPS herstellen kann. Das Pager-Gateway ist eine extern verwaltete Einheit, die von Paging-Services bereitgestellt wird. 

Darstellung der Deployment-Sicht

Implementierungssicht Seitenanfang

Die gesamte Serversoftware befindet sich in einer Schicht. Der Browserclient bietet eine zweite Zugriffsschicht.

Größe und Leistung Seitenanfang

Die Software kann gemäß Entwurf 200.000 Benutzer parallel unterstützen. Eine Skalierung über diesen Wert hinaus kann erreicht werden, wenn mehrere Pager-Gateway-Ebenen oder einfach weitere Pager-Gateway-Systeme in derselben Schicht bereitgestellt werden.

Qualität Seitenanfang

Die Software unterstützt, wie oben beschrieben, die vorhandenen Grafikstandards von WebNewsOnLine sowie die Schnittstellen zum vorhandenen WebNewsOnLine-Server. Außerdem stellt sie eine selbsterklärende Benutzerschnittstelle bereit.

Copyright  1987 - 2003 Rational Software Corporation