requirements engineering mit dem sap solution...

88
Studiengang Informatik | Fachbereich 3 Requirements Engineering mit dem SAP Solution Manager Diplomarbeit vorgelegt von Scharif Elsawa Mat. Nr. 2003548 [email protected] Gutachter: Prof. Dr. Karl-Heinz Rödiger Dr. Dieter Müller In Zusammenarbeit mit: BTC Business Technology Consulting AG (BTC AG) - Oldenburg - Betreuer (BTC AG): Dipl. Ing. (FH) Arne Steinkamp 19.12.2012

Upload: others

Post on 08-Apr-2020

9 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

Studiengang Informatik | Fachbereich 3

Requirements Engineering

mit dem SAP Solution Manager

Diplomarbeit vorgelegt von

Scharif Elsawa

Mat. Nr. 2003548

[email protected]

Gutachter: Prof. Dr. Karl-Heinz Rödiger

Dr. Dieter Müller

In Zusammenarbeit mit:

BTC Business Technology Consulting AG (BTC AG)

- Oldenburg -

Betreuer (BTC AG):

Dipl. Ing. (FH) Arne Steinkamp

19.12.2012

Page 2: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

Erklärung

Hiermit bestätige ich, dass

die vorliegende Diplomarbeit selbständig durch den Verfasser und ohne Be-

nutzung anderer als der angegebenen Quellen und Hilfsmittel angefertigt wur-

de.

die benutzten Quellen wörtlich oder inhaltlich als solche kenntlich gemacht

wurden.

diese Arbeit in gleicher oder ähnlicher Form noch keiner Prüfungskommission

vorgelegt wurde.

Bremen, den 19.12.2012

__________________

Scharif Elsawa

Page 3: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

Danksagung

An dieser Stelle möchte ich mich bei all denen bedanken, die mich bei der Anferti-

gung meiner Diplomarbeit so kräftig unterstützt haben.

Ich bedanke mich bei der der BTC Business Technology Consulting AG (BTC AG) für

die Zusammenarbeit und die praxisnahe Erarbeitung meiner Diplomarbeit.

Ganz besonders bedanke ich mich bei Prof. Dr. Karl-Heinz Rödiger, der mich mit

sehr viel Engagement, Ideen und Beratung unterstützt hat. Ebenfalls bedanke ich

mich herzlich bei meinem zweiten Gutachter Dr. Dieter Müller.

Meinen ganz speziellen Dank richte ich an meinen Betreuer Dipl. Ing. (FH) Arne

Steinkamp, der mich während meiner Zeit im Unternehmen stets mit Rat und Tat un-

terstützt hat.

Außerdem möchte ich mich bei meinen Eltern bedanken, die mich während des Stu-

diums zu einem großen Teil finanziell unterstützt haben und auch moralisch immer

eine Stütze für mich waren.

Page 4: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

1 Einleitung ............................................................................................................ 1

1.1 Ziel der Arbeit ................................................................................................ 1

1.2 Übersicht über das Dokument ....................................................................... 2

2 Requirements Engineering ............................................................................... 3

2.1 Wichtigkeit des Requirements Engineerings ................................................. 3

2.2 Requirements Engineering – Was ist das? .................................................... 5

2.3 Grundbegriffe und Definitionen ...................................................................... 5

2.4 Kernaktivitäten im Requirements Engineering ............................................. 10

2.4.1 Ermittlung von Anforderungen .............................................................. 10

2.4.1.1 Anforderungsquellen .......................................................................... 10

2.4.1.2 Ermittlungstechniken ......................................................................... 11

2.4.2 Dokumentation von Anforderungen ...................................................... 13

2.4.2.1 Qualitätskriterien für Anforderungen .................................................. 13

2.4.2.2 Glossar .............................................................................................. 15

2.4.2.3 Anforderungen natürlichsprachig dokumentieren .............................. 16

2.4.2.4 Anforderungen modellbasiert dokumentieren .................................... 18

2.4.3 Prüfung von Anforderungen und Konfliktmanagement ......................... 20

2.4.3.1 Prüfung von Anforderungen ............................................................... 20

2.4.3.2 Konfliktmanagement .......................................................................... 23

2.4.4 Requirements Management .................................................................. 26

3 Requirements Engineering: Herleitung eines Soll Prozesses ..................... 30

3.1 Rahmenbedingungen und Abgrenzungen ................................................... 30

3.2 Daten (Attributliste) ...................................................................................... 31

3.2.1 Gesamtbild des RE-Soll-Prozesses ...................................................... 34

3.3 Phasen ........................................................................................................ 36

3.3.1 Aufnahme.............................................................................................. 36

Page 5: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

3.3.2 Qualitätsprüfung .................................................................................... 39

3.3.3 Konfliktmanagement ............................................................................. 41

3.3.4 Aufwandschätzung / Bewertung ............................................................ 43

3.3.5 Freigabeprozess ................................................................................... 44

3.4 Bewertung und Reflexion des Prozesses .................................................... 45

4 Werkzeuge zum Requirements Engineering ................................................. 46

4.1 Arten von RE-Werkzeugen .......................................................................... 46

4.1.1 Spreadsheets ........................................................................................ 47

4.1.2 Wikis ..................................................................................................... 48

4.1.3 Workflow-Tools ..................................................................................... 48

4.1.4 Entwicklungsumgebungen und Modellierungswerkzeuge ..................... 49

4.1.5 Spezielle RE-Werkzeuge ...................................................................... 49

4.2 Beispiel: DOORS ......................................................................................... 50

4.3 Beispiel: Integrity ......................................................................................... 53

4.4 Kriterien für die Werkzeugeinführung .......................................................... 55

4.5 Der SAP Solution Manager ......................................................................... 57

5 Umsetzung (Abbildung) des hergeleiteten RE-Soll-Prozesses .................... 59

5.1 Prozessdefinition ......................................................................................... 59

5.2 Customizing ................................................................................................. 62

5.2.1 Status definieren ................................................................................... 64

5.2.2 Partnerfunktionen definieren ................................................................. 65

5.2.3 Aktionen definieren ............................................................................... 66

5.2.4 Bedingungen definieren ........................................................................ 68

5.2.5 Textschema definieren .......................................................................... 69

5.2.6 Sachverhaltsprofile definieren ............................................................... 70

5.2.7 Kategorie bearbeiten und dem Vorgang zuordnen ............................... 70

Page 6: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

5.2.8 Terminprofil definieren .......................................................................... 71

5.3 Offene Punkte der Umsetzung .................................................................... 72

6 Fazit ................................................................................................................... 73

7 Verzeichnisse ................................................................................................... 74

7.1 Literaturverzeichnis ..................................................................................... 74

7.2 Abbildungsverzeichnis ................................................................................. 76

7.3 Tabellenverzeichnis ..................................................................................... 78

7.4 Anhang ........................................................................................................ 79

Page 7: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

1

1 Einleitung

„ It isn‘t that they can‘t see the solution. It is that they can‘t see the problem! “

[Gilbert Keith Chesterton]

Viel zu oft kommt es vor, dass wir uns den Kopf zerbrechen über eine Lösung, ohne

wirklich verstanden zu haben, was für ein Problem tatsächlich gelöst werden soll.

Oder wir im Berufsalltag zu Besprechungen einladen, ohne vorher zu reflektieren,

welchen Zweck diese erfüllen sollen. So ist es auch häufig in der IT-Welt: Es werden

Funktionen für ein Softwaresystem entwickelt, ohne genau zu wissen, welchen Wert

sie für eventuelle Benutzer ausmachen.

Daher ist es sehr wichtig, sich von vorne herein genau Gedanken zu machen, welche

Anforderungen an ein zu entwickelndes System gestellt werden. Softwaresysteme

werden zunehmend komplexer und es ist daher unumgänglich, ein professionelles

Requirements Engineering in der Entwicklung in Betracht zu ziehen.

Auch SAP Systeme nehmen immer mehr an Komplexität zu. Ohne eine systemati-

sche Vorgehensweise wird es sehr schwer sein, ein komplexes System, welches un-

überschaubar viele Anforderungen enthält, zu erfassen, zu dokumentieren, zu kon-

trollieren und zu verwalten.

1.1 Ziel der Arbeit

Das Ziel der Diplomarbeit ist es deshalb, anhand von aktueller Literatur die genauen

Aktivitäten des Requirements Engineering zu erfassen, um diese anschließend in

einem geeignetem Prozess mit einzubeziehen, da es keinen Standard-RE-Prozess

gibt. Dieser, aus der Literatur hergeleitete Prozess, soll anschließend in das SAP

Tool „SAP Solution Manager“ abgebildet werden. Der SAP Solution Manager ist ein

Application LifeCycle Management Tool für die SAP Landschaft, der auf dem ITIL-

Standard basiert. Neben dem Solution Manager sollen weitere RE-Tools zum Ver-

gleich veranschaulicht werden.

Page 8: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

2

1.2 Übersicht über das Dokument

In Kapitel 2 wird das Thema Requirements Engineering aufgearbeitet und mit den

wichtigsten Aktivitäten des Requirements Engineering beschrieben. Hierzu sollen

insbesondere die Kernaktivitäten, wie zum Beispiel das Ermitteln von Anforderungen,

das Dokumentieren von Anforderungen, das Prüfen von Anforderungen mit dem da-

mit verbundenen Konfliktmanagement und das Requirements Management (das

Verwalten von Anforderungen) beleuchtet werden.

Des Weiteren folgt in Kapitel 3 die Herleitung eines RE-Prozesses. Dabei werden

die wichtigsten Aktivitäten vom Requirements Engineering analysiert und in sinnvolle

Phasen unterteilt. Zudem wird eine angepasste Attributliste veranschaulicht und der

hergeleitete Prozess erläutert.

In Kapitel 4 werden dann die verschiedenen Arten von RE-Werkzeugen aufgezeigt

und anhand von zwei verschiedenen Tools (DOORS und Integrity) beispielhaft dar-

gestellt. Außerdem werden Kriterien für eine geeignete Werkzeugeinführung aufge-

zeigt. Abschließend wird eine Beschreibung von dem SAP Solution Manager erfol-

gen.

In Kapitel 5 soll dann die Umsetzung (in SAP auch oft Abbildung genannt) des her-

geleiteten Prozesses in dem SAP Solution Manager erfolgen. Hierzu wird eine ange-

passte Übersicht aufgezeigt und beschrieben. Screenshots sollen die Abbildung un-

termauern. Anschließend erfolgt eine Beschreibung der Grenzen dieses Prozesses.

In Kapitel 6 werden die Ergebnisse der Diplomarbeit zusammengefasst und sollen

abschließend einen Ausblick über das Thema Requirements Engineering geben. Da-

zu soll beschrieben werden, in wie weit sich der SAP Solution Manager für das Re-

quirements Engineering eignet und wo die Grenzen liegen.

Zuletzt erfolgt eine Angabe der Verzeichnisse, außerdem folgen im Anhang komplet-

te Screenshots aus dem SAP Solution Manager.

Page 9: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

3

2 Requirements Engineering

In den letzten Jahren ist Requirements Engineering ein immer wichtigeres Thema in

der Softwareentwicklung geworden.

In diesem Kapitel wird eine Einführung in das Thema Requirements Engineering fol-

gen, warum es so wichtig ist und wie es aktuell betrieben wird. Hierzu werden die

Kernaktivitäten des Requirements Engineering verdeutlicht..

2.1 Wichtigkeit des Requirements Engineerings

Warum soll man ein System für einen Kunden entwickeln was nicht wirklich den

Kundenwünschen entspricht? Anhand dieser zentralen Frage lässt sich erkennen,

dass man von vornerein, also vor Beginn der Entwicklungsphase, sich genau den

Wünschen des Kunden bewusst ist und diese auch genau versteht und spezifiziert.

Eine Studie der Standish Group von 2010 zeigt, dass gut ein Drittel aller Projekte

erfolgreich abgeschlossen wird. Ein Fünftel wird abgebrochen und die restlichen Pro-

jekte entweder zu spät oder nur mit erhöhtem Budget. [Standish 2011]

Abbildung 1: Gründe für das Scheitern von IT-Projekten (vgl. [Standish 2011])

Jedoch werden Mängel, die in der der Analysephase, also im Requirements Enginee-

ring-Prozess, erst viel zu spät bzw. gar nicht erkannt und können somit für einen ex-

21%

37%

42%

21% Abgebrochen 37% Erfolgreich 42% Zu spät oder über Budget

Page 10: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

4

ponentiellen Anstieg der Projektkosten sorgen. Je später Anforderungsfehler ent-

deckt werden umso höher sind die damit verbundenen Kosten einer Korrektur. Somit

kann ein entdeckter Anforderungsfehler in der Entwicklungs- bzw. Programmierpha-

se die Kosten für dessen Korrektur um einen Faktor 20 erhöhen. Ein Fehler in der

Abnahmephase kann sogar für einen Faktor von 100 sorgen (vgl. [Pohl 2008], S. 11).

Aus diesen Zahlen lässt sich erkennen was für eine Wichtigkeit das Requirements

Engineering im Softwareentwicklungsprozess spielt. Laut [Pohl 2008] wären noch

folgende weitere Hauptgründe für die stetige Bedeutung von Requirements Enginee-

ring aus der Praxis zu erwähnen:

Das Scheitern von Projekten von mangelhaften Anforderungsspezifikationen

Die Herausforderung, innovativere, individuellere und komplexere softwarein-

tensive Systeme schneller, mit höherer Qualität und zu immer geringeren

Preisen auf den Markt zu bringen

Die steigende Bedeutung von Softwaresystemen in zahlreichen Industriezwei-

gen mit wachsenden Funktionsumfängen, engerem Integrationsbedarf mit an-

deren Systemen sowie differenzierterer Nutzung

Meist liegen die Ursachen für ein mangelhaftes Requirements Engineering in den

Anforderungen selbst. Häufig werden diese nicht klar formuliert oder fehlen schlicht-

weg einfach. Bei einer nicht klar formulierten Anforderung kann es dazu führen, dass

das System nicht den Wünschen des Kunden entspricht. Weiterhin entstehen häufig

Unklarheiten aufgrund von Kommunikationsproblemen zwischen Stakeholdern (Pro-

jektbetroffenen) (vgl. [Pohl 2008], S. 11).

Page 11: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

5

2.2 Requirements Engineering – Was ist das?

Dem Requirements Engineering im Entwicklungsprozess kommt die Aufgabe zu, die

Anforderungen der Stakeholder zu ermitteln, zweckmäßig zu dokumentieren, zu

überprüfen und abzustimmen sowie die dokumentierten Anforderungen über den ge-

samten Lebenszyklus des Systems zu verwalten [Pohl 1996].

Die daraus vier herausgeleiteten Hauptaktivitäten des Requirements Engineering

sind: Ermitteln, Dokumentieren, Prüfen von Anforderungen inkl. dem Konfliktma-

nagement (Abstimmen von Anforderungen) und das Requirements Management

(Verwalten von Anforderungen).

Die einzelnen Unteraktivitäten werden in den folgenden Kapiteln näher erläutert. Die

Requirements-Engineering-Phase gilt als die wichtigste Phase in der Software-

Entwicklung überhaupt. Zentrale Frage die sich dabei stellt: „Welchen Nutzen hat es,

ein nach Informatik-Gesichtspunkten perfektes System zu entwickeln, wenn es nicht

das System ist, das die Kunden wünschen?“

2.3 Grundbegriffe und Definitionen

Requirements Engineering und Requirements Management

Eine passende Definition von Requirements Engineering findet sich in [Rupp 2009]

wieder:

Definition Requirements Engineering laut [Rupp 2009]:

Requirements Engineering ist ein systematischer und disziplinierter Ansatz zur Spe-

zifikation und zum Management von Anforderungen mit den folgenden Zielen:

1. Die relevanten Anforderungen zu kennen, Konsens unter den Stakeholdern

über die Anforderungen herzustellen, die Anforderungen konform zu vorgege-

benen Standards zu dokumentieren und die Anforderungen systematisch zu

managen.

Page 12: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

6

2. Die Wünsche und Bedürfnisse der Stakeholder zu verstehen, zu dokumentie-

ren sowie die Anforderungen zu spezifizieren und zu managen, um das Risiko

zu minimieren, dass das System nicht den Wünschen und Bedürfnissen der

Stakeholder entspricht.

Aus der Definition kann man somit herausgreifen, dass Requirements Management

ein Teil bzw. ein paralleler Prozess des Requirements Engineering ist. Requirements

Management beschäftigt sich mit der Pflege, Verwaltung und Weiterentwicklung der

Anforderungen und unterstützt somit den eigentlichen Requirements Engineering

Prozess. Es ergreift alle Maßnahmen um Anforderungen zu strukturieren, für unter-

schiedliche Rollen aufzubereiten sowie konsistent zu ändern und umzusetzen. Die

genauen Tätigkeiten vom Requirements Management werde ich in Kapitel 2.4.4 dar-

stellen und erläutern.

Anforderung

Die Definition laut [IEEE610] und [Rupp et al. 2011] und lautet:

Eine Anforderung ist:

1. Eine Bedingung oder Fähigkeit, die von einem Benutzer (Person oder System)

zu Lösung eines Problems oder zur Erreichung eines Ziels benötigt wird.

2. Eine Bedingung oder Fähigkeit, die ein System oder Teilsystem erfüllen oder

besitzen muss, um einen Vertrag, eine Norm, eine Spezifikation oder andere,

formell vorgegebene Dokumente zu erfüllen

3. Eine dokumentierte Repräsentation einer Bedingung oder Eigenschaft gemäß

1. oder 2. .

