Zum Inhalt

Anforderungen an die Webanwendung

Hinweis

Die Anforderungen sind aus Sicht des Pizzaservice beschrieben. Wenn Sie einen eigenen Webshop entwickeln, dann müssen Sie die Anforderungen entsprechend übertragen (bspw. kann anstelle der Bäckerseite eine Versandabteilungs- oder Kommissionierungsseite etc. erstellt werden). Die Anforderungen hinsichtlich Aufbau und Funktionsweise gelten dann analog für die Seiten des eigenen Webshops.

Aufbau der Webanwendung

Die Webanwendung soll folgende vier Webseiten sowie einen API-Endpunkt umfassen:

  • Bestellung
  • Kunde
  • Pizzabäcker
  • Fahrer
  • StatusApi

Die Webanwendung soll mit standardkonformem HTML5 und CSS umgesetzt werden.

Als Webserver wird Apache eingesetzt und als Datenbank MariaDB mit phpMyAdmin als grafischer Oberfläche.

Für die PHP-Entwicklung muss das EWA_Framework (siehe Termin 2: Dynamische Webseiten, MVC-Architektur, Routing & Datenbanken) verwendet werden. Dieses basiert auf der MVC-Architektur.

Die Abnahme erfolgt auf Ihren Laptops.

Funktion der einzelnen Seiten

Die folgende Designskizze zeigt lediglich den groben Aufbau, die Inhalte und die Bedienelemente der zu entwickelnden Webseiten. Es handelt sich nicht um ein finales Layout – die Seiten müssen also nicht exakt so aussehen, sondern sollen sich nur inhaltlich und funktional daran orientieren.

Zu entwickeln sind vier getrennte Webseiten: Bestellung, Bäcker, Kunde und Fahrer.

Achtung: Designskizze - nur Funktionen, kein Layout!

  • Pizzabestellung

    Hier kann der Kunde gewünschte Pizzen aus der Speisekarte auswählen und in einen Warenkorb übernehmen.

    Es wird der Preis der Bestellung angezeigt und es kann eine Lieferadresse angegeben werden.

    Pizzen können wieder aus dem Warenkorb gelöscht werden.

    Hier wird die Bestellung schließlich abgeschickt.

  • Kunde

    Hier kann ein Kunde sehen, in welchem Zustand seine Pizzen sind (bestellt, im Ofen, fertig, unterwegs).

    Er sieht nur seine Bestellung – und keine Aufträge von anderen Kunden.

    Der Status jeder Pizza wird in Echtzeit aktualisiert, ohne das man die Seite neu laden muss.

  • Pizzabäcker

    Hier werden die bestellten Pizzen angezeigt. Der Pizzabäcker kann den Status für jede Pizza von "bestellt" auf "im Ofen" bzw. "fertig" setzen.

  • Fahrer

    Hier werden Bestellungen mit den einzelnen Pizzen, Gesamtpreis und Lieferadresse angezeigt. Der Fahrer kann den Status der Lieferungen verändern. Eine Lieferung ist entweder "fertig", "unterwegs" oder "geliefert".

    Eine Bestellung taucht erst beim Fahrer auf, wenn alle zugehörigen Pizzen fertig sind.
    Ausgelieferte Bestellungen werden aus der Datenbank gelöscht.

Sonstige Anforderungen

  • Es werden nur Bestellungen akzeptiert, die mindestens einen Artikel enthalten und bei denen die Lieferadresse nicht leer ist.

  • Das Einfügen einer Pizza in den Warenkorb soll über einen Klick auf das Pizzasymbol in der Speisekarte erfolgen

  • Wenn eine neue Pizza in die Datenbank mit den angebotenen Pizzen eingetragen wird, so wird diese nach dem Neuladen der Bestellseite angezeigt und die Preisberechnung des Warenkorbs funktioniert ohne Änderungen am Code.

  • Alle Seiten verwenden ein responsives Layout und passen ihre Darstellung für schmale Handybildschirme an.