Anforderungserhebung als kommunikativer Prozess
Anforderungserhebung als kommunikativer Prozess
Anforderungserhebung als kommunikativer Prozess
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
Kommunikationsprozesse in der<br />
<strong>Anforderungserhebung</strong><br />
Gastvortrag im Rahmen des Seminars zum Requirements<br />
Engineering<br />
Urs Andelfinger<br />
Darmstadt, 27. Juli 2010
Unklare Anforderungen stehen oft am Anfang folgenschwerer<br />
Mißverständnisse ...<br />
Quelle:<br />
http://www.wiwi.uni-augsburg.de/bwl/buhl/dyn/root_lehrstuhl/30Lehre/011Veranstaltungen_vergangener_Semester/<br />
01999Wintersemester_2002~S2003/EBIKS_I/VL_EBIKS_I_WS0203_0.pdf?rnd=46694<br />
© 2010 Urs Andelfinger. All rights reserved. 2<br />
Gastvortrag Requirements Engineering – 27.07.2010
… nicht-verstandene Probleme führen oft in eine Sackgasse<br />
Quelle: D. Gause, Ch. Weinberg<br />
© 2010 Urs Andelfinger. All rights reserved. 3<br />
Gastvortrag Requirements Engineering – 27.07.2010
… deshalb geht es heute um wichtige Kernfragen für eine<br />
erfolgreiche <strong>Anforderungserhebung</strong><br />
Kernfragen zum besseren Verständnis der <strong>Anforderungserhebung</strong>:<br />
1. Was ist das Schwierige bei der Softwareentwicklung generell?<br />
2. Worum geht es bei der <strong>Anforderungserhebung</strong> im speziellen?<br />
3. Was hat <strong>Anforderungserhebung</strong> mit Kommunikation zu tun?<br />
4. Was gibt es für Ansätze, gute Kommunikationsprozesse bei der<br />
<strong>Anforderungserhebung</strong> zu führen?<br />
Zielsetzung:<br />
• Gemeinsames Grundverständnis der Herausforderung<br />
‚Kommunikationsprozesse bei der <strong>Anforderungserhebung</strong>‘<br />
• Kenntnis von Methoden, Techniken und möglicherweise prinzipiellen<br />
Grenzen für eine ‚gute‘ <strong>Anforderungserhebung</strong><br />
© 2010 Urs Andelfinger. All rights reserved. 4<br />
Gastvortrag Requirements Engineering – 27.07.2010
F. Brooks: DAS Schwierigste bei Softwareentwicklungen ist,<br />
genau zu bestimmen, WAS man entwickeln möchte<br />
F. Brooks: No Silver Bullet (1986):<br />
„The hardest single part of building a software system is deciding precisely<br />
what to build.<br />
No other part of the conceptual work is as difficult as establishing the detailed<br />
technical requirements, including all the interfaces to people, to machines and<br />
to other software systems.<br />
No other part of the work so cripples the resulting system if done wrong.“<br />
F.P. Brooks: No Silver Bullet: Essence and Accidents of Software Engineering. IFIP Tenth World Computing<br />
Conference 1986, Elsevier Science, Amsterdam, pp. 1069-1076.<br />
© 2010 Urs Andelfinger. All rights reserved. 5<br />
Gastvortrag Requirements Engineering – 27.07.2010
P. Naur: Softwareentwicklung ist mehr <strong>als</strong> die<br />
Produktion von lauffähiger Software<br />
Peter Naur: Programming as Theory building (1985):<br />
• „The proper, primary aim of programming is, not to produce programs, but to<br />
have the programmers build theories of the manner in which the problems at<br />
hand are solved by program execution. …<br />
This suggestion is in contrast to what appears to be a more common notion,<br />
that programming should be regarded as a production of a program and<br />
certain other texts.“<br />
• Es scheint im Rückblick der letzten 25 Jahre, <strong>als</strong> ob Naur hiermit den Nagel<br />
schon ziemlich auf den Kopf getroffen hat, nämlich die Beachtung der<br />
Kontexteinbettung von Softwareartefakten für deren praktischen Erfolg<br />
Einführungsbeispiele:<br />
beide ‚Lösungen‘ sind technisch lauffähig, verfehlen aber ihren Zweck<br />
© 2010 Urs Andelfinger. All rights reserved. 6<br />
Gastvortrag Requirements Engineering – 27.07.2010
Zur Bestimmung des ‚WAS‘ und in der anschliessenden<br />
Umsetzung muss der Software-Lebenszyklus verschiedene<br />
Lücken überbrücken<br />
© 2010 Urs Andelfinger. All rights reserved. 7<br />
Gastvortrag Requirements Engineering – 27.07.2010
Typischerweise ist der SW-Lebenszyklus eingebettet in einen<br />
(noch) größeren Kontext, den sogenannten ‚Hintergrund‘<br />
Welcher Teil ist der letztlich<br />
relevantere für den ‚Erfolg‘<br />
der Systementwicklung?<br />
© 2010 Urs Andelfinger. All rights reserved. 8<br />
Gastvortrag Requirements Engineering – 27.07.2010
Typische Rationalitäten, die durch soziale Interaktionen<br />
zwischen Vorder- und Hintergrund zu vermitteln sind<br />
© 2010 Urs Andelfinger. All rights reserved. 9<br />
Gastvortrag Requirements Engineering – 27.07.2010
Übung zum Vorder- und Hintergrund:<br />
Anwendungsbeispiel ‚Vision MOVE-Online 60+‘<br />
Aufgabenstellung:<br />
Versuchen Sie, das Fallbeispiel auf die Struktur ‚Vorder- und Hintergrund‘<br />
abzubilden (vgl. Handout)<br />
1. Was ist<br />
a.) der Hintergrund der Aufgabenstellung (Akteure, Interessen, Ressourcen)<br />
b.) der Vordergrund der Aufgabenstellung (Praktische (Anwendungs-<br />
)situation, Anforderungsdefinition, das ‚Produkt‘)<br />
2. Durch welche sozialen Interaktionen haben Sie Vorder- und Hintergrund<br />
verbunden? Welche Hürden haben Sie dabei nehmen müssen? Wie<br />
charakterisieren Sie die Interaktionskultur?<br />
3. Welche Lücken (z.B. pragmatische Lücke, Anwendungslücke) sind am<br />
‚hartnäckigsten‘? Warum?<br />
© 2010 Urs Andelfinger. All rights reserved. 10<br />
Gastvortrag Requirements Engineering – 27.07.2010
Exkurs zur Interaktionskultur: In jeder zwischenmenschlichen<br />
Kommunikation stecken mehrere Botschaften<br />
• Schultz von Thun unterscheidet z.B. 4 Botschaften<br />
Quelle: F. Schultz von Thun<br />
© 2010 Urs Andelfinger. All rights reserved. 11<br />
Gastvortrag Requirements Engineering – 27.07.2010
Exkurs zur Interaktionskultur: Die 4 Ohren im<br />
Kommunikationsmodell von Schultz von Thun<br />
• Kommt Ihnen das bekannt vor: Sie sagen etwas – und Ihr Gegenüber<br />
versteht es ganz anders, <strong>als</strong> Sie es meinten?<br />
Quelle: F. Schultz von Thun<br />
• Das 4-Ohren Modell (oder vergleichbare Modelle) hilft Ihnen, dennoch zu<br />
einem ‚guten‘ Kommunikationsergebnis zu kommen. Gerade bei IT-Projekten<br />
geht es nämlich oft um Sach- und Machtfragen zugleich. Ihr Gegenüber (z.B.<br />
Nutzer, Manager) spürt das oft intuitiv, wo Sie <strong>als</strong> Informatiker vielleicht<br />
vorrangig die Sachfrage sehen.<br />
© 2010 Urs Andelfinger. All rights reserved. 12<br />
Gastvortrag Requirements Engineering – 27.07.2010
Kommunikation im Rahmen der <strong>Anforderungserhebung</strong> ist<br />
umso kreativer, je mehr double-loop-Lernen ‚erlaubt‘ ist<br />
Quelle: nach G. Bateson und Ch. Argyris,<br />
© 2010 Urs Andelfinger. All rights reserved. 13<br />
Gastvortrag Requirements Engineering – 27.07.2010
Übung: Priorisierung der Anforderungen für die<br />
‚Vision MOVE-Online 60+‘<br />
• Chaos-Cocktail Party:<br />
– Aufschreiben DER für Sie wichtigsten Anforderung (nur 1 aufschreiben)<br />
– 1. Cocktailrunde:<br />
Austausch der eigenen Karte mit Karten von möglichst vielen<br />
Kommilitonen, KEINE Diskussion<br />
– 2. Cocktailrunde:<br />
Jetzt behalten Sie Ihre Karte. Verteilung von insgesamt 7 Punkten<br />
zwischen Ihrer Karte und der Ihres Partners – einigen Sie sich jeweils<br />
mit Ihrem Partner hinsichtlich Wichtigkeit, notieren Sie die jeweiligen<br />
Punkte für Ihre Anforderung auf Ihrer Karte (insges. 4 mal)<br />
– Abschlussrunde:<br />
Summe bilden pro Karte und Protokollierung der Rangfolge durch<br />
Moderator für die Gesamtgruppe<br />
© 2010 Urs Andelfinger. All rights reserved. 14<br />
Gastvortrag Requirements Engineering – 27.07.2010
Debriefing der Chaos-Cocktail Party für die<br />
‚Vision MOVE-Online 60+‘<br />
• Debriefing:<br />
– Können Sie mit dem Gesamtergebnis leben?<br />
– Was sind Ihre Eindrücke / Erfahrungen?<br />
– Informationsaustausch – besseres Verständnis – Rangordnung –<br />
Commitment?<br />
© 2010 Urs Andelfinger. All rights reserved. 15<br />
Gastvortrag Requirements Engineering – 27.07.2010
Kommunikationsorientierte Techniken in Best Practices des<br />
Projektmanagements, der SWT und der Wirtschaftsinformatik<br />
• Projektmanagement: PMBOK<br />
• Softwaretechnik, z.B.:<br />
– CMMI: Anforderungsmanagement<br />
– Vorgehensmodelle: iterativ-inkrementell / agil<br />
• Wirtschaftsinformatik: IT-Business Alignment & IT-Governance<br />
© 2010 Urs Andelfinger. All rights reserved. 16<br />
Gastvortrag Requirements Engineering – 27.07.2010
Kommunikationsprozesse im professionellen<br />
Projektmanagement: PMBOK-Standard<br />
• Ausgangspunkt: Statement of Work<br />
• Transformation des Statement of Works in die Project charter bzw. vom<br />
Lasten – zum Pflichtenheft:<br />
– Wer macht typischerweise was?<br />
– Was könnten aus kommunikationstheoretischer Sicht Vorteile dabei<br />
sein?<br />
– Wie könnte man das konkret machen? ( ‚Aktives Zuhören‘)<br />
© 2010 Urs Andelfinger. All rights reserved. 17<br />
Gastvortrag Requirements Engineering – 27.07.2010
Wichtige Ergebnisse solcher wechselseitiger Kommunikationsprozesse<br />
und Kommunikationsverantwortlichkeiten<br />
Commitment<br />
im Sinne einer gemeinsam geteilten Theorie und eines gemeinsam geteilten<br />
Problemverständnisses im Sinne von Motivation: „Wenn Du Menschen lehren<br />
willst, gute Segelschiffe zu bauen, lehre sie die Sehnsucht nach dem Meer“<br />
(nach A. de Saint Exupéry)<br />
© 2010 Urs Andelfinger. All rights reserved. 18<br />
Gastvortrag Requirements Engineering – 27.07.2010
Kommunikationsprozesse in der Softwaretechnik am Beispiel<br />
von CMMI: Gut gestartet (gezielt) ist halb gewonnen …<br />
19<br />
© 2010 Urs Andelfinger. All rights reserved. 19<br />
Gastvortrag Projektmanagement Requirements - WS Engineering 2008 / 09 –- 27.07.2010 29.10.2008
… allerdings sind die Ziele für eine Softwareentwicklung oft<br />
nur teilweise bekannt oder bewußt<br />
Ziele sind Triebfedern des Handelns und Richtschnur von Entscheidungen.<br />
Herausforderungen:<br />
Ziele sind oftm<strong>als</strong><br />
• nicht bewusst<br />
• einander widersprechend<br />
• unterschiedlich wichtig<br />
• zu ungenau<br />
Lösungsansatz:<br />
Ziele<br />
• zunächst aus Benutzungssicht formulieren und dann auf das<br />
Softwareprodukt beziehen<br />
• konsistent machen und priorisieren<br />
• kommunizieren und verbindlich machen<br />
20<br />
© 2010 Urs Andelfinger. All rights reserved. 20<br />
Gastvortrag Projektmanagement Requirements - WS Engineering 2008 / 09 –- 27.07.2010 29.10.2008
Kommunikationsprozesse im Anforderungsmanagement<br />
gemäß CMMI (insbesondere RD sowie REQM, PP)<br />
Kundenanforderungen<br />
entwickeln<br />
Bedürfnisse<br />
Kundenanforderungen<br />
&<br />
Betriebskonzepte<br />
Auftraggeber<br />
/<br />
Anwender /<br />
Entwickler<br />
Produktanforderungen<br />
entwickeln<br />
Produktanford. in<br />
Übereinstimmung mit<br />
den Constraints<br />
Laufendes<br />
Anforderungsmanagement<br />
Technische<br />
Umsetzung<br />
Produktanforderungen<br />
umsetzen<br />
Laufende<br />
Validierung / Verifikation<br />
© 2010 Urs Andelfinger. All rights reserved. 21<br />
Gastvortrag Requirements Engineering – 27.07.2010
Übung zur Zielpriorisierung in einem gemeinsamen<br />
Kommunikationsprozess: Das Seenotspiel & Schätzpoker<br />
• Seenotspiel: Aufgabenstellung verteilen<br />
• Schätzpoker:<br />
Karten verteilen und priorisieren: die Zahlen <strong>als</strong> relative Prioritäten<br />
interpretieren<br />
© 2010 Urs Andelfinger. All rights reserved. 22<br />
Gastvortrag Requirements Engineering – 27.07.2010
Debriefing zum Seenotspiel<br />
• Was ist die Philosophie einer sinnvollen Priorisierung?<br />
• Kommunikationstheoretische Einsichten:<br />
• Schätzpoker = Variante der Delphi-Methode, Ausnutzung der gemeinsamen<br />
Intelligenz der gesamten Gruppe. Setzt jedoch gewisse Bereitschaft zur<br />
Revision der eigenen Meinung voraus. Es können verschiedene<br />
Temperamente (Vielredner, Schüchterne) teilweise etwas gleichmäßiger<br />
integriert werden.<br />
© 2010 Urs Andelfinger. All rights reserved. 23<br />
Gastvortrag Requirements Engineering – 27.07.2010
Iterative-inkrementelle oder agile Vorgehensmodelle setzen<br />
ebenfalls intensive Kommunikationsprozesse ein<br />
z.B. Agiles Manifest:<br />
• Individu<strong>als</strong> and interactions over processes and tools<br />
• Working software over comprehensive documentation<br />
• Customer collaboration over contract negotiation<br />
• Responding to change over following a plan<br />
Oder entsprechend Barry Boehm‘s Spiralmodell, RUP, etc.<br />
Poster aus Objekt-Spektrum<br />
© 2010 Urs Andelfinger. All rights reserved. 24<br />
Gastvortrag Requirements Engineering – 27.07.2010
Strategische Grundsatz- Entscheidung<br />
Wirtschaftsinformatik: IT-Business Alignment und IT-Governance<br />
sind ohne Kommunikationsprozesse nicht denkbar<br />
Definition<br />
Mittel zur<br />
Umsetzung<br />
IT-gestützte<br />
Gesch.prozesse<br />
Informationstechnologie<br />
Realisierung<br />
Strategische<br />
Unternehmensziele<br />
prozessorientierte<br />
Einführung<br />
Basis zur Formulierung realistischer Ziele<br />
© 2010 Urs Andelfinger. All rights reserved. 25<br />
Gastvortrag Requirements Engineering – 27.07.2010
Fazit<br />
• SW-Entwicklungsprozesse sind intrinsisch mehrschichtig (Vorder- und Hintergrund,<br />
Einbettung in Kontext)<br />
• <strong>Anforderungserhebung</strong> ist KEINE 1:1 Abbildung / objektives Erkennen von<br />
‚vorhandenen‘ Anforderungen, sondern ein gegenseitiger <strong>kommunikativer</strong> Abgleich<br />
von verschiedenen Handlungsplänen und Handlungsmöglichkeiten und die<br />
Entwicklung einer (gemeinsamen) Theorie<br />
• <strong>Anforderungserhebung</strong> ist ein Kommunikationsprozess - einschliesslich anschaulicher<br />
Teile wie z.B. Prototyping ( Marc Hassenzahl etc.)<br />
• Es gibt anerkannte Methoden der SWT und der Wirtschaftsinformatik, die diese<br />
Einsichten pragmatisch einsetzen<br />
– Z.B. PMBOK, CMMI, und iterativ-inkrementelle Methoden bzw. Agile Methoden<br />
– Z.B. Chaos-Cocktail-Party, Planning-Poker etc.<br />
© 2010 Urs Andelfinger. All rights reserved. 26<br />
Gastvortrag Requirements Engineering – 27.07.2010
Fragen<br />
?<br />
© 2010 Urs Andelfinger. All rights reserved. 27<br />
Gastvortrag Requirements Engineering – 27.07.2010