Projekt - Philosophie

Entstehungsprozess

Jeder Kunde sollte auch während der Entstehung von Software Einblick in den Entwicklungsprozess haben können. Das ist umso wichtiger, je größer ein Projekt ist. Nur wenn der Kunde die Entwicklung begleitet, kommt hinterher ein wirklich gewünschtes Produkt heraus. Software ist zu komplex, um sie in ein Pflichtenheft allzu fest zu zementieren.

Für die Arbeit im Team heißt hier das große Stichwort agile Programmierung (Bericht in CIO, Wikipedia) - und das vielleicht bekannteste Vorgehensmodell ist Scrum. [Bei kleinen 1-Mann-Projekten kann man trotzdem dessen Ziele im Hinterkopf haben...]

Scrum verkörpert die Werte der agilen Software-Entwicklung, die 2001 im Agilen Manifest von Ken Schwaber, Jeff Sutherland und anderen formuliert wurden:

1. Individuen und Interaktionen gelten mehr als Prozesse und Tools.

2. Funktionierende Programme gelten mehr als ausführliche Dokumentation.

3. Die stetige Zusammenarbeit mit dem Kunden steht über Verträgen.

4. Der Mut und die Offenheit für Änderungen steht über dem Befolgen eines festgelegten Plans.

Quelle: Wikipedia

(Scrum ist auch ein Gegenentwurf zum in die Jahre gekommenen Wasserfallmodell der Softwaretechnik.)

Trotzdem gilt immer:

1. Die erstellte Software ist stets gut dokumentiert: im Sourcecode und ggbnfls. auch bzgl. des Ablaufs – das ist kein Wiederspruch zum obigen Punkt 2 :-)

2. Es werden keine "Patches" benutzt, die eine Weiterentwicklung durch andere Drupal-Dienstleister erschweren würden.

3. Der Code ist grundsätzlich offen (das regelt schon die Drupal-General-Public-License).

So ist immer gewährleistet, dass der Kunde die Möglichkeit hat, mit einem anderen Dienstleister weiterzuarbeiten. Kundenbindung erzwingt man nicht durch Abhängigkeiten!

Technisches

  • Jedes Projekt gehört in eine Versionsverwaltung - ich arbeit mit git, - wie auch jeder andere Drupal- oder Symfony-Entwickler.
  • Browser: Alles was modern ist. Aber das ist Sache vom Front-End (und daher nicht meine Baustelle)
  • Providerwahl. Ihr Account hat ssh, git, 160MB Ram minimum. Bei Problemen helfe ich beim Umzug.