Projektgruppe. Verfolgbarkeit von Anforderungen im Software-Entwicklungsprozess



Ähnliche Dokumente
Professionelle Seminare im Bereich MS-Office

Prozessbewertung und -verbesserung nach ITIL im Kontext des betrieblichen Informationsmanagements. von Stephanie Wilke am

How to do? Projekte - Zeiterfassung

Wir beraten Sie. Wir unterstützen Sie. Wir schaffen Lösungen. Wir bringen Qualität. Wir beraten Sie. Wir unterstützen Sie. Wir schaffen Lösungen

Agile Vorgehensmodelle in der Softwareentwicklung: Scrum

Fachdidaktik der Informatik Jörg Depner, Kathrin Gaißer

Fachbericht zum Thema: Anforderungen an ein Datenbanksystem

Stellen Sie bitte den Cursor in die Spalte B2 und rufen die Funktion Sverweis auf. Es öffnet sich folgendes Dialogfenster

TTS - TinyTimeSystem. Unterrichtsprojekt BIBI

SMART Newsletter Education Solutions April 2015

Eigenen Farbverlauf erstellen

ARCO Software - Anleitung zur Umstellung der MWSt

Zimmertypen. Zimmertypen anlegen

Softwareanforderungsanalyse

Diese Ansicht erhalten Sie nach der erfolgreichen Anmeldung bei Wordpress.

Vgl. Kapitel 5 aus Systematisches Requirements Engineering, Christoph Ebert

Übungen zur Softwaretechnik

Das Pflichtenheft. Dipl.- Ing. Dipl.-Informatiker Dieter Klapproth Ains A-Systemhaus GmbH Berlin

MORE Profile. Pass- und Lizenzverwaltungssystem. Stand: MORE Projects GmbH

Support-Tipp Mai Release Management in Altium Designer

Seite 1 von 14. Cookie-Einstellungen verschiedener Browser

Hilfe zur Urlaubsplanung und Zeiterfassung

IKP Uni Bonn Medienpraxis EDV II Internet Projekt

2. Einrichtung der ODBC-Schnittstelle aus orgamax (für 32-bit-Anwendungen)

Mediumwechsel - VR-NetWorld Software

Die Beschreibung bezieht sich auf die Version Dreamweaver 4.0. In der Version MX ist die Sitedefinition leicht geändert worden.


SEPA-Anleitung zum Release 3.09

Mit der Maus im Menü links auf den Menüpunkt 'Seiten' gehen und auf 'Erstellen klicken.

Partitionieren in Vista und Windows 7/8

Zusatzmodul Lagerverwaltung

1. Einführung. 2. Archivierung alter Datensätze

Abamsoft Finos im Zusammenspiel mit shop to date von DATA BECKER

teischl.com Software Design & Services e.u. office@teischl.com

Das Leitbild vom Verein WIR

Facebook I-Frame Tabs mit Papoo Plugin erstellen und verwalten

SEPA Lastschriften. Ergänzung zur Dokumentation vom Workshop Software GmbH Siemensstr Kleve / /

WordPress. Dokumentation

In diesem Thema lernen wir die Grundlagen der Datenbanken kennen und werden diese lernen einzusetzen. Access. Die Grundlagen der Datenbanken.

Was meinen die Leute eigentlich mit: Grexit?

Über die Internetseite Hier werden unter Download/aktuelle Versionen die verschiedenen Module als zip-dateien bereitgestellt.

Sich einen eigenen Blog anzulegen, ist gar nicht so schwer. Es gibt verschiedene Anbieter. ist einer davon.

Anwendungsbeispiele Buchhaltung

Adobe Photoshop. Lightroom 5 für Einsteiger Bilder verwalten und entwickeln. Sam Jost

Bauteilattribute als Sachdaten anzeigen

Mediumwechsel - VR-NetWorld Software

Use Cases. Use Cases

SharePoint Demonstration

Leitfaden zu Starmoney Business 6.0

Er musste so eingerichtet werden, dass das D-Laufwerk auf das E-Laufwerk gespiegelt

DER BESSER INFORMIERTE GEWINNT!

Benutzerverwaltung Business- & Company-Paket

robotron*e count robotron*e sales robotron*e collect Anmeldung Webkomponente Anwenderdokumentation Version: 2.0 Stand:

Handbuch ECDL 2003 Basic Modul 6: Präsentation Diagramm auf einer Folie erstellen

Version Deutsch In diesem HOWTO wird beschrieben wie Sie Ihr vorhandenes PMS-System mit der IAC-BOX verbinden und konfigurieren.

Online Banking System

