Die vergessene Aktivität im RE: die Zusammenführung von ... · PDF file(In Anlehnung...

17
www.wius.bwi.uni-stuttgart.de 1 BWI Abteilung VIII Lehrstuhl für Allgemeine Betriebswirtschaftslehre und Wirtschaftsinformatik II (Unternehmenssoftware) Prof. Dr. Georg Herzwurm 29.02.2016 Sixten Schockert Die vergessene Aktivität im RE: die Zusammenführung von Bedürfnissen und Lösungen (oder die Priorisierung von Anforderungen gemäß ihres Beitrags zum Kundennutzen) Universität Stuttgart Lehrstuhl für ABWL und Wirtschaftsinformatik II

Transcript of Die vergessene Aktivität im RE: die Zusammenführung von ... · PDF file(In Anlehnung...

ww

w.w

ius.b

wi.u

ni-

stu

ttg

art

.de

1

BWI Abteilung VIIILehrstuhl für Allgemeine Betriebswirtschaftslehre und Wirtschaftsinformatik II

(Unternehmenssoftware)

Prof. Dr. Georg Herzwurm

29.02.2016

Sixten Schockert

Die vergessene Aktivität im RE:

die Zusammenführung von

Bedürfnissen und Lösungen(oder die Priorisierung von Anforderungen

gemäß ihres Beitrags zum Kundennutzen)

Universität Stuttgart

Lehrstuhl für ABWL und

Wirtschaftsinformatik II

ww

w.w

ius.b

wi.u

ni-

stu

ttg

art

.de

2

• Warum?

• Was (genau)?

• Wie?

• Wohin?

Zusammenführung

von Bedürfnissen

und Lösungen

Agenda

ww

w.w

ius.b

wi.u

ni-

stu

ttg

art

.de

3

“Das Requirements Engineering als gestaltende Disziplin ist

dafür verantwortlich, dass mit allen relevanten Stakeholdern

• die Problemstellungen, die eine Software lösen soll, definiert

und abgestimmt werden,

• Lösungen für die identifizierten Problemstellungen definiert

und abgestimmt werden,

• Anforderungen an die Lösungen definiert und abgestimmt

werden.“

Probleme – Lösungen – Anforderungen

„Anforderungen beschreiben die notwendigen Eigenschaften,

die ein System aufweisen muss, um die Lösung für ein Problem

zu sein. […] Anforderungen können erst formuliert werden,

wenn Problem und Lösung definiert wurden.“

(Lauenroth, K.: Die Legende von der lösungsneutralen Anforderung oder warum das Requirements Engineering eine

Gestaltungsdisziplin ist! In: Object Spectrum – Online Themenspecial Requirements Engineering 2015.)

ww

w.w

ius.b

wi.u

ni-

stu

ttg

art

.de

4

Bedürfnisse vs. Lösungen

• Bedürfnisse um 1900

Bequeme Fahrt

Sportliches Aussehen

Hohe Geschwindigkeit

Sparsamer Verbrauch

• Bedürfnisse um 2000

Bequeme Fahrt

Sportliches Aussehen

Hohe Geschwindigkeit

Sparsamer Verbrauch

• Lösung um 1900

• Lösung um 2000

ww

w.w

ius.b

wi.u

ni-

stu

ttg

art

.de

5

• Klaro! Alte RE-Weisheit!

• What vs. How!

WARUM analytisch trennen?

• zu lösende Probleme identifizieren

• die Stakeholder/Kunden verstehen

• nicht zu früh in Lösungen denken

• Garbage in, Garbage out vermeiden (GiGo-Prinzip)

• verschiedene Perspektiven einnehmen

• Verständlichkeit vs. Präzision

• Bedürfnisse ändern sich langsamer als Lösungen

Trennung von Bedürfnissen und Lösungen

ww

w.w

ius.b

wi.u

ni-

stu

ttg

art

.de

6

GiGo vermeiden: Kohärente EntwicklungW

ichtigste

Bedü

rfnis

se!

Anforde-rungen

Kompo-nenten

Code Testfälle

Nutzen zufällig, unregel-mäßig, unsicher

Kompo-nenten

Code TestfälleAnforde-rungen

Nutzen bewusst,

regel-mäßig, sicher

Wic

htigste

Bedü

rfnis

se!

(in Anlehnung an Zultner, R.: Quality Function Deployment for Software. Structured Requirements Exploration. In:Schulmeyer, G., McManus, J. (Hrsg.): Total Quality Management for Software. New York – London 1992, S. 297-319)

ww

w.w

ius.b

wi.u

ni-

stu

ttg

art

.de

7

WARUM synthetisch zusammenführen?

• Um wirklich GiGo zu vermeiden, muss man genau

an den Lösungen arbeiten, welche die (wichtigsten)

identifizierten Probleme lösen

• Liefert die für die Definition und Abstimmung von

Anforderungen notwendige Begründung, warum (!)

man gerade diese Lösungen zu Anforderungen

detailliert und in der Software umsetzt (und nicht

andere)

• Gemeinsames Verständnis von Problem- UND

Lösungsraum unter allen Stakeholdern erreichen

Zusammenführung von Bedürfnissen und Lösungen

ww

w.w

ius.b

wi.u

ni-

stu

ttg

art

.de

8

= Beurteilung der Wirkungen der Lösungen auf die

Bedürfnisbefriedigung

• Essentiell bei Entwicklung in Inkrementen zur Reduktion von

Unsicherheiten und zur Steuerung in agilen Projekten

• Zentrale Priorisierungskriterien:

Aufwand / Kosten / Zeit

Risiko / Unsicherheit

Abhängigkeiten / Synergien

Business Value / Kunden-/Stakeholdernutzen (!)

Wenn die Nutzeffekte der Lösungen bei der Auswahl der

im nächsten Inkrement umzusetzenden Anforderungen

berücksichtigt werden sollen, dann muss man die Lösungen

(wieder) mit den Bedürfnissen zusammenführen!

Priorisierung von Lösungen

(Siehe für eine Klassifikation von Priorisierungskriterien Riegel, N., Doerr, J.: A Systematic Literature Review of Requirements Prioritization Criteria. In:

S.A. Fricker, K. Schneider (Hrsg.): REFSQ 2015, LNCS 9013, pp. 300–317, 2015)

ww

w.w

ius.b

wi.u

ni-

stu

ttg

art

.de

9

• Verbindung von Problem- und Lösungsraum:

zweidimensionale Darstellungsmittel nötig für ein „in

Beziehung bringen“ von zwei Artefakten

• Zweck-Mittel-Beziehungen:

1:1 in Kausalformulierungen (z. B. User Stories)

1:n in Ursache-Wirkungs-Diagrammen (z. B. Maximum-

Value-Table)

m:n in Matrixdiagrammen (z. B. Priorisierungsmatrix)

• Zentrale Anforderungen:

Systematisch & strukturiert

Nachvollziehbar & personenunabhängig

Flexibel & pragmatisch einsetzbar

Toolunterstützt (?)

Möglichkeiten der Zusammenführung

ww

w.w

ius.b

wi.u

ni-

stu

ttg

art

.de

10

• Mündlich bzw. in Diskussion

• Oft in (User) Stories

Implizite Zusammenführung

„Als <Rolle> möchte ich <Ziel/Wunsch>, um <Nutzen/Vorteil> zu erreichen“ (Cohn, M.: User Stories: für die agile Software-Entwicklung mit Scrum, XP u.a. (2010))

Verständlich, einfach, natürlichsprachig, verbreitet (Scrum)

Information über Grund eines Lösungswunsches

Nur 1:1-Beziehungen zwischen Bedürfnissen und Lösungen

Nur geringe Handlungsunterstützung zur Priorisierung,denn dazu müssten die verschiedenen Nutzeffekte untereinander priorisiert werden, um auf dieser Basis die besten Lösungen für diese Nutzeffekte zu ermitteln

[gilt analog für Position Statements, die für Epics als Zusammenfassung mehrerer User Stories gebildet werden können]

BedürfnisLösung

ww

w.w

ius.b

wi.u

ni-

stu

ttg

art

.de

11

• Organisiert und

visualisiert die Stories

und Diskussionen

• Fokus auf Lösungen

• Bedürfnisse „versteckt“

in Backbone bzw. in

sog. „Outcomes“,

welche die Inkremente

erfüllen (sollen)

(User) Story Maps

Quelle: http://cmforagile.blogspot.de/2015/07/story-telling-with-story-mapping.html;

Patton, J.: User Story Mapping. O‘Reilly, Sebastopol CA 2014

Sehr flexibel und gestaltbar

Projektmanagement-Unterstützung (z. B. Releaseplanung)

Gefahr der Unübersichtlichkeit und Willkür

Priorisierung oft nur auf Lösungsseite ohne Berücksichtigung der

Bedürfnisse, da diese (oft) nur „versteckt“

ww

w.w

ius.b

wi.u

ni-

stu

ttg

art

.de

12

Flexibel einsetzbar, auch „nur“ Projektmanagement („tasks“)

Trennung (inkl. Priorisierung der Bedürfnisse) und Zusammenführung

Keine (explizite) Priorisierung auf Lösungsseite, aber Visualisierung durch

„Lösungen mit vielen Pfeilen“

Gefahr der Unübersichtlichkeit (insb. bei vielen Beziehungen/Pfeilen)

Maximum-Value-Table

(In Anlehnung an Mazur, G.: Blitz QFD – The Lean Approach to Product Development. In: Proceedings of

the World Conference on Quality and Improvement. Milwaukee WI, ASQ, Mai 2012.)

Bedürfnisse Lösungen

ww

w.w

ius.b

wi.u

ni-

stu

ttg

art

.de

13

Priorisierungsmatrix (1)

Priorisierung der

Kundenbedürfnisse

2

Legende:

Die Erfüllung des Kriteriums [oben] trägt

9 : zw angsläufig und sehr stark

3 : merkbar aber ev tl. eingeschränkt

1 : möglicherw eise und nur bedingt

0 : nur mittelbar oder ggf. gar nicht

zur Erfüllung der Anforderung [links] bei.

Wic

hti

gk

eit

An

zeig

e

Au

sfa

llsic

he

run

g

Da

ten

ha

ltu

ng

Da

ten

sic

he

rhe

it u

nd

Da

ten

sc

hu

tz

Ins

talla

tio

n u

nd

Ko

nfi

gu

rati

on

Ko

ntr

olle

un

d

Prü

fun

g

Mo

du

lari

tät

Sc

hn

itts

telle

n u

nd

Ko

mm

un

ika

tio

n

Üb

erw

ac

hu

ng

Up

da

tes

Kundenanforderungen

Administration 13,60% 9 3 3 1 9 3 3 0 9 9

Event Handling 12,90% 0 0 1 0 0 9 0 9 9 0

Fachliche Betriebsführung 12,40% 9 3 0 3 1 3 0 3 3 1

Flexibilität 11,10% 0 3 0 3 0 9 9 0 3

Sicherheit 9,30% 1 3 3 9 1 1 0 0 3 3

Compliance 8,00% 0 3 3 9 0 1 0 0 1

Verfügbarkeit 7,60% 0 9 0 0 0 3 1 0 9 3

Standards verwalten 6,50% 0 0 0 0 3 0 1 9 0 9

Individualisierung 5,70% 3 0 3 0 3 0 3 0 0

Usability 5,40% 9 0 0 0 9 3 0 0 3 3

Abrechnungsunterstützung 4,40% 1 0 0 0 0 9 0 3 3 0

Support 2,20% 1 0 0 0 3 1 0 0 1 3

Preismodell der Appliance 0,80% 0 0 0 0 0 0 3 0 0 0

99,90%

absolute Bedeutung 3,2 2,0 1,6 2,1 2,7 2,9 1,7 3,2 4,1 3,0

relative Bedeutung 11,9% 7,5% 5,9% 7,8% 10,2% 11,0% 6,6% 12,3% 15,5% 11,3%

Rang 3 8 10 7 6 5 9 2 1 4

Problemraum:

Nutzeffekte / Kundenbedürf-

nisse / Marktanforderungen

1

Zusammenführung:

Priorisierung von Lösungen

gemäß ihrer Nutzeffekte

(ihres Beitrag zur Bedürfnis-

befriedigung) 4

Lösungsraum:

Produktanforderungen

d. h. insb. funktionale

Anforderungen und

Qualitätsanforderungen

3

(Helferich, Pelzl,

Schockert:

Unterstützung

von KMU bei

der Erbringung

komplexer

Mobilitätsservic

es in Koop-

kurrenznetz-

werken. In: 44.

Jahrestagung

der Gesell-

schaft für

Informatik e.V:

Informatik 2014:

Big data –

Komplexität

meistern)

ww

w.w

ius.b

wi.u

ni-

stu

ttg

art

.de

14

Trennung von Bedürfnissen und Lösungen

Separate Priorisierung der Bedürfnisse

Zusammenführung:

Beurteilung der Lösungen im Hinblick auf ihre Nutzeffekte

(ihres Beitrags zur Nutzenstiftung / Bedürfnisbefriedigung)

Explizite Priorisierung der Lösungen

n:m-Beziehungen darstellbar d. h. Berücksichtigung von

Lösungen, die mehrere Bedürfnisse befriedigen bzw.

alternativen Lösungen für dasselbe Bedürfnis

Identifikation von Lösungen, die nur eingeschränkten Nutzen bringen

bzw. von Bedürfnissen, die nicht adäquat erfüllt werden

„Nicht sexy“ – „Old School“ – „Nicht vergnügungssteuerpflichtig“

Aufwand-Nutzen-Verhältnis bei vielen Beziehungen?

Overengineering durch „Mathematik“

Priorisierungsmatrix (2)

ww

w.w

ius.b

wi.u

ni-

stu

ttg

art

.de

15

• Trennung und Zusammenführung

• Priorisierungskriterien umfänglich

enthalten

• Bewertung der Lösungen

und Konkretisierung zu

Anforderungen als

Entwicklungsvorgaben

• Visualisierend

• Inkrementell wachsend

• Kommunikations- und

Dokumentationsmittel

• Situativ gestaltbar

• Steuerung & Kontrolle von Releases

und Inkrementen

Priority Map

Bedürf-

nisse

Lösungen

Zusam-

menfüh-

rung

Abhän-

gigkeiten

Risiken

Aufwand

Anforderungen

Re

lea

se

s

ww

w.w

ius.b

wi.u

ni-

stu

ttg

art

.de

16

• Anforderungen detaillieren Lösungen für Probleme

• Wenn RE als Gestaltungsdisziplin verstanden wird,

dann ist für die Begründung von Anforderungen

die Wirkung der Lösungen auf die Bedürfnisse

essentiell

• Priorisierung gemäß Nutzeffekten =

Zusammenführung von

Bedürfnissen und Lösungen

• Essentielle Aktivität des RE insb. bei

inkrementeller Entwicklung und zur

Steuerung & Kontrolle agiler Projekte

• Situative Ausgestaltung und Verwendung

der Möglichkeiten der Zusammenführung

von Bedürfnissen und Lösungen nötig

Fazit und Ausblick

Lösungen

Pro

ble

me

Anforderungen als Entwicklungs-

vorgaben

ww

w.w

ius.b

wi.u

ni-

stu

ttg

art

.de

17

Vielen Dank für Ihre Aufmerksamkeit!

Kontakt: Sixten Schockert

E-Mail: [email protected]

Universität Stuttgart

Lehrstuhl für ABWL und Wirtschaftsinformatik II