Als unabhängiger Anbieter, der mit dem Schreiben eines Produkts für ein Unternehmen beauftragt wird, ist es sinnvoll, nur den Quellcode und die Benutzerdokumentation zu versenden, während Konstruktionsdokumente, Architekturdiagramme, Komponententests usw. weggelassen werden (im Grunde alles andere, was für die Ausführung des Produkts oder nicht unbedingt erforderlich ist) erweitere es)?
Ziel ist es, das Endprodukt für den Kunden erweiterbar zu machen, damit er es intern weiterentwickeln kann, jedoch nicht kostenlos. Sie hätten sich eingehend mit der Quelle befasst, um einige Entwurfsentscheidungen usw. zu verstehen, und sie sind dafür verantwortlich, ihre eigenen umfassenden Tests zu schreiben, um die Einführung von Regressionen zu verhindern.
Die Idee hier ist nicht, den Code unverständlich zu machen. Ich möchte nur eine zukünftige Möglichkeit schaffen, aufgrund des "Insiderwissens" und des Fachwissens, das ich als Originalautor habe, mit dem Schreiben von Erweiterungen beauftragt zu werden.
Wäre dies unethisch?
Bearbeiten: Der Vertrag wird derzeit ausgehandelt, daher ist die Frage, was die endgültigen Ergebnisse darstellt, noch nicht entschieden. Außerdem hätte ich erwähnen sollen, dass ich das Eigentum an dem Produkt behalten werde. Ich werde dem Kunden nur eine Nutzungslizenz gewähren. Macht dieses Detail einen Unterschied, ob dies als schlechte Form angesehen wird?
quelle
Antworten:
Vertraglich wäre es klug, eine Art Klausel über den Umfang der gewünschten Dokumentation aufzunehmen. Sie sollten Sie dafür entschädigen, dass Sie sie in einem verständlichen und professionellen Format präsentieren (wiederholen Sie die Serviettenskizze).
Es ist nicht unethisch, nur das zu tun, was verlangt und bezahlt wird, aber es ist einfach falsch, sich die Mühe zu machen, Informationen zurückzuhalten.
Wenn Sie mir eine schlecht dokumentierte und verschlungene App geben, mit der ich nicht arbeiten kann, bin ich eher der Meinung, dass Sie ein schlechter Programmierer sind, als auf eine Art Genie, auf die mein Unternehmen nicht verzichten kann. Bauen Sie sich den Ruf auf, Dinge richtig zu machen.
quelle
Haben Sie sie für die Entwicklung der Komponententests und Dokumente belastet? und haben sie die rechnung bezahlt? Wenn ja, haben sie Anspruch auf das, wofür sie Sie bezahlt haben.
Andernfalls sehen wir nächste Woche hier auf p.se.com eine Frage mit dem Titel "Wie zwingen wir unseren Auftragnehmer, uns alle technischen Unterlagen und Komponententests zu geben, für die wir sie bezahlt haben?"
quelle
Du tust dir nur weh. Wenn ihre internen Mitarbeiter sich ansehen, was Sie getan haben, und feststellen, dass es an Dokumentation mangelt, werden sie denken, dass Sie ein Trottel sind und Sie in Zukunft weniger wahrscheinlich behalten werden.
quelle
Ich würde fragen, welche davon Sie Ihrer Meinung nach beschreibt:
oder
Versuchen Sie nicht, diese beiden Setups zu kombinieren. Möglicherweise berechnen Sie mehr für das erste (da Sie mehr Fähigkeiten einbringen und mehr Risiko eingehen) oder weniger (da sie am Ende weniger besitzen) oder dasselbe (wenn Sie der Meinung sind, dass sich diese Dinge ausgleichen). Wir tun dies im Allgemeinen erste, und wir werden immer wieder neu eingestellt, indem wir großartig sind, nicht indem wir Informationen zurückhalten. Wenn Sie das Leben auf dem zweiten Weg gelebt haben und auf den ersten Weg gehen möchten, steckt viel mehr dahinter, als Ihre Designdokumente nicht zu teilen.
quelle
Ich würde das für unethisch halten, ja.
quelle
Es gibt wirklich zwei Fragen, die hier beantwortet werden müssen, und ich werde sie beide ansprechen:
Muß ich habe zu dem Kunden , dass die Dokumentation zur Verfügung stellen?
Sie müssen ihnen mitteilen, was in Ihrem Vertrag angegeben ist. Meiner Meinung nach bedeutet dies, dass Sie auch die entsprechende Dokumentation bereitstellen müssen, wenn der Quellcode nicht angemessen gepflegt / geändert werden kann, ohne auch die Dokumentation bereitzustellen.
Sie können sich Werke ansehen, die gemäß dem Copyright Act von 1976 des US Copyright Office gemietet wurden, um festzustellen, ob die Dokumentation, Komponententests usw. tatsächlich Ihrem Kunden gehören. Wenn dies der Fall ist, möchten Sie diese auf jeden Fall bereitstellen.
Sollte ich dem Kunden diese Dokumentation zur Verfügung stellen?
Wenn Sie jemals wieder mit ihnen Geschäfte machen möchten oder wenn Sie möchten, dass sie Sie anderen empfehlen, müssen Sie alle erforderlichen Arbeiten ausführen, um sie zu begeisterten Fans Ihres Geschäfts zu machen.
Das bedeutet, dass Sie ihnen den Quellcode von höchster Qualität, angemessen kommentiert und alles andere, an dem sie interessiert wären, übergeben müssen. Mein Rat wäre, wenn Sie sich mit ihnen treffen, um die Ergebnisse zu übergeben, bereit zu sein, ihnen die Komponententests usw. zu geben. Nachdem Sie alle wichtigen Dinge besprochen haben, sagen Sie etwas wie: "Übrigens, Ich habe auch Komponententests für diese Komponenten erstellt. Wollen Sie diese auch? "
Arbeiten Sie daran, Loyalität mit Ihren Kunden zu schaffen, und Sie werden ihr Geschäft in Zukunft wieder aufnehmen.
quelle
Ich würde an dieser Stelle davon ausgehen, dass ein Vertrag oder eine schriftliche Vereinbarung / ein schriftliches Dokument vorliegt, in dem alle Unterlagen aufgeführt sind, die Sie an sie liefern müssen.
Wenn nicht, können Sie ihnen klar machen, dass die Anpassung des Produkts - darüber hinaus in den Benutzerhandbüchern - zusätzliche Kenntnisse der internen Code-Funktionsweise erfordert. Und wenn Sie in einer Verhandlungsposition sind, können Sie sie bitten, sich mit Ihnen in Verbindung zu setzen, um weitere Verbesserungen zu erhalten und dafür bezahlt zu werden.
Soweit ich weiß, werden Sie bereits dafür bezahlt, den Code für ihr Produkt zu schreiben , dh sie besitzen ihn. Sie können es also für unethisch halten, wenn Sie gehen, ohne alles zu dokumentieren.
Ich schlage vor, dass Sie ein Skelett-Gliederungsdokument mit einer High-Level-Architektur und Hinweisen darauf schreiben, wo Sie nach den wichtigsten Funktionsverbesserungen suchen müssen. Welches sind die Schlüsseldateien und so weiter. Wenn Ihre Arbeit gut ist, werden sie sich gerne für weitere Aufgaben bei Ihnen melden.
quelle
Ich mag diesen Artikel: http://unixwiz.net/techtips/be-consultant.html
Was Sie beschreiben, würde mir nicht das Gefühl geben, jemals wieder mit Ihnen zusammenzuarbeiten.
Sie mögen ein Genie sein, aber wenn Sie tot von einem Bus umfallen , muss ich das beibehalten, was ich bei Ihnen gekauft habe.
Wenn Sie mir diese Fähigkeit nicht geben, werde ich Sie nie wieder einstellen oder empfehlen, Sie für alles einzustellen, mit dem ich zu tun habe.
Wenn Sie nun eine Binärdatei verkaufen , z. B. eine "benutzerdefinierte Schrumpffolie", bei der Sie dasselbe Produkt an andere Unternehmen verkaufen können, ist es sinnvoller, das Modell "weniger Informationen" auszuarbeiten, da Sie jetzt ein Produkt verkaufen.
Der Unterschied besteht darin, dass ich mit der Quelle die Möglichkeit kaufe, den Quellcode später zu ändern. Mit Binary kaufe ich mir jedoch einfach die Möglichkeit, es auszuführen.
quelle