Proseminar: Website-Managment-System. NetObjects Fusion. von Christoph Feller

BSV Ludwigsburg Erstellung einer neuen Internetseite

Wo finde ich die Software? - Jedem ProLiant Server liegt eine Management CD bei. - Über die Internetseite

schnell und portofrei erhältlich bei beck-shop.de DIE FACHBUCHHANDLUNG mitp/bhv

Content Management System mit INTREXX 2002.

Version: System: DFBnet Lizenz 5.20

AZK 1- Freistil. Der Dialog "Arbeitszeitkonten" Grundsätzliches zum Dialog "Arbeitszeitkonten"

Umgang mit der Software ebuddy Ändern von IP Adresse, Firmware und erstellen von Backups von ewon Geräten.

GRS SIGNUM Product-Lifecycle-Management

Verwalten Sie Ihre Homepage von überall zu jeder Zeit! Angebote und Informationen auf

EPOS. Kurzanleitung Modul Mailing. Logex AG IT-Solutions. Copyright (c) 2008 by Logex ag, Switzerland, all Rights reserved

mysql - Clients MySQL - Abfragen eine serverbasierenden Datenbank

DOKUMENTATION VOGELZUCHT 2015 PLUS

Bei der Focus Methode handelt es sich um eine Analyse-Methode die der Erkennung und Abstellung von Fehlerzuständen dient.

Upgrade auf die Standalone Editionen von Acronis Backup & Recovery 10. Technische Informationen (White Paper)

Erstellen einer Collage. Zuerst ein leeres Dokument erzeugen, auf dem alle anderen Bilder zusammengefügt werden sollen (über [Datei] > [Neu])

Agiles Design. Dr.-Ing. Uwe Doetzkies Gesellschaft für Informatik mail:

Bedienungsanleitung für den Online-Shop

AGROPLUS Buchhaltung. Daten-Server und Sicherheitskopie. Version vom b

Handbuch zum Excel Formular Editor

Typisierung des Replikationsplan Wirries, Denis Datenbankspezialist

Handbucherweiterung Zuschlag

Inhalt. meliarts. 1. Allgemeine Informationen Administration Aufruf Das Kontextmenü Vorlagen...

SQL - Übungen Bearbeitung der Datenbank Personal (1)

Neuer Releasestand Finanzbuchhaltung DAM-EDV E Inhaltsverzeichnis. 1. Neuerungen Schnittstelle Telebanking mit IBAN und BIC...

NetStream Helpdesk-Online. Verwalten und erstellen Sie Ihre eigenen Tickets

SolBenefit. Photovoltaik- Anlagen- Betrachtung und -Auswertung

Anleitung über den Umgang mit Schildern

Einstellungen für SEPA-Lastschriften oder SEPA Dauerlastschriften in der VR-NetWorld Software 5.0

Qt-Projekte mit Visual Studio 2005

Pflichtenheft Version 1.0. Mäxchen/Meiern iphone App

Die Online-Meetings bei den Anonymen Alkoholikern. zum Thema. Online - Meetings. Eine neue Form der Selbsthilfe?

Datenübernahme easyjob 3.0 zu easyjob 4.0

Leitfaden zu Starmoney 9.0

IMAP Backup. Das Programm zum Sichern, Synchronisieren, Rücksichern und ansehen von gesicherten Mails. Hersteller: malu-soft

1. Bearbeite Host Netzgruppen

Reporting Services und SharePoint 2010 Teil 1

Inventur. Bemerkung. / Inventur

Kleines Handbuch zur Fotogalerie der Pixel AG

Leitfaden zu Jameica Hibiscus

Pflegende Angehörige Online Ihre Plattform im Internet

Transkript:

Projektgruppe Christoph Fröhlich Verfolgbarkeit von Anforderungen im Software-Entwicklungsprozess 4. Juni 2010

Motivation Anforderungen Software 2

Motivation X in Zeile heißt, dass Anforderung durch Systemkomponente erfüllt wird 3 Systemkomponente 1 Systemkomponente 2 Systemkomponente 3 Systemkomponente 4 Anforderung 1 X Anforderung 2 X X Anforderung 3 X Anforderung 4 X X Verfolgbarkeit von Anforderungen ist ja einfach zu realisieren oder doch nicht?

Motivation Anforderungen Anforderungen Änderungswünsche Hardwareanforderungen Testergebnisse Personaländerungen Software Software 4

