Unsere agile Vorgehensweise zur erfolgreichen Entwicklung Ihrer Webseite, mobilen App oder individuellen Software

 
 
 

Unsere Best Practice für eine gute Softwareentwicklung


Konzeptionsphase


Kennenlernen

Als erstes bekommen Sie von uns einen kurzen Fragebogen, der die wichtigsten Rahmenbedingungen Ihres Projekts abfragt. Anschließend werden wir bei einer gemeinsamen Telefonkonferenz oder Webex die wichtigsten Aspekte besprechen. Dies ist kostenlos und unverbindlich.

Anforderungsaufnahme

Bei der Anforderungsaufnahme werden folgende Dinge identifiziert und beschrieben:

  • Geschäftliche Ziele des Projektes und der Software
  • Endbenutzer und Schlüsselpersonen
  • Funktionale Anforderungen
  • Nichtfunktionale Anforderungen
  • Schnittstellen
  • Allgemeine IT-Anforderungen
  • Anforderungen im Hinblick auf die Einführung, Implementierung und Dokumentation

Die Anforderungsaufnahme und Konzeptausarbeitung ist kostenpflichtig. Vorher wird Ihnen ein entsprechendes Angebot vorgelegt.

Konzept

Wenn wir alle Anforderungen dokumentiert haben, erstellen wir ein Dokument (Spezifikation), welches die oben genannten Anforderungen beschreibt. Die genaue Definition dieser Anforderung ist sowohl für die spätere Umsetzung als auch für eine realistische Aufwandschätzung notwendig. In der Regel dauert die Ausarbeitung eines solchen Konzeptes 4-6 Wochen. Während dieser Phase werden wir sehr oft Rückfragen stellen und mit Ihnen die besten Lösungswege besprechen, wobei wir Sie auch über Alternativen informieren und über deren Vor- und Nachteile aufklären.

Angebot

Nachdem die Spezifikation fertiggestellt wurde, kann der Aufwand Ihres Projektes geschätzt werden. Sie erhalten dann ein individuelles Angebot für Ihre individuelle Software, die alle oben genannten Anforderungen berücksichtigt.

Realisierungsphase


Entwicklung

Die Entwicklungsarbeiten werden mit der Scrum-Methode umgesetzt:

  • Product
    Backlog
  • Sprint
    Backlog
  • Sprint
    (2 weeks)
  • Increment
    of software

Im ersten Schritt werden die Anforderungen, die in der Konzeptionsphase definiert wurden in Aufgaben „übersetzt“, sog. Tasks. Diese Aufgaben sind in drei Kategorien unterteilt, wobei die Detailtiefe der Aufgabe ansteigend ist.

  1. Meilensteine (Scrum Epics)
  2. Anwendungsszenarien (Scrum User-Stories)
  3. Aufgaben (Scrum Tasks)

Die Aufgaben werden im JIRA definiert und verwaltet. Die Zusammenstellung der Aufgaben nennt man Product Backlog. Der Projektleiter (Project Owner) definiert die Prioritäten der Aufgaben und erstellt gemeinsam mit dem Entwicklerteam das Sprint Backlog.

Die sog. Sprints sind Abschnitte, die typischerweise 2 Wochen andauern, und die sich aus der Planung, Entwicklung und Lieferung der umgesetzten Funktionalität zusammensetzen. Die wichtigsten Vorteile der angewandten SCRUM Methode sind folgende:

  • Geschwindigkeit der Entwicklungsarbeiten
  • Bessere Kontrolle der Arbeitsfortschritte
  • Minimierung von Missverständnissen bei der Umsetzung der Benutzeranforderungen

Der Prozess der Softwareerstellung setzt intensive Tests der einzelnen Funktionen voraus, die in jedem Sprint geliefert werden. Jede der vom Programmierteam gelieferten Funktionalitäten muss vom Test-Team bestätigt werden. Im nächsten Schritt werden die Prozessfunktionalitäten durch ein Team von Analytikern getestet und schließlich zur Präsentation für den Kunden freigegeben.

Projektstatus live mitverfolgen

