04.02.2015 Aufrufe

Requirements Engineering Best Practice Einführung in einer agilen ...

Requirements Engineering Best Practice Einführung in einer agilen ...

Requirements Engineering Best Practice Einführung in einer agilen ...

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.

<strong>Requirements</strong> <strong>Eng<strong>in</strong>eer<strong>in</strong>g</strong> <strong>Best</strong><br />

<strong>Practice</strong> E<strong>in</strong>führung <strong>in</strong> e<strong>in</strong>er <strong>agilen</strong><br />

Umgebung<br />

Petra Schwenk und Michael Eisenbarth<br />

Hamburg September 2010


XING<br />

3


XING ist das führende europäische<br />

Onl<strong>in</strong>e-Bus<strong>in</strong>ess-Netzwerk


50<br />

Releases im Jahr<br />

~120<br />

Mitarbeiter im <strong>Eng<strong>in</strong>eer<strong>in</strong>g</strong>


Produktentwicklung @ XING<br />

2007<br />

Die Ausgangssituation<br />

7


…<br />

Wenig und/oder<br />

Unstrukturierte<br />

Kommunikation<br />

!


Unflexibles & <strong>in</strong>transparantes<br />

Anforderungs- & Changemanagement


Ineffizientes<br />

Risikomanagement


Mediz<strong>in</strong> gesucht<br />

Agile (SCRUM & Kanban)<br />

gefunden


Produktentwicklung @ XING<br />

2008<br />

Die Transformation<br />

12


http://www.agilemanifesto.org<br />

14


Von schriftlicher zu<br />

verbaler Kommunikation


Potential shippable code<br />

Wir liefern!


Vom<br />

Push zum Pull<br />

FIX<br />

Traditionell<br />

Agil<br />

Features Ressourcen Zeitplan<br />

VARIABEL<br />

Ressourcen Zeitplan Features


Was wir<br />

gelernt haben<br />

19


Fachliche & soziale<br />

Teambalance


Öfter mal <strong>in</strong>nehalten.<br />

Reflektion ist das A und O<br />

• s<strong>in</strong>d wir zu faul <strong>in</strong> unserer Kommunikation geworden<br />

• haben sich „schlechte Gewohnheiten“ e<strong>in</strong>geschlichen<br />

• s<strong>in</strong>d wir so produktiv wie wir se<strong>in</strong> könnten<br />

22


Anpassungen <strong>in</strong> der<br />

Produktorganisation<br />

• Das soll heute mal nicht unser Thema se<strong>in</strong>.<br />

Hier nur e<strong>in</strong> L<strong>in</strong>k<br />

http://www.svproduct.com/


Werkzeuge auf dem<br />

Prüfstand<br />

• Spezifikation nur auf Post-Its – das<br />

funktioniert nicht!<br />

• Word ist irgendwie aber auch ke<strong>in</strong><br />

s<strong>in</strong>nvolles Tool für die agile Spezifikation.<br />

• Könnten wir mit e<strong>in</strong>em Wiki arbeiten<br />

• Aber was schreiben wir da dann auf Und<br />

<strong>in</strong> welcher Struktur


Hilfe<br />

26


Fraunhofer<br />

IESE<br />

27


01<br />

Fraunhofer IESE Kaiserslautern<br />

• Führendes Institut für<br />

Software <strong>Eng<strong>in</strong>eer<strong>in</strong>g</strong><br />

– Nr. 1 <strong>in</strong> Europa (JSS 1 Rank<strong>in</strong>g)<br />

– Nr. 3 weltweit (CACM 2 Rank<strong>in</strong>g)<br />

• Gegründet 1996<br />

• 110 Vollzeitmitarbeiter, 90 Teilzeitmitarbeiter<br />

• Fachabteilungen für alle Phasen des<br />

Lebenszyklus von Software basierten Produkten<br />

• Vier anwendungsbezogene Geschäftsbereiche<br />

• Forschungsschwerpunkte<br />

– Spitzencluster „Software<strong>in</strong>novationen für<br />

das digitale Unternehmen“<br />

– Mobile Bus<strong>in</strong>ess Informationssysteme<br />

– Digitale Warenflüsse (Projekt ADiWa)<br />