Motivation X identifiziert betroffene Komponenten bei Änderung einer Anforderung 5 Systemkomponente 1 Systemkomponente 2 Systemkomponente 3 Systemkomponente 4 Anforderung 1 X Anforderung 2 X X Anforderung 3 X Anforderung 4 X X Aber stellt das schon Verfolgbarkeit sicher? WARUM wurde denn beispielsweise etwas geändert?

Literaturgrundlage Chris Rupp: Requirements-Engineering und Management. 4. Auflage. Hanser, München, Wien 2007, ISBN 3-446-40509-7, S. 409-442 Ramesh, Balasubramaniam und Matthias Jarke. Toward Reference Models for Requirements Traceability. IEEE Trans. Softw. Eng. 27, no. 1 (2001): 58-93 Gotel, Orlena C. Z. und Anthony C. W. Finkelstein. An Analysis of the Requirements Traceability Problem. In, 94-101, 1994 Verfolgbarkeit von Anforderungen im Software-Entwicklungsprozess 6

Übersicht Motivation Was ist Verfolgbarkeit Warum Verfolgbarkeit gewährleisten Verbesserungsmöglichkeiten Verfolgbarkeit von Anforderungen im Software-Entwicklungsprozess 7

Was ist Verfolgbarkeit Unter Traceability versteht man die Nachvollziehbarkeit von Informationen und deren Abhängigkeiten. Im Rahmen des Requirements-Engineering ist meist die Nachvollziehbarkeit der Anforderungen von der Anforderungsfindung bis zur Anforderungsabnahme gemeint. Aus: Requirements-Engineering und Management Was ist Verfolgbarkeit 8

Was ist Verfolgbarkeit Beziehungen, Zusammenhänge und Abhängigkeiten zwischen Informationen dokumentieren Von Anforderungen zur fertigen Software Aber auch: Verfeinerungen von Anforderungen Verbindungen zwischen Informationen heißen Traces oder Traceability-Links Was ist Verfolgbarkeit 9

Übersicht Motivation Was ist Verfolgbarkeit Warum Verfolgbarkeit gewährleisten Verbesserungsmöglichkeiten Verfolgbarkeit von Anforderungen im Software-Entwicklungsprozess 10

Warum Verfolgbarkeit gewährleisten Das Sicherstellen von Verfolgbarkeit ist mit mehr Arbeit für die Dokumentation verbunden. Lohnt sich diese? Im späten Projektverlauf muss nachvollzogen werden, warum Entscheidung getroffen wurde. Keine Dokumentation der Entscheidungsfindung macht dies schwer. Die selbe Arbeit wird dann mehrfach gemacht. Warum Verfolgbarkeit gewährleisten 11

Hauptgründe Änderungen nachvollziehbar machen Verschiedene Sichten für unterschiedliche Projektbeteiligte Verschiedene Ebenen der Detaillierung Low-End vs. High-End Benutzer Warum Verfolgbarkeit gewährleisten 12

Gründe für Änderungen Gute Systemanalyse verringert Anzahl nötiger Änderungen, kann jedoch nicht Vermeiden das Änderungen nötig werden Änderungen von Gesetzten, die sich auf den Geschäftsprozess oder die Technischen Anforderungen auswirken Wachsender Anspruch an das System (geänderte Geschäftsziele) Änderungen der Projektrandbedingungen (weniger Gelder stehen zur Verfügung) Abschätzungen über Machbarkeit stellen sich als falsch heraus (oft bei Einsatz neuer Technologien) Warum Verfolgbarkeit gewährleisten 13

Der Änderungsprozess Änderungsgrund feststellen Wirklich Änderung oder nur Verfeinerung? Betroffene Artefakte bestimmen Änderung annehmen oder ablehnen Bei Ablehnung trotzdem Archivieren Änderung planen, realisieren, testen, abnehmen Warum Verfolgbarkeit gewährleisten 14

Ebenen der Detaillierung Ermöglicht das zielgruppenspezifische Schreiben/Lesen von Anforderungen Anforderungen jeweils nur so stark detailieren wie es für die Zielgruppe nötig ist Grobe Anforderungen für schnellen Überblick der geforderten Funktionalität Anwendungsfälle schildern schon klarer was zum System gehören soll Nachfolgend: 5 Ebenen der Detailierung Warum Verfolgbarkeit gewährleisten 15

Ebenen der Detaillierung Ebene 0 Mit wenigen Sätzen den Gesamtumfang des zu entwickelnden Systems beschreiben Soll Überblick verschaffen Meist in Fließtext gehalten Häufig auch Absichtserklärungen, Ziele des Systems und eine Liste mit Hauptmerkmalen enthalten Warum Verfolgbarkeit gewährleisten 16

