Ich bin ein Softwareentwickler, der in einem Embedded-System-Unternehmen arbeitet. Wir haben einen Projektmanager, der sich um den gesamten Projektzeitplan kümmert (einschließlich Elektrik, Qualität, Software und Fertigung), daher ist sein Softwarezeitplan sehr kurz.
Wir haben auch einen Software Manager, der mein Chef ist. Er veranlasst mich, den Software-Zeitplan zu schreiben und zu pflegen, Dokumente zu entwerfen (High- und Low-Level-Design), SRS, Änderungsmanagement, Überprüfungspläne und -berichte, Release-Management, Überprüfungen und natürlich die Software.
Wir haben nur einen Testingenieur für das gesamte Softwareteam (10 Mitglieder), und zu einem bestimmten Zeitpunkt laufen einige Projekte.
Ich verbringe 80% meiner Zeit damit, diese Dokumente zu erstellen. Mein Chef hat einen Prozesshintergrund und glaubt, dass wir eine bessere Dokumentation zur Verbesserung der Software benötigen:
- Er ist der Ansicht, dass das Design von größter Bedeutung ist. Das Codieren besteht darin, "nur das Design aufzuschreiben", es sollte nicht zu lange dauern und "der gesamte Code sollte geschrieben werden, bevor die Hardware fertig ist".
- Versteht den Unterschied zwischen einer zentralen und verteilten Versionskontrolle nicht, auch nachdem wir ihm gesagt haben, dass es einfacher ist, mit einem verteilten Modell zusammenzuarbeiten.
- Versteht keinen Code und möchte jeden Fehler und die vorgeschlagene Lösung verstehen.
- Ist der Ansicht, dass die Überprüfung durch den Entwickler und die Validierung durch den Tester erfolgen sollte. Unsere Überprüfung überprüft jedoch nur, ob die Implementierung korrekt ist (wir schreiben keine Komponententests, sie werden im Zeitplan nie berücksichtigt), und die Validierung ist ein Black-Box-Test, sodass die Komponententests fehlen.
Ich bin wirklich verwirrt.
- Bin ich für die Pflege all dieser Dokumente verantwortlich? Es gibt mir das Gefühl, dass ich im Wesentlichen das Software-Projektmanagement mache. Ich bin mit der technischen Dokumentation einverstanden, aber ich glaube, dass die Planung nicht vom Entwickler durchgeführt werden sollte.
- Ich mag es nicht wirklich, Dokumente zu erstellen, ich möchte Probleme lösen und Code schreiben. Nach meiner Erfahrung hilft das Erstellen von Designdokumenten nur bis zu einem gewissen Grad. Es ist nie die Lösung für besseren oder schnelleren Code.
- Ich habe das Gefühl, dass es dem Chef nicht wirklich wichtig ist, bessere Produkte herzustellen, sondern nur, in den Augen des Managements ein guter Manager zu sein.
Was kann ich tun? In diesem Jahr habe ich 3 Monate lang das eigentliche Codieren durchgeführt, den Rest habe ich nur für das Erstellen von Dokumenten und das Warten auf Fehlermeldungen von Kunden aufgewendet.