– Fahrzeugtechnik<br />

– eEnergy & Assisted Liv<strong>in</strong>g<br />

Die Fraunhofer-Gesellschaft:<br />

80 Forschungse<strong>in</strong>richtungen weltweit<br />

davon 59 Institute <strong>in</strong> Deutschland<br />

17.000 Mitarbeiter<br />

1<br />

Journal of Systems and Software, Rank<strong>in</strong>g 2006<br />

2<br />

Communications of the ACM, Rank<strong>in</strong>g 2007


02<br />

Organigramm<br />

Executive<br />

Director<br />

Prof. Dr. D. Rombach<br />

Scientific Director<br />

Prof. Dr. P.<br />

Liggesmeyer<br />

Deputy Director<br />

Prof. Dr. F.<br />

Bomarius<br />

Bus<strong>in</strong>ess Areas<br />

Divisions<br />

Automotive and<br />

Transportation Systems<br />

Ralf Kalmar<br />

Automation &<br />

Plant <strong>Eng<strong>in</strong>eer<strong>in</strong>g</strong><br />

Dr. Daniel Görlich<br />

Medical Systems &<br />

Health Management<br />

Daniel Kerkow<br />

Rolf van Lengen<br />

Embedded Systems (ES) Dr. M. Trapp<br />

Embedded Systems Development (ESD)<br />

Embedded Systems Quality Assurance (ESQ)<br />

Process Management (PM) Dr. J. Münch<br />

Processes, Measurement and Improvement (PMI)<br />

Data Management & Ambient Technologies (DAT)<br />

Information Systems (IS) Dr. J. Dörr<br />

Information Systems<br />

F<strong>in</strong>ance • Software • Defense • eGovernment<br />

Michael Ochs<br />

Information Systems Development (ISD)<br />

Information System Quality Assurance (ISQ)


03<br />

Unser Ansatz für Informationssysteme<br />

Assess<br />

Analytischer<br />

E<strong>in</strong>stieg<br />

Release<br />

Zielgerichtete E<strong>in</strong>führung<br />

und nachhaltiger<br />

Roll-out<br />

Def<strong>in</strong>e<br />

Def<strong>in</strong>ition und<br />

Konzeption nach<br />

Kundenzielen<br />

generiert zielgerichtet Nutzen durch Anwendung <strong>in</strong><br />

Innovate<br />

Entwicklung von<br />

Verbesserungen<br />

und Innovationen<br />

analytisch<br />

konstruktiv<br />

<strong>in</strong>novativ<br />

PM<br />

Process Management<br />

Measurement/KPIs<br />

Process Improvement<br />

Education & Tra<strong>in</strong><strong>in</strong>g<br />

Experience Management<br />

IS<br />

<strong>Requirements</strong> Elicitation & Management<br />

Architectures<br />

User Experience & Usability<br />

Quality Assurance (Inspections & Test<strong>in</strong>g),<br />

IT Security<br />

Wettbewerbsfähige Produktivität & Qualität für Informationssysteme<br />

PM: Division Process Management<br />

IS: Division Information Systems


Kooperationsformen, typische Arbeiten und<br />

Projekte<br />

• Methodenentwicklung und -validierung<br />

• Toolentwicklung (prototypisch)<br />

• Technologietransfer / Prozesse<strong>in</strong>führung<br />

• Qualitätsanalyse, Assessments<br />

• Prozessberatung, Produktentwicklung<br />

• Anforderungsentwicklung und -bewertung<br />

• Architekturentwicklung und -bewertung<br />

• GUI-Design nach User Experience Pr<strong>in</strong>zipien<br />

(Interaktion und visuelles Design)<br />

• Aus- und Weiterbildung<br />

Studien<br />

Workshops<br />

Tra<strong>in</strong><strong>in</strong>gs<br />

Ausbildung<br />

E<strong>in</strong>zelprojekte, z.B.<br />

• <strong>Best</strong>andsaufnahmen<br />

• Analysen<br />

• Prozessverbesserung<br />

• Produktverbesserung<br />

• Methodene<strong>in</strong>führung<br />

Auftragsentwicklung<br />

und Konzeption, z.B.<br />

• Methoden & Prozesse<br />