Ebenen der Detaillierung Ebene 1 Beschreibt Vorgänge in denen das System unterstützen soll Use-Cases oder funktionale Sichtweise Warum Verfolgbarkeit gewährleisten 17

Ebenen der Detaillierung Ebene 2 Untersuchung der Geschäftsprozesse: Wer macht was? Aktionen vom Anwender ausgeführt Systemfunktionen Anforderungen ohne Differenzierung nach Teilsystemen Auf dieser Basis meist Auswahl der Architektur Verfolgbarkeit von Anforderungen im Software-Entwicklungsprozess 18

Ebenen der Detaillierung Ebene 3 Mehrere Anforderungen dieser Ebene verfeinern eine Anforderung der Ebene 2 Bilden detaillierteste Darstellung, was das System dem Anwender zur Verfügung stellen soll Oftmals hier auch Spezifikation der Oberflächen Warum Verfolgbarkeit gewährleisten 19

Ebenen der Detaillierung Ebene 4 Auflösung des Systems in Soft- und Hardware Ggf. weitere Module, Konfigurationselemente, usw. Bisherige Anforderungen durch weitere (meist technische) Anforderungen ergänzen Warum Verfolgbarkeit gewährleisten 20

Übersicht Motivation Was ist Verfolgbarkeit Warum Verfolgbarkeit gewährleisten Verbesserungsmöglichkeiten Verfolgbarkeit von Anforderungen im Software-Entwicklungsprozess 21

Versionierung Verfeinerung Baselines Branches Low-End Referenz Modell High-End Referenz Modell 22

Versionierung Anforderung 1 Anforderung 2 Anforderung 3 V1 V2 V3 V4 V1 V2 V1 V2 V3 Neue Version einer Anforderung ersetzt die alte Für jede Anforderung eine Kette, letzte Element ist aktive Anforderung Sinnvolle Zusatzinformationen: Wann, Warum und von wem wurde eine neue Version erstellt? 23

Verfeinerung Erzeugt Baumstruktur: Jede Informationen hat genau einen Vorgänger aber mehrere Nachfolger, welche die Information verfeinern Ausnahme: Wechsel der Blickrichtung Unterschied zur Versionierung: Ursprungsanforderung verliert ihre Gültigkeit nicht Abstraktere Sicht auf Anforderungen bleibt erhalten 24

Verfeinerung Information Information Information Information Lastenheft Pflichtenheft Information Information Information Information Information Information Information Information 25

Die UmZu-Regel Problem bei der Anwendung von Versionierung und Verfeinerung ist zu Entscheiden, wann was vorliegt Hilfestellung durch die Queins sche UmZu-Regel Sprachliche Verbindung zweier Anforderungen durch um Ist Resultat ein sinnvoller Satz, handelt es sich um Verfeinerung, sonst Versionierung Es folgen 2 Beispiele aus Requirements-Engineering und Management 26

Die UmZu-Regel Beispiel 1 A1: Das System soll der Geschäftsleitung die Möglichkeit bieten, neue Daten anzulegen. A2: Das System soll der Geschäftsleitung die Möglichkeit bieten, neue Mitarbeiterdaten anzulegen. A1 + A2: Um neue Daten anzulegen, soll das System neue Mitarbeiterdaten anlegen. Der Satz ergibt keinen Sinn, es handelt sich also um Versionierung 27

Die UmZu-Regel Beispiel 2 A3: Das System soll dem Gast die Möglichkeit bieten, seine Registrierungsdaten einzugeben. A2: Das System soll dem Gast die Möglichkeit bieten, Name, Anschrift und Bankdaten einzugeben. A3 + A4: Um die Registrierungsdaten einzugeben, soll das System die Möglichkeit bieten, Name, Anschrift und Bankdaten einzugeben. Der Satz ergibt einen Sinn, daher Verfeinerung 28

Baseline / Document Release Zu definiertem Zeitpunkt eine Menge an Informationen einfrieren Hält den genauen Informationsstand zu diesem Zeitpunkt fest Informationen in einer Baseline dürfen nicht mehr geändert werden Bieten Grundlage für Gespräche zwischen Projektbeteiligten während Projekt weiter läuft Ermöglichen es ein Projekt später wieder aufzusetzen (Reproduktion) 29

Baseline / Document Release Baseline Meilenstein 1 A1 A2 A4 A5 Repository A4 Baseline System-Release A1 A2 A4 A5 30

Branch Sich in kleinen Details vom Original unterscheidende Kopie einer Anforderung Beide Anforderungen sind aktiv Beide Anforderungen befinden sich auf dem selben Abstraktionsniveau (Unterschied zu Verfeinerung) Einsatz um Zwischen-System-Release aus altem Stand der Spezifikation zu erzeugen 31

