In dem Unternehmen, in dem ich arbeite, planen wir, den Lebenszyklus der Softwareentwicklung einzuhalten. Wir haben bereits ein Wiki, ein VCS-System, ein Bug-Tracking-System und ein kontinuierliches Integrationssystem.
Der nächste Schritt, den wir haben möchten, besteht darin, die Softwareanforderungen strukturiert zu verwalten. Wir möchten kein Wiki oder keine gemeinsam genutzte Dokumentation verwenden, da wir viele Eingaben haben (Entwickler, Manager, Kommerzielle, Sicherheitsanalysten und andere) und wir möchten nicht die Verbreitung von .doc um die Netzwerkfreigabe herum behandeln. Wir versuchen zu suchen und hoffen, dass wir eine FOSS-Software finden und verwenden können, um all diese Dinge zu verwalten.
Wir haben ungefähr 30 Mitarbeiter und kein Budget für kommerzielle Software. Wir brauchen eine kostenlose Lösung für das Anforderungsmanagement.
Was wir wollen, ist Software, die verwalten kann:
Erforderliche Funktionen:
- Die Softwareanforderungen sind strukturiert und konfigurierbar unterteilt
- Versionierung der Anforderungen (Verlauf, Diff usw., wie Quellcode)
- Interdependenz von Anforderungen (Kind von, Elternteil von, verwandt mit)
- Regelbasierte Zugriffskontrolle für die Datenverarbeitung
- Multi User, Multi Projekt
- Datei-Upload (für Grafik, Dokument im Zusammenhang mit oder so weiter)
- Berichts- und Extraktionsfunktionen
Optionale Funktionen:
- Webbasiert
- Testfall
- Zeitbasiertes Management (Zeitachse, ausgenommene Daten, Ergebnisdaten)
- Personenzuordnung und so weiter
- Geschäftsbezogene Sachen
- Handhabung der Hardwarezuweisung
Ich habe bereits mit Testlink gespielt und jetzt spiele ich mit RTH. Der nächste, den ich versuche, ist Redmine.
Ich bin mir nicht sicher, was Sie für einen Bug-Tracker verwenden, aber ich habe erfolgreich spezielle Problemtypen für Anforderungen erfolgreich verwendet. Im Wesentlichen können Sie mit vielen Softwareprogrammen zur Problemverwaltung (oder Fehlerverfolgung) Probleme miteinander verknüpfen. Sie haben auch das Konzept einer Master-Anforderung mit Aufgaben oder Unteranforderungen. Das kümmert sich um das meiste, was Sie sehen.
Die Versionierung wird mit einem solchen System durchgeführt, indem die Anforderung einer Version zugewiesen wird. Entweder handelt es sich um ein benutzerdefiniertes Feld oder um etwas Eingebautes. Wenn Sie eine neue Anforderung haben, die die ältere ersetzt, verknüpfen Sie sie und brechen die ältere ab. Sie haben jetzt einen Überblick über die Versionen Ihrer Software.
Ein solches Open-Source-Tool, das ich verwendet habe, heißt Redmine: http://www.redmine.org/ Sie werden feststellen, dass sich einige der anderen Tools, die Sie bereits haben, überschneiden. Ich denke, ein wenig Kreativität mit Ihrem Toolset wird etwas bringen, das nahe genug an dem liegt, was Sie wollen, ohne auf DOORS oder (ir) Rational Toolsets zu setzen.
quelle