Gemeinsames Arbeiten mit Anforderungen – Geeignete Ablagestrukturen als Hilfsmittel für die gemeinsame Arbeit

Blog-Serie – Teil 5 von 6

In diesem Blogbeitrag möchten wir Ihnen zeigen wie geeignete Ablagesstrukturen als Hilfsmittel genutzt werden können

Haben Sie schon die anderen Teile der Blog-Serie gelesen?

Weiterlesen

Gemeinsames Arbeiten mit Anforderungen – Mit Baselines und Branches zu einer gültigen Anforderungsspezifikation

Blog-Serie – Teil 4 von 6

In diesem Blogbeitrag möchten wir Ihnen zeigen wie Baselines und Branches bei der Zusammenarbeit mehrerer Autorinnen und Autoren helfen können.

Haben Sie schon die anderen Teile der Blog-Serie gelesen?

Im ersten Blogbeitrag haben wir folgende Erkenntnisse gewonnen:
Innerhalb einer Anforderungsspezifikation ist es gar nicht so leicht, zu erkennen, welche Stände der Anforderungen innerhalb einer Anforderungsspezifikation für die Freigabe relevant sind. Bei der Zusammenarbeit mehrerer Autor*innen an einer Anforderungsspezifikation ist Abstimmungsbedarf nötig, um die Anforderungsspezifikation konsistent zu halten und eine Freigabe der Anforderungsspezifikation erwirken zu können

    Im zweiten Blogbeitrag haben wir Ihnen gezeigt, wie Statusmodelle bei der Lösung der Probleme helfen können.

    Im dritten Blogbeitrag sind wir auf Systemverantwortliche als koordinative Stelle zwischen Anforderungsautoren eingegangen.

    Nun aber zurück zum vierten Teil:

    Was sind überhaupt Baselines und Branches?

    Weiterlesen

    FURPS+

    Was ist das?
    Was kann das?

    FURPS+: Ein Framework für Qualitätsanforderungen in der Softwareentwicklung

    In der Welt der Softwareentwicklung spielen Qualitätsanforderungen eine entscheidende Rolle. Um sicherzustellen, dass Softwareprodukte den Anforderungen der Nutzenden gerecht werden und die gewünschten Funktionalitäten bieten, bedarf es einer strukturierten Herangehensweise speziell im Bereich des Nicht-funktionalen. In diesem Blogbeitrag stellen wir ein bewährtes Modell zur Bewertung und Verbesserung der Software-Qualitätsanforderungen vor.

    Was ist FURPS+?

    FURPS steht für Functionality (Funktionalität), Usability (Benutzerfreundlichkeit), Reliability (Zuverlässigkeit), Performance (Leistungsfähigkeit) und Supportability (Wartbarkeit). Das „+“ in FURPS+ hilft uns auch bei der Berücksichtigung von weiteren Aspekten wie:

    • Designanforderungen
    • Implementierungsanforderungen
    • Schnittstellenanforderungen
    • Physische Anforderungen

    Es handelt sich um ein umfassendes Framework, das von Robert Grady bei Hewlett-Packard entwickelt wurde und als Leitfaden für die Entwicklung von Softwareprodukten dient.

    Funktionalität (Functionality):

    Die Funktionalität einer Software bezieht sich auf die Erfüllung der funktionalen Anforderungen. Das bedeutet, dass die Software die gewünschten Aufgaben und Funktionen erfüllen muss, um den Anforderungen der Nutzenden gerecht zu werden. Ein Schwerpunkt liegt auf der Spezifikation, Implementierung und Prüfung der Funktionalität, um sicherzustellen, dass sie korrekt und vollständig ist. Beispielsweise die funktionale Vollständigkeit oder auch die funktionale Adäquatheit ist hierzu sinnvoll mit Anforderungen zu spezifizieren.

    Benutzerfreundlichkeit (Usability):

    Benutzerfreundlichkeit bezieht sich auf die einfache und intuitive Bedienung einer Software. Hier ist eine sorgfältige Gestaltung der Benutzeroberfläche entscheidend, damit Nutzende die Software effizient und effektiv verwenden können. Aspekte wie Navigation, Anordnung der Funktionen und die Verständlichkeit der Benutzeroberfläche spielen dabei eine wichtige Rolle. Zu spezifizierende Anforderungen können beginnen bei generellen Bedienkonzepten bis hin zu konkret designten Oberflächen (UI, GUI) bspw. mittels Prototypen (Wireframen oder Mockups).

    Zuverlässigkeit (Reliability):

    Zuverlässigkeit ist ein kritischer Aspekt jeder Software. Hier geht es um die fehlerfreie Arbeitsweise und die Erfüllung der gestellten Aufgaben. Die Identifizierung und Behebung von Fehlern sowie die Vermeidung von Abstürzen oder Datenverlusten sind zentral. Tests und Überwachungsmechanismen tragen dazu bei, die Zuverlässigkeit sicherzustellen. Anforderungen hierzu sollten immer spezifische Werte enthalten – achten Sie also darauf, keinerlei Adjektive/Adverbien in Ihrer Anforderungsspezifikation zu verwenden.

    Leistungsfähigkeit (Performance):

    Leistungsfähigkeit bezieht sich auf die Geschwindigkeit, Antwortzeit und Skalierbarkeit einer Software. Eine optimierte Codebasis und Algorithmen sind entscheidend, um eine schnelle und effiziente Arbeitsweise zu gewährleisten. Die Messung und Überwachung der Leistung helfen dabei, Engpässe zu identifizieren und die Leistung zu verbessern. Anforderungen können einerseits spezifisch zu einzelnen Funktionen formuliert werden oder andererseits als recht generische Performance-Klassen als Stellvertreter für eine Gruppe von Funktionen (dies spart viel Zeit beim Anforderungen spezifizieren).

    Wartbarkeit (Supportability):

    Wartbarkeit beschreibt die Fähigkeit, eine Software effizient zu warten und zu aktualisieren. Eine modulare und gut strukturierte Softwarearchitektur erleichtert Entwicklern Änderungen und Fehlerbehebungen. Dokumentation, Kommentierung und bewährte Entwicklungspraktiken spielen hierbei eine wichtige Rolle. Beachten Sie hierbei, dass nicht die „üblichen Verdächtigen“ Stakeholder wie fachlich orientierte EndanwenderInnen diese Anforderungen benennen, sondern Beteiligte Personen aus den Bereich IT-Betrieb und -Service oder auch -Test.

    Das FURPS+ Framework bietet einen umfassenden Ansatz zur Qualitätssteigerung Ihrer Anforderungsspezifikationen in der Softwareentwicklung. Es unterstützt Entwickler dabei, die Anforderungen an (Qualität der) Funktionalität, Benutzerfreundlichkeit, Zuverlässigkeit, Leistungsfähigkeit und Wartbarkeit zu erfüllen. Durch die Anwendung dieses Frameworks können Softwareentwicklungsprojekte effizienter gestaltet werden, da die Qualitätsanforderungen von Anfang an vollständiger berücksichtigt werden. Die Verwendung dieses Frameworks ermöglicht es Ihnen, Softwareprodukte von hoher Qualität zu liefern, die den Erwartungen der Benutzenden hinsichtlich vor allem nicht-funktionaler Aspekte zielgerichtet entsprechen.

    Quellen:

    FURPS+ von Robert Grady, Hewlett Packard:
    https://www.researchgate.net/figure/Mccalls-Triangle-Quality-FURPS-SOFTWARE-QUALITY-MODEL-The-FURPS-model-was-initially_fig1_331305223

    Arc42:
    FURPS+ for Classifying Requirements:
    https://quality.arc42.org/articles/quality-models#eeles

    Assessments machen wir bei SOPHIST schon seit Jahren und das nicht nur für die Weihnachtsplanung.

    Jedes Jahr im Dezember steht Weihnachten vor der Tür und wie alle Jahre wieder möchte jeder entspannt Weihnachten feiern und die Adventzeit genießen – doch ohne gute Vorbereitung sind die Aussichten eher düster.

    Weiterlesen

    SOPHIST – der Offene Trainingskatalog 2022

    SEE THE FUTURE! Wir stellen Ihnen schon jetzt unseren neuen Trainingskatalog für das Jahr 2022 zur Verfügung. Planen Sie frühzeitig Ihre Teilnahme(n) an unseren erstklassigen Trainings rund um Requirements Engineering, Systems Engineering, Modellierung, Vorgehensmodelle und Business-Analyse. Wie Sie von SOPHIST erwarten dürfen, bieten wir Ihnen die gewohnt exzellente Qualität!

    Weiterlesen