Hallo zusammen,
mich würde Euer Feedback zu folgendem Projektantrag für die Anwendungsentwicklung (IHK Köln) interessieren:
1. Projektbezeichnung (Auftrag/Teilauftrag):
Entwickelt werden soll ein Layoutkonfigurator zur Erweiterung des hauseigenen Produktes „$produktname“ um eine Funktionalität zur Erstellung und Bearbeitung von individuellen Dokumentenlayouts (z.B. für Rechnungen oder Gutschriften) durch den Kunden selbst.
Der Kunde soll mit Hilfe des Konfigurators in die Lage versetzt werden, selbständig die Erstellung einfacher Layouts auf Basis verschiedener Auswahlmöglichkeiten vornehmen zu können. Anpassbar müssen z.B. das Logo und dessen Platzierung, das Grundlayout sowie die Positionstabelle und deren Spalten sein, was erfahrungsgemäß den meist nachgefragten Kundenwünschen entspricht. Darüber hinaus bedarf es einer Möglichkeit Fließtexte einfügen und darin verschiedene Variablen (je nach Layouttyp z.B: „Rechnung“ oder „Gutschrift“) verwenden zu können.
1.1 Ausgangssituation
Beschreibung der derzeitigen Ausgangssituation (IST-Zustand)
“$produktname” ist eine auf die Bedürfnisse von Werbenetzwerken optimierte Webapplikation zur Rechnungslegung und wird als Software-as-a-Service (SaaS) angeboten.
Die Erstellung und Bearbeitung von Dokumentenlayouts ist bisher ein manueller Prozess, der zwischen 20 Minuten und 6 Stunden pro eingerichtetem Kunden beansprucht. Die Dokumente werden dann auf Basis mehrerer hinterlegter HTML-Vorlagen durch eine bereits vorhandene Renderingengine als PDFs generiert.
1.2 Zielsetzung
Was soll nach Abschluss des Projektes erreicht/umgesetzt sein? (SOLL-Zustand)
Primäres Ziel ist die Einsparung der bisher für jeden Neukunden anfallenden Zeitaufwände durch das Angebot eines Self-Service Tools zur Dokumentenlayout-Anpassung.
Sekundär kann durch die Umsetzung des Features ebenfalls ein Wettbewerbsnachteil gegenüber der Konkurrenz eliminiert werden.
1.3 Konsequenzen bei Nichtverwirklichung
Was wären die Konsequenzen, wenn das Projekt nicht wie geplant umgesetzt werden könnte? (ggf. Einfluss auf nachfolgende oder sich auf dieses Projekt beziehende Projekte?)
Bei Nichtverwirklichung müssten weiterhin für jeden Kunden die Dokumentenlayouts aufwändig zunächst abgestimmt und dann händisch angelegt werden sowie bei Bedarf geändert werden, was weiter wertvolle Entwicklerressourcen binden würde. Ebenfalls würde die Neukundenakquise erschwert bleiben weil die Konkurrenz dieses Feature weitaus besser umgesetzt hat und offensiv mit den Vorteilen für die Nutzer wirbt.
2. Projektumfeld/Rahmenbedingungen
organisatorisch + technisch
Es handelt sich um ein wichtiges internes Projekt zur Funktionserweiterung der Webapplikation ‘$produktname’ (ein SaaS-Projekt) im Rahmen der kontinuierlichen Produktplanung und -entwicklung. Entwickelt wird $produktname mittlerweile auf Basis des Laravel-Frameworks in der Skriptsprache PHP. Als Datenbanken kommen MySQL und SQLite3 zum Einsatz. Jedem Entwickler steht eine lokale Docker Entwicklungsumgebung zur Verfügung.
Der Konfigurator muss die konfigurierten Layouts im HTML-Format ausgeben können, um diese reibungslos in den existierenden Rendering-Prozess einbinden zu können.
Das Entwicklerteam des Produktes besteht zur Zeit aus zwei Entwicklern, einem Produkt Manager und einem technischen Leiter (Herr X, ebenfalls Entwickler), durch welchen die Durchführung dieses Projektes begleitet wird und der als Ansprechpartner bei auftretenden Problemen jederzeit zur Verfügung steht. Interner Auftraggeber ist der Produkt Manager (Herr Y).
Projektplanung/Projektphasen/geplante Arbeitsschritte inklusive Zeitplanung
ggf. inklusive Angabe der Meilensteine
1. Analysephase (5.5 Std)
1.1 Lastenheft (zugeliefert) analysieren 2.0 Std.
1.2 Ist-Analyse 2.0 Std.
1.3 Wirtschaftlichkeitsprüfung 1.5 Std.
2. Definitionsphase (7.5 Std)
2.1 Grobkonzept / Pflichtenheft erstellen + abstimmen 4.5 Std.
2.2 Projektplanung inkl. Wahl des Vorgehensmodells 1.5 Std.
2.3 Erstellen eines Testkonzeptes 1.5 Std.
3. Entwurfsphase (10.5 Std)
3.1 Erstellen eines Feinentwurfes (Datenmodell, GUI Mockups, etc.) 7.0 Std.
3.2 Testfälle entwerfen 2.0 Std.
3.3 NOCH OFFEN 1.5 Std.
4. Implementierungphase (13.5 Std)
4.1 Implementierung Backendfunktionalität 5.5 Std.
4.2 Implementierung Frontend 8.0 Std.
5. Qualitätssicherungs- und Testphase (10.5 Std)
5.1 Implementierung von automatischen Tests 5.0 Std.
5.2 Code Review 1.5 Std.
5.3 Manuelle Systemtests 4.0 Std.
6. Abnahme- und Einführungsphase (2.5 Std)
6.1 Übergabe an und Abnahme durch Projektleitung 1.0 Std.
6.2 Schulung für Produkt-Support-Mitarbeiter 1.0 Std.
6.3 Deployment 0.5 Std.
7. Projektabschluss- und Dokumentationsphase (16 Std)
7.1 Erstellung einer englischsprachigen Benutzerdokumentation 2.0 Std.
7.2 Projektbericht erstellen 11.0 Std.
7.3 Präsentation vorbereiten 3.0 Std.
8. Puffer 4.0 Std.
SUMME 70.0 Std.
4. Dokumentation/technische Unterlagen
Welche technischen Unterlagen planen Sie ihrer Dokumentation später beizufügen?
Projektbericht
Wirtschaftlichkeitsprüfung
Projektablaufplan
Lastenheft (durch Projektleitung zugeliefert!) und Pflichtenheft
Ist-Analyse
GUI Mockups
Quellcode-Auszüge
Benutzerdokumentation (inkl. Screenshots des User Interfaces)
Abnahmeprotokoll
Testkonzept
Testprotokolle
Unsicher war ich mir, ob ich im Feinentwurf auch UML-Diagramme anfertigen soll und diese dann unter 4. aufführen soll - ich bin mir nicht sicher ob ein Klassendiagramm z.B. Sinn macht wenn es nur einen Controller und ein vlt. ein Model gibt. Ebenfalls fehlt mir in der Entwurfsphase etwas um 1,5 Std zu füllen, wenn ich die Zeiten nach der Prozentmethode wie von meiner IHK vorgeschlagen verteile.. Ich plane übrigens, mit dem Wasserfallmodell umzusetzen.
Beste Grüße,
jah