22.05.2014 Aufrufe

Anforderungserhebung als kommunikativer Prozess

Anforderungserhebung als kommunikativer Prozess

Anforderungserhebung als kommunikativer Prozess

MEHR ANZEIGEN
WENIGER ANZEIGEN

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

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!