• Anforderungen<br />

• Architekturen<br />

• Testen<br />

Auftrags- und Konsortialforschung:<br />

neue Konzepte,<br />

Methoden und Werkzeuge<br />

• Research Labs<br />

• Forschungsprojekte<br />

(BMBF, EU, …)<br />

04


05<br />

Ziel: Entwicklung KMU-tauglicher<br />

Rahmenwerke für frühe SW-Phasen<br />

(Fördernummer: 01 IS C02 A-D)


06 „ReqMan“ – e<strong>in</strong> Forschungsprojekt<br />

• Teil der „Software <strong>Eng<strong>in</strong>eer<strong>in</strong>g</strong> 2006“<br />

Initiative (BMBF (M<strong>in</strong>istry for Education and<br />

Research) Fördernummer: 01 IS C02 A-D)<br />

• Ziel: Entwicklung e<strong>in</strong>es <strong>in</strong>tegrierten<br />

und für KMUs anwendbaren<br />

Prozessrahmenwerks für die frühen<br />

Phasen der SW-Entwicklung<br />

– <strong>Requirements</strong>-Management<br />

– Reuse-Management<br />

– Project-Management<br />

– Quality-Management


07<br />

The ReqMan1) Framework<br />

• <strong>Best</strong> <strong>Practice</strong>s des <strong>Requirements</strong> <strong>Eng<strong>in</strong>eer<strong>in</strong>g</strong><br />

• Management, Erhebung<br />

• Analyse, Spezifikation<br />

• Verification & Validation<br />

• Prozess-Bauste<strong>in</strong>e anstatt Standardprozesse<br />

• Bereitstellung von Praktiken, Techniken, Hilfsmitteln<br />

• Kooperatives Self-Assessment / -Improvement<br />

• Unternehmen bewerten sich selbst und suchen sich<br />

selbst Verbesserungen aus<br />

• Orientiert sich an den Gegebenheiten des<br />

Unternehmens<br />

• <strong>Best</strong> <strong>Practice</strong>s werden <strong>in</strong>krementell e<strong>in</strong>geführt


08<br />

The ReqMan1) Framework<br />

n:1<br />

Aktivitätsphasen (WANN)<br />

Praktiken (WAS)<br />

n:m<br />

n:m<br />

Techniken (WIE)<br />

Prozessbauste<strong>in</strong>e anstelle von Standardprozessen


09 „ReqMan“ – the Framework<br />

Basispraktik<br />

Optimierungs-<br />

Praktik<br />

Aufbau-<br />

Praktik<br />

Kontext-<br />

Praktik


Geme<strong>in</strong>sames<br />

Vorgehen<br />

38


01<br />

Wie wir bei XING ReqMan e<strong>in</strong>geführt hat...<br />

2Q2008 3Q2008 3Q2008<br />

ReqMan Workshop<br />

Auswahl geeigneter<br />

ReqMan Praktiken<br />

massgeschneidertes<br />

ReqMan<br />

Tra<strong>in</strong><strong>in</strong>g<br />

Coach<strong>in</strong>g für Product<br />

Manager<br />

• Focus: Events-project<br />

(SCRUM)<br />

• Determ<strong>in</strong>ation of PCB on<br />

<strong>Requirements</strong> <strong>Eng<strong>in</strong>eer<strong>in</strong>g</strong><br />

(c.f. ReqMan slide forward)<br />

1.Task-oriented<br />

<strong>Requirements</strong><br />

Documentation<br />

2.Non-functional<br />

<strong>Requirements</strong><br />

3.Req.s <strong>Eng<strong>in</strong>eer<strong>in</strong>g</strong> & SCRUM<br />

4.Wiki-based Documentation<br />

5.<strong>Requirements</strong> Prioritization<br />

• Tra<strong>in</strong><strong>in</strong>g for the first 10<br />

Product Managers<br />

Coach<strong>in</strong>g for the Product<br />

Managers on<br />

• Task-oriented <strong>Requirements</strong><br />

Documentation<br />

• Wiki-based Documentation<br />

4Q2008<br />

1Q2009<br />

4Q2009<br />

„today“<br />

2. massgeschneidertes<br />

ReqMan<br />