Anforderungen dienen im Requirements Engineering allen Beteiligten die Grundlage

für Kommunikation, Diskussion und Argumentation und spiegeln daher die konkreten

Vorstellungen und Ideen der Stakeholder. Zudem beeinflussen sie die zukünftige Ar-

chitektur des zu erstellenden Systems da sie als Basis dienen.

Page 13: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

7

Die daraus resultierende Anforderungsspezifikation(also die Menge der beschriebe-

nen Anforderungen) eignet sich daher sehr gut als Grundlage für eine zukünftige

Vertragsgestaltung. (vgl. [Rupp 2009], S. 13)

Arten von Anforderungen

Anforderungen werden in den drei verschiedenen Arten unterschieden:

Abbildung 2: Arten von Anforderungen

Definition laut IREB [Rupp et al. 2011] für eine funktionale Anforderung:

Eine funktionale Anforderung ist eine Anforderung bezüglich des Ergebnisses eines

Verhaltens, das von einer Funktion des Systems bereitgestellt werden soll.

Funktionale Anforderungen beschreiben somit Aktionen was das System bzw. eine

Komponente zukünftig genau ausführen soll.

Definition laut IREB [Rupp et al. 2011] für eine Qualitätsanforderung:

Eine Qualitätsanforderung ist eine Anforderung, die sich auf ein Qualitätsmerkmal

bezieht, das nicht durch funktionale Anforderungen abgedeckt wird.

Qualitätsanforderungen werden auch oft als nicht-funktionale Anforderung bezeich-

net. Typische Beispiele für Qualitätsanforderungen sind Performance, Verfügbarkeit,

Zuverlässigkeit, die Skalierbarkeit oder die Portabilität bezüglich eines Systems.

Definition laut IREB [Rupp et al. 2011] für eine Randbedingung:

Eine Randbedingung ist eine Anforderung, die den Lösungsraum jenseits dessen

einschränkt, was notwendig ist, um die funktionalen Anforderungen und die Quali-

tätsanforderungen zu erfüllen.

Anforderungen

Funktionale

Anforderungen

Qualitäts-

anforderungen

Rand-

bedingungen

Page 14: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

8

Randbedingungen sind nicht direkt umsetzbar sondern schränken ein System bzw.

dessen Umsetzungsmöglichkeiten ein und sind daher nur schwer oder gar nicht än-

derbar. Beispiele für eine Randbedingung wäre "Das System soll durch Webservices

realisiert werden" oder " Das System soll bis spätestens Ende März auf dem Markt

sein".

Stakeholder

Definition laut IREB [Rupp et al. 2011] für Stakeholder:

Ein Stakeholder eines Systems ist eine Person oder Organisation, die (direkt oder

indirekt) Einfluss auf die Anforderungen des betrachteten Systems hat.

Stakeholder dienen deshalb u.a. als die wichtigste Quelle zur Identifikation für Anfor-

derungen. Es können Personen oder Organisationen sein, die mit dem geplanten

System in irgendeiner Weise beteiligt sind und haben daher Einfluss auf die Anforde-

rungen. Beispiele sind z.B. Nutzer des Systems, Entwickler, Administratoren, Auf-

traggeber, Tester, Regulierungsbehörden oder auch Kontrollgremien sein.

Werden Stakeholder im Requirements Engineering Prozess nicht richtig identifiziert,

kann das fatale Folgen bzgl. des zu realisierenden Systems haben, da fehlende An-

forderungen erst bei der Inbetriebnahme des Systems erkannt werden und eine

nachträgliche Umsetzung dieser Anforderung evtl. mit sehr hohen Kosten verbunden

sein kann.

Page 15: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

9

Einbettung des Requirements Engineering in Vorgehensmodelle

In den sogenannten schwergewichtigen Vorgehensmodellen (wie z.B. dem Wasser-

fallmodell [Royce 1987] oder dem V-Modell [V-Modell 2006]) wird das Requirements

Engineering als eigenständige Einleitungsphase gesehen (s. Abb.3). Somit versucht

man am Ende dieser ersten abgegrenzten Phase eine vollständige Anforderungs-

spezifikation aufzustellen und zu dokumentieren die alle Anforderungen an das zu-

künftige System stellt, beinhaltet.

Abbildung 3: Requirements Engineering als abgeschlossene Phase ([Pohl 2008], S.30)

Im Gegensatz dazu verhält sich das Requirements Engineering bei den sogenannten

leichtgewichtigen Modellen (wie z.B. dem Extreme Programming [Beck 1999] oder

Scrum [Schwaber et al. 2001]) eher als begleitender Prozess. Diese agilen (Synony-

me für agil sind z.B. dynamisch oder flexibel) Vorgehensmodelle basieren darauf,

dass es schwierig sei die kompletten Anforderungen von vornerein zu bestimmen da

sie sich im Laufe eines Projektes verändern können. Somit wird hier das Require-

ments Engineering als ein kontinuierlicher, phasenübergreifender Prozess gese-

hen(s. Abb. 4).

Abbildung 4: Requirements Engineering als begleitender Prozess ([Pohl 2008], S.31)

Entwicklungsprojekt A

RE für System A

Entwicklungsprojekt A

RE für System A

Entwicklungs-

projekt A

RE für System

A

Entwicklungs-

projekt B

RE für System

B

Page 16: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

10

Der Requirements Engineer

Der Requirements Engineer spielt die zentrale Rolle im Requirements Engineering.

Ihm ist wichtige Rolle gegeben so gesagt als "Dolmetscher" zwischen allen Stake-

holdern zu vermitteln, die Bedürfnisse hinter ihren Aussagen zu erkennen und diese

dann so aufzubereiten, dass fachfremde Architekten und Entwickler sie verstehen

und umsetzen können. Der Requirements Engineer muss zudem über genug IT-

Know-how verfügen um sich der Probleme der Entwickler klar zu sein und mit ihnen

gleichberechtigt kommunizieren zu können. Wichtige Eigenschaften die zu erwähnen

wären sind empathische Fähigkeiten, Kommunikationsfähigkeit, Konflikt-

lösungsfähigkeit und Moderationsfähigkeit (vgl. [Rupp et al. 2011], S. 14 ff.).

2.4 Kernaktivitäten im Requirements Engineering

2.4.1 Ermittlung von Anforderungen

In diesem Kapitel werde ich die wichtigsten Anforderungsquellen angeben und erläu-

tern. Anschließend werde ich die aus der Praxis effektivsten Ermittlungstechniken

darstellen und beleuchten.

2.4.1.1 Anforderungsquellen

Laut IREB [Rupp et al. 2011] werden drei verschiedene Anforderungsquellen unter-

schieden: Dokumente, Systeme im Betrieb sowie Stakeholder.

Dokumente hat man eine gute Möglichkeit Anforderungen entnehmen zu können.

Diese Beispiele für Dokumente aus denen man wichtige Informationen entnehmen

könnte sind vor allem aus allgemeingültigen Dokumenten (z.B. Normen, Standards

oder Gesetzestexten), branchen- oder organisationsspezifische Dokumente (z.B.

Fehlerberichte, Schulungsunterlagen oder das Anforderungsdokument des Altsys-

tems).

Page 17: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

11

Systeme im Betrieb können Alt- bzw. Vorgängersysteme aber auch Konkurrenzsys-

teme sein. Stakeholder können auf Basis dieser Systeme (z.B. durch Ausprobieren)

Erweiterungen oder Änderungen als Anforderungen erheben.

Stakeholder sind Personen oder Organisationen die (direkt oder indirekt) Einfluss

auf die Anforderungen haben. Sie sind die wirklichen Wissensquellen für Anforde-

rungen und wurden daher im Kapitel 2.3 näher erläutert.

2.4.1.2 Ermittlungstechniken

Ermittlungstechniken aller Art dienen hauptsächlich der Ermittlung von Anforderun-

gen der Stakeholder. Es gibt aus der Praxis aber keine Universalvorschrift wie man

Anforderungen ermitteln kann. Empfehlenswert ist daher eine Kombination verschie-

dener Techniken. Ich werde folgend die sich aus der Praxis und Literatur ([Rupp et

al. 2011], S. 34 ff.) am effektivsten Techniken kurz erläutern.

Befragungstechniken basieren darauf, die Stakeholder gezielt nach ihren Wün-

schen zu befragen. Daher ist es nötig, dass der Stakeholder sich der Anforderung

bewusst ist und diese auch sprachlich erläutern kann. Klassische Methoden für Be-

fragungstechniken sind Fragebögen und Interviews.

Vorteil der Fragebögen ist das viele Informationen in geringer Zeit eingeholt werden

können und evtl. auch automatisiert ausgewertet können. Nachteile ist der hohe

Aufwand bei der Erstellung und dass die Fragen auf das Wissen bzw. Vermutungen

des Requirements Engineer beruhen. Im Gegensatz dazu ist der große Vorteil bei

den Interviews die direkte Rückkopplung von den Stakeholdern.

Kreativitätstechniken helfen dabei eine erste Vision eines Systems zu entwickeln.

Sie eignen sich daher sehr gut für die Ermittlung von innovativen Ideen um auf un-

bewusste Anforderungen der Stakeholder zu gelangen. Bekannte Beispiele für Krea-

tivitätstechniken sind vor allem das Brainstorming und das Brainstorming paradox.

Beim Brainstorming werden in einer kleinen Gruppe in einer bestimmten Zeit (typi-

scherweise 20 Minuten) Ideen gesammelt und vom Moderator notiert ohne diese zu

Page 18: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

12

bewerten. Vorteil dieser Methode ist das viele Ideen und kurzer Zeit gesammelt wer-

den können und dass diese Ideen auch schnell weitere Ideen entwickeln können.

Nachteil ist dass die Teilnehmer in der gleichen Zeit (auch wenn virtuell über eine

Moderationssoftware) anwesend sein müssen.

Brainstorming paradox basiert auf dem gleichen Prinzip nur dass hier Ideen ge-

sammelt werden die nicht erreicht werden sollen. Der große Vorteil des Brainstor-

mings paradox ist dass sich oft Risiken identifizieren lassen.

Bei allen Kreativtechniken ist vor allem aber eine gute Gruppendynamik gefragt. Als

unterstützende Technik bei den Kreativitätstechniken kann das Mindmapping dienen.

Dokumentenzentrierte Techniken eignen sich gut im Falle einer Ablösung eines

Altsystems durch ein Neusystem da hier eine Identifikation der bestehenden Funktio-

nalitäten erfolgen kann. Dokumentenzentrierte Techniken sollten aber mit Kreativi-

tätstechniken kombiniert werden um dann zusätzlich neue Funktionen an das zu

entwickelnde System zu ermitteln. Bekannte Techniken dieser Kategorie sind die

Systemarchäologie und die Wiederverwendung(Reuse).

Bei der Systemarchäologie werden Dokumente (wie. z.B. Benutzerhandbuch, Test-

fälle, Implementierungscode) als Informationsquelle benutzt. Der große Vorteil bei

dieser Ermittlungstechnik ist das durch die Analyse vom bestehenden Systems si-

chergestellt wird keine der bereits implementierten Funktionalitäten vergessen wird

und falls gefordert diese wieder in dem Neusystem übernommen werden. Nachteil

dieser Methode ist dass sie sehr aufwändig ist und die Dokumente in guter Quali-

tät(z.B. nicht veraltet, etc.) vorhanden sein müssen.

Bei der Wiederverwendung(Reuse) werden Anforderungen von einem schon mal

ähnlich entwickelten System wiederverwendet. Wenn man diese Technik richtig an-

wendet kann man somit sehr viel Einsparungspotential erlangen. Dokumentenzen-

trierte Techniken sollten aber im Allgemeinen mit Kreativitätstechniken kombiniert

werden um an neue Anforderungen und Ideen zu gelangen.

Page 19: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

13

Beobachtungstechniken eignen sich sehr gut wenn die Stakeholder ihre Tätigkei-

ten und Wissen nicht gut in Worte fassen und oder aufgrund ihrer Zeit das Wissen an

den Requirements Engineer vermitteln können. Durch geschicktes Hinterfragen kann

der Requirements Engineer eine gute Sollsituation ermitteln. Hier kommen vorwie-

gend die Feldbeobachtung und das Apprenticing zum Einsatz.

Bei der Feldbeobachtung beobachtet und dokumentiert der Requirements Engineer

den Anwender dessen Handgriffe und Arbeitsabläufe. Großer Vorteil bei dieser

Technik ist dass, auch unbewusste Arbeitsschritte, welche in komplexen Abläufen

stecken, zum Vorschein kommen können, die der Anwender aus Gewohnheit für

selbstverständlich hält.

Beim Apprenticing("in die Lehre gehen") werden die Rollen umgedreht und der der

Requirements Engineer schlüpft in die Rolle des Anwenders nachdem er die Tätig-

keiten des Stakeholders erlernt hat und hat dann die Möglichkeit wie ein Lehrling Ar-

beitsschritte zu hinterfragen. Zusätzlich können Audio- und Videoaufzeichnungen die

Beobachtungstechniken unterstützen. Diese Techniken haben den Nachteil dass sie

meist sehr zeit- und kostenaufwändig werden können.

2.4.2 Dokumentation von Anforderungen

In diesem Kapitel werde ich zunächst die Qualitätskriterien für einzelne Anforderun-

gen (in Anlehnung an [Rupp et al. 2011], S. 52 ff.) darstellen und erläutern. Daraufhin

folgt die Erklärung eines Glossars im Requirements Engineering und im Anschluss

wie man Anforderungen laut [Rupp 2009] und [Rupp et al. 2011] natürlichsprachig

und modellbsiert dokumentieren sollte.

2.4.2.1 Qualitätskriterien für Anforderungen

Um zu erkennen ob eine Anforderung gut ist oder nicht können die Qualitätskriterien

vom IEEE-Standard 830 [IEEE Std 830-1998] für ein Anforderungsdokument auch

für einzelne Anforderungen definiert werden. Diese werden folgend genannt und kurz

erläutert (wobei die wichtigsten drei Qualitätskriterien vollständig, konsistent und kor-

rekt etwas hervorgehoben sind):

Page 20: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

14

Vollständig [IEEE Std 830-1998]:

Jede einzelne Anforderung muss die geforderte und zu liefernde Funktionalität

vollständig beschreiben. Evtl. unvollständige Anforderungen müssen kenntlich

gemacht werden.

Konsistent [IEEE Std 830-1998]:

Eine Anforderung ist konsistent wenn sie über allen Anforderungen und über

sich selbst widerspruchsfrei ist.

Korrekt [IEEE Std 830-1998]:

Eine Anforderung ist korrekt wenn sie die Vorstellung des Stakeholders adä-

quat wiederspiegelt. D.h. sie darf nicht über die Erwartungen des Stakehol-

ders gehen.

Bewertet [IEEE Std 830-1998]:

Die Anforderungen sollten ab einer gewissen Komplexität eines Systems z.B.

nach Wichtigkeit, rechtlicher Verbindlichkeit oder Priorität bewertet werden.

Eindeutig [IEEE Std 830-1998]:

Alle Leser müssen zu einem einzigen konsequenten Verständnis der Anforde-

rung gelangen. (keine anderen Sachverhalte hinein interpretierbar)

Prüfbar [IEEE Std 830-1998]:

Eine Anforderung ist prüfbar, wenn sie (bzw. die Funktionalität) sich durch ei-

nen Test oder Messung nachweisen lässt.

Verfolgbar [IEEE Std 830-1998]:

Eine Anforderung ist nachvollziehbar, wenn sowohl der Ursprung der Anforde-

rung als auch deren Umsetzung und die Beziehung zu anderen Dokumenten

nachvollziehbar sind. Sichergestellt wir dies über einen eindeutigen

Anforderungsidentifikator.

Zusätzlich werden laut [Rupp et al. 2011] folgende Qualitätskriterien hinzugefügt um

die Anforderung als "exzellent" zu bezeichnen:

Gültig und aktuell:

Die dokumentierte Anforderung muss in Hinblick auf den aktuellen Gegeben-

heiten (Vorstellungen der Stakeholder, externe Schnittstellen) aktuell und gül-

tig sein.

Page 21: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

15

Abgestimmt:

Die Anforderung ist korrekt und alle Stakeholder akzeptieren diese als gültige

Anforderung.

Realisierbar:

Ein Entwickler kann bzgl. der Realisierung einer Anforderungen konkret Fak-

ten aufzeigen in Hinsicht auf Umsetzung und evtl. Kosten.

Verständlich:

Die Anforderungen müssen für alle Stakeholder verständlich sein. Hierzu ist

es wichtig die Bedeutung der verwendeten Begrifflichkeiten festzulegen (s.

Kapitel 2.4.2.2)

2.4.2.2 Glossar

Um Konflikte im Requirements Engineering zu vermeiden, ist es notwendig, dass alle

Stakeholder eine konsistente Terminologie verwenden. In Glossaren werden alle

Fachbegriffe definiert, die für das Verständnis eines Projekts notwendig sind. Dazu

werden für jeden Fachbegriff seine Definition, Synonyme für diesen Begriff, verwand-

te Begriffe und Beispiele bzw. Gegenbeispiele aufgelistet. Zum einen helfen Glossa-

re natürlich dabei Missverständnisse zu vermeiden, sie erleichtern aber auch die

Einarbeitung von Mitarbeitern. Allerdings beheben Glossare nur die Vagheit von Be-

griffen, die anderen Nachteile existieren nach wie vor.

Ein Glossar ist eine Sammlung von Begriffsdefinitionen und enthält beispielsweise

Folgendes:

Kontextspezifische Fachbegriffe

Abkürzungen und Akronyme

