Warenwirtschaftssystem mit Webshop und DB-Anbindung
Aufgabe
Mit dem ER-Modell aus Abschnitt ERM als Grundlage wird
eine Warenwirtschaft mit Webshop entwickelt. Für interne Benutzer
(Sachbearbeiter) und externe (Kunden) gibt es jeweils eine eigene
WWW-Schnittstelle, d.h. eine eigene Startseite:
- intern: Erfassung und Listen von Artikeln, Kunden, Aufträgen, Positionen;
Auswertungen wie Umsatz pro Monat, pro Artikel, pro Kunde usw.
- extern: Katalog, Warenkorb, Kundenregistrierung und Login, Bestellung
Wenn das Grundprogramm implementiert ist, gibt es folgende
Möglichkeiten für die Erweiterung:
- Listen wahlweise auch im CSV Format (comma separated value, für Import in Spreadsheet)
- Listen zweidimensional, z.B. Umsatz pro Monat und Artikel
- intern: Lieferungen, Zahlungen
- extern: Katalog nach Artikelgruppen, Bestellhistorie, Artikelempfehlungen
- Berechtigungsprüfung für alle Systembenutzer mit Hilfe von Rollen
Umsetzung
- Datenmodell: ERM, Prozeßmodell: Flußdiagramm
- Die Datenbanktabellen werden in Mysql interaktiv angelegt.
Die WWW-Schnittstelle wird mit JSP und JDBC realisiert.
- Alle Dateien in ein Verzeichnis, unterhalb www/, zB www/shop/
- Namenskonventionen:
- DB: Tabellennamen und Feldnamen in Kleinbuchstaben;
Fremdschluesselfelder bekommen den Namen der referenzierten Tabelle
- Java: nach allgemeiner Java-Namenskonvention
- Klassen: Anfang gross, Rest klein
- Methoden: alles klein
- Mehrere Woerter: kein Trennzeichen; Folgewort Anfang gross, klein weiter
- Dateien: Kleinbuchstaben, Endung .jsp (auch wenn keine dynamischen
Elemente enthalten)
- Abkuerzungen: OK soweit aus Zusammenhang verstaendlich
- Keine Sonderzeichen, keine Umlaute
- Nützlich sind gemeinsame Kopf- oder Fußzeilen mit überall verfügbaren Optionen
- Für die internen Benutzer (Sachbearbeiter, Manager, ...) gibt es folgende Komponenten:
- Für die Tabellen artikel, kunde, auftrag und aufpos werden Erfassung
und Listen über WWW implementiert.
- Die Auftragsliste zeigt auch die dem jeweiligen Auftrag zugeordneten Positionen.
- Auswertungen Umsatz nach Kunde, nach Artikel, pro Monat
usw. werden hinzugefügt.
- Alle Möglichkeiten zum Unterlegen von Werten mit Links
werden ausgeschöpft, z.B. in Kundenliste:
Aufträge des betreffenden Kunden.
- Für die externen Benutzer (Kunden) gibt es folgendes:
- Katalog (Artikelliste ohne Lagerbestand, aber mit Verfügbarkeitsangabe, d.h.
Markierung wenn Lagerbestand gleich Null)
- Warenkorb (DB Tabelle)
- Registrieren von neuen Kunden
- Kundenlogin (session attribute)
- Bestellen