Derzeit arbeite ich an meinem Abschluss für mein "Software Development" -Studium, in dem ich komplexe Software individuell in einem externen Unternehmen entwickeln muss. Dies alles muss strukturiert erfolgen und alle entsprechenden Dokumente erstellen.
Für dieses Projekt habe ich mich entschieden, mit den IEEE-Standarddokumenten zu arbeiten: Software Requirements Document (SRS), Software Architecture Documents (SAD) und Software Design Document (SDD). Obwohl in der Schule anders unterrichtet, habe ich mich für dieses Projekt entschieden, die SDD nach der Entwicklung (statt vorher) zu erstellen . Meine Argumentation ist:
Das Unternehmen, in dem ich mein Praktikum mache, hat mir die Anweisung gegeben, auf experimentelle Weise eine komplexe Software zu erstellen, die bestimmte Anforderungen erfüllt. Aufgrund der Freiheit, die sie mir in der Projektdefinition gegeben haben, ist im Voraus fast nichts sicher und kann am besten beim Experimentieren im Entwicklungsprozess angetroffen werden. Außerdem erstelle ich die Software auf individuelle Weise . Es hätte für niemanden im Unternehmen von Vorteil, wenn ich dieses Software-Design im Voraus erstellen würde. Wenn ich es vorher mache, kostet es mich nur viel Zeit, es später zu ändern, da ich sicher sein kann, dass angesichts der Unsicherheiten im Projekt das Design, das ich vorher mache, viel geändert werden muss . Das fühlt sich für mich kontraproduktiv an.
Ist dies eine gute Rechtfertigung, um die SDD nach der Entwicklung zu erstellen? Wenn nicht, gibt es dafür eine gute Rechtfertigung?
Bearbeiten: Der Grund, die SDD anschließend zu erstellen, besteht darin, dass zukünftige Entwickler das Projekt fortsetzen. Ich werde nicht in der Lage sein, das gesamte Projekt in meiner Abschlussphase abzuschließen, daher müssen andere Entwickler die aktuelle Codebasis beibehalten.