Zitat.json – Software agil entwickeln: Die Projektidee
Das Projekt ist auf die Entwicklung der Schlüsselqualifikationen ausgerichtet. Ein handfestes Ergebnis (Ziel) ermöglicht ein bestimmtes Arbeiten und zeigt Fortschritte auf.
Agiler Software Entwickler ist man nicht einfach, sondern wird es.
Checkliste der erwarteten Resultate (Product Backlog)
BearbeitenDer Produktbesitzer hat seine Vorstellungen in einer Checkliste definiert. Als Entwickler übernehmen Sie die Verantwortung für das zu erstellende Produkt und geben dem Produktbesitzer laufend Rückmeldung über den Fortschritt der Realisierung.
Anforderung | |
---|---|
☐ | Datenmodell als ERM und SQL bereitgestellt |
☐ | 10 gültige Datensätze in der Tabelle citation vorhanden |
☐ | Zitate und Sprichwörtern vom selben Autor können nur einmal eingetragen werden |
☐ | Datenbank Benutzer mit Datenrechte eingerichtet |
☐ | PHP Script liefert einen zufälliger JSON codierten Datensatz |
☐ | JQuery JSON Script liefert einen zufälliger Datensatz auf der Einstiegsseite |
☐ | Schriftgrösse des Autor ist 15% kleiner als die Schriftgrösse des Zitats |
☐ | Statistik über die Anzahl der Ansichten (Hits) eines Zitats |
☐ | (Optional) Android App bzw. iPhone App zur Ansicht der Zitate |
☐ | (Optional) Python Script um ein Zitat des Tages auf Twitter (@zitatomat) zu veröffentlichen |
Architekturübersicht - Mal das Problem
BearbeitenDie Architektur der zu realisierende Anwendung wurde in einer Zeichnung festgehalten. Daraus können wir die eingesetzten Komponenten erkennen und Teilaufgaben aus dem Product Backlog (Anforderungen) definieren. Die Sprint Backlogs entstehen.
Inkrementelles Vorgehen - Die Sprint Backlogs
BearbeitenDie Anforderungen bzw. erwarteten Resultate des Produktbesitzers werden anhand ihrer Abhängigkeiten in eine Realisierungsreihenfolge übertragen. Die Anwendung wird in Teilsysteme abgegrenzt und Schnittstellen (Systemgrenzen) definieren genau, was innerhalb und ausserhalb des Teilsystems (Problemkreis) einzuordnen ist. Die einzelnen Teilsysteme können bei Bedarf, wiederum unterteilt werden. Rekursiv.
Die Komplexität reduzieren
Rahmenbedingungen und Vorgaben
BearbeitenFolgende Rahmenbedingungen und Vorgaben sind zu berücksichtigen.
Prozessdokumentation, Lerndokumentation (Sprint Review)
Bearbeiten- Durch die Prozessdokumentation kann sich ein Projektleiter ein Bild von den Entwicklungen in den verschiedenen Teilbereichen machen.
- Der Controller kann eine Ist- Analyse und einen Soll-Ist-Vergleich vornehmen.
- Projektmitarbeiter können sich über die Ziele und Besprechungsergebnisse informieren.
- Der Auftraggeber kann Entscheidungen im Projektverlauf nachvollziehen.
- Das Projektmanagement kann aus Problemen wertvolle Erkenntnisse ableiten.
Folgende Leitfragen werden im Prozessbericht beantwortet:
- Was habe ich seit dem letzten Mal gemacht?
- Was hat mich dabei behindert?
- Was werde ich bis zum nächsten Mal tun?
Typische Dokumente die zur Dokumentation dienen:
- Besprechungsprotokoll
- Lernjournal, Entwicklungsportfolio (Retrospektive)
- Start / Stop / Weiter, Lernmatrix
Durch den Prozessbericht werden Sie gefördert ihre Arbeitsmethoden und Vorgehensweisen zu analysieren.
Datenmodell für Zitate und Sprichwörtern
BearbeitenEin Schema, um die benötigten Informationen zu speichern, wurde mit dem Auftraggeber entworfen.
Die Zitate werden in einer Datenbank Tabelle (nicht normalisiert) mit Attributen abgelegt. Folgend die SQL Syntax zur Definition:
CREATE TABLE IF NOT EXISTS 'citation' (
'ID' INT NOT NULL AUTO_INCREMENT ,
'quote' VARCHAR(255) NOT NULL ,
'author' VARCHAR(255) NOT NULL ,
'updated' DATETIME NULL ,
'created' DATETIME NULL ,
PRIMARY KEY ('ID') )
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8
COLLATE = utf8_general_ci;