Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Von der Nutzungsanforderung bis zur formalen Softwarespezifikation

Michael Jendryschik
September 08, 2013
480

Von der Nutzungsanforderung bis zur formalen Softwarespezifikation

Die Analyse und Spezifikation von Software-Anforderungen ist eine komplexe Aufgabe, die als Grundlage jedes Softwareentwicklungsprojekts für den späteren Erfolg oder Misserfolg maßgeblich ist. Oft bleiben jedoch Nutzungsanforderungen auf dem Weg zur Implementierung aufgrund einer mangelnden Integration in formale technische Spezifikationen auf der Strecke. Dieser Vortrag stellt einen werkzeugbasierten Ansatz zur Spezifikation komplexer interaktiver Systeme mit Hilfe des Werkzeugs YAKINDU Requirements vor.

Michael Jendryschik

September 08, 2013
Tweet

Transcript






























































































  1. © itemis AG


    Von der Nutzungsanforderung
    zur formalen Softwarespezifikation
    Florian Geyer und Michael Jendryschik – itemis AG

    View Slide






























































































  2. © itemis AG
    Florian Geyer
    Planung und Durchführung von Usability-
    Maßnahmen im Softwareentwicklungsprozess
    Michael Jendryschik
    Anwender von YAKINDU Requirements, Schnittstelle
    zwischen Produktentwicklung und Produktmarketing
    itemis
    2

    View Slide






























































































  3. © itemis AG
    Von der Nutzungsanforderung zur formalen
    Softwarespezifikation
     Bedeutung klarer Anforderungen für den Projekterfolg
     Nutzungsanforderungen und Systemanforderungen
     Anforderungsspezifikation und -management
     YAKINDU Requirements
     Ansatz und Methodik
     Demonstration am Beispiel
     Ausblick und Diskussion
    Modellierung mit dem Werkzeug
    YAKINDU Requirements
    3

    View Slide






























































































  4. © itemis AG
    Bedeutung klarer Anforderungen für den Projekterfolg
    4
    Quelle: Projektmanagement Studie 2008 (GPM, PA Consulting Group)

    View Slide






























































































  5. © itemis AG
    Bedeutung klarer Anforderungen für den Projekterfolg
    5
    Implementierte
    Funktionalität
    Benötigte
    Funktionalität

    View Slide






























































































  6. © itemis AG
    Bedeutung klarer Anforderungen für den Projekterfolg
    6
    Usability-Engineering-Prozess nach DIN EN ISO 9241-210

    View Slide






























































































  7. © itemis AG
    Nutzungsanforderungen und Systemanforderungen
    7
    Übersicht
    abstrakt
    detailliert
    Stakeholder-
    Anforderungen
    Geschäftsziele und Marktanforderungen
    Gesetzliche Anforderungen
    Organisatorische Anforderungen
    Ziele
    Funktionale Anforderungen
    Qualitätsanforderungen
    Randbedingungen
    Systemanforderungen
    Aufgaben und Bedürfnisse der Nutzer
    Umstände des Nutzungskontexts
    Eingabe und Ausgabe am System
    Nutzungsanforderungen
    Erfordernisse
    Systemspezifikation
    User Interface, Prototypen
    Schnittstellen, Architektur
    Use Cases
    Pflichtenheft

    View Slide






























































































  8. © itemis AG
    Nutzungsanforderungen und Systemanforderungen
    Ausgangspunkt – Kontextszenarien
    8
    Paul (48) ist ein Mitarbeiter der itemis AG. Er möchte sich zwei Wochen Urlaub
    nehmen und erstellt daher einen Urlaubsantrag. Er sendet ihn an Harald, den
    Personalverantwortlichen bei itemis. Harald prüft den Antrag auf Konflikte mit
    vorhandenen Terminen und verfügbaren Urlaubstagen. Dafür muss er noch einmal
    Rücksprache mit Teamleiter Joachim halten und notiert sich daher den Antrag für
    später. Joachim sieht keine Konflikte und daher genehmigt Harald den Antrag von
    Paul schließlich. Harald benachrichtigt Paul über die Genehmigung seines Antrags.
    Paul bemerkt später, dass er einen Tag zu viel Urlaub genommen hat und möchte
    den Antrag ändern. Dafür schickt er einen erneuten Antrag an Harald, der die
    Änderung akzeptiert und Paul benachrichtigt.
     Personen (und Systeme): Mitarbeiter, Personalverantwortlicher, Teamleiter
     Benutzerziele und Absichten: Urlaub nehmen, Antrag prüfen
     Abläufe oder Workflows: 1. erstellen, 2. senden, 3. rücksprechen, 4. genehmigen...
     Objekte und Artefakte: Antrag, Urlaubstage, Termine, Genehmigung
     Regelsituationen und Ausnahmesituationen: kein Urlaub, Terminkonflikt, etc.
     Informationen über den Arbeitskontext: Mitarbeiterrollen, Unterbrechungen

    View Slide






























































































  9. © itemis AG
    Erfordernisse: Notwendige Voraussetzungen zur Erfüllung eines Zwecks
    »Der Personalverantwortliche muss die verfügbaren Urlaubstage der Mitarbeiter
    verfügbar haben um die Urlaubsgenehmigung sicherstellen zu können.«
    Nutzungsanforderungen und Systemanforderungen
    Anforderungen dokumentieren – Erfordernisse
    9

    View Slide






























































































  10. © itemis AG
    Nutzungsanforderungen: Erforderliche Benutzeraktionen an einem
    interaktiven System
    »Der Nutzer muss am System ausstehende Urlaubsanträge erkennen können.«
    »Der Nutzer muss am System verfügbare Urlaubstage der Mitarbeiter erkennen können.«
    »Der Nutzer muss am System eine Urlaubsgenehmigung mit Kommentar eingeben können.«
    Nutzungsanforderungen und Systemanforderungen
    Anforderungen dokumentieren – Nutzungsanforderungen
    10

    View Slide






























































































  11. © itemis AG
    Systemanforderungen: Bedingungen, die ein System oder eine
    Systemkomponente erfüllen muss
    »Vor Verwendung des Systems muss das System dem Nutzer die Möglichkeit bieten,
    eine sichere Anmeldung über LDAP durchzuführen.«
    »Nach Eingang eines Urlaubsantrags muss das System dem Nutzer die Möglichkeit bieten,
    das Urlaubsantragsformular zu öffnen.«
    »Beim Bearbeiten eines Urlaubsantrags soll das System dem Nutzer ein Textfeld anbieten,
    um einen Kommentar einzugeben.«
    Nutzungsanforderungen und Systemanforderungen
    Anforderungen dokumentieren – Systemanforderungen
    11

    View Slide






























































































  12. © itemis AG
    Anforderungsspezifikation und -management
    Anforderungen dokumentieren – Modelle, Spezifikationen
    12
    Datenmodelle, Entities
    User Interface
    (Mockup, Prototyp)
    Use Case
    Ablaufdiagramm

    View Slide






























































































  13. © itemis AG
     Dokumentation der Anforderungen in einem
    Spezifikationsdokument (z.B. Pflichtenheft)
     Einheitliche Struktur (z.B. Volere)

     Eindeutige Identifikatoren
     Verweise auf Materialien und Modelle
     Prioritäten und Konflikte
     Quelle und Abnahmekriterien
     Status und Versionen
    Anforderungsspezifikation und -management
    Spezifikationsdokumente
    13

    View Slide






























































































  14. © itemis AG
     Unterschiedliche Stakeholder
    (Business, IT, Usability etc.)
     Verschiedene Sprachen und Perspektiven
     Änderungen und Auswirkungen
    von Änderungen
     Querbezüge und Nachverfolgbarkeit
    bei großen Projekten
     Konsistenz bei dokumentenbasiertem
    Vorgehen
     Interdisziplinäre Zusammenarbeit
    und Versionierung
    Anforderungsspezifikation und -management
    Anforderungen verwalten – Herausforderungen
    14
    Quelle: Fotolia

    View Slide






























































































  15. © itemis AG
    15
    YAKINDU Requirements ist eine Software
    für das Anforderungsmanagement

    View Slide






























































































  16. © itemis AG
    YAKINDU Requirements
    16
    Requirements
    Navigator
    Requirements
    Use Cases
    Entities
    Lifecycles
    UI Pages
    UI Flows
    Texteditor
    Spezifikation
    mittels einer DSL
    Textbausteine
    Templates
    Referenzierung
    Textvervoll-
    ständigung
    Refactoring
    Prüfung und
    Validierung
    Visualisierung
    Übersicht
    Grafische Ansicht
    Automatisch
    generierte
    Diagramme
    Navigation

    View Slide






























































































  17. © itemis AG
    YAKINDU Requirements
    Anforderungen spezifizieren
    17

    View Slide






























































































  18. © itemis AG
    YAKINDU Requirements
    Use Cases spezifizieren
    18

    View Slide






























































































  19. © itemis AG
    YAKINDU Requirements
    Interfaces spezifizieren – Pages
    19

    View Slide






























































































  20. © itemis AG
    YAKINDU Requirements
    Interfaces spezifizieren – Interaktionsdesign
    20

    View Slide






























































































  21. © itemis AG
    YAKINDU Requirements
    Dokumente generieren
    21
    Use Cases
    Requirements
    Lifecycles
    Actors
    User Interface
    User Interface Flow
    Entities
    PDF
    HTML
    MS Word
    WBS
    MS Excel

    View Slide






























































































  22. © itemis AG
    YAKINDU Requirements
    Live-Demo
    22

    View Slide






























































































  23. © itemis AG
    YAKINDU Requirements
    Durch Standards offen für Erweiterungen
    23
     Eclipse Modeling
    Framework ist die Brücke
    zu anderen Standards
     Austausch mit anderen
    Werkzeugen durch das
    Requirements Interchange
    Format.
     Flexible, dynamische
    Definition des
    Requirements Schemas
     Textuelle Modellierung
    erlaubt einfache
    Spracherweiterungen

    View Slide






























































































  24. © itemis AG
    YAKINDU Requirements
    Diskussion und Ausblick
    24

    View Slide






























































































  25. © itemis AG
    itemis AG | Am Brambusch 15-24 | D-44536 Lünen | www.itemis.de
    Kontakt:
    Florian Geyer, [email protected]
    Michael Jendryschik, [email protected]

    View Slide