Ein Versandhändler für Büroartikel möchte eine neue Software für die durchgängige Abwicklung seiner Geschäftsprozesse implementieren.
Um die Abwicklung der Kundenbestellungen automatisieren zu können, soll ein Web-shop implementiert werden, welcher den Kunden eine Bestellung über das Internet ermöglichen soll.
Aufgabenstellung:
Die Modellierung des Lösungsdesigns erfolgt mit Hilfe der Modelliersprache UML 2.0 wobei folgende Diagramme erstellt werden:
1. Strukturdiagramme,
1.1 Klassendiagramm,
1.2 Objektdiagramm,
2. Verhaltensdiagramme,
2.1 Use-Case Diagramm,
2.2 Aktivitätsdiagramme,
2.3 Zustandsdiagramm,
2.4 Sequenzdiagramm.
I N H A L T S V E R Z E I C H N I S
0 Problemstellung
1 Strukturdiagramme
Klassendiagramm
1.1.1 Klassen (Attribute + Operationen)
1.1.2 Assoziationen
1.2 Objektdiagramm
2 Verhaltensdiagramme
2.1 Use Case - Diagramm
2.2 Aktivitätsdiagramm
2.3 Zustandsdiagramm
2.4 Sequenzdiagramm
0 Problemstellung
Ein Versandhändler für Büroartikel möchte eine neue Software für die durchgängige Abwicklung seiner Geschäftsprozesse implementieren.
Ausgangssituation:
Derzeit können Kunden Waren telefonisch oder per fax bestellen. Dabei werden die Telefonate von einer Hilfskraft entgegengenommen und in einem Auftragsformular erfasst. Ein Kundensachbearbeiter führt in der Folge die Aufträge aus, wobei die Auftragsdaten (Artikel und eventuell Stammdaten bei Neukunden oder Änderung von bestehenden Kundenstammdaten) aus dem Auftragsformular bzw. aus der Faxbestellung in das Warenwirtschaftssystem eingegeben werden. Für viele Waren sind Mindestbestände im Warenwirtschaftssystem hinterlegt deren Unterschreiten eine sofortige Nachbestellung beim jeweiligen Lieferanten auslöst. Deshalb kann der Versandhändler in den meisten Fällen die Waren noch am Tag der Bestellung oder am Folgetag an seine Kunden versenden.
Um das Einkaufsverhalten der Firmenkunden künftig besser analysieren zu können wurde eine Unterteilung der Kunden in Privatkunden und Firmenkunden vorgenommen.
Sowohl bei Privatkunden als auch bei Firmenkunden werden ausschließlich Kreditkartenzahlungen akzeptiert. Für beide Kundengruppen werden Rechnungen erstellt und an das Lager versendet als Vorgabe für das Packen der Ware. Im Lager werden die Aufträge kommissioniert und die abgefassten Artikelmengen von den jeweiligen Artikelbeständen im System abgebucht. Abschließend werden die kommissionierten Aufträge zusammen mit der Rechnung an die jeweiligen Kunden versendet.
Künftige Anforderung
Um die Abwicklung der Kundenbestellungen automatisieren zu können soll ein Web-shop implementiert werden welcher den Kunden eine Bestellung über das Internet ermöglichen soll.
Aufgabenstellung
Die Modellierung des Lösungsdesigns soll mit Hilfe der Modelliersprache UML 2.0 erfolgen wobei folgende Diagramme zu erstellen sind:
1. Strukturdiagramme
1.1 Klassendiagramm
1.2 Objektdiagramm
2. Verhaltensdiagramme
2.1 Use-Case Diagramm
2.2 Aktivitätsdiagramme
2.3 Zustandsdiagramm
2.4 Sequenzdiagramm
1 Strukturdiagramme
Klassendiagramm
Abbildung in dieser Leseprobe nicht enthalten
Zur Erstellung des Klassendiagramms empfiehlt sich eine Dokumentanalyse. Aus der oben beschriebenen Problemstellung geht die Verwendung folgender Dokumente hervor:
Fax – Bestellformular (bei Kundenbestellungen durch Fax)
Auftragsformular (bei Kundenbestellungen via Telefon)
Rechnungen
1.1.1 Klassen (Attribute + Operationen)
Kunden, Firmenkunden und Privatkunden
Es wird davon ausgegangen dass das Fax - Bestellformular und das Auftragsformular dieselben Informationen beinhalten. Aus diesen beiden Formularen kann die Klasse „Kunde“ entnommen werden und besitzt die Attribute: Nummer, Adresse, Email, Telefon, Fax. Auch der Name kann aus diesen Formularen entnommen werden, jedoch soll für Firmenkunden anstelle des bei Privatkunden zu verwendeten Attributs name ein Attribut mit der Bezeichnung ansprechpartner verwendet werden. Zusätzlich wird bei Firmenkunden der Firmenname abgespeichert. Um dieses Problem zu lösen wird eine Generalisierungsstruktur verwendet welche durch den nicht ausgefüllten Pfeil dargestellt ist. Die gemeinsamen Attribute werden in die (abstrakte) Oberklasse „Kunde“ (gekennzeichnet durch die kursive Beschriftung der Klasse „Kunde“) eingetragen, die jeweiligen spezifischen Eigenschaften jeweils in die (konkrete) Unterklasse Firmenkunde oder Privatkunde. Die Überdeckung dieser Generalisierungsstruktur ist „complete“ (mindestens 1) und „disjoint“ (maximal 1).
Damit der Verkäufer beim Öffnen des Kundenfensters auf einen Blick sieht, ob es sich um einen „guten“ Kunden handelt, wird zusätzlich der Gesamtumsatz eines Kunden angezeigt, der sich aus der Summe der Gesamtbeträge aller Aufträge dieses Kunden berechnet. Die Zugehörigkeit dieses abgeleiteten Attributs (Abgeleitete Attribute haben das Präfix „/“) zur Klasse wird durch den Rollennamen „bestellungen“ spezifiziert.
Das Verhalten dieser Klasse wird durch die öffentlichen Operationen „bestellen“ und „bezahlen“ festgelegt.
Klasse: Auftrag
Aus dem Rechnungsformular lässt sich die Klasse Auftrag mit den Attributen nummer, bestelldatum, rechnungsdatum, bearbeiter und kreditkartennummer ableiten. Da die Modellierung der Klasse aus der Sicht des Verkäufers (Versandhändler) erfolgt wird diese Klasse mit „Auftrag“ bezeichnet da für den Verkäufer ein Auftrag vorliegt (während für den Kunden gleichzeitig eine „Bestellung“ vorliegt).
Das Attribut gesamtbetrag ist ein von der Klasse „Position“ abgeleitetes Attribut dass sich aus der Summe der Gesamtpreise aller Positionen berechnet. Auch das Attribut enthalteneMwSt ist ein von der Klasse „Position“ abgeleitetes Attribut. Der Mehrwertsteuerbetrag ist in der Rechnung als Gesamtbetrag für alle Posten zusammen anzugeben und nicht etwa für alle Posten einzeln.
Für die Artikel des Shops soll der Mehrwertsteuersatz von 20 % verwendet werden (Annahme: es werden ausschließlich waren mit einem Mehrwertsteuersatz von 20 % vertrieben). Da dieser Attributwert für alle Artikel gleich ist, wird die Mehrwertsteuer als Klassenattribut vom Typ Integer modelliert und gemäß UML durch Unterstreichen gekennzeichnet.
Die Operationen erfassen, ändern, löschen, ersteleListe, druckeRechnung sind zu implementieren.
Klasse: Position
Bei der Klasse Position handelt es sich um eine Assoziationsklasse: Jeder Auftrag bezieht sich auf mehrere Artikel. Umgekehrt kann ein Artikel in mehreren Aufträgen enthalten sein. Weiters ist für jeden bestellten Artikel die gewünschte Anzahl und der (Einzel-)preis und der Gesamtpreis festzuhalten da diese Werte auf der Rechnung anzuführen sind. Diese Daten können weder dem Auftrag noch dem Artikel zugeordnet werden, sondern hängen an der Assoziation. Die Assoziationsklasse ist im Diagramm oben allerdings bereits als eigenständige Klasse mit 2 Assoziationen dargestellt.
Das Attribut Gesamtpreis ist ein abgeleitetes Attribut dass sich aus der Multiplikation der beiden anderen Klassenattribute (Anzahl * Preis) errechnet.
Die Operation erfassen ist zu implementieren.
[...]
- Quote paper
- Mag. Gernot Sailer (Author), 2009, Modellierung eines Webshops für ein Versandhandelsunternehmen mit UML 2.0, Munich, GRIN Verlag, https://www.grin.com/document/201788