Für die erfolgreiche Erstellung von Software, egal ob Internetseite, Softwareanwendung oder Mobile App, ist die richtige Kommunikation eines der wichtigsten Faktoren. Deswegen versuchen wir über die komplette Projektlaufzeit einen kurzen Draht zu Ihnen zu haben. Übersichtshalber kann das in drei Kategorien aufgeteilt werden:

  • E-Mails und Telefonate – Über diese Kanäle werden immer bei Bedarf Rückfragen geklärt. In wichtigen Fällen sind wir auch außerhalb der Bürozeiten zu erreichen ;)
  • Webex-Konferenzen – Webex ist ein Tool für Online-Meetings und Videokonferenzen. Dieses nutzen wir, wenn größere Dinge besprochen werden müssen und falls zum Beispiel eine Bildschirmübertragung bzw. -präsentation notwendig ist.
  • Abnahme von Meilensteinen – Analog zum Projektzeitplan der im Angebot in Meilensteine aufgeteilt wurde, werden Webex-Konferenzen abgehalten um Ihnen den abgeschlossenen Meilenstein zu präsentieren und von Ihnen als fertiggestellt erklärt zu bekommen.
  • Projektstatus selbstständig verfolgen – Als Kunde von Pumox erhalten sie Einwahldaten in den Log-In Bereich um den Projektstatus live mitzuverfolgen. Über eine Schnittstelle zu unserem internen Jira-System erhalten Sie Rund um die Uhr Einblicke in den Projektfortschritt und an welchen Aufgaben aktuell gearbeitet wird. Darüber hinaus hinterlässt der unser Projektleiter wöchentlich eine Nachricht über den Projektstatus und erstellt für Sie Notizen welche Informationen noch von Ihnen nötig sind. Zudem werden Sie über wichtige Mitteilungen automatisch vom System per Mail informiert.

Testphase & Produktivsetzung


In den meisten großen Projekten gibt es drei Umgebungen für die Software

Entwicklungsumgebung

Die Entwicklungsumgebung ist in der Regel die Umgebung auf der die Entwickler der Pumox arbeiten. Dort werden kontinuierlich Tests während der kompletten Dauer der Realisierungsphase durchgeführt. Oft werden an dieser Stelle Demoversionen oder Prototypen vorbereitet, die Sie schon während der Realisierungsphase mitverfolgen können. Bei Pumox kommt die TDD-Methode (Test Driven Design) zum Einsatz. Der Quellcode wird mit Einheits- und Integrationstests versehen, welche dann automatisiert durch unsere CI-Server (Continuous Integration) ausgeführt werden. Somit wird gewährleistet das neue Funktionalitäten nicht die Funktionsweise der bestehenden Module beeinträchtigen. Zusätzlich überprüfen alle beteiligten, Entwickler, Grafiker, Tester und Auftraggeber laufend die umgesetzten Arbeiten. So dauert es etwas länger, bis das Projekt zur eigentlichen Testphase kommt, der Vorteil ist allerdings, dass die Funktionalitäten in allen Entwicklungsphasen von mehreren Personen getestet werden und somit eventuelle Fehler vermieden werden können.

Testumgebung

In den meisten Fällen stellt der Auftraggeber die Testumgebung bereit, wobei unter Umständen diese auch von der Pumox bereitgestellt werden kann. Die Testumgebung sollte im Idealfall eine Kopie der Produktivumgebung sein. Wenn die Software „fertig“ programmiert wurde, wird Sie zunächst auf die Testumgebung gespielt (kann auch laufend geschehen). Dort wird die Software unter realen Bedingungen von Ihnen auf Konformität mit dem Angebot/Konzept geprüft. Dies geschieht je nach Projekt laufend oder zum Abschluss. Während der Testphase können Sie Korrekturen melden.

Produktivsetzung

Nach der Einführung eventueller Korrekturen wird das System produktiv geschaltet. Auf der Produktivumgebung erfolgt die Projektabnahme und ein Abnahmeprotokoll wird unterzeichnet. Im Anschluss tritt ein Wartungsvertrag in Kraft, damit Sie weiterhin die Software einwandfrei nutzen können.

Sie möchten mehr über unsere individuelle Softwareentwicklung erfahren? Wir rufen Sie gerne zurück!