Alltägliche Begriffe, die im gegebenen Kontext eine spezifische Bedeutung

haben

Synonyme: verschiedene Begriffe mit gleicher Bedeutung

Homonyme: Begriff mit verschiedenen Bedeutungen

Page 22: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

16

2.4.2.3 Anforderungen natürlichsprachig dokumentieren

Oft werden noch Anforderungen an das zu entwickelnde System anhand von natürli-

cher Sprache dokumentiert. Der Vorteil ist der, dass die Stakeholder (weitestgehend)

alles verstehen und - im Gegensatz zur modellbasierten Dokumentation - sich nicht

in eine bestimmte Notation einarbeiten müssen. Trotzdem kommt es aufgrund von

"Transformationseffekten" (also von der persönlichen Wahrnehmung über das damit

verbundene persönliche Wissen bis hin zum sprachlichen Ausdruck) oft zu Missver-

ständnissen. Die im Requirements Engineering häufig eintretenden Transformations-

prozesse sind Nominalisierung, Substantive ohne Bezugindex, Universalquantoren,

unvollständig spezifizierte Bedingungen, unvollständig spezifizierte Prozesswörter.

([Rupp et al. 2011] S.60 ff.)

Um eine Reduzierung dieser sprachlichen Effekte zu reduzieren sollte man sich einer

leicht erlernbaren Satzschablone bedienen.

Definition laut [Rupp et al. 2011]:

Eine Satzschablone (Requirements Template) ist ein Bauplan für die syntaktische

Struktur einer einzelnen Anforderung.

Die folgenden fünf Schritte erläutern die Benutzung der Satzschablone:

1. Festlegen der rechtlichen Verbindlichkeit (Wichtigkeit):

Mit den Modalverben muss(verpflichtend), sollte(wünschenswert) und

wird(wird in Zukunft integriert) lässt sich die rechtliche Verbindlichkeit sehr gut

ausdrücken.

2. Der Kern der Anforderung

Die geforderte Funktionalität (Prozess) steht im Mittelpunkt jeder Anforderung.

Diese Prozesse (Tätigkeiten, Vorgänge) sollten ausschließlich durch Verben

beschrieben werden (z.B. drucken, speichern, etc.).

3. Charakterisieren der Aktivität des Systems

Selbstständige Systemaktivität: Das System führt den Prozess selbst-

ständig durch. (DAS SYSTEM <Systemname> <muss|sollte|wird>

<Prozesswort>)

Benutzerinteraktion: Das System stellt dem Nutzer eine Funktionalität

zu Verfügung (z.B. über eine Eingabe- oder Auswahlmaske) oder tritt

Page 23: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

17

mit ihm in Interaktion. (DAS SYSTEM <Systemname>

<muss|sollte|wird> <wem> DIE MÖGLICHKEIT BIETEN <Prozess-

wort>)

Schnittstellenanforderung: Das System führt eine Aktion aus wenn

Nachrichten oder Daten von Dritten(z.B. Fremdsystem) eintreffen (also

in Abhängigkeit) (DAS SYSTEM <Systemname> <muss|sollte|wird>

FÄHIG SEIN <Prozesswort>)

4. Objekte einfügen

In diesem Schritt sollte man das Objekt und dessen Ergänzungen, für das die

Funktionalität gefordert wird identifizieren. Hierbei werden die Schablone um

das WAS oder WO ergänzt. (Beispiel: Das Bibliothekssystem sollte dem Be-

nutzer die Möglichkeit bieten, einen Benutzerausweis auf dem Netzwerkdru-

cker zu drucken.)

5. Formulierung von logischem und zeitlichen Bedingungen

In dem Schritt legt man die Bedingungen(zeitlich oder logisch) fest, unter der

eine geforderte Funktionalität durchgeführt werden soll. Für eine zeitliche Kon-

junktion sollte man sobald und für die logische falls benutzen. Die Konjunktion

wenn sollte vermieden werden, da sie sowohl für zeitliche als auch logische

Bedingungen angewendet werden kann und daher zu Missverständnissen

führen kann. Durch die Einführung einer Bedingung ändert sich die Satzstel-

lung sodass eine neue Schablone dafür entsteht.

DAS SYS-

TEM SOLLT

E

MUSS

WIRD

-

<wem?>

DIE MÖGLICHKEIT BIE-

TEN

<Prozesswort>.

FÄHIG SEIN

<Prozesswort>.

<Objekt &

Ergänzung

des Ob-

jekts>

<Prozesswort>.

Schritt 1:

Wichtigkeit

Schritt 3:

Art der Funktionalität

Schritt 2:

Funktionalität identifizieren

Schritt 4:

Objekt identifizieren

Abbildung 5: Vollständige Satzschablone ohne Bedingung ([Rupp 2009], S. 162)

Page 24: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

18

Die dargestellten Anforderungsschablonen haben den großen Vorteil da sie sehr ein-

fach zu verstehen sind. Dies gilt insbesondere auch für Personen, die keine Experten

im Bereich der Software Engineering sind. Wichtiger Grund ist dafür die Nähe zur

natürlichen Sprache. Durch die Anwendung dieser Schablonentypen ist eine stark an

die natürliche Sprache angelehnte Formulierung möglich. Die Schablonen können

sowohl für funktionale, als auch für nichtfunktionale Anforderungen verwendet wer-

den. Da schon zu Beginn, durch das Einhalten der Regeln, qualitativ hochwertigere

Anforderungen entstehen können und somit das spätere Verbessern seltener nötig

wird.

Ein großer Nachteil mit der Anwendung der Anforderungsschablonen ist der, dass

mit der zunehmenden Komplexität einer Anforderung diese sehr unübersichtlich wer-

den kann. Es können somit unter Umständen sehr lange und schwer verständliche

Sätze bzw. Anforderungen entstehen.

2.4.2.4 Anforderungen modellbasiert dokumentieren

Zusätzlich können Anforderungen mit diversen Modellen beschrieben werden. Dies

hat den großen Vorteil das grafische (bildhafte) Darstellungen der Anforderungen

besser und schneller verstanden werden können. Dies benötigt aber, dass das Mo-

dell vom Leser bekannt ist. Somit benötigt diese Art der Modellierung im Gegensatz

zur natürlichsprachlichen Dokumentation eine Einarbeitung in die Modelle mit denen

die Anforderung beschrieben ist.

DAS SYS-

TEM SOLLT

E

MUSS

WIRD

-

<wem?>

DIE MÖGLICHKEIT BIE-

TEN

<Prozesswort>.

FÄHIG SEIN

<Prozesswort>.

<Objekt &

Ergänzung

des Objekts

<Prozesswort>.

Wann?

Unter welcher

Bedingung?

Schritt 5: logische oder zeitliche

Bedingung formulieren

Abbildung 6: Die vollständige Satzschablone inklusive Bedingung ([Rupp 2009], S. 166)

Page 25: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

19

Die Unified Modeling Language(UML) hat sich in den letzten Jahren zu einem De-

facto-Standard für modellbasierte Dokumentationen für Softwaresysteme etabliert.

Sie besitzt verschiedene Modelle um eine Softwaresystem von verschiedenen Per-

spektiven (Struktur, Funktion, Verhalten) zu beleuchten. Ich werde einige Modelle

erwähnen die sich in der Praxis als empfehlenswert erwiesen haben und diese kurz

erläutern. Dazu werde ich nicht allzu tief in die einzelnen Modelle eingehen, da sonst

der Umfang der Arbeit zu groß werden würde und ich mich in dieser Arbeit eher auf

die natülichsprachige Dokumentation konzentrieren werde. Für eine detaillierte Be-

schreibung mit zusätzlichen Beispielen finden sich in [Rupp 2009] und [OMG 2007].

Use Cases (Anwendungsfälle) geben einen guten Überblick über die Funktionalitä-

ten eines bestehenden bzw. zukünftigen Systems. Sie setzen sich meist aus Use-

Case-Diagrammen und Use-Case-Spezifikationen zusammen. In den Use-Case-

Diagrammen werden die Funktionalitäten und ihre Beziehungen mit den Akteuren

(Person oder System) dargestellt. Für eine detaillierte Beschreibung für ein Use-

Case kann eine Use-Case-Beschreibung sehr hilfreich sein. Empfehlenswert ist hier

eine Referenzschablone zur Dokumentation von Use Cases zu benutzten. ([Rupp et

al] S.78 ff.])

Zur Modellierung von Anforderungen in der Strukturperspektive eignen sich vor allem

die UML-Klassendiagramme da sie durch ihre vielfältigen Modellelemente eine gro-

ße Beschreibungsmächtigkeit besitzt. Es stellt die verschiedenen Klassen deren

Schnittstellen und ihre Beziehungen(Assoziationen) eines Systems dar. Zusätzlich

beinhaltet es Modellelemente um Operationen auf den Objekten der einzelnen Klas-

sen zu präzisieren. Einen vollständigen Überblick der Modellelemente finden sich in

erwähnten Literaturen wieder.

Als Modellierung in der Funktionsperspektive sind vermehrt die UML-

Aktivitätsdiagramme vorzufinden. Diese Art der Modellierung eignet sich besonders

gut um Abläufe und deren Regeln eines Systems in detaillierter Form darzustellen.

Großer Vorteil ist dass diese Diagramme leicht erlernbar sind solange sie nicht allzu

in die Tiefe gehen.

Für die Anforderungsmodellierung in der Verhaltensperspektive haben sich die UML-

Zustandsdiagramme als sehr geeignet erwiesen. Der Fokus dieser Modellierung

liegt in den Zuständen(Situation bzw. Zeitraum) und Ereignissen die zu Zustandsän-

Page 26: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

20

derungen (Verhaltensänderungen) führen. Vorteil der Zustandsdiagramme ist dass er

durch seine vielen Detailebenen von verschiedenen Stakeholdern genutzt werden

kann. Auch hier verweise ich für detailreichere Informationen auf die Literaturen

[Rupp 2009] und [OMG 2007].

2.4.3 Prüfung von Anforderungen und Konfliktmanagement

Um den Qualitätskriterien für die Dokumentation (s. Kapitel 2.4.2.1) zu entsprechen

müssen einzelne Anforderungen das Anforderungsdokument einer Prüfung unterzo-

gen werden. Hierzu werde ich kurz die Qualitätsaspekte Inhalt, Dokumentation und

Abgestimmtheit kurz erläutern und einige Techniken zur Prüfung von Anforderungen

darstellen. Zudem müssen Konflikte zwischen Stakeholdern identifiziert, analysiert

und aufgelöst werden. Dies geschieht im kontinuierlichen Prozess genannt als "Ab-

stimmung von Anforderungen".

2.4.3.1 Prüfung von Anforderungen

Qualitätsaspekte für Anforderungen

Laut [Rupp et al. 2011] sollten Anforderungen auf die Qualitätsaspekte Inhalt, Doku-

mentation und Abgestimmtheit überprüft werden, die ich im einzeln kurz erläutern

werde.

Der Qualitätsaspekt Inhalt stellt sicher dass die ermittelten und dokumentierten An-

forderungen den Qualitätskriterien für das Anforderungsdokument und für einzelne

Anforderungen (s. Kapitel 2.4.2.1) genügen. In folgender Tabelle sind acht Prüfkrite-

rien um den Qualitätsaspekt Inhalt sicherzustellen.

Der Qualitätsaspekt Dokumentation dient der Überprüfung von Anforderungen und

Anforderungsdokumenten hinsichtlich der Dokumentationsvorschriften wie z.B. Ver-

ständlichkeit der verwendeten Dokumentationsformate. Die Nichteinhaltung kann zu

Page 27: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

21

Unverständlichkeit, Unvollständigkeit oder gar zum Übersehen von Anforderungen

führen. Zusätzlich kann es zu einer Behinderung von Entwicklungsaktivitäten beitra-

gen, wenn diese auf ein bestimmtes Dokumentationsformat aufbauen. In folgender

Tabelle sind fünf Prüfkriterien um den Qualitätsaspekt Dokumentation sicherzustel-

len.

Der Qualitätsaspekt Abgestimmtheit soll sicherstellen dass alle Anforderungen zwi-

schen den Stakeholdern abgestimmt sind. Stakeholder erlangen in der Requirements

Engineering Phase neues Wissen über das System und die kann zur Folge haben,

dass sich die Meinung zu einer Anforderung ändert. Unten sind drei Prüfkriterien für

den Qualitätsaspekt Abgestimmtheit.

Detaillierte Fragen die man bezüglich der Qualitätsaspekte berücksichtigen sollten

finden sich in ([Rupp et al. 2011], S. 103 ff.) wieder.

Techniken zur Prüfung von Anforderungen

Meist werden als Prüftechniken die Reviews eingesetzt. Laut [Rupp et al. 2011] wird

unter den Reviews folgende drei Techniken eingeschlossen: Die Stellungnahme, die

Inspektion und das Walkthrough. Nach [Rupp et al. 2011] empfiehlt es sich zusätzlich

folgende Techniken einzusetzen: Das perspektivbasierte Lesen, die Prüfung durch

Prototypen und dem unterstützendem Einsatz von Checklisten. Folgend werde ich

die einzelnen Techniken in komprimierter Form erläutern. Eine sehr ausführliche Be-

schreibung findet sich in ([Rupp 2009] S.293 ff.) wieder.

Bei der Stellungnahme reicht der Autor seine Anforderungen an eine weitere Person

weiter um diese auf vorgegebene Qualitätskriterien kontrollieren zu lassen. Anschlie-

ßend wird der Autor über identifizierte Mängel aufgeklärt.

Die Inspektion ist eine verläuft nach einem eher striktem Schema und bedarf daher

den größten Zeitaufwand bei den Reviewtechniken. Sie ist in die Phasen Planung,

Übersicht, Fehlersuche, Fehlersammlung und -konsolidierung unterteilt. In der Pla-

nungsphase werden u.a. Ziel und Durchführung der Inspektion festgesetzt. Zusätz-

lich werden hier die Rollen Organisator, einen neutralen Moderator, Autor, Inspekto-

ren und Protokollant besetzt. In der Übersichtsphase erläutert der Autor die Anfor-

derungen um ein gemeinsames Verständnis zu erlangen. In der Phase Fehlersuche

Page 28: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

22

werden durch die Inspektoren mögliche Fehler in den Anforderungen im Team bzw.

individuell aufgedeckt. In der Phase Fehlersammlung werden die identifizierten Feh-

ler gesammelt, konsolidiert (doppelte Fehler oder falsch angenommene Fehler identi-

fiziert), und dokumentiert. Es entsteht letztlich eine Fehlerliste mit Korrekturmaßnah-

men.

Das Walkthrough ist eher ein leichtgewichtiges Review und verläuft weniger strikt

als bei der Inspektion. Es wird in einem kleineren Maß zwischen den Rollen unter-

schieden. Hierzu werden die Rollen Reviewer, Autor und Protokollant meist besetzt.

Beim Walkthrough werden in einer Gruppensitzung identifizierte Qualitätsmängel dis-

kutiert und durch den Protokollanten festgehalten.

Beim Perspektivbasiertes Lesen werden die Anforderungen aus verschiedenen

Perspektiven(Blickwinkel) aus geprüft. Mögliche Perspektiven wären z.B. Kunde bzw.

Nutzer, Softwarearchitekt oder auch Tester. Es können zusätzlich weitere Perspekti-

ven anhand des individuellen Kontexts des Entwicklungsprojekts ergeben. Auch die

Qualitätsaspekte Inhalt, Dokumentation und Abgestimmtheit die im Kapitel 2.4.3.1

dargestellt wurden, können als Perspektive dienen. Evtl. sollten detaillierte Anwei-

sungen für die Durchführung der Prüfung definiert werden (z.B. mit Checklisten)

wenn Prüfer mit einem bestmimten Blickwinkel nicht so wirklich vertraut sind.

Die Prüfung durch Prototypen ist eine effektive Methode um Fehler bzw. Abwei-

chungen zwischen den Vorstellungen der Stakeholder und dem zukünftigen System

zu identifizieren. Hierzu sollte man sich anfangs zwischen einem Wegwerfproto-

typ(wird nicht mehr weiterentwickelt) oder einem evolutionärem Prototyp(wird spä-

ter weiterentwickelt und bedarf daher einen größeren Realisierungsaufwand) ent-

schieden werden. Um eine erfolgreiche Prüfung anhand eines Protottypen zu garan-

tieren sollten für die Prüfer die folgenden Vorbereitungen getroffen werden: Hand-

buch(Information über Bedienung des Prototyps), Prüfszenarien(Nutzungsabläufe)

und Checklisten mit Prüfkriterien(Kriterien anhand derer die Prüfer den Prototypen

überprüfen können).

Der Einsatz von Checklisten kann in jeglicher Art von Prüfung zusätzlich eingesetzt

werden. Hierzu sollten als Quellen u. a. dienen: die drei Qualitätsaspekte, Qualitäts-

kriterien für Anforderungen und Anforderungsdokument sowie die Erfahrung der Prü-

fer aus vergangenen Projekten. Checklisten sollten stetig einer Verbesse-

Page 29: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

23

rung(Mehrdeutigkeit, etc.) unterzogen werden und sollte als Leitfaden während einer

Prüfung(also dem Review) dienen.

2.4.3.2 Konfliktmanagement

Im Requirements Engineering kommt es immer wieder zu Konflikten zwischen Anfor-

derungen. Deshalb sollte der Requirements Engineer durchgehend darauf achten

diese frühzeitig zu erkennen. Zur Abstimmung von Anforderungen an ein zu entwi-

ckelndes System ist es daher erforderlich, Konflikte zwischen Stakeholdern zu iden-

