Test i agile projekter af Gitte Ottosen, Sogeti

50 %
50 %
Information about Test i agile projekter af Gitte Ottosen, Sogeti

Published on March 7, 2014

Author: InfinITnetvaerk

Source: slideshare.net


Oplægget blev holdt ved et seminar i InfinIT-interessegruppen Softwaretest den 11. februar 2014. Læs mere om interessegruppen her: http://infinit.dk/dk/interessegrupper/softwaretest/softwaretest.htm

Testing and Agile Gitte Ottosen Gitte.ottosen@sogeti.dk @godtesen

Sogeti Profile • Sogeti is a leading provider of structured testing solutions • Part of the Sogeti Group, which brings together more than 20,000 professionals in 15 countries and is present in over 100 locations in Europe, USA and India • Creators of the globally recognized methodologies TMap NEXT ® and TPI NEXT® • Well established cooperation with HP, IBM and Microsoft © Sogeti

Agenda 1. 2. 3. 4. © Sogeti The agile world The proces – short presentation of SCRUM and Kanban The test role in agile Testing in agile

The Agile World

One Way of Looking at Agile  © Sogeti

The Agile Manifest We are uncovering better ways of developing software by doing it and helping others do it. Through this work we have come to value: Individuals and interactions Working software Customer collaboration Responding to change over over over over processes and tools comprehensive doc. contract negotiation following a plan That is, while there is value in the items on the right, we value the items on the left more. Reference Kent Beck, Mike Beedle, Arie van Bennekum, Alistair Cockburn Ward Cunningham, Martin Fowler, James Grenning, Jim Highsmith Andrew Hunt, Ron Jeffries, Jon Kern, Brian Marick, Robert C. Martin Steve Mellor, Ken Schwaber, Jeff Sutherland, Dave Thomas © Sogeti

The Agile Perspective • Processes and tools • Comprehensive documentation • Contract negotiation • Individuals & interactions • Working software • Customer collaboration • Responding to change © Sogeti • Following a plan OVER

The Agile Principles • Highest priority is to satisfy the customer through early and continuous delivery of valuable software. • Welcome changing requirements, even late in development. Agile processes harness change for the customer's competitive advantage. • Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale. • Business people and developers must work together daily throughout the project. • Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done. • The most efficient and effective method of conveying information to and within a development team is face-toface conversation. © Sogeti

The Agile Principles cont. • Working software is the primary measure of progress. • Agile processes promote sustainable development. The sponsors, developers, and users should be able to maintain a constant pace indefinitely. • Continuous attention to technical excellence and good design enhances agility. • Simplicity--the art of maximizing the amount of work not done--is essential. • The best architectures, requirements, and designs emerge from self-organizing teams. • At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly. © Sogeti

Implementations SCRUM and KANBAN

Major Agile Methods Scrum • Iterative and incremental • Focus on change • Continous improvement Kanban • Similar to Scrum, but no iterations • Focus on flow • Minimizes work in progres XP • More technical than Scrum and Kanban • Frequent "releases" in short development cycles • Test Driven Development © Sogeti

SCRUM in a Slide 24 hours 3-4 weeks Product Backlog Prioritized by customer © Sogeti Sprint Backlog Broken down by SCRUM team. Testet product ready for release

Key Roles and Responsibilities Product Owner • • • • • Owns the business case and there by the profitability of the product Decides what features to implement Prioritizes features according to the business case Provides input to the planning and on a day to day basis Accepts or rejects work results Scrum Master • • • • • Helps the team do the best work it possibly can Owns the process and organizes ceremonies Removes any impediments to progress Shields the team from external interferences Works with Product owner on maintaining the Product Backlog Team Member • • • • Cross-functional, seven plus/minus two members Responsible for planning iterations and committing to assignments Selects the best possible way to reach the iteration goal (with in project guidelines) Self organizing © Sogeti

Scrum Artifacts Product Backlog • • • Features Bugs Technical work Sprint Backlog • • • Features Stories Tasks Burndown Charts • • • Remaining work Completed tasks Ideal burndown © Sogeti

A Couple of Important Words • Definition of ready • Definition of done © Sogeti

SCRUM Board © Sogeti

Help work to flow Kanban Next (4) Analysis (3) Ongoing Development (3) Done Definition of Done: - nnn © Sogeti Acceptance (2) Ongoing Ongoing Done Definition of Done: - nnn Done Definition of Done: - nnn Production

What Changes With Agile Feedback Quality Adaption Empowerment Visibility © Sogeti •Faster delivery of business benefits •Reduced risk through early delivery •Higher quality of deliverables through continuous testing •Continuous learning and improvement •Iterative planning and communication •Improved teamwork and morale through empowerment and self organisation •Business have control over priorities through continuous collaboration •More accurate reporting through delivery of working product

Traditional vs Agile Projects Plan driven Agile Change Manage & control it Change is inevitable – embrace and expect it Planning/test design Comprehensive upfront plans/test design Plan/design as you go Documentation Can be heavy Minimised - Only as much as necessary Handoffs Formal entry/exit criteria Team Collaboration Test Automation System level built by tool specialists, created after code is ‘done’ All levels, built by anyone, an integral part of the project Source: Elizabeth Hendrickson © Sogeti

Test in an Agile Context

The word on the web! …We need to step away from the nagging position we have in a waterfall process and become more active in the process of developing the software. Active does not mean that we should be sitting down hammering in code, but we should be involved from the beginning and be giving the developers feedback instantly on how the new feature works,instead of complaining at the end when everything is built…. …in agile testing you need to start to execute tests fast. Having working software early is a key aspect, and this means you have to have testable software early… …testing has to become a natural part of an agile project and not just a phase after The developers have stopped coding and before customers receives their software. It’s about reaching the same goal as a team, i.e. to deliver working software within as short a space of time as possible… ….testing, quality is the team’s responsibility. The test analysts now have a different role. In addition to testing, they have to coach business representatives and developers. © Sogeti

