Agile Testing in SCRUM - Anecon
Agile Testing in SCRUM - Anecon
Agile Testing in SCRUM - Anecon
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
<strong>Agile</strong> <strong>Test<strong>in</strong>g</strong> <strong>in</strong> <strong>SCRUM</strong><br />
Expertenfrühstück 21.4.2010<br />
Gerald Grossmayer, bw<strong>in</strong> | DI Manfred Baumgartner, ANECON<br />
© ANECON Software Design und Beratung G.m.b.H. | Alser Str. 4/Hof 1 | A-1090 Wien | Tel.: +43 1 409 58 90 | www.anecon.com | office@anecon.com
Are All Pigs Equal? (Stuart Reid)<br />
- or are some more equal than others?<br />
2 | © ANECON 2010 | <strong>Agile</strong> <strong>Test<strong>in</strong>g</strong> <strong>in</strong> <strong>SCRUM</strong> | Gerald Grossmayer, DI Manfred Baumgartner
Die Rolle des Testers<br />
<strong>in</strong> <strong>SCRUM</strong>
„Jeder macht alles!“<br />
• Die def<strong>in</strong>erten Rollen:<br />
• Product Owner<br />
• <strong>SCRUM</strong>-Master<br />
• Team<br />
• Team<br />
• „Teams s<strong>in</strong>d cross-functional ohne Rollen“<br />
• „Alle Teammitglieder für alle Aufgaben“<br />
• „Es gibt nur noch den ‚Developer‘ “<br />
4 | © ANECON 2010 | <strong>Agile</strong> <strong>Test<strong>in</strong>g</strong> <strong>in</strong> <strong>SCRUM</strong> | Gerald Grossmayer, DI Manfred Baumgartner
„Exzellenz erfordert Spezialisierung!“<br />
• Beherrschung effizienter und effektiver<br />
Testtechniken und –methoden<br />
• E<strong>in</strong>satz professioneller Werkzeuge<br />
• Normen und Regelwerke <strong>in</strong> vielen E<strong>in</strong>satzgebieten<br />
• ISTQB-Certified Tester Ausbildung bereits<br />
Standard<br />
• Viele Testaspekte (z.B. Last- und Performancetest,<br />
Security-Test, …) erfordern Spezialkenntnisse<br />
5 | © ANECON 2010 | <strong>Agile</strong> <strong>Test<strong>in</strong>g</strong> <strong>in</strong> <strong>SCRUM</strong> | Gerald Grossmayer, DI Manfred Baumgartner
Wie viele Universalgenies gibt es <strong>in</strong> Ihrem<br />
Unternehmen?<br />
Analytiker<br />
Architekt<br />
Tester<br />
6 | © ANECON 2010 | <strong>Agile</strong> <strong>Test<strong>in</strong>g</strong> <strong>in</strong> <strong>SCRUM</strong> | Gerald Grossmayer, DI Manfred Baumgartner<br />
Entwickler<br />
Designer
Interdiszipl<strong>in</strong>är statt Cross-Functional<br />
• Braucht e<strong>in</strong> <strong>SCRUM</strong>-Team gute Entwickler?<br />
�Ja! Damit das Produkt gut programmiert wird.<br />
• Braucht e<strong>in</strong> <strong>SCRUM</strong>-Team gute Tester?<br />
�Ja! Damit der Bus<strong>in</strong>ess Value abgesichert ist.<br />
7 | © ANECON 2010 | <strong>Agile</strong> <strong>Test<strong>in</strong>g</strong> <strong>in</strong> <strong>SCRUM</strong> | Gerald Grossmayer, DI Manfred Baumgartner<br />
Work<strong>in</strong>g<br />
Software
Interdiszipl<strong>in</strong>är statt Cross-Functional<br />
Mister T<br />
• Der Begriff ‚Developer‘ hat sich gewandelt<br />
• Steht heute für: Architekt, Requirements Eng<strong>in</strong>eer,<br />
Programmierer, Tester etc., also jeden, der an der<br />
Entwicklung des Produkts beteiligt ist<br />
8 | © ANECON 2010 | <strong>Agile</strong> <strong>Test<strong>in</strong>g</strong> <strong>in</strong> <strong>SCRUM</strong> | Gerald Grossmayer, DI Manfred Baumgartner<br />
Individuals<br />
and<br />
Interactions
<strong>SCRUM</strong> – E<strong>in</strong>e besondere Herausforderung<br />
für den Tester!<br />
• Kurze Spr<strong>in</strong>ts erfordern höchste Effizienz und Effektivität<br />
• E<strong>in</strong>satz von Session-Based bzw. Explorative <strong>Test<strong>in</strong>g</strong> ohne die<br />
Test-Exzellenz zu verlieren<br />
• Risk Based <strong>Test<strong>in</strong>g</strong>, Value Driven <strong>Test<strong>in</strong>g</strong><br />
• „Welcome Change“ und Refactor<strong>in</strong>g erfordern laufende<br />
Regressionstests<br />
• „<strong>Agile</strong> Automation“ der funktionalen Tests<br />
• “Jobenlargement”<br />
• Verifikation, Abklärung von Anforderungen/Schreiben der Stories<br />
• Qualitätssicherung des Configuration Managements<br />
• Organisator für Retrospektive und der User Acceptance Tests<br />
• Code – Walkthroughs<br />
9 | © ANECON 2010 | <strong>Agile</strong> <strong>Test<strong>in</strong>g</strong> <strong>in</strong> <strong>SCRUM</strong> | Gerald Grossmayer, DI Manfred Baumgartner<br />
Respond<strong>in</strong>g<br />
to Change
Die Rolle des Testmanagers ändert sich!<br />
�Auch wenn viele Aufgaben e<strong>in</strong>es Testmanagers<br />
durch das Team wahrgenommen werden, ist es<br />
wichtig, dass zum<strong>in</strong>dest e<strong>in</strong> erfahrener Testmanager<br />
Teil des Teams ist.<br />
• Wahl des optimalen Testansatzes und der Testmethoden<br />
• Erfahrung <strong>in</strong> Aufwandschätzungen<br />
• Def<strong>in</strong>ition und org. Betreuung der Testumgebung<br />
• Abklärung der Testgrenzen und –verantwortlichkeiten<br />
gegenüber anderen Projekten od. Applikationsschnittstellen<br />
• Interne Qualitätssicherung der Testaktivitäten<br />
• Testmanager vs. <strong>SCRUM</strong> Master<br />
10 | © ANECON 2010 | <strong>Agile</strong> <strong>Test<strong>in</strong>g</strong> <strong>in</strong> <strong>SCRUM</strong> | Gerald Grossmayer, DI Manfred Baumgartner
AGILE als Promoter für den<br />
professionellen Software-Test<br />
• Test Driven Development – „Write the Test first“<br />
• Frühzeitige E<strong>in</strong>beziehung der Tester<br />
• Z.B. ke<strong>in</strong> Release Plann<strong>in</strong>g, Spr<strong>in</strong>t Plann<strong>in</strong>g ohne Tester<br />
• Pair <strong>Test<strong>in</strong>g</strong><br />
• Tester - Tester<br />
Customer<br />
• Tester - Entwickler<br />
• Tester - Anwender / Product Owner Collaboration<br />
• Test Refactor<strong>in</strong>g<br />
• Optimieren der Testumgebungen, Testdaten, Testsuites für<br />
laufendes Regression <strong>Test<strong>in</strong>g</strong><br />
• Testautomatisierung als kritischer Erfolgsfaktor<br />
• Die Zeitfenster für die Regressionstests s<strong>in</strong>d sehr kurz<br />
11 | © ANECON 2010 | <strong>Agile</strong> <strong>Test<strong>in</strong>g</strong> <strong>in</strong> <strong>SCRUM</strong> | Gerald Grossmayer, DI Manfred Baumgartner
AGILE als Promoter für den<br />
professionellen Software-Test<br />
• E<strong>in</strong>satz effektiver Testtechniken<br />
• Die hohe Geschw<strong>in</strong>digkeit bed<strong>in</strong>gt Effizienz und Schlagkraft<br />
• Explorativer Test alle<strong>in</strong>e ist zu wenig<br />
• Grenzwert-Tests, Äquivalenzklassenanalyse etc. s<strong>in</strong>d auch im <strong>Agile</strong>n<br />
Projekt verpfichtend<br />
• Testabdeckung auf Anforderungsebene ist nicht ausreichend<br />
• Negativprüfungen s<strong>in</strong>d oft nicht abgedeckt<br />
• Nicht funktionale Anforderungen s<strong>in</strong>d oft nicht berücksichtigt<br />
� E<strong>in</strong>satz von Code Coverage Metriken<br />
• Qualität der Unit Tests ist essentiell<br />
• Entwickler müssen auch zu Testern werden<br />
• Design oder Review der Unit Tests durch Tester<br />
12 | © ANECON 2010 | <strong>Agile</strong> <strong>Test<strong>in</strong>g</strong> <strong>in</strong> <strong>SCRUM</strong> | Gerald Grossmayer, DI Manfred Baumgartner
Die Rolle und Aufgaben des Testers<br />
Die Praxis bei bw<strong>in</strong><br />
• „yes, we are still here“<br />
�Test Eng<strong>in</strong>eers s<strong>in</strong>d Teil aller spr<strong>in</strong>t teams<br />
• Alle Stories werden durch das gesamte spr<strong>in</strong>t team<br />
abgenommen und geschätzt<br />
• Verhältnis Entwicker : Tester von 4:1 bis 1:1<br />
• Feature – <strong>Test<strong>in</strong>g</strong><br />
• Entwicklung der Testfälle<br />
• Automatisierung der Testfälle<br />
• Durchführung der Testfälle<br />
• Freigabe für UAT<br />
• Betreuung des UAT<br />
13 | © ANECON 2010 | <strong>Agile</strong> <strong>Test<strong>in</strong>g</strong> <strong>in</strong> <strong>SCRUM</strong> | Gerald Grossmayer, DI Manfred Baumgartner
Die Rolle und Aufgaben des Testers<br />
Die Praxis bei bw<strong>in</strong><br />
• Automatisierung der funktionalen Testfälle<br />
• Basierend auf Kosten/Nutzen<br />
• Technische Machbarkeit<br />
• Umfangreiches Automatisierungsframework<br />
• Aktueller Automatisierungsgrad: ca. 45 %<br />
14 | © ANECON 2010 | <strong>Agile</strong> <strong>Test<strong>in</strong>g</strong> <strong>in</strong> <strong>SCRUM</strong> | Gerald Grossmayer, DI Manfred Baumgartner
Die Rolle und Aufgaben des Testers<br />
Die Praxis bei bw<strong>in</strong><br />
• Organisation der UATs geme<strong>in</strong>sam mit dem<br />
Delivery Manager<br />
• Abstimmung des Deployments mit IT Operations<br />
• Optimierung der Regressiontestphase<br />
(Qualität vs. Durchsatz)<br />
15 | © ANECON 2010 | <strong>Agile</strong> <strong>Test<strong>in</strong>g</strong> <strong>in</strong> <strong>SCRUM</strong> | Gerald Grossmayer, DI Manfred Baumgartner
Die organisatorische E<strong>in</strong>bettung<br />
Die Praxis bei bw<strong>in</strong><br />
• Section <strong>Test<strong>in</strong>g</strong><br />
• Eigenständige Abteilung und nicht Teil des<br />
Developments<br />
• Test Automation<br />
• Automatisierungsframework<br />
• Reporterstellung im Bereich <strong>Test<strong>in</strong>g</strong><br />
• Test Eng<strong>in</strong>eer<strong>in</strong>g<br />
• Tester <strong>in</strong> den Spr<strong>in</strong>t-Teams<br />
• Geme<strong>in</strong>sames M<strong>in</strong>dset<br />
• Durchgängige ISTQB-Zertifizierungen<br />
• Homogenes Umfeld (Prozesse, Testenvironment,…)<br />
• Verteiltes Team<br />
16 | © ANECON 2010 | <strong>Agile</strong> <strong>Test<strong>in</strong>g</strong> <strong>in</strong> <strong>SCRUM</strong> | Gerald Grossmayer, DI Manfred Baumgartner
Die organisatorische E<strong>in</strong>bettung<br />
Die Praxis bei bw<strong>in</strong><br />
17 | © ANECON 2010 | <strong>Agile</strong> <strong>Test<strong>in</strong>g</strong> <strong>in</strong> <strong>SCRUM</strong> | Gerald Grossmayer, DI Manfred Baumgartner
Die Teststufen <strong>in</strong><br />
<strong>SCRUM</strong>
“Wo s<strong>in</strong>d sie geblieben?”<br />
• Klassische Teststufen (ISTQB)<br />
•Komponententest<br />
•Integrationstest<br />
•Systemtest<br />
•Abnahmetest<br />
• In <strong>Agile</strong>n Methoden:<br />
•Unit Test<br />
•User Acceptance Test<br />
19 | © ANECON 2010 | <strong>Agile</strong> <strong>Test<strong>in</strong>g</strong> <strong>in</strong> <strong>SCRUM</strong> | Gerald Grossmayer, DI Manfred Baumgartner
Die Absicherung des Bus<strong>in</strong>ess Values<br />
Unit Test<br />
• Test der<br />
Klassen /<br />
Komponenten<br />
• Entwickler<br />
• Entwicklungsumgebung<br />
• N-Unit, J-Unit,<br />
...<br />
Integration<br />
Test<br />
• Test auf der<br />
Integrationsmasch<strong>in</strong>e<br />
• Daily Build<br />
• Nightly Testrun<br />
• „The Sun never<br />
sets on bad<br />
Code“<br />
Fachlicher<br />
Systemtest<br />
• Story <strong>Test<strong>in</strong>g</strong><br />
(manuell u.<br />
automatisiert)<br />
• Story<br />
Integration<br />
<strong>Test<strong>in</strong>g</strong><br />
• Systemtest<br />
Umgebung<br />
• Tester,<br />
Anwender<br />
20 | © ANECON 2010 | <strong>Agile</strong> <strong>Test<strong>in</strong>g</strong> <strong>in</strong> <strong>SCRUM</strong> | Gerald Grossmayer, DI Manfred Baumgartner<br />
System<br />
Integration<br />
Test<br />
• End To End<br />
• Schnittstellen<br />
• Integrierte<br />
Systemtestlandschaft<br />
• Tester, Product<br />
Owner,<br />
Anwender<br />
User<br />
Acceptance<br />
Test<br />
• Feature <strong>Test<strong>in</strong>g</strong><br />
• Abnahmeumgebung<br />
• Product Owner,<br />
Anwender
Der <strong>SCRUM</strong> Prozess<br />
Die Praxis bei bw<strong>in</strong><br />
21 | © ANECON 2010 | <strong>Agile</strong> <strong>Test<strong>in</strong>g</strong> <strong>in</strong> <strong>SCRUM</strong> | Gerald Grossmayer, DI Manfred Baumgartner
Die Testphasen<br />
Die Praxis bei bw<strong>in</strong><br />
Spr<strong>in</strong>t<br />
Backlog<br />
Feature Entwicklung<br />
Testfälle erstellen<br />
nach 50% der Feature Test Phase 80% der Testfälle def<strong>in</strong>iert<br />
Testfalldurchführung<br />
100 % der neuen/adaptierten Testfälle<br />
Defekt Fix & Retest<br />
Prio 1: 100%; Prio 2: X%<br />
Testfallautomatisierung<br />
Prio 1: 100%; Prio2: 50%<br />
22 | © ANECON 2010 | <strong>Agile</strong> <strong>Test<strong>in</strong>g</strong> <strong>in</strong> <strong>SCRUM</strong> | Gerald Grossmayer, DI Manfred Baumgartner<br />
Regressionstest<br />
Prio 1: 100%; Prio2: Feature abh.<br />
UAT
Die Testdokumentation<br />
Die Praxis bei bw<strong>in</strong><br />
• Alle Requirements s<strong>in</strong>d dokumentiert<br />
• Alle Testfälle s<strong>in</strong>d dokumentiert<br />
•Testfallbeschreibung<br />
•Protokollierung der Testfalldurchführung<br />
• Alle Defects s<strong>in</strong>d dokumentiert<br />
•Feature Test � Spr<strong>in</strong>t Backlog<br />
•Production � Product Backlog<br />
•Defect Process<br />
23 | © ANECON 2010 | <strong>Agile</strong> <strong>Test<strong>in</strong>g</strong> <strong>in</strong> <strong>SCRUM</strong> | Gerald Grossmayer, DI Manfred Baumgartner
Entfaltung des Potentials der <strong>Agile</strong>n Idee<br />
• Gesteigertes Qualitätsbewusstse<strong>in</strong> <strong>in</strong>nerhalb des<br />
gesamten <strong>SCRUM</strong> Teams<br />
• Automatisierung ist e<strong>in</strong> Muss <strong>in</strong> <strong>SCRUM</strong>-Projekten<br />
• Daily Scrums und Retrospektiven verbessern die<br />
Kommunikation und Arbeitsweisen für Entwickler<br />
und Tester<br />
• Unterschiedliche aber gleichberechtigte und<br />
gleichwertige Rollen � E<strong>in</strong> Team<br />
24 | © ANECON 2010 | <strong>Agile</strong> <strong>Test<strong>in</strong>g</strong> <strong>in</strong> <strong>SCRUM</strong> | Gerald Grossmayer, DI Manfred Baumgartner
Software-Test<br />
• professionell<br />
• umfassend<br />
• agil<br />
ANECON Software Design und Beratung G.m.b.H.<br />
Alser Straße 4 / Hof 1 | A-1090 Wien | www.anecon.com<br />
office@anecon.com | Tel.: +43 1 409 58 90 - 0 | Fax: -998