tifizieren, zu analysieren und geeignet aufzulösen. Hierzu werde ich die Phasen Kon-

fliktanalyse, Konfliktauflösung des Konfliktmanagement erläutern. Damit die Auf-

lösung von Konflikten nachvollziehbar wird, ist eine Dokumentation der Konfliktlö-

sung unvermeidbar.

In der Konfliktanalyse wird die Ursache eines Konfliktes identifiziert. Die folgende

Tabelle stellt die verschiedenen Konflikttypen mit einer kurzen Beschreibung dar (in

Anlehnung an [Moore 2003]).

Konflikttyp Beschreibung / Erläuterung

Sach-konflikt

Mangel an Information, durch Fehlinformation oder unterschiedliche Interpre-

tation einer Information.

Beispiel: "Das System soll höchstens eine Sekunde betragen." → Ansicht von

Stakeholder 1: "zu langsam" | Ansicht von Stakeholder 2: "nicht realisierbar")

Interessen-

konflikt

Verschiedene subjektive oder objektive Interessen der Stakeholder.

Beispiel: Stakeholder 1 strebt geringe Kosten an | Stakeholder 2 strebt eine

hohe Qualität an. Der Interessenkonflikt besteht darin, wenn der erste Stake-

holder die Anforderung aus Kostengründen ablehnt, der zweite Stakeholder

die Anforderung aus Qualitätsgründen umsetzten möchte.

Werte-

konflikt

Verschiedene Kriterien (z.B. kulturelle Unterschiede, persönliche Ideale)

Beispiel: Stakeholder 1 bevorzugt Open-Source-Technologie | Stakeholder 2

bevorzugt Closes-Source-Technologie

Beziehungs-

konflikt

Ist durch starke Emotionen, schlechte Kommunikation oder negatives zwi-

schenmenschliches Verhalten der Stakeholder untereinander charakterisiert.

Beispiel: Zwei gleichrangige Stakeholder lehnen gegenseitig ihre Anforderun-

Page 30: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

24

gen ab um sich durch Einbringen ihrer Anforderung in einem Projekt auszu-

zeichnen.

Struktur-

konflikt

Kann bei ungleichen Macht- und Autoritätsverhältnissen auftreten.

Beispiel: Ein Vorgesetzter lehnt prinzipiell Anforderungen von einem bestimm-

ten Mitarbeiter ab, da er ihm die Fähigkeit zur Definition von Anforderungen

abspricht.

Tabelle 1: Konfliktarten

In der Praxis können häufig die auftretenden Konflikte nicht direkt einem bestimmten

Typ zugeordnet werden. Um geeignete Auflösungsstrategien anzuwenden, sollte

man aber die Konflikte auf die oben erwähnten Typen hin untersuchen. [Rupp et al.

2011]

In der Konfliktauflösung werden versucht die identifizierten Konflikte geeignet auf-

zulösen. Eine gute Konfliktauflösung kann viel zu einer positiven Kooperationsbereit-

schaft zum geplanten System der Stakeholder beitragen. Zudem ist es sehr wichtig

und notwendig alle Stakeholder die in einem Konflikt beteiligt sind bei der Konfliktlö-

sung mit einzubeziehen um die Meinung und Standpunkte aller Stakeholder mit ein-

zubeziehen.

Eine Auswahl an verschiedenen Konfliktauflösungsmethoden werde ich in der fol-

genden Tabelle kurz erläutern:

Methode Beschreibung / Erläuterung

Einigung /

Kompromiss

Die Konfliktpartner diskutieren über ihre jeweiligen Informationen, Argu-

mente und Meinungen. Anschließend einigen sich die Stakeholder auf

eine Lösungsalternative. Die Lösungsalternative kann entweder aus ei-

ner Kombination verschiedener Lösungsalternativen sowohl auch einer

völlig neu entwickelte Konfliktauflösung sein.

Abstimmung

Es werden verschiedene Lösungsalternativen vorgestellt und die Stake-

holder haben die Möglichkeit eine Stimme abzugeben. Die am meisten

abgestimmte Alternative wird als Konfliktlösung festgelegt.

Varianten- Durch eine Variantenauswahl oder Parametrierung(also die Eingabe von

Page 31: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

25

bildung Variablen bzw. Übergabewerte) werden verschiedene Systemvarianten

realisiert um somit den verschieden Wünschen der Stakeholder zu ent-

sprechen.

Consider-all-

Facts (CAF)

Es werden wenn möglich alle Einflussfaktoren des Konflikts analysiert

um viele Informationen über den Konflikt zu erhalten. Durch Priorisierung

wird die Wichtigkeit der Einflussfaktoren festgelegt. Als Bewertung kann

anschließend die Plus-Minus-Interesting (PMI) Methode dienen.

Plus-Minus-

Interesting (PMI)

Es werden die drei Kategorien Plus(positiv), Minus(negativ) und

Interesting(weder noch) zur Bewertung der Auswirkungen der Lösungs-

alternativen erstellt. Die Lösungsalternativen in der Kategorie Interesting

sollten weiter analysiert werden um eine genauere Bewertung erheben

zu können.

Ober-sticht-

Unter

Die Konfliktpartei mit dem höheren organisatorischen Rang gewinnt den

Konflikt. Bei gleichrangigen wird die Entscheidung einer übergeordneten

(z.B. Vorgesetzten) überlassen. Die Ober-sticht-Unter Methode sollte

eher angewendet werden wenn andere Lösungstechniken nicht erfolg-

reich waren.

Tabelle 2: Konfliktauflösungsmethoden

Dokumentation der Konfliktlösung

Da mit Sicherheit Konflikte im Requirements Engineering behandelt und geeignet

aufgelöst werden, sollte man darauf achten diese so gut wie möglich zu dokumentie-

ren um diese nachvollziehbar zu machen. Mögliche Gefahr könnte z.B. die Wieder-

holte Behandlung von Konflikten ausmachen. Als weiteren Punkt kann durch eine

gute Dokumentation die Überprüfung von Konfliktauflösungen (z.B. wenn man im

späteren Verlauf herausstellt, dass eine ungeeignete Konfliktlösung gewählt wurde)

nachzuvollziehen.

Page 32: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

26

2.4.4 Requirements Management

Definition laut IREB [Rupp et al. 2011] für Requirements Management:

Das Requirements Management umfasst alle Maßnahmen, die notwendig sind, um

Anforderungen zu strukturieren, für verschiedene Rollen aufzubereiten sowie konsis-

tent zu ändern und umzusetzen.

Das Requirements Management beschäftigt sich damit, die dokumentierten Anforde-

rungen als auch die damit verbundenen Informationen über den gesamten Lebens-

zyklus des Systems bereitzustellen und angebracht zu strukturieren. Die mit dem

Requirements Management verbundenen Aktivitäten bzw. Aufgaben – Sichten auf

Anforderungen, Attributierung, Priorisierung, Verfolgbarkeit, Versionierung und Ände-

rungsmanagement von Anforderungen – werde ich im Folgenden erläutern.

Sichten auf Anforderungen

Um die Übersicht über die Menge an Anforderungen zu behalten, ist es unerlässlich

einen selektiven Zugriff und somit das Filtern von Anforderungen in Abhängigkeit

von der Verwendung vorzunehmen. Es sollten somit verschiedene Sichten für ver-

schiedene Rollen (Softwarearchitekt, Programmierer, Projektmanager, Tester) zur

Verfügung stehen, da z.B. einerseits der Projektmanager die Aufwände für die Um-

setzung der Anforderungen und andererseits der Requirements Engineer die Anzahl

der Anforderungen die noch nicht formuliert sind einsehen. Eine bestimmte Sicht auf

Anforderungen kann aber auch für verschiedene Rollen verwendet werden (vgl.

[Rupp et al. 2011], S. 129 ff.).

Attributierung von Anforderungen

Um die relevanten Informationen(Attribute – bestehend aus Attributtyp und Attribut-

wert) für eine Anforderung festzuhalten, hat es sich in der Praxis bewährt eine Art

schablonenbasierte Attributierung zu benutzen. Diese Schablone kann man als eine

Tabelle betrachten in dem diese Informationen gesammelt werden. Wichtige Informa-

Page 33: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

27

tionen über eine Anforderung wären beispielsweise der eindeutige Identifikator, der

Name, die Beschreibung, Autor und weitere Verantwortliche der Anforderung.

Attributname Belegung des Attributs

Anforderungsnummer (ID) z.B. Anf-123

Anforderungsname z.B. Zusätzliche Bestätigung beim speichern

Beschreibung z.B. Das System sollte dem Benutzer beim Speichern

zusätzlich ein Bestätigungsfenster anzeigen.

Tabelle 3: Beispiel für eine Attributierung

Die Menge aller Attribute bezeichnet man als Attributschema. Dieses Attributschema

kann sich unter Berücksichtigung folgender Aspekte unterscheiden (vgl. [Rupp et al.

2011], S.126):

Spezifische Merkmale eines Projekts z.B. Projektgröße, lokale bzw. verteilte

Entwicklung oder Projektrisiko

Vorgaben seitens des Unternehmens, z.B. Unternehmensstandards und

-vorschriften

Eigenschaften und Vorschriften des Anwendungsgebiets, z.B. Referenzmodel-

le, Modellierungsvorschriften, Standards

Randbedingungen und Restriktionen des Entwicklungsprozesses, z.B. Haf-

tungsrecht und Prozessstandards

Ein angepasstes Attributschema werde ich in Kapitel 3.2 darstellen und erläutern.

Der große Vorteil der schablonenbasierten Weise der Informationsdarstellung ist der,

dass der Leser der Anforderung (z. Auftraggeber, Entwickler, etc.) gleichartige Infor-

mationen am gleichen Ort wieder findet. Speziell für den Requirements Engineer bie-

tet die schablonenbasierte Anforderungsattributierung darüber hinaus den Vorteil,

dass er wichtige Informationen nur schwer übersehen kann und dass diese Informa-

tionen, unterstützt durch die Schablonenstruktur und die vorgegebenen Attributwert-

bereiche, in der Regel auch zweckmäßig und richtig dokumentiert werden (vgl. [Rupp

et al. 2011], S.126).

Page 34: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

28

Priorisierung von Anforderungen

Anforderungen im Requirements Engineering werden in der Regel einem

Priorisierungsprozess unterzogen. Eine Anforderung kann durch einen oder durch

mehrere Attributtypen (z.B. Priorität des Auftraggebers, Priorität hinsichtlich der

Dringlichkeit der Umsetzung) festgelegt werden. Typische Priorisierungskriterien

sind: Kosten, Risiko, Schaden bei nicht erfolgreicher Umsetzung, Volatilität, Wichtig-

keit und Zeitdauer für die Umsetzung (vgl. [Rupp et al. 2011], S. 132).

Verfolgbarkeit und Versionierung von Anforderungen

„Die Verfolgbarkeit(Traceability) einer Anforderung ist die Fähigkeit, eine Anforde-

rung über den gesamten Lebenszyklus des Systems hinweg nachvollziehen zu kön-

nen“ ([Rupp et al. 2011], S. 136). Um eine Anforderung im Nachhinein zurückverfol-

gen zu können, muss eine Verfolgbarkeit sichergestellt werden um eine gewisse

Transparenz über die Historie einer Anforderung zu ermöglichen. Historie ist ein Pro-

tokoll, das immer erweitert wird welche Person an welchem Datum zu welcher Uhr-

zeit, gleichgültig ob das Ausbessern eines Rechtschreibfehlers, eine fachliche inhalt-

lich Änderung oder ein Zustandsübergang.

Um die Verfolgbarkeit erleichtern zu machen sollte man eine Versionierung der An-

forderung vornehmen. Die neue Version einer Anforderung sollte mit der alten ver-

knüpft sein. Der Vorgang einer Versionierung ist in detaillierter Form in ([Rupp 2009],

S. 400 ff.). wiederzufinden.

Änderungsmanagement von Anforderungen

Über den gesamten Entwicklungs- und Lebenszyklus eines Systems können sich

Anforderungen verändern. Zum Beispiel können neue Anforderungen hinzukommen

oder bestehende Anforderungen geändert oder entfernt werden. Ursachen für Anfor-

derungsänderungen sind sehr vielseitig z.B. ein Nutzungswandel der Stakeholder,

Gesetzesänderungen oder zusätzliche Konkurrenz am Markt. Anforderungsänderun-

gen sind für sich nichts Negatives da es der Indikator ist, dass sich die Stakeholder

mit dem System mehr auseinandergesetzt haben. (vgl. [Rupp et al. 2011], S. 146)

Page 35: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

29

Für die Bearbeitung der Änderungsanträge ist typischerweise das Change-Control-

Board (CCB) zuständig. Das CCB entscheidet über die Annahme bzw. die Ableh-

nung von Änderungsanträgen. Es priorisiert die Änderungsanträge und schätzt die

Auswirkungen der Änderung auf alle Entwicklungsartefakte sowie die zur Umsetzung

der Änderung benötigten Ressourcen ein. Das prinzipielle Vorgehen bei Änderungen

mit den genauen Änderungsinformationen finden sich in ([Rupp et al. 2011], S. 147

ff.) wieder.

Page 36: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

30

3 Requirements Engineering: Herleitung eines

Soll Prozesses

Innerhalb dieses Kapitels wird eine Begründung des hergeleiteten Soll-Prozesses im

Bereich des Requirements Engineering beleuchtet.

Zunächst werden Eingrenzungen, die bezüglich des Requirements Engineering ent-

standen sind, erwähnt. Anschließend folgt die Veranschaulichung der angepassten

Attributliste einschließlich einer kurzen Erläuterung der Attribute.

Im Anschluss daran wird das Gesamtbild des RE-Soll-Prozesses dargestellt, inner-

halb der weiteren Kapitel findet eine genauere Betrachtung der einzelnen Phasen

des Prozesses statt. Abschließend erfolgt eine Reflexion des Prozesses.

3.1 Rahmenbedingungen und Abgrenzungen

In Kapitel 2 wurde ausführlich das Requirements Engineering eruiert und unter Zuhil-

fenahme aktueller Literatur fundiert belegt. Innerhalb dieses Kapitels sollen Rahmen-

bedingungen und Einschränkungen bezüglich des hergeleiteten RE-Soll-Prozesses

dargestellt und begründet werden.

Der Soll-Prozess des Requirements Engineering im Rahmen dieser Diplomarbeit

wird sich, beginnend mit der Definition von Anforderungen über Qualitätsprüfungen

und Konfliktmanagement bis hin zur Entscheidung eines Verantwortlichen innerhalb

eines entsprechenden Anforderungsprofils zuspitzen.

In der Theorie befasst sich das Requirements Engineering vollständig mit der Ermitt-

lung von Anforderungen (s. Kapitel 2.4.1) mit Zuhilfenahme entsprechender erforder-

licher Ermittlungstechniken bis zur schlussendlichen kompletten Anforderungsspezi-

fikation.

Im Rahmen dieser Diplomarbeit wird es sich um Sachverhalte handeln, die eine Än-

derung bzw. Anpassung in einem bestehenden SAP-System darstellen sollen.

Page 37: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

31

Hierzu können in einer grafischen Benutzeroberfläche (GUI) einzelne Schwerpunkte

eingetragen werden. Die erwähnten und erläuterten Ermittlungstechniken im Requi-

rements Engineering (s. Kapitel 2.4.1.2) können im Vorfeld natürlich angewendet

werden, um Anforderungen zu erheben, wobei aber weiterhin kein gesonderter Fo-

kus darauf gesetzt wird.

Zur Dokumentation der Anforderungen wird ausschließlich die natürliche Sprache

benutzt. Hierzu sollten aber, wie in Kapitel 2.4.2.3 erwähnt, Satzschablonen als Un-

terstützung bzw. Hilfestellung für die Formulierung einer Anforderung dienen. Ent-

sprechend positive Beispiele werden in Kapitel 3.3.2 dargelegt.

Es ist die Aufgabe des Requirements Engineer, welche Techniken er für die Auflö-

sung eines Konfliktes einsetzt, ein detaillierter Prozessdurchlauf ist daher für die

Phase des Konfliktmanagements nicht vorgesehen.

3.2 Daten (Attributliste)

Wie in Kapitel 2.4.4 schon erwähnt, ist es laut [Rupp et al. 2011] empfehlenswert,

eine schablonenbasierte Attributierung der Anforderungen einzusetzen. Im Folgen-

den wird eine zusammengestellte Attributliste aufgeführt, um die wichtigsten Daten in

punkto Anforderungen zu sammeln. Die Liste basiert auf ([Rupp et al. 2011], S. 126

ff.) und ([Ebert 2012], S. 110 ff.).

Attributname Bedeutung

Anforderungsnummer (ID) Die eindeutige Identifikation einer Anforderung, die in allen Pro-

jekten eingehalten wird.

Anforderungsname (Bezeich-

nung) Eindeutiger, charakterisierender Name der Anforderung.

Beschreibung Beschreibt den Inhalt der Anforderung.

Quelle

Ursprung der Anforderung. Sollte in der Lage sein, die Anforde-

rung konkret zu beschreiben und ein Budget zur Realisierung zur

Verfügung stellen.

Autor Erfasser dieser Anforderung, der später als Ansprechpartner zur

Verfügung steht, wenn weitere Informationen nötig sind.

Juristische Verbindlichkeit /

Wichtigkeit

Benennt die juristische Verbindlichkeit für die Anforderung bzw.

