Jörg Jackisch -

Für viele Unternehmen, die ihre Webanwendungen mithilfe von PHP umsetzen, steht die Qualität meist an zweiter Stelle. Doch das widerspricht allen Grundsätzen der Programmierung.

PHP besitzt nach einer Umfrage von W3Techs bei den serverseitigen Programmiersprachen einen bestätigten Marktanteil von mehr als 80 Prozent. Dabei benutzen viele Unternehmen die Skriptsprache noch eher wie eine kleine, nicht ernstzunehmende Sprache, mit der man einen schnellen Hotfix direkt auf der produktiven Infrastruktur machen kann, ohne direkte Deployment-Mechanismen zu durchlaufen oder auf irgendeine Art von Qualität zu achten.

Für viele Unternehmen, die ihre Webanwendungen mithilfe von PHP umsetzen, steht die Qualität meist an zweiter Stelle. Das widerspricht allen Grundsätzen der Programmierung, wie Wartbarkeit, Erweiterbarkeit und natürlich Sicherheit. Meiner Meinung nach ist der Grund dafür jedoch nicht, dass das alles nicht gewünscht ist – denn diese Grundsätze sollten in der Natur eines jeden Entwicklerteams liegen. Das Ziel jedes Entwicklerteams ist es doch, den Programmcode mit möglichst der höchsten Qualität zu erstellen und dennoch die meist sehr engen Releasezeitpunkte einzuhalten.

Ein gutes Beispiel dafür sind Start-up-Unternehmen, die mit dem Dotcom-Hype in den letzten zehn Jahren extrem schnell gewachsen sind. Diese Unternehmen sind immer wieder getrieben durch den Druck, dem Wachstum von Umsatz und Unternehmen gerecht zu werden.

Artikelserie

Teil 1: Aufbau einer exemplarischen Toolchain
Teil 2: Konfiguration der Toolchain
Teil 3: Der komplette Deployment-Prozess

Oft ist es genau bei diesen Unternehmen der Fall, dass sie auf vorhandene Fehler oder Fehlkonfigurationen sofort reagieren müssen. Dieses Szenario bildet diesen Teufelskreis ab: Die Bugfixes für die Fehler, die meist just in Time behoben werden müssen, durchlaufen keinen Qualitätsprozess. Daraus resultieren genau diese Fehler – denn sie entstehen dadurch, dass es keinen Qualitätsprozess gibt, häufig noch nicht einmal eine Art von Testing, geschweige denn Code Reviews. Häufig werden auch keine erprobten Methoden angewandt, wie Pair Programming, bei der mehrere Personen zeitgleich auf den Programmcode schauen und ihn nach gewissen Richtlinien bewerten und verbessern.

Ein anderer Grund für diese fehlenden organisatorischen und strukturellen Probleme ist der, dass es oftmals unbekannt ist, wie man mit der serverseitigen Programmiersprache PHP einen strukturierten und qualitätssicheren Entwicklungsprozess abbildet. Eine Ursache dafür sind häufig fehlende Fachkräfte, die zum einen die Erfahrung mitbringen und zum anderen genau wissen, wie man die speziellen Werkzeuge und Programme so einsetzt, dass sich damit alle Projektbeteiligten genau auf Ihre spezielle Projektsichtweise fokussieren können.

Wenn man Erfahrungen mit projektbeteiligten Personen austauscht, fällt häufig auf, dass in der Regel viele Werkzeuge und Programme zwar als Keywords bekannt sind und auch irgendwann rudimentär benutzt oder ausprobiert wurden. Sie wurden aber wieder fallen gelassen, da man nicht das Wissen und die Fähigkeiten besaß, mit dem kompletten zur Verfügung stehenden Technologie-Stack sinnvoll zu arbeiten und umzugehen. Meist sind es Gruppen innerhalb der Projektbeteiligten, die ein paar Programme oder Tools einsetzen, um für ihren isolierten Bereich eine prozessuale Bereicherung herbeizuführen; das ist aber in der Regel ohne große Nachhaltigkeit. Es sollte letztendlich ein Prozess geschaffen werden, der dafür sorgt, dass sowohl Entwickler und Tester als auch Product Owner und Manager einen strukturierten und sinnvollen Prozess zur Verfügung haben. Damit erreichen alle Projektbeteiligten das wichtige Ziel, das gegebene Projekt erfolgreich, mit höchster Sicherheit und höchster Qualität zum genannten Releasedatum erfolgreich umzusetzen.

In den folgenden drei Ausgaben dieses Magazins werde ich gezielt darauf eingehen, sowohl die organisatorischen als auch die technischen Prozesse mithilfe verschiedener Tools strukturell und ordentlich abzubilden und das anhand eines einfachen Beispiels veranschaulichen.

In diesem ersten Teil der Artikelserie werde ich zeigen, wie man mithilfe aller bekannten Programme eine Toolchain erschafft, mit der Projekte in hoher Qualität innerhalb eines nachhaltigen Prozesses abgebildet werden.

Den vollständigen Artikel lesen Sie in der Ausgabe:

PHP Magazin 3.17 - "Plates"

Alle Infos zum Heft
579781249Sicher ins Ziel mit PHP: Toolchains aufbauen
X
- Gib Deinen Standort ein -
- or -