Role of the Tester – Challenges and Experiences • Full Integration of testers into development team – – – – – Just another role in the team Clarify roles (tester define) – collaborative Co-locate Consult on good testing Early involvement – a very positive experience! • Testing without detailed requirements • Minimising test documentation • Tester skillset – Communicate, communicate, communicate – Early test design - ‘Test Driven Development’? – Experienced based techniques -Exploratory testing © Sogeti – Lightweight, minimise unnecessary detail and duplication, multipurpose, checklists, risk lists, Wikis, – May need to develop programming skills or – Developers automate the tests on testers behalf – Opportunities for testers – analysis, programming, etc.

Role of Tester • Involved continuously from start…e.g. – Facilitate communication between the technical & business stakeholders – Support early validation of requirements – Help the Customer/business stakeholders define acceptance criteria – Create automated acceptance tests • Or define for developers to script – Expand scope of ‘acceptance’ tests – Advise the team about overall risks and trends – Perform manual/exploratory tests © Sogeti

Testing Within a Sprint Automated acceptance/ story based tests Manual Exploratory Tests Represent Executable requirements © Sogeti Automated Unit Tests Represent Executable design specifications Provides supplementary feedback

Automation Manual testing GUI Test Manual testing Acceptance Test (api) Unit Test © Sogeti Unit Test

Context is Everything… Manue l test GUI Test Adapt the Test Pyramid to you needs Accept Test (api lag) End to End Test Unit Test Configuration File structure Permissions Data integrity Component Integration Test Source: Lisa Crispin © Sogeti

Automatic Business-facing Explorative test Scenario test Usability test UAT Pilot test Q2 Q3 Functional test Story test Proto types Simulations Q1 Q4 Unit test Component test Non-functional (response, load…) Security Technology-facing Manual Critique product Supports the team Manual& automatic Tools Source: Brian Marick © Sogeti

Is It Enough? – Remember the Big Picture Existing System Feature Feature Think about the testing quarants Unit test Component test © Sogeti Functional test Story test Proto types Simulations Explorative test Scenario test Usability test UAT Pilot test Non-functional (response, load…) Security

Is It Enough? – Remember the Big Picture Existing System Feature Feature Think about the testing quarants Unit test Component test © Sogeti Functional test Story test Proto types Simulations Explorative test Scenario test Usability test UAT Pilot test Non-functional (response, load…) Security

Typical agile test/quality related challenges Non-functional issues Integration Testing Developer buy-in for shared quality ownership Distributed development Role of the tester and test manager Quality of unit tests Ineffective incremental test strategy Insufficient focus on working software – stories not ‘done’ ‘Agile’ without sufficient customer involvement Effectiveness of automation strategy Effectiveness of automated tests Lack of technical expertise in test team © Sogeti Testing bottleneck Hybrid implementations

Success Factors Look at the Big Picture Adopt an Agile Testing Mindset Collaborate with Customers Use the Whole Team Approach Key Success Factors Build a Foundation of Core Agile Practices Automate Regression Testing Provide and Obtain Feedback Source: Janet Gregory, Dragonfire © Sogeti

Common Pitfalls • Modify the models to fit your context, but be aware of, what elements that are essential for the model. • If you are implementing a model for the first time, then get help from someone who has tried it before. • Don’t forget to have a structured approach to testing and QA – and do it up front. • Test automation is essential – but should not replace manual testing. © Sogeti

REMEMBER There is no ”best practice” – only good practice in a certain context. Thank you © Sogeti

Add a comment

Related presentations

Related pages

TestExpo™ 2015 | Testsuppe På En Sten - Gitte Ottosen ...

Gitte Ottosen deler en tilgang, som hun har brugt med succes som tester og testmanager i agile projekter: et mindmap til at identificere ...
Read more

Gitte Ottosen | TechWell

Gitte Ottosen is a managing consultant at Sogeti Denmark, a company delivering test ... agile contexts. She has worked with test ... Gitte Ottosen.
Read more

Sogeti | LinkedIn

... Program Test Manager at Sogeti Nederland, ... Test i agile projekter af Gitte Ottosen, Sogeti. 779 Views. ArndBrugman. Sogeti week Mobile. 24 Views ...
Read more

Metodernes kamp af Ole Chr Hansen og Gitte Ottosen, Sogeti ...

Metodernes kamp af Ole Chr Hansen og Gitte Ottosen, Sogeti ... i retning af det agile, ... fokus på udforskende test, ...
Read more

Projekter | LinkedIn

Med agile projekter kan man optimere sit projektforløb, ... Test i agile projekter af Gitte Ottosen, Sogeti. ... Software Test infinIT.
Read more

STAREAST 2016 - Conference Speaker: Gitte Ottosen

Learn more about Gitte Ottosen's ... Sogeti Denmark, a company that delivers test ... and agile contexts. She has worked in test ...
Read more

Blog: Agil test – hvad er det egentlig for en størrelse?

Agil test er et begreb, vi bruger i ... Når talen falder på test i agile projekter, ... Gitte Ottosen er Rådgivende Konsulent hos Capgemini Sogeti ...
Read more

Gitte Ottosen, Test Manager - Capgemini Sogeti Danmark A/S

For Gitte Ottosen er test ikke bare et ... Her fik jeg interessen for det agile, ... at vi som en del af Capgemini Sogeti har noget som mange andre ...
Read more

Test Tool Event van Sogeti | DATPROF Testdata Management

... van Sogeti | DATPROF Testdata Management. Toggle navigation. DocFoc. Login; Signup; Home; Education; Technology; Documents; More Topics; Home; Software ...
Read more