Branch System-Release 1 System-Release 2 System-Release 3 System-Release 2.1 System-Release 2.2 System-Release 3 ist aktuelle Version Teilweise noch Version 2 im Einsatz Branch wird erstellt auf Grundlage von Version 2, um beispielsweise Fehler zu beheben 32

Branch Einsatz ist relativ kompliziert Je häufiger Branches eingesetzt, desto mehr Informationen und Verbindungen entstehen Müssen zusätzlich zur Versionierung/Verfeinerung verwaltet werden Identifizierung von Anforderungen nicht mehr eindeutig: Zur ID kommt noch die Release Version Ggf. sollen Branches wieder zusammengeführt werden 33

Branch Mehrere Lösungsvorschläge können nebenläufig entwickelt werden Es kann der gewünschte oder sogar mehrere (durch Zusammenführung von Branches) gewählt werden 34

Versionierung Verfeinerung Baselines Branches Low-End Referenz Modell High-End Referenz Modell 35

Verfolgbarkeit als Meta Modell Definiert Sprache in welcher Verfolgbarkeitsmodelle definiert werden können Modelle können für den jeweiligen Verwendungszweck angepasst werden Traces können in (verteilten) Datenbanken gespeichert werden 36

Verfolgbarkeit als Meta Modell STAKEHOLDER TRACES TO HAS ROLE IN MANAGES OBJECT DOCUMENTS SOURCE 37

Was für Informationen sind gespeichert Alle Inputs und Outputs des Entwicklungsprozesses werden durch OBJECTs repräsentiert Werden durch die verschiedenen Phasen im Softwareentwicklungsprozess erstellt Verfolgbarkeit zwischen Objekten durch TRACES-TO Verbindungen 38

Wer ist betroffen STAKEHOLDERs repräsentieren die im Entwicklungsprozess beteiligten Aktoren Agieren in verschiedenen ROLEs 39

Wo ist die Information gespeichert Alle OBJECTs werden in SOURCEs dokumentiert SOURCEs können physische Medien sein, aber auch nicht greifbarer Natur STAKEHOLDERs verwalten (MANAGES) die SOURCEs 40

Wie ist die Information gespeichert Informationen können auf verschiedenen Detailebenen vorliegen Informationen können formalisiert sein Sie können, in ihrer physischen Form, verschieden aussehen: Texte Grafiken Diagramme Tabellen 41

Warum wurde das OBJECT erstellt Die Begründungen für die Erstellung können als Spezialisierungen von OBJECTs repräsentiert werden Durch TRACES-TO Beziehungen können die Entscheidungen mit den konzeptionalen Objekten verbunden werden Noch weiter Fortgeschritten ist es so auch möglich einzelne Probleme, Argumente, Alternativen, etc. einzubeziehen 42

Wann wurde die Information erstellt Zeitinformationen können als Attribute den Objekten angehängt werden 43

Low-End Benutzung des Meta Modells Grafiken (diese und folgende) aus Toward Reference Models for Requirements Traceability 44

Probleme bei der Low-End Benutzung Änderungen sind nicht wirklich nachvollziehbar Wer hat die Änderung gemacht? Warum wurde die Änderung gemacht? Wie wurde für (und gegen) die Änderung argumentiert? Bei Low-End Benutzung fehlt es bei der Dokumentation der Entscheidungsfindung 45

High-End Benutzung von Verfolgbarkeit Erfassen und nutzen von Verfolgbarkeitsinformationen auf viel höherem Level Unternehmerischere Sicht auf die Dinge Das Modell wird in 4 Teile zerlegt: Requirements Management Rationale Management Designe Allocation Compliance Verification 46

Requirements Management 47

Rationale Management 48

Designe Allocation 49

Compliance Verification 50

Problem der High-End Benutzung Viel Dokumentationsaufwand Große Datenmenge an Informationen muss überblickt werden Viele Teile der Dokumentation erfolgen per Hand zu wenig Unterstützung durch Automatisierung 51

Übersicht Motivation Was ist Verfolgbarkeit Warum Verfolgbarkeit gewährleisten Verbesserungsmöglichkeiten Verfolgbarkeit von Anforderungen im Software-Entwicklungsprozess 52

Verbesserungsmöglichkeiten Verschiedene Traceability Linktypen Abstaktionsmethoden Unterstützung von ad hoc queries für Abfragen Modell-Driven Erstellung von Traces Verbesserungsmöglichkeiten 53