die Wichtigkeit [muss (verpflichtend), sollte (wünschenswert), wird

(in Zukunft integriert).

Anforderungstyp Benennt abhängig vom eingesetzten Differenzierungsschema

Page 38: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

32

den Typ der Anforderung (funktionale Anforderung, Qualitätsan-

forderung, Rahmenbedingung).

Release Benennt das Release, in dem die Anforderung umgesetzt werden

soll.

Priorität

Benennt die Priorität der Anforderung hinsichtlich der gewählten

Merkmale zur Priorisierung, z. B. Bedeutung für die Akzeptanz

am Markt, Reihenfolge der Umsetzung, Schaden bzw. Opportuni-

tätskosten durch Nichtrealisierung.

Abhängigkeiten / Querbezüge

Benennt Beziehungen zu anderen Anforderungen. Zum Beispiel,

wenn bekannt ist, dass eine Realisierung dieser Anforderung die

vorherige Realisierung einer anderen Anforderung voraussetzt.

Vorbedingung(en)

Benennt evtl. Vorbedingung(en) die für diese Anforderung nötig

sind.

Erstelldatum Das Erstelldatum der Anforderung.

Versionsnummer Aktueller Versionsstand der Anforderung.

Stabilität

Stabilität in dem Sinne, ob diese Anforderung künftig evtl. Verän-

derungen ausgesetzt ist (mögliche Unterscheidung: fest, gefes-

tigt, schwankend).

Historie Stellt die Historie (also die verschiedenen Änderungen) dar.

Status der Überprüfung Benennt den aktuellen Status der Validierung, z. B. ungeprüft, in

Prüfung, überprüft, fehlerhaft, in Korrektur.

Status der Einigung Benennt den aktuellen Status der Abstimmung (z. B. nicht abge-

stimmt, abgestimmt, konfliktär).

Aufwand Tatsächlicher Umsetzungsaufwand der Anforderung.

Kosten Benennt die Realisierungskosten der Anforderung.

Zusätzliche Information

In diesem Attribut können beliebige, für relevant erachtete Infor-

mationen, zu dieser Anforderung dokumentiert werden.

Zum Beispiel, wenn die Abstimmung dieser Anforderung auf dem

nächsten Treffen mit einem Auftraggeber vorgesehen ist.

System oder Geschäftsprozess Benennt das System oder den Geschäftsprozess, indem die An-

forderung hauptsächlich umgesetzt werden soll.

Fertigstellungstermin (Realisie-

rungsdatum) Benennt den gewünschten Fertigstellungstermin.

Projektleiter Benennt den Projektleiter des des Aufgabenbereichs, in dem die

Anforderung zukünftig umgesetzt werden soll.

Requirements Engineer

Benennt den Requirements Engineer bzw. das RE-Team, der/das

für diese Anforderung zuständig ist bzw. war.

In Konflikt stehende Anforde- Soll Anforderungen benennen, die mit der aktuellen Anforderun-

Page 39: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

33

rung(en) gen in Konflikt stehen.

Grund der Ablehnung / Zu-

rückstellung

Dokumentiert den Grund in Bezug auf eine Entscheidung über die

Anforderung im Falle einer Ablehnung oder Zurückstellung.

Tabelle 4: Attributliste

Page 40: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

34

3.2.1 Gesamtbild des RE-Soll-Prozesses

Phase: Aufwandsschätzung und

Bewertung

Phase: Freigabe

Pflichtattribute nach Vorgaben ausfüllen

Anforderung stellenAnforderer / Stakeholder

Alles nötige komplett und

korrekt?

Requirements Engineer

(Team; Org. Einheit)

Neue Begrifflichkeiten?

Ja

Glossar aktualisieren

Ja

Grobe Aufwand- und

Kostenschätzung (PERT-Schätzung) / Priorität festlegen

Nein

Gibt es Konflikte?

Entwickler / Projektleiter

Ja

Konfliktlösung durch Anforderer

von dem in Konfliktstehenden +

Projektleiter

Verantwortlichen (Je nach

Kostenhöhe) befragen

Nein

Entscheidung über Anforderung

Anforderung ablehnen

Anforderung zurückstellen

Anforderung freigeben

Grund dokumentieren und

Anforderer mitteilen

Grund dokumentieren und

Anforderer mitteilen

Konflikt dokumentieren

Die im Konflikt stehenden

Anforderungen anpassen

Requirements Engineer

(Team; Org. Einheit)

Phase: Qualitätsprüfung

Prüfung 2: Abstimmung / Konfliktmanagement

Phase: Aufnahme

Konflikt gelöst

Nein; zurück an Anforderermit Begründung

Abbildung 7: Gesamtbild des RE-Soll Prozesses

Page 41: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

35

Die obige Abbildung 7 stellt den Prozess als Ganzes dar. Die einzelnen Phasen wer-

den in den folgenden Kapiteln näher dargestellt und begründet. Hierzu soll der Bezug

zur Literatur veranschaulicht werden und verdeutlicht werden, um näher zu eruieren,

welche Personen bzw. Rollen in den einzelnen Phasen agieren.

1. Phase: Aufnahme

Aufnahme der Anforderung mit den zugehörigen Attributen.

2. Phase: Qualitätsprüfung

Die Anforderung auf die Qualitätskriterien hin überprüfen.

3. Phase: Abstimmung / Konfliktmanagement

Hier werden eventuelle Konflikte aufgedeckt und aufgelöst bzw. abgestimmt.

4. Phase: Aufwandsschätzung / Bewertung

In dieser Phase erfolgt eine Kosten- und Aufwandsschätzung. Zusätzlich sollte

spätestens hier eine Priorität feststehen.

5. Phase: Freigabe

In dieser Phase erfolgt ein entsprechender Genehmigungsschritt über die An-

forderung.

Page 42: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

36

3.3 Phasen

3.3.1 Aufnahme

Abbildung 8: Phase: Aufnahme

Als Ausgangspunkt ist eine Anforderung nötig, um einen Anforderungsprozess aus-

zulösen. Diese Voraussetzung kann in Form einer wünschenswerten Funktion aus-

gedrückt werden, aber auch eine Änderung in einem bestehenden System beinhal-

ten. Im SAP-Bereich handelt es sich meist um eine Änderung bzw. Anpassung in

einem bestehenden System.

Diese Anforderung wird von einem berechtigten Anforderer (Stakeholder) aufgege-

ben, der anhand einer „Tabelle“ bzw. durch Formulareingaben innerhalb einer grafi-

schen Benutzeroberfläche (GUI) agiert. Nachfolgend sind Angaben aufgelistet, die zu

belegen wären. Eine Erklärung der Attribute erfolgte innerhalb einer Attributtabelle in

Kapitel 3.2. Folgend wird kenntlich gemacht (durch Unterstreichung), welche Attribute

automatisch vervollständigt werden:

<Anforderungsnummer (ID)>, <Anforderungsname>, <Beschreibung>, <Quelle>,

<Autor>, <Juristische Verbindlichkeit / Wichtigkeit>, <Anforderungstyp>, <Release>,

<Erstelldatum>, <Versionsnummer>, <Historie>,

Folgende Attribute könnten sowohl in der derzeitigen als auch in weiteren Phasen

des RE-Soll-Prozess besetzt bzw. geändert werden:

<Priorität>, <Abhängigkeiten / Querbezüge>, <Vorbedingung(en)>, <Zusätzliche In-

formation>, <System oder Geschäftsprozess>, <Fertigstellungstermin>, <Stabilität>

Page 43: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

37

Da die Problematik und der Kern in der Beschreibung der Anforderung liegen, sollte

diese mithilfe einer Schablone (Template) erstellt werden, wie im Kapitel 2.4.2.3 er-

läutert. Hierdrauf wird am Schluss dieses Kapitels näher eingegangen und sowohl

positive als auch negative Beispiele gegenübergestellt.

In der Aufnahme-Phase kann der Anforderer bereits Vorbedingung(en) oder Abhän-

gigkeiten angeben, wenn ihm diese bekannt sind.

Eine Vorbedingung setzt andere Kriterien voraus als eine Voraussetzung, die vor-

gegeben werden muss, damit die Ausführung einer Funktion ein definiertes Ergebnis

erbringt (z. B. „um diese Funktion umsetzen zu können, muss das Enhanced

Package 5.0 installiert sein“). Besteht eine Vorbedingung, sollte diese demnach in

die Anforderung eingetragen und dokumentiert werden. Unterstützend wirken würden

eine Zeitschiene, in der vermerkt ist, zu welchem Zeitpunkt diese Vorbedingung zu

erfüllen ist.

Besteht eine Abhängigkeit (eine andere Anforderung muss zuerst realisiert werden,

um die neue Anforderung umsetzen zu können) sollte diese ebenso vermerkt und

dokumentiert werden. Eine optimale Lösung bestände darin, einen Verweis (Hyper-

link) auf die in Abhängigkeit stehende Anforderung zu setzen. Auch an dieser Stelle

wäre eine Zeitschiene zu empfehlen, um die Reihenfolge für eine Umsetzung der

Anforderungen übersichtlich zu erfassen.

Beschreibungsvorgaben

Wie in Kapitel 2.4.2.3 schon dargestellt, wird mit dem Ansatz der Anforderungs-

schablonen eine schnelle und einfache Erzeugung qualitativ hochwertiger Anforde-

rungen verfolgt. Der Ansatz dieser Vorgehensweise beruht darauf, die Syntax der

natürlichen Sprache etwas zu beschränken, aber trotzdem gleichzeitig ausdrucks-

stark zu sein. Der Vorteil von Anforderungsschablonen soll daher auch innerhalb des

RE-Soll-Prozesses in einer Umsetzung Beachtung finden. Folgend werden Beispiele

für „gute Anforderungen“, die mithilfe der Anforderungsschablonen erstellt wurden (s.

Abbildung 5 und Abbildung 6 im Kapitel 2.4.2.3), dargelegt.

Page 44: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

38

Beispiele ohne Bedingung:

Selbstständige Systemaktivität (verpflichtend):

Das System muss die Kundendaten permanent speichern.

Benutzerinteraktion (verpflichtend):

Das System muss dem Kunden die Möglichkeit bieten, sich über Seminare

und Veranstaltungen zu informieren.

Benutzerinteraktion (wünschenswert):

Das System soll dem Seminarsachbearbeiter die Möglichkeit bieten, Semi-

nare und Veranstaltungen mit selbst erstellten Suchanfragen auszuwerten.

Schnittstellenanforderung (wünschenswert):

Das System muss fähig sein, dem Buchhaltungssystem Rechnungsdaten-

sätze mindestens einmal am Tag zur Verfügung zu stellen.

Beispiele mit Bedingungen:

Selbstständige Systemaktivität (verpflichtend):

Falls ein Kunde im Zahlungsverzug ist, muss das System eine neue Buchung

nicht erlauben.

Benutzerinteraktion (wünschenswert):

Falls ein Kunde seit mehr als einem Jahr keine Bestellung mehr aufgegeben

hat, soll das System jedem Administrator die Möglichkeit bieten, diesen

Kunden zu löschen.

Schnittstellenanforderung (verpflichtend):

Sobald ein Administrator innerhalb der Kundenverwaltung einen Kunden

auswählt, muss das System fähig sein, ihm den Namen des Kunden, seine

Adresse und die letzten drei Bestellungen anzuzeigen.

Page 45: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

39

3.3.2 Qualitätsprüfung

Abbildung 9: Phase: Qualitätsprüfung

Anschließend wird die Anforderung bzw. die ausgefüllte Attributtabelle gesichert und

an den Requirements Engineer (Anforderungsmanager) weitergegeben, der den Sta-

tus als aktueller Bearbeiter erhält. Dieser manifestiert sich häufig in einem Team bzw.

als eine organisatorische Einheit, die für Anforderungen bzw. für Anforderungsprü-

fungen zuständig ist. Im Folgenden werde ich mich aber im weiteren Verlauf der Ar-

beit auf den Begriff „Requirements Engineer“ festlegen. Nachdem eine entsprechen-

de Anforderung somit dem Requirements Engineer vorgelegt wird, soll diese auf

Vollständigkeit und Richtigkeit der Attributfelder kontrolliert werden. Die Überprüfung

der Felder, hauptsächlich die Beschreibung, sollte nach Qualitätskriterien hin unter-

sucht werden (wie in Kapitel 2.4.3.1 beschrieben). Bei bestehenden Fehlern inner-

halb der Anforderung, wird diese wieder an den Anforderer mit einer Beschreibung

der Ungenauigkeiten (z. B. als E-Mail) zurückgeschickt.

Werden vom Requirements Engineer bereits jetzt Konflikte mit anderen Anforderun-

gen erkannt, sollten diese in dem Attribut <In Konflikt stehende Anforderung(en)>

kenntlich machen, um diese in der anschließenden Phase des Konfliktmanagements

geeignet aufzulösen.

In den Soll-Prozess wird auch die Pflege eines Glossars (Kapitel 2.4.2.2) einfließen.

Bestehen laut dem Requirements Engineer keine Fehler innerhalb der Anforderung

bzw. hat er eine korrigierte Anforderung erhalten, sollte noch überprüft werden, ob

besondere Begrifflichkeiten benutzt worden sind, die in zukünftigen Prozessen evtl.

Page 46: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

40

anders zu deuten sind (z. B. Synonyme oder Homonyme). Diese sollten mit einer

eindeutigen Beschreibung in das Glossar aufgenommen werden, um in Zukunft Wi-

dersprüche mit spezifischen Fachbegriffen innerhalb eines Projektes zu vermeiden.

Folgende Attributfelder sind in dieser Phase vom Requirements Engineer auszufül-

len:

<Projektleiter>, <Requirements Engineer>, <Status der Überprüfung>

Folgende Attribute können sowohl in der aktuellen Phase als auch in weiteren Pha-

sen angepasst werden:

<In Konflikt stehende Anforderung(en)>, <Priorität>, <Abhängigkeiten / Querbezü-

ge>, <Vorbedingung(en)>, <Zusätzliche Information>, <System oder Geschäftspro-

zess>, <Fertigstellungstermin>, <Stabilität>

Page 47: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

41

3.3.3 Konfliktmanagement

Abbildung 10: Phase - Konfliktmanagement

In der Phase des Konfliktmanagements werden Anforderungen gegenüber dem Re-

quirements Engineer auf Konflikte mit weiteren Voraussetzungen überprüft. Somit

wird in der zweiten Prüfung die Abgestimmtheit verifiziert.

Werden keine Konflikte entdeckt, kann die Anforderung einem Verantwortlichen

bzw. dem Entscheider vorgelegt werden. Dieser Prozessschritt wird im anschließen-

den Unterkapitel erläutert.

Werden Konflikte hinsichtlich dieser Anforderung entdeckt, sollte der Requirements

Engineer sich darum kümmern, diese Unstimmigkeiten geeignet aufzulösen bzw.

mit den betroffenen Stakeholdern abzustimmen. Besteht dadurch ein Konflikt, sollte

ein Vermerk zu der in Ungereimtheit stehenden Anforderung gemacht werden. Die-

ser sollte dokumentiert werden und zu einer Konfliktlösung führen. Hierzu sollte der

Requirements Engineer alle an dieser Anforderung bzw. am Konflikt beteiligten Sta-

Page 48: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

42

keholder kontaktieren, um eine Abstimmung zu finden. Verschiedene Konfliktlö-

sungsmethoden wurden im Kapitel 2.4.3.2 vorgestellt und erläutert. Die in Unstim-

migkeit stehenden Anforderungen sollten mithilfe aller Beteiligten erläutert und ange-

passt werden. Dieses kann auch gerne über eine virtuelle Konferenz geschehen.

Nach dieser Phase sollten folgende Attribute besetzt werden:

<Status der Einigung>, <In Konflikt stehende Anforderung(en)>

Folgende Attribute können gegebenfalls angepasst werden:

<Stabilität>, <Abhängigkeiten / Querbezüge>, <Zusätzliche Information>, <Vorbedin-

gung(en)>

Page 49: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

43

3.3.4 Aufwandschätzung / Bewertung

Abbildung 11: Phase: Aufwandschätzung / Bewertung

Nachdem eventuelle Konflikte aufgelöst wurden, kann die Anforderung dem Projekt-

leiter oder auch einem vorläufigen Entwickler vorgelegt werden, damit dieser eine

grobe Schätzung (z. B. eine PERT-Schätzung) geben und Angaben zu Kosten und

Aufwand in die Anforderung eintragen kann. Evtl. kann hier nochmals die Priorität

bzgl. der Anforderung angepasst werden. Zudem kann der Projektleiter weitere Ab-

hängigkeiten oder Vorbedingungen angeben, sofern diese bis zum jetzigen Zeitpunkt

noch nicht entdeckt wurden.

Somit wären folgende Attribute zu besetzen:

<Aufwand>, <Kosten>

Anpassungen können in den folgenden Attributen getroffen werden:

<Stabilität>, <Abhängigkeiten / Querbezüge>, <Zusätzliche Information>, <Vorbedin-

gung(en)>, <Priorität>, <Fertigstellungstermin>

Page 50: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

44

3.3.5 Freigabeprozess

Nachdem die Anforderung soweit aufbereitet wurde, mögliche Konflikte behandelt

und eine Schätzung abgegeben wurde, kann eine Entscheidung über die Vorge-

hensweise getroffen werden. Je nach Kostenhöhe sollte ein geeigneter Verantwortli-

cher kontaktiert und diesem die Anforderung vorgelegt werden. Zum Beispiel könnte

der Fachbereich eigenhändig eine Entscheidung über die Aufgabenstellung abge-

ben, wenn diese im Rahmen des Budgets liegt. Bei höheren Kosten sollte die Ent-

scheidung von einem Gremium bzw. vom Vorstand getroffen werden.

Eine Anforderung kann demnach abgelehnt, zurückgestellt oder freigegeben werden.

Im Falle einer Ablehnung oder Zurückstellung (wenn es sich zum Beispiel um eine

sinnvolle Anforderung handeln, diese aber zu einem späteren Zeitpunkt eventuell

umgesetzt werden sollte) sollte der Grund dokumentiert werden und dem Anforderer

diese Begründung mitgeteilt werden.

Demnach sollten folgende Attribute vervollständigt werden:

<Zusätzliche Information>, <Priorität>, <Fertigstellungstermin>, <Grund der Ableh-

nung / Zurückstellung>

Page 51: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

45

3.4 Bewertung und Reflexion des Prozesses

Der hergeleitete Prozess sollte weitgehend alle in der Theorie beschriebenen Aktivi-

täten beinhalten. Im Unterkapitel wird ein hergeleiteter AM-Prozess der Theorie ge-

genübergestellt.

Aus Kapitel 2.4.1.2 lässt sich erkennen, dass eine große Anzahl an verschiedenen

Methoden existiert, um Anforderungen aufzunehmen. Der hergeleitete Prozess be-

ginnt daher mit der Phase einer Aufnahme, in der gewünschte Anforderungen aufge-

nommen werden.

Wie in Kapitel 2.4.2.1 erwähnt, sollten die Anforderungen bestimmten Qualitätskrite-

rien unterliegen. Daher wird zunächst eine Prüfung der Qualitätskriterien bezüglich

dieser Anforderungen auch im Prozess beachtet, die vom Requirements Engineer

durchgeführt werden sollten. Die Auswahl einer bzw. mehreren Techniken zur Über-

prüfung unterliegt dem Requirements Engineer und wird daher erst in einer „kompri-

mierten" Prüfungsphase deutlich. Zusätzlich wurde auch der Einbezug eines Glos-

sars (wie im Kapitel 2.4.2.2 aus der Theorie empfohlen) Beachtung finden.

Bei Konflikten mit Anforderungen wird eine Phase „Konfliktmanagement“ eingeleitet,

um eine Abstimmung zu vollziehen, wie aus dem Theorie-Kapitel 2.4.3.2 zu erkennen

ist.

Als sinnvoller Zusatzschritt wurde eine grobe Kosten- und Aufwandsschätzung hin-

zugefügt, um die jeweiligen benötigten Attribute durch Experten zu füllen.

Um zum Schluss eine Entscheidung über eine entsprechende Anforderung zu erlan-

gen, ist es überdies passend ein Freigabeprozessschritt zu durchlaufen.

Der hergeleitete AM-Prozess hat, wie oben veranschaulicht, weitestgehend alle

wichtigen Aktivitäten aus dem Theorieteil mit einbezogen. Eine Komprimierung

hat lediglich in der Wahl einer bestimmten Technik stattgefunden.

Page 52: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

46

4 Werkzeuge zum Requirements Engineering

Um Requirements Engineering in der Praxis effizient einzusetzen sollte man sich ei-

nem Werkzeug als Unterstützung bedienen. In dem folgenden Kapitel werde ich die

verschiedenen Arten der Requirements Engineering Werkzeuge laut [Ebert2012]

aufzeigen und erläutern. Anschließend werde ich zwei Werkzeuge als Beispiel dar-

stellen und zum Schluss noch Kriterien für eine Werkzeugauswahl erläutern.

4.1 Arten von RE-Werkzeugen

Laut [Ebert 2012] werden Werkzeuge die folgenden Arten an RE-Werkzeugen unter-

scheiden, die in den folgenden Unterkapiteln erläutert werden:

Spreadsheets

Wikis

Workflow-Tools

Entwicklungsumgebungen und Modellierungswerkzeuge

auch gerne Anwendungs- oder Produktlebenszyklus-Management (ALM oder

PLM) genannt

Spezielle RE-Werkzeuge

Bei der Einführung eines Werkzeuges sollte beachtet werden, dass ein komplexeres

Werkzeug auch höhere Kosten mit sich bringt. Folgende Abbildung 12 verdeutlicht

diese Aussage:

Page 53: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

47

4.1.1 Spreadsheets

Spreadsheets sind selbst gemachte Templates in einer Tabellenkalkulation und die

einfachste Form eines Werkzeugs für Requirements Engineering. Sie sind optimal für

kleinere Projekte anzuwenden da sie den großen Vorteil in ihrer leichten und flexib-

len Handhabung und direkte Nutzung mit verschiedenen Stakeholdern besitzen.

Als Beispiel eignet sich ein selbsterstelltes Excel-Sheet dass über die verschiedenen

Phasen eines Projektes benutzt werden kann. Der spätere Übergang in ein komple-

xeres RE-Werkzeug ist meist auch kein Problem, da Tabelleninhalte und Templates

werkzeugübergreifend gut übertragen werden. (vgl. [Ebert 2012], S. 329)

Abbildung 13: Einfaches Spreadsheet-Template für Anforderungen ([Ebert 2012], S. 98)

Komplexität

Ko

ste

n

Solution

Manager

Wikis

Workflow-

Tools

Spreadsheets

ALM oder

PLM

Spezielle RE-

Werkzeuge

Abbildung 12: Arten von RE-Werkzeuge

Page 54: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

48

4.1.2 Wikis

Seit der Einführung von Web 2.0 nehmen Wiki-Umgebungen immer mehr an Zu-

wachs. Wikis erlauben den unmittelbaren Zugriff verschiedener Benutzer zur Organi-

sation von Anforderungen. Hierzu kann man ein vohandenes Template oder auch ein

komplettes Hosting von einer externen Quelle übernehmen und an den eigenen Be-

dürfnissen anpassen. Der große Vorteil ist, dass die Benutzer keinerlei HTML-

Kenntnisse brauchen, um die Einträge zu bearbeiten oder zu verwalten.

OpenColletive1 bietet eine Beschreibung, wie Wiki-Umgebungen für Requirements

Engineering aufgebaut und genutzt werden. (vgl. [Ebert 2012], S. 329)

4.1.3 Workflow-Tools

Bei der Übertragung von Aufgaben zwischen verschiedenen Benutzern bzw. bei ver-

teilten Projekten können Workflow-Tools als große Unterstützung für das Require-

ments Engineering dienen. Ihre Stärke ist die Beschreibung der Abfolge von Schrit-

ten, beispielsweise von der Ermittlung bis zur Freigabe, die dann automatisch an

verschiedene Personen weitergeleitet werden können. Diese werden darüber infor-

miert, dass Anforderungen, Arbeitspakete, Fehlermeldungen oder Testfälle zu bear-

beiten sind. Als bekanntes Open-Source-Tool für hat sich Bugzilla2 erwiesen. Viele

große Open-Source-Projekte verwenden Bugzilla, um Fehlermeldungen und Wün-

sche von Benutzern zu sammeln ([Ebert 2012], S. 329).

1 http://www.codeproject.com/aspnet/OpenCollective.asp

2 http://bugzilla.org

Page 55: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

49

4.1.4 Entwicklungsumgebungen und Modellierungswerk-

zeuge

Einen Schritt weiter in der Werkzeugskala liegen die Entwicklungsumgebungen die

auch gerne als ALM- oder PLM(Anwendungs- oder Produktlebenszyklus-

Management) bezeichnet genannt werden. Sie entwickeln, pflegen und verwalten

Informationen über den Lebenszyklus des Produkts hinweg. (vgl. [Ebert 2012], S.

329)

Da der SAP Solution Manager ein ALM Werkzeug ist siedelt es sich in dieser Katego-

rie der Werkzeuge an. Einen kurzen Überblick über den SAP Solution Manager wer-

de ich in Kapitel 4.5 darstellen.

4.1.5 Spezielle RE-Werkzeuge

Komplexere RE-Werkzeuge unterstützen die Verwaltung und Nachverfolgung von

Anforderungen, Spezifikationen und weiteren Dokumenten (z.B. Testfällen) sowie die

Verknüpfung dieser Dokumente zur Projektkontrolle. Vereinzelt werden diese spezi-

ellen Werkzeuge auch Computer Assisted Requirements Engineering(CARE) ge-

nannt. Solche Werkzeuge bieten eine gute grafische Umgebung an, mit der Anforde-

rungen, Workflows, Abhängigkeitsbeziehungen und Modelle beschrieben werden

können. Vielfältige Filter erlauben die Verknüpfung, Gruppierung Weiterbearbeitung

und Verwaltung auch komplexer Anforderungsbeziehungen. Um eine bestmögliche

Durchgängigkeit zu erreichen verwenden diese Werkzeuge eine Verknüpfung zwi-

schen Anforderungsspezifikationen, deren Verwaltung und Modellierungswerkzeuge.

Der Standard für die Modellierungssprache ist die UML-Notation (vgl. [Ebert 2012], S.

329).

Page 56: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

50

4.2 Beispiel: DOORS

IBM Rational DOORS3 (im Folgenden nur DOORS genannt) wird bei den großen

Analysten wie z.B. der Standish Group als Marktführer im Bereich Anforderungsma-

nagement gesehen (vgl. [Ebert 2012], S. 336). DOORS unterstützt den Benutzer sei-

ne Spezifikationen basierend auf beliebigen Standards und Prozessmodellen wie

z.B. ITIL zu erstellen und zu pflegen.

Durch den Webclient DOORS Web Access können Anforderungen unternehmens-

weit erfasst, geprüft und gepflegt werden, ohne dass ein dedizierter Client dafür not-

wendig ist. Hierbei passt sich DOORS den Prozessen und der Informationsarchitek-

tur im konkreten Einsatzszenario an, ohne den Projekten vorgefertigte Strukturen

aufzuzwingen.

Zusätzlich werden durch die Integration zu anderen Lösungen von IBM Rarional und

anderen Herstellern die Transparenz und die Verfolgbarkeit der Anforderungen ge-

steigert.

Durch eine offene, freie und nichtproprietären Schnittstelle unterstützt DOORS die

Integration zu Tools aus Change-, Test- und Architekturmanagement.

DOORS stellt Anforderungen und andere Informationselemente in einer hirarischen

Dokumentenstruktur dar, so wie man es von den klassischen Textverarbeitung Sys-

temen kennt. Über beliebig definierbare Attribute kann eine Klassifizierung von An-

forderungen erstellt werden.

3 http://www.ibm.com/software/awdtools/doors

Page 57: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

51

Abbildung 14: Screenshot von DOORS - Anforderungen mit den zugehörigen Attributen ([Ebert 2012],

S.337)

Da ein Projektmitarbeiter meist nur einen Teil der Informationen aus einem Anforde-

rungsdokument benötigt um eine bestimmte Aufgabe zu lösen, lassen sich in

DOORS individuelle konfigurierbare Sichten anpassen. Durch zusätzliche Filter-

und/oder Sortierbedingungen wird diese individuelle Anpassung noch gestärkt. Ab-

bildung 15 zeigt verschiedene Sichten auf dasselbe Anforderungsdokument.

Page 58: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

52

Abbildung 15: Verschiedene Sichten auf dasselbe DOORS-Dokument ([Ebert 2012], S. 338)

Um Zusammenhänge zwischen den Anforderungen zu dokumentieren können in

DOORS Links zwischen den Anforderungen erstellt werden. Um nicht einen un-

durchschaubares Chaos zwischen den Abhängigkeiten der Anforderungen zu erhal-

ten bietet DOORS die Möglichkeit die Erstellung von Abhängigkeiten einzuschrän-

ken.

Um eine Differenz zwischen den Anforderungen und dem entstehenden System zu

vermeiden ist eine enge Verzahnung von Anforderungsmanagement mit allen Pha-

sen des Entwicklungsprozess notwendig. Dies wird in DOORS durch eine Verknüp-

fung von Anforderungen mit den für die Umsetzung wesentlichen Design- und Im-

plementierungsartefakten. Somit kann für jede Anforderung der Weg der Realisie-

rung über den gesamten Entwicklungsprozess verfolgt werden. Ein weiterer großer

Vorteil dieser Verknüpfung spiegelt sich bei der Aufwand- und Risikoabschätzung

wider. Falls sich eine Anforderung ändert machen sich die Auswirkungen in allen be-

troffenen Designelementen und Modulen bemerkbar und können realistisch einge-

schätzt werden.

Page 59: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

53

4.3 Beispiel: Integrity

Integrity4 ist eine Plattform für das Application Lifecycle Management (ALM). Mit ihr

kann man den gesamten Softwareentwicklungszyklus (vom Requirements Manage-

ment bis zum Testmanagement) betreuen. (vgl. [Ebert 2012], S. 340 ff.)

Integrity enthält eine Lösung für das Requirements Engineering und wird sowohl von

kleinen Entwicklungsteams wie auch von größeren und IT- und Entwicklungs-

abteilungen multinationaler Unternehmen angewendet. (vgl. [Ebert 2012], S. 340)

Abbildung 16: Konfigurierbare Benutzeroberfläche von Integrity mit Dokumenten- und Beziehungsansich-

ten ([Ebert 2012], S. 342)

Integrity vereinfacht die Verwaltung mit Dokumenten und soll Unternehmen bei dem

Requirements Engineering bei Herausforderungen unterstützen, die sich ergeben,

wenn bisher hauptsächlich auf traditionelle Bürosoftware gesetzt wurde (Dokumente,

Excel-Tabellen). (vgl. [Ebert 2012], S. 341)

4 http://www.mks.com

Page 60: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

54

Integrity verwaltet Dokumentinhalte in einer datenbankgestützten Client-Server-

Architektur und löst so wesentliche Probleme in der Kommunikation. Statt einzelne

Kopien zu erstellen, die später wieder miteinander in Übereinstimmung gebracht

werden müssen, können Teammitglieder ihre Anforderungsinformationen in Echtzeit

»online« bearbeiten. Dies erleichtert erheblich die Kommunikation in der Abstim-

mungsphase.

Ein konfigurierbarer Workflow kann automatische Regeln und Prozesse definieren,

beispielsweise Änderungen verhindern, sobald eine Anforderung einen bestimmten

Status erreicht, oder E-Mail-Benachrichtigungen senden, wenn Änderungen vorge-

nommen wurden sind.

Integrity ersetzt die häufig in Unternehmen verwendeten spezifischen Dokumente zur

Nachverfolgung indem Daten, Metadaten sowie die Beziehungen zu anderen Anfor-

derungen in einer Datenbank gespeichert werden.

Zudem kann je nach Bedarf Projektinformationen in Diagrammen oder Tabellen dar-

gestellt werden. Somit kann ein Projektmanager sich einen Bericht erstellenlassen,

um den "Durchsatz" eines Projekts zu bewerten, also zu ermitteln, wie viele Anforde-

rungen kürzlich verändert oder bearbeitet wurden. Dies ist ein wichtiges Kriterium,

um festzustellen, ob Anforderungen stabil genug sind, damit mit dem Design und der

Entwicklung begonnen werden kann.

Da Unternehmen Tausende von Anforderungen für Hunderte von Komponenten ma-

nagen müssen, genügt es nicht Anforderungen in einer Liste oder einem Dokument

zu verwalten. Zudem können Anforderungen für mehrere gleichzeitig entwickelte Va-

rianten eines Produkts gemeinsam genutzt werden. Daher wird Integrity auch gerne

zur Verwaltung komplexer Abhängigkeitsbeziehungen verwendet.

Integrity wird zur Koordination von über den ganzen Globus verteilten Teams, von

externen Mitarbeitern und anderen Anwendern der Anforderungen (z.B. Kunden und

Lieferanten) eingesetzt (vgl. [Ebert 2012], S. 342).

Ein erheblicher Effizienzgewinn entsteht für diese Unternehmen durch die Unterstüt-

zung der Entwicklung von Softwareproduktlinien durch Integrity. Bei Softwareprodukt-

linien (SPL) handelt es sich um die zusammengefasste Entwicklung ähnlicher Pro-

dukte auf Basis gemeinsamer Bestandteile. Das ist häufig in der Mobilfunkindustrie

Page 61: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

55

wiederzufinden. Dort sind die Mehrheit der Anforderungen in vielen oder allen Pro-

duktvarianten identisch und sollten diese zugunsten der Effizienz parallel verwaltet

werden. Die Wiederverwendung von Anforderungen und ihre gemeinsame Nutzung

in den Produktlinien verringern den Aufwand und verbessern die Zusammenarbeit

der Teams, was wiederum für eine höhere Produktqualität und eine schnellere

Markteinführung sorgt (vgl. [Ebert 2012], S. 343).

4.4 Kriterien für die Werkzeugeinführung

Laut ([Ebert 2012], S. 351) sind die folgenden Punkte als mögliche Anforderungen an

RE-Werkzeuge zu sehen. Man sollte aber nicht alle Punkte mit einbeziehen da diese

Anforderungen je nach Anwendungsgebiet nicht gleichermaßen relevant sind.

1. Benutzbarkeit

Es sollte darauf geachtet werden, dass alle vorgesehenen Benutzergruppen

mit dem Werkzeug produktiv arbeiten können.

2. Spezifikation von Anforderungen

Aufnahme und Dokumentation aller Arten von Anforderungen, Randbedingun-

gen etc. sowie deren Status in einer einzigen Datenbank. Wichtig ist, sich

klarzumachen, was die Informationen sind, die Sie als Anforderungen – heute

und in Zukunft – ablegen wollen.

3. Organisation von Anforderungen

Verwaltung der Anforderungsinformationen wie z.B. die einfache Aufzeich-

nung von Autoren, Änderungen und Zeitpunkten sowie der einfache Zugriff auf

Inhalte.

4. Änderungsmanagement der Anforderungen

Die Änderungen von Anforderungen sind häufig die Ursache für ständig ver-

schobene Termine und unzureichende Projektergebnisse. Daher ist das Ände-

rungsmanagement ein Hauptgrund, Werkzeuge einzusetzen. Sie erlauben, ei-

Page 62: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

56

ne aktualisierte Konfigurationsbasis zu erstellen oder kontrollierte Schnapp-

schüsse von Funktionslisten unternehmensweit zur Verfügung zu stellen.

5. Wiederverwendung von Anforderungen

Anforderungen und zugehörige Artefakte wie Testfälle sollten so weit wie mög-

lich wiederverwendbar sein, wenn es an Versionierung und Variantenbildung

geht.

6. Filterung von Inhalten

Um Inhalte zielorientiert darstellen zu können und um Ausgaben oder Reports

zu reduzieren, sollten Filter eingesetzt werden.

7. Zugriff mit anderen Werkzeugen auf andere Datenbanken

Unterstützung anderer Werkzeuge um aus der RE-Datenbank Information

auslesen zu können oder umgekehrt.

8. Verteilte Nutzung der Daten und Kollaboration

Verwendung der Anforderungen von ganz verschiedenen Benutzergruppen an

verschiedenen Standorten

9. Adaptierbarkeit an und Integrierbarkeit mit vorhandenen Geschäftspro-

zessen

Es sollte keine Beeinträchtigung vorhandener Geschäftsprozesse mit Einfüh-

rung des Werkzeugs geschehen.

10. Hersteller, Stabilität und Support

Es sollte die Stabilität des Herstellers berücksichtigt werden.

11. Kosten

Es sollten Kosten für Anschaffung, Wartung und Service berücksichtigt wer-

den.

Page 63: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

57

4.5 Der SAP Solution Manager

Der SAP Solution Manager eine Softwarelösung für das Application Lifecycle Mana-

gement und dem Betrieb von Softwarelösungen. Seine Funktionen decken alle Be-

reiche von Softwarelebenszyklen ab, also von der Implementierung über die Produk-

tivsetzung und den Betrieb bis hin zur kontinuierlichen Verbesserungen von Soft-

warelösungen. Lebenszyklen umfassen wie in der Abbildung dargestellt sechs Pha-

sen:

Abbildung 17: Lebenszyklus von IT-Lösungen ([Schäfer et al. 2011], S. 30)

1. Requirements

Erfassung der Anforderungen für neue Anwendungen oder für die Verbreitung

bestehender Anforderungen. oder Änderung von bestehender Software.

2. Design

Übersetzung der Anforderungen in detaillierte Spezifikationen.

3. Build and Test

Anwendungskonfiguration und Erstellung eines Organisationsmodells gemäß

den Spezifikationen.

Require-ments

Design

Build and Test

Deploy

Operate

Optimize

Application

Manage-

ment

Page 64: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

58

4. Deploy

Übertragung der Änderungen und des Organisationsmodells in die bestehen-

de produktive IT-Landschaft.

5. Operate

Bereitstellung von IT-Services, die für den fortlaufenden Betrieb erforderlich

sind.

6. Optimize

Analyse der Service-Level-Erfüllung und möglicher Start von Maßnahmen zur

Verbesserung der Ergebnisse

Der SAP Solution Manager unterstützt zudem die etablierten und standardisierten

ITIL V3 Prozesse. In erster Linie dient er dazu eine SAP-Systemlandschaft eines Un-

ternehmens zu Warten, Verwalten und zu Überprüfen.

Die komplexe und vielfältige Applikation stellt unter anderem Werkzeuge und Funkti-

onalitäten zur Verfügung, um den technischen Support in den Systemen zu vereinfa-

chen und zu unterstützen. Kunden werden bei der funktionalen und technischen Im-

plementierung sowie bei der kontinuierlichen Verbesserung und Optimierung der

SAP-Systemlandschaft durch die hilfreichen Werkzeuge wie IT-Service, Incident,

Problem und Change Management unterstützt. Zusätzlich stellt der Solution Manager

Vorlagen oder auch Vorgehensweisen in Form von Roadmaps und Services für die

Implementierung und zum Betrieb der SAP Applikationen zur Verfügung. Unterneh-

men benötigen daher keine weiteren Managementtools für die Verwaltung ihrer Sys-

temlandschaft.

Der Solution Manager bietet Unternehmen eine Verwaltungsplattform für ihr gesam-

tes SAP-Lösungsportfolio und reduziert, mit Hilfe der zur Verfügung gestellten Funk-

tionen, die Komplexität von heterogenen IT-Landschaften sowie die Gesamtbetriebs-

kosten durch standardisiertes Vorgehen und Methoden.

Des Weiteren ermöglicht der Solution Manager die Anbindung von Partnerprodukten

oder Nicht-SAP Komponenten (Nicht SAP Komponenten sind Produkte, die nicht von

der SAP AG hergestellt wurden, z.B. das Modellierungstool ARIS), damit auch das

gesamte Potenzial des Tools effizient genutzt werden kann. (vgl. [Schäfer et al.

2011], S. 29 ff.)

Page 65: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

59

5 Umsetzung (Abbildung) des hergeleiteten

RE-Soll-Prozesses

5.1 Prozessdefinition

Um den erarbeiteten RE-Soll-Prozess im SAP Solution Manager technisch abbilden

zu können, sollte der Prozess soweit aufbereitet werden, dass passende Status und

Aktionen sichtbar sind. Infolgedessen wird innerhalb dieses Kapitels der RE-Soll-

Prozess auf die wesentlichen Punkte zusammengefasst. Hierzu werden sinnvolle

Bezeichnungen für die Status und deren Statusübergänge vergeben. Folgende Ab-

bildung stellt den für den SAP Solution Manager aufbereiteten RE-Soll-Prozess dar:

In Qualitätsprüfung

Zur Qualitätsprüfung übergeben

In Nachbearbeitung

Qualitätsprüfung nicht erfolgreich;

In Kalkulation

Zu genehmigen

Genehmigt AbgelehntZurückgestellt

Nacharbeit bestätigen lassen;

Konflikt(e) - Zu spezifizieren

Konflikte(e) - In Abstimmung

Konflikt gelöst;

Qualitätsprüfung erfolgreich+ Konflikt(e) entdeckt;

Qualitätsprüfung erfolgreich+ keine Konflikt(e) entdeckt;

Angelegt

Legende:

Initialstatus

Status

Finalstatus

Statusübergang(Aktion)

Zur Kalkulation übergeben

Zur Qualitätsprüfung übergeben

Zur Nachbearbeitung übergeben

Zur Genehmigung übergeben

Zum Konfliktmanagementübergeben

Zur Konflikt–Abstimmungübergeben

Zur Kalkulationübergeben

Anforderunggenehmigen

Anforderungzurückstellen

Anforderungablehnen Getilgt

Anforderung tilgen

Abbildung 18: RE-Soll Prozess mit den einzelnen Status und Statusübergängen (Aktionen)

Page 66: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

60

Da er komplette Soll-Prozess im Kapitel 3 detailliert erläutert wurde, wird folgend eine

komprimierte Erläuterung des Soll-Prozesses für den SAP Solution Manager gege-

ben. Hierbei wird der Soll-Prozess aus das System zugeschnitten dargestellt um eine

Umsetzung zu erleichtern.

Die Phasen wurden sinnvoll unbenannt um den aktuellen Bearbeiter besser zu ver-

deutlichen was gerade zu tun ist (z.B. In Nachbearbeitung). Der Initialstatus und die

Finalstatus wurden anders dargestellt als die weiteren. Die Statusübergänge wurden

auch sinnvoll benannt und beschrieben in welchem Fall der jeweilige Statusübergang

relevant ist.

Der Soll-Prozess für den SAP Solution Manager beginnt mit dem Initialstatus Ange-

legt. Nachdem der aktuelle Bearbeiter die benötigten Attribute ausgefüllt hat, kann

dieser die Anforderung zur Qualitätsprüfung übergeben (eine Auflistung der genauen

Attribute in dem jeweiligen Staus wird weiterhin in diesem Kapitel dargestellt). An-

schließend befindet sich die Anforderung im Staus In Qualitätsprüfung in der die An-

forderung auf die Qualitätskriterien hin geprüft wird. Von hier kann die Anforderung

wieder zur Nachbereitung übergeben werden, wenn Fehler gefunden worden sind.

Ansonsten kann die Anforderung in die folgenden die weiteren Status In Kalkulation

oder Konflikt(e) zu spezifizieren übergehen, jeweils ob Konflikte bestehen oder nicht.

Wenn Konflikte existieren sollten diese abgestimmt werden und eventuelle Anforde-

rungen die anschließend nicht mehr relevant sind getilgt werden. Als letzten Schritt

sollte die Anforderung genehmigt werden.

Zusätzlich stellt folgende Tabelle die einzelnen Status mit dem zugehörigen Bearbei-

ter, die zu besetzenden Attributen sowie die möglichen ausführbaren Aktion(en) des

aktuellen Zustandes übersichtlich dar.

Automatisch ausgefüllte Attribute werden unterstrichen dargestellt.

Attribute, die in mehr als an einer Statusposition angepasst werden können,

werden kursiv dargestellt.

Die Beschriftung in Klammern soll die Bezeichnung darstellen, die im SAP So-

lution Manager verwendet wird.

Page 67: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

61

Status Aktueller Be-

arbeiter Attribute Ausführbare Aktion(en)

Aufgenommen Anforderer (Autor)

Anforderungsnummer (ID)

Anforderungsname (Bezeichnung)

Beschreibung

Quelle

Autor

Anforderungstyp (Sachverhalt)

Juristische Verbindlichkeit / Wich-

tigkeit (Kategorie)

System oder Geschäftsprozess

Erstelldatum

Versionsnummer

Historie

Stabilität

Fertigstellungstermin (Realisie-

rungsdatum)

Release

Abhängigkeiten / Querbezüge

Vorbedingung(en)

Priorität

Zusätzliche Information

E-Mail versenden

Zur Qualitätsprüfung übergeben

In Qualitätsprüfung Requirements Engi-

neer

Requirements Engineer

Status der Überprüfung

Projektleiter

In Konflikt stehende Anforde-

rung(en)

Release

Stabilität

Abhängigkeiten / Querbezüge

Vorbedingung(en)

Priorität

Zusätzliche Information

E-Mail versenden

Zur Nachbearbeitung übergeben

Zum Konfliktmanagement über-

geben

Zur Kalkulation übergeben

In Nachbearbeitung Anforderer (Autor) - E-Mail versenden

Zur Qualitätsprüfung übergeben

Konflikt(e) - Zu spezi-

fizieren

Requirements Engi-

neer

In Konflikt stehende Anforde-

rung(en)

E-Mail versenden

Zur Konflikt-Abstimmung über-

geben

Konflikte(e) - In Ab-

stimmung

Requirements Engi-

neer

Status (Einigung)

Release

Stabilität

Abhängigkeiten / Querbezüge

Vorbedingung(en)

Priorität

Zusätzliche Information

E-Mail versenden

Zur Kalkulation übergeben

Page 68: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

62

In Kalkulation Projektleiter

Kosten

Aufwand

Release

Stabilität

Abhängigkeiten / Querbezüge

Vorbedingung(en)

Priorität

Fertigstellungstermin (Realisie-

rungsdatum)

Zusätzliche Information

E-Mail versenden

Zur Genehmigung übergeben

Zu genehmigen Quelle

Grund der Ablehnung / Zurück-

stellung

Zusätzliche Information

E-Mail versenden

Anforderung genehmigen

Anforderung zurückstellen

Anforderung ablehnen

Tabelle 5: Statustabelle

5.2 Customizing

Zunächst wurde ein Geschäftspartner (GP), Scharif Elsawa, mit dem Benutzerken-

nung „SCELSAWA“ und der ID „3334“ angelegt. Dieser kann eine Person, Organisa-

tion oder eine Gruppe von Personen eines Unternehmens symbolisieren, die ein ge-

schäftliches Interesse haben. Jeder Geschäftspartner ist einem Benutzernamen so-

wie einer eindeutigen Identifikationsnummer zugeordnet.

Anschließend wurde der Vorgang „Änderungsantrag“ aus dem Standard selektiert

und mit allen Unterpunkten kopiert, um keine Änderungen über die Standardeinstel-

lung zu generieren. Alle zukünftigen Konfigurationen (Customizing) wurden somit

ausschließlich im kopierten Vorgang vorgenommen. Es wurde die Vorgehensweise

über den „Änderungsantrag“ aus dem Grund ausgewählt, da an dieser Stelle der Sta-

tusübergang funktioniert hat.

Der kopierte Vorgang wurde von „SDCR“ in einen eigenen Z-Namensraum „ZSRE“

übertragen und umbenannt, damit der Standard erhalten bleibt und individuelle An-

passungen nicht am originalen Vorgang vorgenommen werden können. Folgende

Profile sind durch diesen Kopiervorgang betroffen gewesen:

Page 69: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

63

Beschreibung Standard Geändert in

Partnerschema SDCR0001 ZSRE0001

Statusschema SDCRHEAD ZSREHEAD

Aktionsprofil SDCR_ACTIONS ZSRE

Textschema SDCR ZSRE

Terminprofil SDCR_HEADER ZSRE_HEADER

Tabelle 6: Bezeichnungen vom kopierten Vorgang

Die kopierten Profile und Schemas wurden alle dem Vorgang „ZSRE“ zugeordnet.

Zusätzlich wurden zwei weitere Profile kopiert, die „Proxy-Instanz“ und die „Einstel-

lungen für Änderungsvorgänge“, um einen funktionsfähigen Statusübergang zu er-

möglichen.

Anschließend musste vor dem eigentlichen Customizing der Folgebeleg abgestellt

bzw. verhindert werden, da dieser eine Weiterschaltung des Status verhindert, wenn

die Bedingung eines Wartungsprojekts nicht erfüllt wird. Diese Einstellung nimmt der

User unter dem Aktionsprofil im „Aktionsprofile und Aktionen“ über dem Cutomizing-

Leitfaden vor.

Abbildung 19: Ausschnitt „Aktionsprofil Scharif RE“

Alle weiteren Aktivitäten werden im Verlauf des Customizings ausschließlich über

den entsprechenden Leitfaden durchgeführt.

Page 70: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

64

Abbildung 20: Ausschnitt vom Customizing-Leitfaden

5.2.1 Status definieren

Innerhalb dieses Abschnitts werden Definitionen für die Status des RE-Soll-

Prozesses erläutert. Die einzelnen Status wurden in Abbildung 18 und Tabelle 5

schon übersichtlich dargestellt. Statusverwaltungen werden über den Punkt „Status-

verwaltung“ im Customizing-Leitfaden durchgeführt. Es wurde ein neues Status-

schema ZSREHEAD erstellt und die einzelnen Status <Aufgenommen>, <In Quali-

tätsprüfung>, <In Nachbearbeitung>, <Konflikt(e) zu spezifizieren>, <Konflikt(e) In

Abstimmung>, <In Kalkulation>, <Zu genehmigen>, <Genehmigt>, <Zurückgestellt>

und <Abgelehnt> hinzugefügt.

Anschließend wurden Anfangs- und Endstatus festgelegt, indem der Status <Aufge-

nommen> als Initialstatus gekennzeichnet wurde und die Staus <Genehmigt>, <Zu-

rückgestellt> und <Abgelehnt> mit dem Attribut FINI für Finalstatus markiert wurden.

Page 71: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

65

Abbildung 21: Ausschnitt vom „Statusprofil“

Um die Reihenfolge der Anzeige auf dem Beleg zu bestimmen, werden dementspre-

chende Ordnungsnummern vergeben (s. Abbildung 21)

5.2.2 Partnerfunktionen definieren

Als nächstes müssen die Partnerfunktionen im Partnerschema ZSRE0001 zugeord-

net werden. Dieses schließt sämtliche benötigten Partnerfunktionen eines Vorgangs

ein.

Wie in Tabelle 5 zu entnehmen, werden die Partnerfunktionen (Rollen)

<Anforderer(Autor)>, <Quelle>, <Requirements Engineer> und <Projektleiter> benö-

tigt. Da der SAP-Standard des Solution Managers einige der Rollen- bzw. Partner-

funktionen nicht beinhaltet, müssen diese zunächst definiert werden. Eine entspre-

chende Zuteilung der Partnerfunktionen wird im Customizing-Leitfaden unter dem

Punkt „Partnerfunktionen definieren“ deklariert.

Abbildung 22: Ausschnitt Partnerfunktion definieren

Page 72: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

66

Anschließend erfolgt die Zuordnung der benötigten Partnerfunktionen zum erstellten

Partnerschema ZSRE0001. Dieses kann unter dem Menüpunkt „Partnerschema de-

finieren“ vorgenommen werden.

Abbildung 23: Ausschnitt Partnerschema ZSRE0001 (Scharif RE - Partnerschema)

5.2.3 Aktionen definieren

Um einen Statusübergang zu ermöglichen, müssen Aktionen definiert werden, die

diesen Statusübergang auslösen. Die dazugehörige Zuteilung der Status wurde in

Kapitel 5.2.1 dargestellt.

Unter dem Menüpunkt „Aktionsprofile und Aktionen definieren“ im Customizing-

Leitfaden nimmt der User Einstellungen mit Bezug auf entsprechende Aktionen vor.

Da das Aktionsprofil ZSRE eine Kopie des Aktionsprofils SDCR_ACTIONS darstellt,

wurden auch sämtliche Aktionen ebenfalls kopiert. Diese mussten noch angepasst

bzw. bei Nichtgebrauch inaktiv gesetzt werden. Anpassungen wurden innerhalb der

Beschreibung und des „Initialwerts“ vorgenommen.

Page 73: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

67

Abbildung 24: Ausschnitt vom Aktionsprofil ZSRE

Der Initialwert bestimmt dabei den zu erreichenden Status. Nachfolgend die Liste der

Status mit den dazugehörigen Initialwerten.

Abbildung 25: Statusliste mit Initialwerten

Eine Aktion, die einen Statusübergang erzeugen soll, muss im Initialstatus die Be-

zeichnung des zu erreichenden Anwenderstatus beinhalten (z. B. E0006).

Abbildung 26: Beispiel für einen Initialwert

Beispielsweise in dem Fall, wenn ein Statusübergang in Richtung <In Kalkulation>

ermöglicht werden soll, dann müsste als Initialwert E0007 eingetragen werden. Wei-

Page 74: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

68

tere Einstellungen wurden getätigt, sodass eine Aktion erst nach dem Speichern

ausgeführt werden soll. Der Auftrag „E-Mail versenden“ wurde mit „(Dummy)“ ge-

kennzeichnet, da es sich hier um keine funktionstüchtige Aktion handelt und lediglich

zur Demonstration dienen soll.

5.2.4 Bedingungen definieren

Nachdem im Aktionsprofil ZSRE Aufgaben definiert worden sind, müssen für ent-

sprechende Bedingungen definiert werden, um einzuschränken, in welchem Status

Aktionen sichtbar und damit auch durchführbar sind. Diese Einstellungen werden

unter dem Menüpunkt „Bedingungen definieren“ im Customizing-Leitfaden vorge-

nommen. Die vorher definierten Aufgaben sind in der Liste Aktionsprofile zusam-

mengefasst und können entsprechend ausgewählt werden. Anschließend muss eine

„Einplanbedingung“ definiert werden, d.h. die Aktion wird nur dann im Arbeitsvorrat

angezeigt, sofern eine entsprechende Voraussetzung erfüllt ist.

Abbildung 27: Ausschnitt aus der "Bedingungen definieren" Konfiguration

Page 75: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

69

Die obige Abbildung 27 zeigt die Bedingung für eine Aktion „Zur Konflikt-Abstimmung

übergeben“ an. Innerhalb dieser Vorgabe wird angegeben, inwiefern die Aktion „Zur

Konflikt-Abstimmung übergeben“ lediglich angezeigt wird, wenn sich der User im

Anwenderstatus E0005 („Konflikt(e) zu spezifizieren“) befindet. Es können auch meh-

rere Einplanbedingungen mitsamt logischen Verknüpfungen „And“, „Or“ oder „Not“

versehen werden. Diese Konfiguration wurde analog für jede Aktion durchgeführt.

5.2.5 Textschema definieren

Unter dem Menüpunkt „Textschema definieren“ im Customizing-Leitfaden hat der

Anwender die Möglichkeit, Textfelder einzustellen. Hierzu wurden lediglich passende

Textfelder für das Textschema ZSRE0001 (Scharif RE – Texte) aus dem Standard-

bereich ausgewählt, da für eine Definition eigener Textfelder komplexere Einstellun-

gen vorgenommen werden müssten und dieses Vorgehen den Rahmen der Arbeit

sprengen würde.

Abbildung 28: Ausschnitt aus dem Menüpunkt "Textfelder definieren"

Page 76: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

70

5.2.6 Sachverhaltsprofile definieren

Die Bezeichnung Sachverhalt wurde für die Hinterlegung des Attributs <Anforde-

rungstyp> (also für eine Auswahl zwischen „funktionaler Anforderung“, „Qualitätsan-

forderung“ oder „Rahmenbedingung“) benutzt.

Abbildung 29: Ausschnitt aus dem RE-Vorgang mit der Auswahl des Sachverhalts

Zunächst musste dafür unter dem Menüpunkt „Codegruppenprofile definieren“ der

Katalog IS (Katalog Issues) ausgewählt werden. Anschließend wurde eine neue

Codegruppe Z1 (Requirement Anforderungstyp) erstellt und entsprechende Codes

„Z1 Funktionale Anforderung“, „Z2 Qualitätsanforderung“ und „Z3 Rahmenbedin-

gung“ hinterlegt. Anschließend wurde für das Codegruppenprofil SLFI00001 (Profile

for Issue / Top Issue) die Codegruppe Z1 (Requirement Anforderungstyp) zugewie-

sen, weil dieses für die Anzeige des Sachverhalts grundlegend ist.

5.2.7 Kategorie bearbeiten und dem Vorgang zuordnen

Die Bezeichnung Kategorie wurde genutzt, um das Attribut <Juristische Verbindlich-

keit / Wichtigkeit> auswählen zu können.

Abbildung 30: Ausschnitt aus dem RE-Vorgang mit der Auswahl der Kategorie

Page 77: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

71

Für die Konfiguration der Kategorie wurden mithilfe der Suchfunktion die Menüpunkte

„Kategorien bearbeiten“ und „Kategorie den Vorgangsarten zuordnen“ ausfindig ge-

macht. Unter dem Menüpunkt „Kategorie bearbeiten“ hat man die Möglichkeit weitere

Kategorien anzulegen. Hierbei wurden die Kategorien „MUS (MUSS)“, „SOL (SOLL)“

und „WIR (WIRD)“ angelegt. Anschließend wurden unter dem Menüpunkt „Katego-

rien den Vorgangsarten zuordnen“ die erstellten Kategorien dem Vorgang ZSRE

Scharif RE zugeordnet (s. Abbildung 31).

Abbildung 31: Ausschnitt aus dem Menüpunkt "Kategorien den Vorgangsarten zuordnen"

5.2.8 Terminprofil definieren

Um Zeiterfassungen zu tätigen, bietet der SAP Solution Manager unter dem Menü-

punkt „Terminprofil definieren“ aus dem Customizing-Leitfaden die Möglichkeit, Da-

tumsattribute zu definieren. Für den RE-Soll-Prozess werden lediglich das Erstell-

(Erfassungsdatum) und das Realisierungsdatum benötigt. Da der Standard diese

Zeiterfassungsmöglichkeiten anbietet, mussten diese lediglich im Terminprofil

ZSRE_HEADER (Scharif RE - Terminprofil) den Terminarten zugeordnet werden (s.

Abbildung 32).

Abbildung 32: Einstellung im Terminprofil

Page 78: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

72

5.3 Offene Punkte der Umsetzung

Eigene Textfelder, Formulare und Auswahllisten sind mit einem etwas höheren Ent-

wicklungsaufwand verbunden und konnten im Rahmen dieser Arbeit nicht umgesetzt

werden. Hierzu zählen beispielsweise das Attribut <Abhängigkeiten / Querbezüge>

oder auch die Eigenschaft <In Konflikt stehende Anforderungen>. Ein optimaler Lö-

sungsweg bestände aus einer direkten Verlinkung der Attribute mit den dazugehöri-

gen Anforderungen. Auch das ist mit einem höheren Entwicklungsaufwand verbun-

den.

Weiterhin bedarf es einer Umsetzung bezüglich der Attribute <Aufwand> und <Kos-

ten>. Auch hier müssten aufwendige Anpassungen getätigt werden, um dem RE-

Soll-Prozess zu genügen.

Ein weiterer offener Punkt besteht darin, dass in verschiedenen Status jeweils pas-

sende Pflichtfelder gesetzt werden könnten. Auch das war leider im Rahmen dieser

Arbeit nicht möglich.

Ein Hauptkriterium, das einen offenen Punkt darstellt, ist das Erstellen von Anforde-

rungsbeschreibungen anhand bzw. mithilfe von Anforderungsschablonen wie in Kapi-

tel 2.4.2.3 beschrieben wurde sowie passenden Beispielen innerhalb des Kapi-

tels 3.3.2.

Weiterhin war es auch mit einem höheren Entwicklungsaufwand verbunden, ein

Glossar zu pflegen.

Page 79: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

73

6 Fazit

Schnelle Veränderungen, Kostendruck, Trend, globaler Wettbewerb, Wert und Nut-

zen - all diese Eigenschaften zeigen die Notwendigkeit vom systematischen Requi-

rements Engineering.

Das Ziel der Arbeit bestand darin, die aktuellen Tätigkeiten vom Requirements Engi-

neering aufzuarbeiten, einen geeigneten Prozess zu erarbeiten und diesen in dem

SAP Solution Manager abzubilden.

Folgend hat sich aus der Erarbeitung des Themas Requirements Engineering und

der daraus hergeleitete RE-Prozess herausgestellt, dass es nicht den einen richti-

gen Requirements Engineering Prozess gibt. Vielmehr müssen alle Projektbeteiligte

gemeinsam einen sinnvollen und individuellen Prozess entwickeln.

Des Weiteren wurde klar ersichtlich, dass die hauptsächlichen Tätigkeiten des Requi-

rements Engineering überwiegend auf Methoden der Sozialwissenschaften basieren

und folgedessen die dazugehörigen Werkzeuge lediglich als Unterstützung dienen.

Die Aktivitäten liegen somit grundlegend beim Benutzer. Die Hauptproblematik liegt

insbesondere in der Beschreibung der Anforderungen.

Bei dem Betrachten der Werkzeuge hat sich ergeben, dass RE-Tools lediglich als

reine Unterstützung für das Management von Anforderungen dienen. Bei der Aus-

wahl eines geeigneten Tools sollte vorab genau reflektiert werden, ob der Einsatz

dieses neuen Tools einen wirklichen messbaren Vorteil mit sich bringt.

Der SAP Solution Manager stieß bei der Umsetzung des RE-Prozesses an seine

Grenzen. Individuelle Funktionen sind meist mit einem höheren Entwicklungsauf-

wand verbunden, wie beispielsweise die Umsetzung für die Aufnahme spezieller At-

tribute oder die Pflege eines Glossars. Daher ist es wichtig, grundsätzlich vorher zu

reflektieren, ob ein vorhandenes kommerzielles Werkzeug in dem Bereich nicht

günstiger wäre. Der große Vorteil, den Einsatz des SAP Solution Managers zu un-

termauern, wäre die einfache Anbindung in eine vorhandene SAP Landschaft.

Page 80: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

74

7 Verzeichnisse

7.1 Literaturverzeichnis

[DeBono 2006] E. DeBono: Edward DeBono’s Thinking Course: Powerful Tools to

Transform your Thinking. BBC Active, Harlow, 2006.

[Ebert 2012] Systematisches Requirements Engineering: Anforderungen ermitteln,

spezifizieren, analysieren und verwalten. dpunkt-Verlag, Heidelberg, 2012.

[IEEE 610] IEEE Standards Board: IEEE Std 610.12.-1990. IEEE Standard Glossary

of Software Engineering Terminology. IEEE Press, 1990.

[IEEE 830] IEEE Standards Board: IEEE Std 830-1998. IEEE Recommended Prac-

tice for Software Requirements Specification. IEEE Press, 1998.

[OMG 2007] OMG: Unified Modeling Language: Superstructure, Version 2.1.1. OMG

document formal/2007-02-05.

[Pohl 1996] K. Pohl: Process-Centered Requirements Engineering. Research Study

Press, Taunton Somerset, 1996.

[Pohl 2008] K. Pohl: Requirements Engineering: Grundlagen, Prinzipien, Techniken.

dpunkt-Verlag, Heidelberg, 2008.

[Royce 1987] W. W. Royce: Managing the Development of Large Software Systems.

In: Proceedings oft he 9th International Conference on Software Engineering

(ICSE‘87), IEEE Computer Society Press, Los Alamitos, 1987.

[Rupp 2009] C. Rupp, Requirements Engineering und Management: Professionelle,

Iterative Anforderungsanalyse für die Praxis, Carl Hanser Verlag, München Wien,

2009.

[Rupp et al. 2011] C. Rupp, K. Pohl.: Basiswissen Requirements Engineering: Aus-

und Weiterbildung zum Certified Professional for Requirements Engineering

Foundation Level. dpunkt-Verlag, Heidelberg, 2011.

[Schäfer et al. 2011] Marc O. Schäfer, Matthias Melich: SAP Solution Manager. Gali-

leo Press, Bonn, 2011.

Page 81: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

75

[Schwaber et al. 2001] K. Schwaber, M. Beedle: Agile Software Development with

Scrum. Prentice Hall, Upper Saddle River, 2011.

[Standish 2011] Standish Group: Chaos Manifesto 2011. The Standish Group Inter-

national, West Yarmouth, USA, 2011, http://www.standishgroup.com.

[V-Modell 2006] V-Modell: V-Modell XT, 2006, Entwicklungsstandard für IT-Systeme

des Bundes: Das V-Modell XT. Webseite, Bundesrepublik Deutschland, 2006.

http://www.cio.bund.de/DE/Architekturen-und-Standards/V-Modell-

XT/vmodell_xt_node.html

Page 82: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

76

7.2 Abbildungsverzeichnis

Abbildung 1: Gründe für das Scheitern von IT-Projekten (vgl. [Standish 2011]) ......... 3

Abbildung 2: Arten von Anforderungen ....................................................................... 7

Abbildung 3: Requirements Engineering als abgeschlossene Phase ([Pohl 2008],

S.30) ........................................................................................................................... 9

Abbildung 4: Requirements Engineering als begleitender Prozess ([Pohl 2008], S.31)

................................................................................................................................... 9

Abbildung 5: Vollständige Satzschablone ohne Bedingung ([Rupp 2009], S. 162) ... 17

Abbildung 6: Die vollständige Satzschablone inklusive Bedingung ([Rupp 2009], S.

166) .......................................................................................................................... 18

Abbildung 7: Gesamtbild des RE-Soll Prozesses ..................................................... 34

Abbildung 8: Phase: Aufnahme ................................................................................ 36

Abbildung 9: Phase: Qualitätsprüfung ...................................................................... 39

Abbildung 10: Phase - Konfliktmanagement ............................................................. 41

Abbildung 11: Phase: Aufwandschätzung / Bewertung ............................................ 43

Abbildung 13: Einfaches Spreadsheet-Template für Anforderungen ([Ebert 2012], S.

98) ............................................................................................................................ 47

Abbildung 12: Arten von RE-Werkzeuge .................................................................. 47

Abbildung 14: Screenshot von DOORS - Anforderungen mit den zugehörigen

Attributen ([Ebert 2012], S.337) ................................................................................ 51

Abbildung 15: Verschiedene Sichten auf dasselbe DOORS-Dokument ([Ebert 2012],

S. 338) ...................................................................................................................... 52

Abbildung 16: Konfigurierbare Benutzeroberfläche von Integrity mit Dokumenten- und

Beziehungsansichten ([Ebert 2012], S. 342) ............................................................ 53

Abbildung 17: Lebenszyklus von IT-Lösungen ([Schäfer et al. 2011], S. 30) ........... 57

Abbildung 18: RE-Soll Prozess mit den einzelnen Status und Statusübergängen

(Aktionen) ................................................................................................................. 59

Abbildung 19: Ausschnitt „Aktionsprofil Scharif RE“ ................................................. 63

Abbildung 20: Ausschnitt vom Customizing-Leitfaden .............................................. 64

Abbildung 21: Ausschnitt vom „Statusprofil“ ............................................................. 65

Abbildung 22: Ausschnitt Partnerfunktion definieren ................................................ 65

Abbildung 23: Ausschnitt Partnerschema ZSRE0001 (Scharif RE - Partnerschema) 66

Abbildung 24: Ausschnitt vom Aktionsprofil ZSRE ................................................... 67

Page 83: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

77

Abbildung 25: Statusliste mit Initialwerten ................................................................ 67

Abbildung 26: Beispiel für einen Initialwert ............................................................... 67

Abbildung 27: Ausschnitt aus der "Bedingungen definieren" Konfiguration ............. 68

Abbildung 28: Ausschnitt aus dem Menüpunkt "Textfelder definieren" ..................... 69

Abbildung 29: Ausschnitt aus dem RE-Vorgang mit der Auswahl des Sachverhalts 70

Abbildung 30: Ausschnitt aus dem RE-Vorgang mit der Auswahl der Kategorie ...... 70

Abbildung 31: Ausschnitt aus dem Menüpunkt "Kategorien den Vorgangsarten

zuordnen" ................................................................................................................. 71

Abbildung 32: Einstellung im Terminprofil ................................................................. 71

Page 84: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

78

7.3 Tabellenverzeichnis

Tabelle 1: Konfliktarten ............................................................................................. 24

Tabelle 2: Konfliktauflösungsmethoden .................................................................... 25

Tabelle 3: Beispiel für eine Attributierung ................................................................. 27

Tabelle 4: Attributliste ............................................................................................... 33

Tabelle 5: Statustabelle ............................................................................................ 62

Tabelle 6: Bezeichnungen vom kopierten Vorgang .................................................. 63

Page 85: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

79

7.4 Anhang

Abbildung 33: Einführungsleitfaden (Customizing-Leitfaden) - Teil 1

Abbildung 34: Einführungsleitfaden (Customizing-Leitfaden) - Teil 2

Page 86: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

80

Abbildung 35: SAP Menü

Abbildung 36: RE-Vorgang - Teil 1

Page 87: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

81

Abbildung 37: RE-Vorgang - Teil 2

Abbildung 38:Vorgang RE - Aufgenommen mit eingeblendeter Aktion

Page 88: Requirements Engineering mit dem SAP Solution Managereddi.informatik.uni-bremen.de/SUSE/pdfs/Diplomarbeit... · 2015-09-17 · 1 1 Einleitung „ It isn‘t that they can‘t see

82

Abbildung 39: Vorgang (Anpassung)