Tra<strong>in</strong><strong>in</strong>g<br />

Coach<strong>in</strong>g für Product<br />

Manager<br />

3. massgeschneidertes<br />

ReqMan<br />

Tra<strong>in</strong><strong>in</strong>g<br />

Coach<strong>in</strong>g für Product<br />

Manager<br />

• Tra<strong>in</strong><strong>in</strong>g for additional 12<br />

XING employees, <strong>in</strong>cl.<br />

Product Managers and<br />

Eng<strong>in</strong>eers<br />

Coach<strong>in</strong>g for<br />

• Task-oriented <strong>Requirements</strong><br />

Documentation<br />

• Wiki-based Documentation<br />

• Req.s <strong>Eng<strong>in</strong>eer<strong>in</strong>g</strong> & SCRUM<br />

• Tra<strong>in</strong><strong>in</strong>g for the rema<strong>in</strong><strong>in</strong>g<br />

Product Managers and add.<br />

Eng<strong>in</strong>eers, resp. QA<br />

• Discussion on the role of<br />

product managers<br />

•Refactor<strong>in</strong>g of UC 1) specs<br />

• User Experience (UX)<br />

1Q2009<br />

2Q2009<br />

Review der XING<br />

Architecture<br />

Szenario-basierte<br />

Evaluation<br />

der Architecture<br />

•Focus: Payment<br />

Architecture<br />

• Architecture WS<br />

• <strong>in</strong>dividual Interviews with<br />

stakeholders from Arch. WS<br />

1)<br />

Use Case


Zentral den<br />

Werkzeugkasten befüllen,<br />

aber die Teams ihre endgültige<br />

Arbeitsweise selbst bestimmen lassen.


03<br />

E<strong>in</strong> Beispiel aus der Praxis


E<strong>in</strong>heitliche Projekt/Produkt-Dokumentation im<br />

04 Wiki


05<br />

AS-IS/TO-BE Betrachtungen durch Flowcharts


06<br />

UseCases<br />

1.<br />

3.<br />

4.<br />

2.


07<br />

The Backlogitem<br />

5.


08<br />

Das Tim<strong>in</strong>g im Agilen Entwicklungsprozess<br />

Product<br />

Konzeption<br />

Product<br />

Discovery<br />

&<br />

Spezifikation<br />

Product<br />

Execution<br />

Spr<strong>in</strong>t<br />

1<br />

Spr<strong>in</strong>t<br />

2<br />

Spr<strong>in</strong>t<br />

3<br />

Spr<strong>in</strong>t<br />

4<br />

Spr<strong>in</strong>t<br />

5<br />

46


09<br />

„ReqMan“ und Scrum<br />

Basispraktik


Zusammengefasst<br />

48


01<br />

Was wir erreicht haben...<br />

• Verfestigung von Wissen…<br />

• Konsistente Anforderungsdokumentation mit Wikis<br />

• Aufgabenorientiertes Anforderungs <strong>Eng<strong>in</strong>eer<strong>in</strong>g</strong> und Strukturiertes<br />

Aufschreiben von Anforderungen<br />

• Ausgewählte Anforderungs <strong>Eng<strong>in</strong>eer<strong>in</strong>g</strong> Techniken<br />

– Erhebung und Modellierung von Nicht-Funktionalen Anforderungen<br />

(NFRs)<br />

– Ereignisgesteuerte Prozess Ketten (EPKs) und Use Cases (UML und<br />

Tabellarisch)<br />

• Identifikation der XING Produkt Domänen<br />

• Anforderungs <strong>Eng<strong>in</strong>eer<strong>in</strong>g</strong> und SCRUM<br />

• Relevante und notwendige Artefakte<br />

des Anforderungs <strong>Eng<strong>in</strong>eer<strong>in</strong>g</strong>s s<strong>in</strong>d<br />

auf SCRUM Phasen abgebildet<br />

• Artefakte für das Product Backlog<br />

• Artefakte für das Spr<strong>in</strong>t Backlog


Vielen<br />

Dank<br />

für Ihre<br />

Aufmerksamkeit


Thank you<br />

for your k<strong>in</strong>d attention!<br />

Presentation Titel | Author | City, 12/10/2010 51

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!