Großes Projekt richtig umsetzen

D2587

Mitglied
Ich bin kein Programmierer. Ich möchte einen Programmierer ein Script schreiben lassen. Das Problem ist, dass dieses Script muss ständig erweitert werden und die Programmierer werden sich wechseln.

Ich will wissen, wie muss erster Programmierer den Script schreiben, damit ich volle Kontrolle habe und damit die Programmierer an dem Script arbeiten können aber den ganzen Script nicht kopieren können?
 
Hi

a) der erste Programmierer macht das Klassengrundgerüst...
Lass ihn gleich von Anfang an wissen, dass Andere weitermachen werden.
Er soll alles sauber OOP-mäßig machen, dokumentieren, Diagramm(e)...
Für deine einfachere Handhabung zB. jede Klasse in eine Datei,
damit du den Nachfolge-Programmierern die Arbeit dateiweise geben kannst.

Dazu braucht er notwenigerweise einen Überblick über das ganze Projekt.
Er kann aber nichts Fremdes kopieren (weil ja noch nichts Anderes da ist).

Nimm dafür keinen Schüler oder so her, der nebenbei etwas PHP kann.
Von dem Teil hängt der Rest ziemlich stark ab.

b) der einzelne Weiterprogrammierer brauchen dann im Idealfall außer Doku und Diagramm etc
nicht mehr als eine PHP-Datei, deren Klassengerüst er implementieren kann.
(Natürlich kannst du einem Programmierer auch drei Dateien zu machen geben...
er braucht aber nicht alles. Kein Projektdiebstahl).

Und lass dir nicht von einem einreden, er würde alles benötigen,
um seinen Teil der Arbeit machen zu können.
Kann sein, kann aber auch nur ein plumper Ich-will-alles-kopieren-Versuch sein.
Wenn der Erstprogrammierer seine Arbeit gut gemacht hat, ist das nicht nötig.

Gruß
 
Falls du vor hast, das selber zu machen...besser nicht.
Du sagst ja selbst, du bist kein Programmierer.
Der Teil ist ab einer gewissen Projektgröße (wie groß bei dir?)
und ordentlicher Arbeit eines der anspruchvollsten Sachen.

Wenn es dir nur darum geht, den Vorprogrammierer nichts kopieren lassen zu wollen:
Da noch nichts Anderes da ist, kann er ja nichts schon vorhandenes kopieren.

Oder hast du irgendeine Idee, die keiner sonst erfahren soll,
weil er dir sonst den Erfolg streitig macht?
In dem Fall hilft nur
a) selbst programmieren lernen (bis auf das Level braucht es mehr als nur Monate)
b) alles vertraglich so gut wie möglich absichern.

Jedenfalls Nein.
Es gibt viele Beispiele, wie die Syntax etc. ist, Pattern, blablub...
aber ohne zu wissen, was am Schluss da sein soll,
kann man einem Nicht-Programmierer schwer Tipps geben.
 
Deine Idee finde ich richtig gut. Ich will das natürlich nicht selbst schreiben. Ich wollte einfach etwas mehr über OOP und Klassengrundgerüst lernen, so kann ich dem Programmierer das ganze was du mir geschrieben hast ohne Fehler erklären kann. Oder reicht das, wenn ich es mit einfachen Worten dem Programmierer erklären würde?
 
Ja, das sollte reichen.

Wenn er es nicht versteht, und/oder beginnt dich mit programmiermäßigen Fragen zu löchern,
hat er zu wenig Wissen/Erfahrung, such besser einen anderen. Wie gesagt,
der Teil ist (je nach Projektgröße) einer der schwierigsten und zentralsten.

(Zu den "Programmiermäßigen Fragen": Welche Sprache du dir vorstellst (oder ob es dir egal ist), welche Betriebssysteme unterstützt werden sollen etc. ist natürlich OK).

Wichtig: Sag ihm gleich von Anfang an, dass er den Grundstock für andere Programmierer macht.
Das Ganze soll ja so gemacht werden, dass sich Andere auch damit auskennen.
Wenn man meint, alles allein zu machen, verzichtet man schon gern mal auf "guten Stil",
weil man das selbstgeschriebene schon versteht, jemand Anderes dadurch aber eventuell nur verwirrt wird.
 
Wenn ich dich richtig verstehe, mit diesem Modell kann den Script Stufenweise und sicher weiterentwickeln werden.

Würde ich Versionsverwaltungssystem Subversion & TortoiseCVN für diesen Projekt brauchen?
 
Wenn man wirklich eine strikte Trennung macht (Teil 1 für Prog. A, Teil 2 macht B usw....)
ist das nicht nötig.

Ein SVN-System hilft vor allem, wenn das ganze Programmiererteam zusammen arbeitet
und jeder überall herumändern kann (was du ja verhindern willst).

zB.
- A öffnet eine Datei und beginnt herumzuändern.
- B öffnet nach A die gleiche Datei, sieht die Änderungen von A noch nicht
(weil noch nicht abgespeichert) und ändert irgendwas anderes.
- Dann speichert A sein Exemplar.
- Nach ihm speichert B auch.

Am Ende gibts die Datei mit B´s Änderungen.
A´s Änderungen sind weg.

Hauptsächlich, um das Problem zu umgehen, gibts eben SVN.
Das kontrolliert, wer gerade was ändert und verhindert,
dass etwas unbemerkt überschrieben wird.

Aber wie gesagt, wenn sowieso alle getrennt arbeiten und du in der Mitte die Arbeit verteilst,
reicht es auch, wenn du allein aufpasst, nicht die gleiche Teilarbeit
mehreren Programmierern zu geben.
 
Was würdest du empfehlen?

a) Programmierer fest einstellen, dann sparre ich Verwaltung, Einarbeitungszeiten und viel flexiebler bin. Denn er auch ansprechbar, wenn es Probleme gibt und kann dann sogar brauchbare Antworten geben. Der arbeitet auch schneller und habt bei der Programmierung das ganze System im Hinterkopf (kann also mitdenken) was Fehler reduziert. Es bringt mehr Qualität, braucht weniger Zeit und kostet vielleicht auch weniger. Er hat aber die Quellcode, was mir Sorgen macht.

b) Strikte Trennung. Was mir vielleicht mehr Zeit und damit mehr Geld kosten kann.
 
Zurück