### 1. Zusätzliche Qualitätsziele zur Hälfte der Projektlaufzeit Wenn während eines Softwareprojekts zur Hälfte der Projektlaufzeit vom Auftraggeber zusätzliche Qualitätsziele formuliert werden, sollte man wie folgt reagieren: 1. **Analyse der Anforderungen:** Man sollte die neuen Qualitätsziele sorgfältig analysieren, um zu verstehen, wie sie sich auf das Projekt auswirken. Dazu gehört das Überprüfen, ob die Ziele realistisch und messbar sind. 2. **Bewertung der Auswirkungen:** Die Auswirkungen der zusätzlichen Ziele auf den bestehenden Projektplan, das Budget und die Ressourcen sollten bewertet werden. Dies könnte dazu führen, dass Anpassungen notwendig sind. 3. **Kommunikation mit dem Auftraggeber:** Eine offene Kommunikation mit dem Auftraggeber ist entscheidend. Es sollte besprochen werden, welche Auswirkungen die neuen Anforderungen auf den Zeitplan und die Kosten haben werden. 4. **Anpassung des Projektplans:** Wenn alle Parteien zustimmen, sollten der Projektplan und das Budget entsprechend angepasst werden, um die neuen Qualitätsziele zu integrieren. 5. **Risikomanagement:** Mögliche Risiken, die durch die Änderung der Anforderungen entstehen, sollten identifiziert und in den Risikomanagementplan aufgenommen werden. 6. **Dokumentation:** Alle Änderungen sollten dokumentiert und allen relevanten Stakeholdern mitgeteilt werden, um Transparenz zu gewährleisten. ### 2. Zuordnung der Dokumentation zu den Adressaten Hier ist die Zuordnung der verschiedenen Dokumente zu den jeweiligen Adressaten: - **Produktbeschreibung:** Käufer - **Installationsanweisung:** Administrator - **Administrationshandbuch:** Administrator - **Release-Notes:** Erfahrener Anwender und Administrator - **Tutorial:** Unerfahrener Anwender - **Benutzungshandbuch:** Unerfahrener Anwender und Erfahrener Anwender - **FAQ-Liste:** Unerfahrener Anwender und Erfahrener Anwender ### 3. Beschreibung der Operationsarten und zugehörige Werkzeuge in der Softwareentwicklung Hier sind die detaillierten Beschreibungen der einzelnen Operationsarten sowie einige Werkzeuge, die diese unterstützen: 1. **Editieren:** Dies bezieht sich auf das Erstellen und Bearbeiten von Quellcode. Es ist eine der grundlegendsten Aufgaben in der Softwareentwicklung. - **Eingesetztes Werkzeug:** Visual Studio Code, Sublime Text 2. **Transformieren:** Diese Operation umfasst das Umwandeln von Code oder Daten von einem Format in ein anderes, z.B. durch Compiler oder Code-Generatoren. - **Eingesetztes Werkzeug:** GCC (GNU Compiler Collection), Jenkins 3. **Verwalten / Versionieren:** Verwaltung von Softwarekonfigurationen und Code-Versionen. Diese Operation ist wichtig für die Nachverfolgbarkeit und Zusammenarbeit im Team. - **Eingesetztes Werkzeug:** Git, SVN (Subversion) 4. **Suchen:** Dies bezieht sich auf das Durchsuchen von Code, Datenbanken oder Dateien, um Informationen schnell zu finden. - **Eingesetztes Werkzeug:** grep, Visual Studio Code 5. **Nachvollziehen:** Ermöglicht die Rückverfolgbarkeit von Anforderungen, Änderungen und Fehlern im Entwicklungsprozess. - **Eingesetztes Werkzeug:** JIRA, IBM Rational DOORS 6. **Messen:** Diese Operation umfasst das Erfassen von Metriken und Kennzahlen zur Bewertung der Softwarequalität und der Leistungsfähigkeit. - **Eingesetztes Werkzeug:** SonarQube, New Relic 7. **Testen:** Testen umfasst das Überprüfen und Validieren der Software auf Fehler und die Einhaltung der Spezifikationen. - **Eingesetztes Werkzeug:** Selenium, JUnit 8. **Verbinden:** Die Integration unterschiedlicher Softwarekomponenten oder Module, um eine zusammenhängende Anwendung zu erstellen. - **Eingesetztes Werkzeug:** Jenkins, Docker 9. **Dokumentieren:** Das Erstellen von Dokumentationen, die Informationen über die Software und deren Nutzung bereitstellen. - **Eingesetztes Werkzeug:** Doxygen, Confluence 10. **Verfolgen / Überwachen:** Überwachung von Softwareoperationen und Systemleistung zur Sicherstellung des reibungslosen Betriebs und zur Fehlerbehebung. - **Eingesetztes Werkzeug:** Nagios, Prometheus Diese Operationsarten sind entscheidend für eine effektive Softwareentwicklung und tragen zur Sicherstellung der Qualität, Wartbarkeit und Skalierbarkeit des Projekts bei.