Zitat.json – Software agil entwickeln: Die Projektidee

Aus Wikibooks

▵ Inhaltsverzeichnis

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)[Bearbeiten]

Der 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[Bearbeiten]

Die 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.

Architekturübersicht - Mal das Problem

Inkrementelles Vorgehen - Die Sprint Backlogs[Bearbeiten]

Die 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[Bearbeiten]

Folgende 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[Bearbeiten]

Ein 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;