Projekt Vorgehen und Abwicklung: Aus der Sicht des Kunden.
Bei der Umsetzung und Implementierung unserer Projekte verwenden wir agile Methoden wie beispielsweise SCRUM. Für die Umsetzeng des Vorhabens kann mit dem Kunden ein agiler „Time & Material“ Vertrag oder auch ein Festpreisvertrag aufgesetzt werden. Bei der Entwicklung nach SCRUM wird die Implementierung in mehrere kurzen Phasen unterteilt (sogenannte Sprints), welche für gewöhnlich eine Laufzeit von 10 Tagen haben. Am Ende eines Sprints wird eine lauffähige Version der entwickelten Anwendung an den Kunden ausgeliefert, damit die aktuellen Änderungen von dem Kunden geprüft und abgenommen werden können.
Aufkommende Änderungswünsche (sogenannte Change Requests) werden in der Regel in einem nachfolgenden Sprint abgearbeitet. Gleichzeitig werden dabei die Aufgaben definiert, die in dem kommenden Sprint umgesetzt werden sollen. Unsere internen Prozesse zur Gewährleistung der Qualität sind dabei ebenfalls agil und werden innerhalb eines Sprints iterativ durchlaufen.
Innerhalb unseres Entwicklungsprozesses setzen wir außerdem auf verschiedene automatisierte Testverfahren. Hierzu zählen zum einen UI-Tests, welche nach jeder neuen Änderung in unserem Versionierungs-System ausgeführt werden. Zusätzlich setzen wir Unit-Tests ein, welche automatisch angestoßen werden, um die Richtigkeit unserer Implementierung zu gewährleisten.
Auf Source-Code Ebene: Kommentare auf Source-Code Ebene werden zwingend vorausgesetzt, wobei wir intern auf bewährte Coding-Conventions zurückgreifen und diese einsetzen.
Auf Ticket-Ebene: Jede zu erledigende Aufgabe in einem Sprint wird innerhalb eines Ticket-Systems erfasst und bearbeitet. Aktuell setzen wir Atlassian´s Jira als Ticket-System unserer Wahl ein. Jedes Ticket enthält eine genaue Beschreibung der umzusetzenden Anforderungen. Wenn am Ende des Arbeitstages ein Ticket nicht vollständig abgearbeitet werden kann, wird von dem jeweiligen Entwickler der aktuelle Stand der Arbeiten innerhalb des Tickets dokumentiert. Dazu gehören u. a. was bereits erledigt wurde, wie viel Zeit in die Bearbeitung geflossen ist, welche eventuellen Probleme dabei aufgetreten sind sowie mögliche Auswirkungen auf andere Aufgaben oder den aktuellen Sprint im Allgemeinen.
Dokumentation innerhalb eines Projekt-Wikis: Zusätzlich erfolgt die Dokumentation des Projektes innerhalb eines Projekt-Wikis. Hier werden zum einen Projekt-bezogenen Details festgehalten, wie beispielsweise die beteiligten Stakeholder, die Ziele, die Anforderungen und Spezifikationen sowie Beschreibungen ausgewählter Teile der Software-Architektur. Als Wiki-System verwenden wir das bewährte Atlassian´s Confluence.
Weitere Infos: