Best Practices
Weltweit scheitern jährlich ca. 80% aller Softwareprojekte.
Nur einige Gründe dafür sind:
- Nicht eingehaltene Termine
- Kosten, die das ursprünglich zur Verfügung stehende Budget übersteigen
- Fehlende Funktionalitäten im Endprodukt
- Der Kunde nicht das erhält, was er sich zu Beginn des Projektes vorgestellt hat
- Erfahrungen, die in Projekten gewonnen werden, müssen in Folgeprojekten berücksichtigt werden. Auf diese Weise können in der Vergangenheit begangene Fehler in der Zukunft vermieden werden, während positive Erfahrungen weiterhin angewandt und wenn möglich verbessert werden können.
- Im Softwareentwicklungsprozess muss die Vorgehensweise mit dem Unternehmen, der Unternehmenskultur, den Mitarbeitern und dem zu erstellenden Produkt harmonieren. Dabei kann es sich um eine Vorgehensweise wie RUP (Rational Unified Process), SCRUM oder XP (Extreme Programming) handeln. Die Entscheidung welche Vorgehensweise die geeignete ist, hängt von den oben genannten Faktoren ab.
- Die Architektur sowie das Design der Software muss sowohl mit der Geschäftslogik als auch mit der Umgebung auf der die Software betrieben wird abgestimmt sein
Während der Durchführung unserer Projekte kommen, je nach Phase des Projektes, entsprechende „Best Practices” zum Einsatz:
- Software Entwicklung
- Code notations and policies
- Transaktionshandling
- Persistenz (OR-Mapper wie etwa Hibernate oder JPA, aber auch JDBC)
- Dependency Injection
- Separation of concerns
- Reviews
- Qualitätssicherung
- Datenmigration
- Operations