SlideShare a Scribd company logo
1 of 34
All Rights Reserved - AgileSparks
QA Team
Transition to
Agile Testing
Alcatel-Lucent Haifa – Case Study
Liat Arad-Bitan – QA manager, Alcatel-Lucent
Dr. Ronen Bar-Nahor – AgileSparks
1
All Rights Reserved - AgileSparks
Background
• Alcatel-Lucent (Haifa) specializes in content
management solutions for tier-1 carriers
• Decided to develop a new platform for
content management for SaaS providers
• Moving to new technology, development
environment and Agile 
• ~30 developers
• ~15 QA people (manual testing), 1
automation expert
2
All Rights Reserved - AgileSparks
What We Achieved
• Better quality … Continuously Working System!
• More than 90% coverage
• Refactoring with less fear and minimal regression efforts
• E.g. Replace the database … Components …
• Improved efficiency/reduced waste:
• Reduced code freeze period
• Test documentation maintenance
• We develop only what is needed
• We test only what was developed
• We have full traceability for free
• Re-use of automation code
• QA plays a key role in the Scrum team
• Better business understanding
• Provides value to the team (not just “bug hunters”)
• QA-Dev collaboration
• High motivation (but some left…)
3
All Rights Reserved - AgileSparks
Acceptance Test Driven
Development - ATDD
Add a test
Write some code
Tests passed?
Run tests
Refactor
Development
finished
Yes
No
No
Yes
20%
75%
All Rights Reserved - AgileSparks
5
QA implementation steps
• Agile training for QA leads, Exposure to ATDD
• Sprint “zero”
• Looking for ATDD tools (Jbehave, Cucumber, Fitnesse )
• POC for a simple story
• Decision on the BDD format
• Chosing Cucumber (easy to learn, active community)
• Train the team to write code
• Frustration and fear from writing code
• 1 week training on Java
• Train in ATDD and BDD writing
• Inspect and Adapt – more coaching 5
All Rights Reserved - AgileSparks
6
QA implementation steps
Tips
• Promote the new tester role
• Represents the PO within the team
• Train early the entire team on ATDD (fail first) and
how to write good BDD
• Understanding the framework (Text<->code) is a must!
• It is not so difficult to learn to write automation
• Automation champion to support the QA team  a must
• Need more focus on software engineering
• Scrum team support  shared ownership
• Read the Cucumber book!
• Join the community
6
All Rights Reserved - AgileSparks
TIP - What we expected from an
ATDD tool ?
• Express expectations in a language and format that allow
collaboration among the whole team
• Minimum of test code
• Test code written in the team’s “native” language
• To play nicely with source control systems and continuous
integration
• Pluggable to support a variety of interfaces (e.g. UI
automation)
• Can become a product spec (documentation tool)
• Active community
7
All Rights Reserved - AgileSparks
Acceptance Test Design
BDD approach - Behavioral Driven Development
• TIPS
• Working software over comprehensive
documentation
• No more huge textual test documents & documents
maintenance
• Document only the purpose, expected behavior and data
• Code the steps !
• Executable specs
• Describe ALL expected business behavior
• Decide later what will be tested in which level (UT, Manual, AT)
All Rights Reserved - AgileSparks
Acceptance for MMF – Minimal Marketable Feature
(MMF)
http://us.123rf.com/400wm/400/400/cokemomo/cokemomo1206/cokemomo1206
00007/13939893-mini-hamburgers-party-food.jpg
http://www.levensmiddelenkrant.nl/uploads/foto/0_61_ha
mburger_(Large).jpg
The smallest set of functionality that must be realized in
order for the customer to perceive value.
All Rights Reserved - AgileSparks
Will it always fit into iteration ?
• MMF describes the system
behavior  the product spec, not
how it was developed
• Might be split into user stories
• User story is a planning tool,
covers MMF’s scenarios, They exist
until implemented and then they
disappear !
TIP – Write Acceptance tests for MMF.
Will be expanded while elaborating
stories DoD.
All Rights Reserved - AgileSparks
BDD structure (Given-
When-Then)
Feature – [Feature/MMF title]
As a [role] I want [feature] So that [benefit]
Scenario 1: [Title/test purpose]
Given [context/system state]
And [some more context]...
When [event/action] and [ next event/action]
Then [outcome]
and [another outcome]...
Scenario 2: ...
TIPS:
• Business
Language
(and not
tester)
•Extract
Data
•Coaching
All Rights Reserved - AgileSparks
Examples
• Feature: Standard Signup
As a new user I want to create an account so that I can
use the application
Scenario: Signup with valid email/password combination
Given I do not have an account
When I signup with email and password
Then I should be logged in
And my profile details should be filled in
All Rights Reserved - AgileSparks
BDD Feature fileMMF
User story
tag
Test
purpose
In unit
test/manual
Extract
Data
Then …
All Rights Reserved - AgileSparks
BDD code (java)
14
• Given  initial state for the test
All Rights Reserved - AgileSparks
BDD code (java)
15
• When  user/system actions
All Rights Reserved - AgileSparks
BDD code (java)
16
• Then expected results
All Rights Reserved - AgileSparks
Frameworks, interfaces, drivers
All Rights Reserved - AgileSparks
TIP - BDD Design
• Integrate ATDD into the release process
• PO writes User Story description in Jira
• QA prepares BDD (after team sniffing)
• PO reviews with the QA (and dev rep)
• BDD is a condition for “ready story”
• It is a step in the Kanban flow
18
All Rights Reserved - AgileSparks
BDD as part of ready story.
Early integration (component teams)
19
Scrum
+BDD
Dev2dev
integration
Integration
points/NF
Writing the
BDD for a
US
E2E and NFT
All Rights Reserved - AgileSparks
20
TIPS - BDD Development
• Team commits to the BDD!!!
• Developer and QA review together the BDD and agree:
• What to test, by whom and how to automate it
(unit/acceptance)
• Comment the unit or manual steps/scenarios in the BDD
• Developer develops first the “API contract”
• QA develops the automation (code review with
developer)
• Developer works until BDD pass (end of iteration), QA
works on BDD of next iteration
20
Scrum Level 3
Sprint 1 Sprint 2 Sprint 3
PSPPSPPSP
All Rights Reserved - AgileSparks
21
TIPS - BDD Execution
• Automation of a new story is executed only in the
development environment (not to break the product
build)
• Once the Story is done (ATDD - all automation is pass) and
checked-in the main trunk also, the automation is
activated.
21
All Rights Reserved - AgileSparks
22
Continuous Integration
22
All Rights Reserved - AgileSparks
All Rights Reserved - AgileSparks
All Rights Reserved - AgileSparks
All Rights Reserved - AgileSparks
26
Make tests independent
• Init state - Automate static test data creation
• System level (all features) - Develop set-up utility
• Feature level - Use Given step (without action)
• Scenario level - Use background (cucumber)
• Roll back system state
• Delete scenario data at the end of the test scenario
• Delete setup data at the end of test execution
26
All Rights Reserved - AgileSparks
27
Re-use of steps/code
• BDD steps reuse (execution)
• Requires common data accessibility, e.g.:
• Common member/code
• Common data structure results
• Change the data (BDD), re-use the code
• Java utilities for actions/common behavior
• Includes API calls that shall be easily replaced
27
All Rights Reserved - AgileSparks
28
Re-use example
Feature - Add User
Given system admin exists
When creating user with attributes:
id|name | phone |
1 | Ronen | 00000 |
Then user created successfully
id|name | phone |
1 | Ronen | 00000 |
28
Feature - Update User
Given creating user with attributes:
id|name | phone |
1 | Ronen_1 | 55555 |
And fetching user data
|name |
|Ronen_1 |
when updating user with values:
id| name | phone |
1 | Liat | 00001 |
Then user updated successfully:
id| name | phone |
1 | Liat | 00001 |
Feature Get User
Given creating user with attributes:
id| name | phone |
1 | user test | 21234545 |
When fetching user data
|name |
|user test |
Then user is fetched:
id|name | phone |
1 | user test | 21234545 |
All Rights Reserved - AgileSparks
COPYRIGHT © 2011 ALCATEL-LUCENT. ALL RIGHTS RESERVED.
E2E Re-Use Example
“Saas provider” component
Module (source)
Acceptance tests
Java
Features
“Admin user” component
Module (source)
Acceptance tests
Java
Features
“Common” testing
Java
E2E testing
Features
jar
jar
jar
Given system admin logs in
When calling createSaasProvider API
with parameters: “Saas1”
Then Saas Provider “Saas1” is created
Given Saas provider Saas2 in the system
When calling createAdminUser API with
parameters “Admin1”
Then admin user “Admin1” is created
Given system admin logs in
When calling createSaasProvider API with
parameters: “Advanced TV”
And calling createAdminUser API with
parameters “Advanced TV Admin”
Then Saas Provider “Advanced TV” is created
And admin user “Advanced TV Admin” is
created
All Rights Reserved - AgileSparks
GUI automation
• Development framework AngularJS
• Carma – UT (for java script) + AT
• Phantom browser (better performance)
• Any browser (E2E)
All Rights Reserved - AgileSparks
What next
• Schedule work based on E2E priorities (to
reduce cycle time)
• Improve the Dev2Dev integration test
• Executable spec …
31
All Rights Reserved - AgileSparks
THANKS !
32
All Rights Reserved - AgileSparks
33
Component, Integration &
E2E Testing
• Component testing
• A Component is an independent unit  expose services
• Tested with stubs in local component environment
• MMF might be developed across components
• MMF Integration testing (“white box”)
• Risks areas mapped during MMF architecture review
• Team exposes API for the early NFT and integration automation
• Integration testing done by the teams in integration environment
• E2E testing (“black box”)
• No new java code- all reused from components acceptance tests
• New BDD (feature files ) are written describing the flow(s) based on
existing BDDs 33
All Rights Reserved - AgileSparks
Main Agile Implementation
steps
• Working with AgileSparks from day1
• 2 days Management Workshop
• Agile principles (e.g. Kanban+Scrum, Done is Done, Zero
defects)
• Backlog preparation
• Story Mapping to create first MVP
• Tool decision (Jira – already exist)
• 1 day Agile Training to all teams (Agile thinking &
Scrum)
• On-the-job coaching
34

More Related Content

What's hot

Agile Testing Strategy
Agile Testing StrategyAgile Testing Strategy
Agile Testing Strategytharindakasun
 
Agile Testing – embedding testing into agile software development lifecycle
Agile Testing – embedding testing into agile software development lifecycle Agile Testing – embedding testing into agile software development lifecycle
Agile Testing – embedding testing into agile software development lifecycle Kari Kakkonen
 
How to Build in Quality from Day 1 using Lean QA and Agile Testing
How to Build in Quality from Day 1 using Lean QA and Agile TestingHow to Build in Quality from Day 1 using Lean QA and Agile Testing
How to Build in Quality from Day 1 using Lean QA and Agile TestingAtlassian
 
Agile testing principles and practices - Anil Karade
Agile testing principles and practices - Anil KaradeAgile testing principles and practices - Anil Karade
Agile testing principles and practices - Anil KaradeIndicThreads
 
Agile tour ncr test360_degree - agile testing on steroids
Agile tour ncr test360_degree - agile testing on steroidsAgile tour ncr test360_degree - agile testing on steroids
Agile tour ncr test360_degree - agile testing on steroidsVipul Gupta
 
Agile Testing and Test Automation
Agile Testing and Test AutomationAgile Testing and Test Automation
Agile Testing and Test AutomationNaveen Kumar Singh
 
Testing strategy for agile projects updated
Testing strategy for agile projects updatedTesting strategy for agile projects updated
Testing strategy for agile projects updatedTharinda Liyanage
 
Scrum Process Overview
Scrum Process OverviewScrum Process Overview
Scrum Process OverviewPaul Nguyen
 
You Can't Be Agile If Your Testing Practices Suck - Vilnius October 2019
You Can't Be Agile If Your Testing Practices Suck - Vilnius October 2019You Can't Be Agile If Your Testing Practices Suck - Vilnius October 2019
You Can't Be Agile If Your Testing Practices Suck - Vilnius October 2019Peter Gfader
 
Project Management With Scrum
Project Management With ScrumProject Management With Scrum
Project Management With ScrumTommy Norman
 
Testing in Agile Projects
Testing in Agile ProjectsTesting in Agile Projects
Testing in Agile Projectssriks7
 
Introduction to Agile Hardware
Introduction to Agile Hardware Introduction to Agile Hardware
Introduction to Agile Hardware Cprime
 

What's hot (20)

Agile Testing Strategy
Agile Testing StrategyAgile Testing Strategy
Agile Testing Strategy
 
Agile Testing – embedding testing into agile software development lifecycle
Agile Testing – embedding testing into agile software development lifecycle Agile Testing – embedding testing into agile software development lifecycle
Agile Testing – embedding testing into agile software development lifecycle
 
How to Build in Quality from Day 1 using Lean QA and Agile Testing
How to Build in Quality from Day 1 using Lean QA and Agile TestingHow to Build in Quality from Day 1 using Lean QA and Agile Testing
How to Build in Quality from Day 1 using Lean QA and Agile Testing
 
Agile testing principles and practices - Anil Karade
Agile testing principles and practices - Anil KaradeAgile testing principles and practices - Anil Karade
Agile testing principles and practices - Anil Karade
 
Agile tour ncr test360_degree - agile testing on steroids
Agile tour ncr test360_degree - agile testing on steroidsAgile tour ncr test360_degree - agile testing on steroids
Agile tour ncr test360_degree - agile testing on steroids
 
Agile Testing and Test Automation
Agile Testing and Test AutomationAgile Testing and Test Automation
Agile Testing and Test Automation
 
What is Agile Testing?
What is Agile Testing? What is Agile Testing?
What is Agile Testing?
 
Guide to Agile testing
Guide to Agile testingGuide to Agile testing
Guide to Agile testing
 
Testing strategy for agile projects updated
Testing strategy for agile projects updatedTesting strategy for agile projects updated
Testing strategy for agile projects updated
 
Agile tester 3.0
Agile tester 3.0Agile tester 3.0
Agile tester 3.0
 
Scrum Process Overview
Scrum Process OverviewScrum Process Overview
Scrum Process Overview
 
You Can't Be Agile If Your Testing Practices Suck - Vilnius October 2019
You Can't Be Agile If Your Testing Practices Suck - Vilnius October 2019You Can't Be Agile If Your Testing Practices Suck - Vilnius October 2019
You Can't Be Agile If Your Testing Practices Suck - Vilnius October 2019
 
Agile Engineering Practices
Agile Engineering PracticesAgile Engineering Practices
Agile Engineering Practices
 
AgileTesting_Ver1.0
AgileTesting_Ver1.0AgileTesting_Ver1.0
AgileTesting_Ver1.0
 
Presentation on Agile Testing
Presentation on Agile TestingPresentation on Agile Testing
Presentation on Agile Testing
 
Project Management With Scrum
Project Management With ScrumProject Management With Scrum
Project Management With Scrum
 
QA in Agile World
QA in Agile WorldQA in Agile World
QA in Agile World
 
Testing in Agile Projects
Testing in Agile ProjectsTesting in Agile Projects
Testing in Agile Projects
 
Introduction to Agile Hardware
Introduction to Agile Hardware Introduction to Agile Hardware
Introduction to Agile Hardware
 
Testing in Agile Development
Testing in Agile DevelopmentTesting in Agile Development
Testing in Agile Development
 

Viewers also liked

cPrime - Agile Quality Engineering
cPrime - Agile Quality EngineeringcPrime - Agile Quality Engineering
cPrime - Agile Quality EngineeringCprime
 
Agile project, myths & selection criteria
Agile project, myths & selection criteriaAgile project, myths & selection criteria
Agile project, myths & selection criteriaWilliam Hill Australia
 
We did it!!? There is place for QAs in Agile!!?
We did it!!? There is place for QAs in Agile!!?We did it!!? There is place for QAs in Agile!!?
We did it!!? There is place for QAs in Agile!!?mkujalowicz
 
Agile transition model for Large Organizations
Agile transition model for Large OrganizationsAgile transition model for Large Organizations
Agile transition model for Large OrganizationsUnai Roldán
 
Quality Assurance Comparison in Traditional and Agile Methodologies
Quality Assurance Comparison in Traditional and Agile MethodologiesQuality Assurance Comparison in Traditional and Agile Methodologies
Quality Assurance Comparison in Traditional and Agile Methodologiescoolbreeze130
 
Agile Tool Selection
Agile Tool SelectionAgile Tool Selection
Agile Tool SelectionChad Holdorf
 
Integrated Dev And Qa Team With Scrum
Integrated Dev And Qa Team With ScrumIntegrated Dev And Qa Team With Scrum
Integrated Dev And Qa Team With ScrumEthan Huang
 
Agile Transition Framework - presented at Frankfurt PMI Chapter
Agile Transition Framework - presented at Frankfurt PMI ChapterAgile Transition Framework - presented at Frankfurt PMI Chapter
Agile Transition Framework - presented at Frankfurt PMI ChapterArno Delhij 웃
 
Agile-Transition Approach
Agile-Transition ApproachAgile-Transition Approach
Agile-Transition ApproachTuhin Dey
 
Agile 20015 Boot Camp: Intro to Agile Testing - Everyone Owns Quality
Agile 20015 Boot Camp: Intro to Agile Testing - Everyone Owns QualityAgile 20015 Boot Camp: Intro to Agile Testing - Everyone Owns Quality
Agile 20015 Boot Camp: Intro to Agile Testing - Everyone Owns Qualitylisacrispin
 
How to Solve Problems of Testing in Agile Environments
How to Solve Problems of Testing in Agile EnvironmentsHow to Solve Problems of Testing in Agile Environments
How to Solve Problems of Testing in Agile EnvironmentsCA Technologies
 
Build Your Agile Testing Skill Set
Build Your Agile Testing Skill SetBuild Your Agile Testing Skill Set
Build Your Agile Testing Skill Setlisacrispin
 
Agile Requirements Exploration: How Testers Add Value
Agile Requirements Exploration: How Testers Add ValueAgile Requirements Exploration: How Testers Add Value
Agile Requirements Exploration: How Testers Add Valuelisacrispin
 
ScrumGuides Agile Estimating And Planning With Scrum
ScrumGuides Agile Estimating And Planning With ScrumScrumGuides Agile Estimating And Planning With Scrum
ScrumGuides Agile Estimating And Planning With ScrumAlexey Krivitsky
 
Stop Scaling Start Growing Agile
Stop Scaling Start Growing AgileStop Scaling Start Growing Agile
Stop Scaling Start Growing AgileDhaval Panchal
 

Viewers also liked (19)

Transition to agile
Transition to agileTransition to agile
Transition to agile
 
ProductSavvy - Scrum and QA
ProductSavvy - Scrum and QAProductSavvy - Scrum and QA
ProductSavvy - Scrum and QA
 
cPrime - Agile Quality Engineering
cPrime - Agile Quality EngineeringcPrime - Agile Quality Engineering
cPrime - Agile Quality Engineering
 
QA and scrum
QA and scrumQA and scrum
QA and scrum
 
Agile project, myths & selection criteria
Agile project, myths & selection criteriaAgile project, myths & selection criteria
Agile project, myths & selection criteria
 
We did it!!? There is place for QAs in Agile!!?
We did it!!? There is place for QAs in Agile!!?We did it!!? There is place for QAs in Agile!!?
We did it!!? There is place for QAs in Agile!!?
 
Agile tools
Agile toolsAgile tools
Agile tools
 
Agile transition model for Large Organizations
Agile transition model for Large OrganizationsAgile transition model for Large Organizations
Agile transition model for Large Organizations
 
Quality Assurance Comparison in Traditional and Agile Methodologies
Quality Assurance Comparison in Traditional and Agile MethodologiesQuality Assurance Comparison in Traditional and Agile Methodologies
Quality Assurance Comparison in Traditional and Agile Methodologies
 
Agile Tool Selection
Agile Tool SelectionAgile Tool Selection
Agile Tool Selection
 
Integrated Dev And Qa Team With Scrum
Integrated Dev And Qa Team With ScrumIntegrated Dev And Qa Team With Scrum
Integrated Dev And Qa Team With Scrum
 
Agile Transition Framework - presented at Frankfurt PMI Chapter
Agile Transition Framework - presented at Frankfurt PMI ChapterAgile Transition Framework - presented at Frankfurt PMI Chapter
Agile Transition Framework - presented at Frankfurt PMI Chapter
 
Agile-Transition Approach
Agile-Transition ApproachAgile-Transition Approach
Agile-Transition Approach
 
Agile 20015 Boot Camp: Intro to Agile Testing - Everyone Owns Quality
Agile 20015 Boot Camp: Intro to Agile Testing - Everyone Owns QualityAgile 20015 Boot Camp: Intro to Agile Testing - Everyone Owns Quality
Agile 20015 Boot Camp: Intro to Agile Testing - Everyone Owns Quality
 
How to Solve Problems of Testing in Agile Environments
How to Solve Problems of Testing in Agile EnvironmentsHow to Solve Problems of Testing in Agile Environments
How to Solve Problems of Testing in Agile Environments
 
Build Your Agile Testing Skill Set
Build Your Agile Testing Skill SetBuild Your Agile Testing Skill Set
Build Your Agile Testing Skill Set
 
Agile Requirements Exploration: How Testers Add Value
Agile Requirements Exploration: How Testers Add ValueAgile Requirements Exploration: How Testers Add Value
Agile Requirements Exploration: How Testers Add Value
 
ScrumGuides Agile Estimating And Planning With Scrum
ScrumGuides Agile Estimating And Planning With ScrumScrumGuides Agile Estimating And Planning With Scrum
ScrumGuides Agile Estimating And Planning With Scrum
 
Stop Scaling Start Growing Agile
Stop Scaling Start Growing AgileStop Scaling Start Growing Agile
Stop Scaling Start Growing Agile
 

Similar to QA team transition to agile testing at Alcatel Lucent

Continuous Build To Continuous Release - Experience
Continuous Build To Continuous Release - ExperienceContinuous Build To Continuous Release - Experience
Continuous Build To Continuous Release - ExperienceRaja Soundaramourty
 
Salesforce Continuous Integration with AutoRABIT
Salesforce Continuous Integration with AutoRABITSalesforce Continuous Integration with AutoRABIT
Salesforce Continuous Integration with AutoRABITVishnu Raju Datla
 
Karim Fanadka
Karim FanadkaKarim Fanadka
Karim FanadkaCodeFest
 
New trends in testing automation
New trends in testing automationNew trends in testing automation
New trends in testing automationEran Kinsbrunner
 
Continuous Delivery: How RightScale Releases Weekly
Continuous Delivery: How RightScale Releases WeeklyContinuous Delivery: How RightScale Releases Weekly
Continuous Delivery: How RightScale Releases WeeklyRightScale
 
Lean-Agile Development with SharePoint - Bill Ayers
Lean-Agile Development with SharePoint - Bill AyersLean-Agile Development with SharePoint - Bill Ayers
Lean-Agile Development with SharePoint - Bill AyersSPC Adriatics
 
5 Steps on the Way to Continuous Delivery
5 Steps on the Way to Continuous Delivery5 Steps on the Way to Continuous Delivery
5 Steps on the Way to Continuous DeliveryXebiaLabs
 
An Introduction to Microservices
An Introduction to MicroservicesAn Introduction to Microservices
An Introduction to MicroservicesAd van der Veer
 
Azure Integration DTAP Series, How to go from Development to Production – Par...
Azure Integration DTAP Series, How to go from Development to Production – Par...Azure Integration DTAP Series, How to go from Development to Production – Par...
Azure Integration DTAP Series, How to go from Development to Production – Par...BizTalk360
 
FUNTASY - Functional testing automated system
FUNTASY - Functional testing automated systemFUNTASY - Functional testing automated system
FUNTASY - Functional testing automated systemQualitest
 
Modern Web-site Development Pipeline
Modern Web-site Development PipelineModern Web-site Development Pipeline
Modern Web-site Development PipelineGlobalLogic Ukraine
 
Eating our Own Dogfood - How Automic Automates
Eating our Own Dogfood - How Automic AutomatesEating our Own Dogfood - How Automic Automates
Eating our Own Dogfood - How Automic AutomatesCA | Automic Software
 
The Right Tool for the Right Project
The Right Tool for the Right ProjectThe Right Tool for the Right Project
The Right Tool for the Right ProjectOri Bendet
 
Change management in hybrid landscapes
Change management in hybrid landscapesChange management in hybrid landscapes
Change management in hybrid landscapesChris Kernaghan
 
Cucumber jvm best practices v3
Cucumber jvm best practices v3Cucumber jvm best practices v3
Cucumber jvm best practices v3Ahmed Misbah
 
Developing for the Atlassian Ecosystem
Developing for the Atlassian EcosystemDeveloping for the Atlassian Ecosystem
Developing for the Atlassian EcosystemAlex Henderson
 
Getting to Walk with DevOps
Getting to Walk with DevOpsGetting to Walk with DevOps
Getting to Walk with DevOpsEklove Mohan
 
SCM Transformation Challenges and How to Overcome Them
SCM Transformation Challenges and How to Overcome ThemSCM Transformation Challenges and How to Overcome Them
SCM Transformation Challenges and How to Overcome ThemCompuware
 

Similar to QA team transition to agile testing at Alcatel Lucent (20)

Continuous Build To Continuous Release - Experience
Continuous Build To Continuous Release - ExperienceContinuous Build To Continuous Release - Experience
Continuous Build To Continuous Release - Experience
 
Salesforce Continuous Integration with AutoRABIT
Salesforce Continuous Integration with AutoRABITSalesforce Continuous Integration with AutoRABIT
Salesforce Continuous Integration with AutoRABIT
 
Karim Fanadka
Karim FanadkaKarim Fanadka
Karim Fanadka
 
New trends in testing automation
New trends in testing automationNew trends in testing automation
New trends in testing automation
 
Continuous Delivery: How RightScale Releases Weekly
Continuous Delivery: How RightScale Releases WeeklyContinuous Delivery: How RightScale Releases Weekly
Continuous Delivery: How RightScale Releases Weekly
 
Lean-Agile Development with SharePoint - Bill Ayers
Lean-Agile Development with SharePoint - Bill AyersLean-Agile Development with SharePoint - Bill Ayers
Lean-Agile Development with SharePoint - Bill Ayers
 
5 Steps on the Way to Continuous Delivery
5 Steps on the Way to Continuous Delivery5 Steps on the Way to Continuous Delivery
5 Steps on the Way to Continuous Delivery
 
An Introduction to Microservices
An Introduction to MicroservicesAn Introduction to Microservices
An Introduction to Microservices
 
Azure Integration DTAP Series, How to go from Development to Production – Par...
Azure Integration DTAP Series, How to go from Development to Production – Par...Azure Integration DTAP Series, How to go from Development to Production – Par...
Azure Integration DTAP Series, How to go from Development to Production – Par...
 
FUNTASY - Functional testing automated system
FUNTASY - Functional testing automated systemFUNTASY - Functional testing automated system
FUNTASY - Functional testing automated system
 
Modern Web-site Development Pipeline
Modern Web-site Development PipelineModern Web-site Development Pipeline
Modern Web-site Development Pipeline
 
Key alias dev standard final
Key alias   dev standard finalKey alias   dev standard final
Key alias dev standard final
 
Elastic-Engineering
Elastic-EngineeringElastic-Engineering
Elastic-Engineering
 
Eating our Own Dogfood - How Automic Automates
Eating our Own Dogfood - How Automic AutomatesEating our Own Dogfood - How Automic Automates
Eating our Own Dogfood - How Automic Automates
 
The Right Tool for the Right Project
The Right Tool for the Right ProjectThe Right Tool for the Right Project
The Right Tool for the Right Project
 
Change management in hybrid landscapes
Change management in hybrid landscapesChange management in hybrid landscapes
Change management in hybrid landscapes
 
Cucumber jvm best practices v3
Cucumber jvm best practices v3Cucumber jvm best practices v3
Cucumber jvm best practices v3
 
Developing for the Atlassian Ecosystem
Developing for the Atlassian EcosystemDeveloping for the Atlassian Ecosystem
Developing for the Atlassian Ecosystem
 
Getting to Walk with DevOps
Getting to Walk with DevOpsGetting to Walk with DevOps
Getting to Walk with DevOps
 
SCM Transformation Challenges and How to Overcome Them
SCM Transformation Challenges and How to Overcome ThemSCM Transformation Challenges and How to Overcome Them
SCM Transformation Challenges and How to Overcome Them
 

More from AgileSparks

What Do Agile Leaders Do by Kurt Bittner
What Do Agile Leaders Do by Kurt Bittner What Do Agile Leaders Do by Kurt Bittner
What Do Agile Leaders Do by Kurt Bittner AgileSparks
 
Distributed Teams by Kevin Goldsmith
Distributed Teams by Kevin GoldsmithDistributed Teams by Kevin Goldsmith
Distributed Teams by Kevin GoldsmithAgileSparks
 
A Back-End Approach to Customer Driven by Adi Gostynski
A Back-End Approach to Customer Driven by Adi GostynskiA Back-End Approach to Customer Driven by Adi Gostynski
A Back-End Approach to Customer Driven by Adi GostynskiAgileSparks
 
Jira Portfolio by Elad Ben-Noam
Jira Portfolio by Elad Ben-NoamJira Portfolio by Elad Ben-Noam
Jira Portfolio by Elad Ben-NoamAgileSparks
 
Agile Hiring at Scale by Yon Bergman
Agile Hiring at Scale by Yon Bergman Agile Hiring at Scale by Yon Bergman
Agile Hiring at Scale by Yon Bergman AgileSparks
 
Are We Really Using Our Resources in The Most Effective Way? by Perry Yaqubo...
Are We Really Using Our Resources in The Most Effective Way?  by Perry Yaqubo...Are We Really Using Our Resources in The Most Effective Way?  by Perry Yaqubo...
Are We Really Using Our Resources in The Most Effective Way? by Perry Yaqubo...AgileSparks
 
Honest Experimentation by Jonathan Bertfield
 Honest Experimentation by Jonathan Bertfield Honest Experimentation by Jonathan Bertfield
Honest Experimentation by Jonathan BertfieldAgileSparks
 
Pango Journey to an Agile Cloud by Yaniv Kalo
Pango Journey to an Agile Cloud by Yaniv KaloPango Journey to an Agile Cloud by Yaniv Kalo
Pango Journey to an Agile Cloud by Yaniv KaloAgileSparks
 
ClickSoftware Agile Tranistion by Meny Duek
ClickSoftware Agile Tranistion by Meny DuekClickSoftware Agile Tranistion by Meny Duek
ClickSoftware Agile Tranistion by Meny DuekAgileSparks
 
Augury's Journey Towards CD by Assaf Mizrachi
Augury's Journey Towards CD by Assaf Mizrachi Augury's Journey Towards CD by Assaf Mizrachi
Augury's Journey Towards CD by Assaf Mizrachi AgileSparks
 
Kubernetes is Hard! Lessons Learned Taking Our Apps to Kubernetes by Eldad Assis
Kubernetes is Hard! Lessons Learned Taking Our Apps to Kubernetes by Eldad AssisKubernetes is Hard! Lessons Learned Taking Our Apps to Kubernetes by Eldad Assis
Kubernetes is Hard! Lessons Learned Taking Our Apps to Kubernetes by Eldad AssisAgileSparks
 
Creating a Culture of Ownership and Trust with Visibility and Transparency by...
Creating a Culture of Ownership and Trust with Visibility and Transparency by...Creating a Culture of Ownership and Trust with Visibility and Transparency by...
Creating a Culture of Ownership and Trust with Visibility and Transparency by...AgileSparks
 
Real Innovation is with Real Customers by Baat Enosh
Real Innovation is with Real Customers by Baat EnoshReal Innovation is with Real Customers by Baat Enosh
Real Innovation is with Real Customers by Baat EnoshAgileSparks
 
True Continuous Improvement with Toyota Kata by Jesper Boeg
True Continuous Improvement with Toyota Kata by Jesper BoegTrue Continuous Improvement with Toyota Kata by Jesper Boeg
True Continuous Improvement with Toyota Kata by Jesper BoegAgileSparks
 
Homo-Adaptus Agile Worker by Lior Frenkel
Homo-Adaptus Agile Worker by Lior FrenkelHomo-Adaptus Agile Worker by Lior Frenkel
Homo-Adaptus Agile Worker by Lior FrenkelAgileSparks
 
Intel CHD Case Study by Ronen Ezra
Intel CHD Case Study by Ronen EzraIntel CHD Case Study by Ronen Ezra
Intel CHD Case Study by Ronen EzraAgileSparks
 
Leading Innovation by Jonathan Bertfield
Leading Innovation by Jonathan BertfieldLeading Innovation by Jonathan Bertfield
Leading Innovation by Jonathan BertfieldAgileSparks
 
Organization architecture autonomy and accountability
Organization architecture autonomy and accountability Organization architecture autonomy and accountability
Organization architecture autonomy and accountability AgileSparks
 
Tribal Unity, Agile Israel 2017
Tribal Unity, Agile Israel 2017Tribal Unity, Agile Israel 2017
Tribal Unity, Agile Israel 2017AgileSparks
 
The mindful manager, Agile Israel 2017
The mindful manager, Agile Israel 2017The mindful manager, Agile Israel 2017
The mindful manager, Agile Israel 2017AgileSparks
 

More from AgileSparks (20)

What Do Agile Leaders Do by Kurt Bittner
What Do Agile Leaders Do by Kurt Bittner What Do Agile Leaders Do by Kurt Bittner
What Do Agile Leaders Do by Kurt Bittner
 
Distributed Teams by Kevin Goldsmith
Distributed Teams by Kevin GoldsmithDistributed Teams by Kevin Goldsmith
Distributed Teams by Kevin Goldsmith
 
A Back-End Approach to Customer Driven by Adi Gostynski
A Back-End Approach to Customer Driven by Adi GostynskiA Back-End Approach to Customer Driven by Adi Gostynski
A Back-End Approach to Customer Driven by Adi Gostynski
 
Jira Portfolio by Elad Ben-Noam
Jira Portfolio by Elad Ben-NoamJira Portfolio by Elad Ben-Noam
Jira Portfolio by Elad Ben-Noam
 
Agile Hiring at Scale by Yon Bergman
Agile Hiring at Scale by Yon Bergman Agile Hiring at Scale by Yon Bergman
Agile Hiring at Scale by Yon Bergman
 
Are We Really Using Our Resources in The Most Effective Way? by Perry Yaqubo...
Are We Really Using Our Resources in The Most Effective Way?  by Perry Yaqubo...Are We Really Using Our Resources in The Most Effective Way?  by Perry Yaqubo...
Are We Really Using Our Resources in The Most Effective Way? by Perry Yaqubo...
 
Honest Experimentation by Jonathan Bertfield
 Honest Experimentation by Jonathan Bertfield Honest Experimentation by Jonathan Bertfield
Honest Experimentation by Jonathan Bertfield
 
Pango Journey to an Agile Cloud by Yaniv Kalo
Pango Journey to an Agile Cloud by Yaniv KaloPango Journey to an Agile Cloud by Yaniv Kalo
Pango Journey to an Agile Cloud by Yaniv Kalo
 
ClickSoftware Agile Tranistion by Meny Duek
ClickSoftware Agile Tranistion by Meny DuekClickSoftware Agile Tranistion by Meny Duek
ClickSoftware Agile Tranistion by Meny Duek
 
Augury's Journey Towards CD by Assaf Mizrachi
Augury's Journey Towards CD by Assaf Mizrachi Augury's Journey Towards CD by Assaf Mizrachi
Augury's Journey Towards CD by Assaf Mizrachi
 
Kubernetes is Hard! Lessons Learned Taking Our Apps to Kubernetes by Eldad Assis
Kubernetes is Hard! Lessons Learned Taking Our Apps to Kubernetes by Eldad AssisKubernetes is Hard! Lessons Learned Taking Our Apps to Kubernetes by Eldad Assis
Kubernetes is Hard! Lessons Learned Taking Our Apps to Kubernetes by Eldad Assis
 
Creating a Culture of Ownership and Trust with Visibility and Transparency by...
Creating a Culture of Ownership and Trust with Visibility and Transparency by...Creating a Culture of Ownership and Trust with Visibility and Transparency by...
Creating a Culture of Ownership and Trust with Visibility and Transparency by...
 
Real Innovation is with Real Customers by Baat Enosh
Real Innovation is with Real Customers by Baat EnoshReal Innovation is with Real Customers by Baat Enosh
Real Innovation is with Real Customers by Baat Enosh
 
True Continuous Improvement with Toyota Kata by Jesper Boeg
True Continuous Improvement with Toyota Kata by Jesper BoegTrue Continuous Improvement with Toyota Kata by Jesper Boeg
True Continuous Improvement with Toyota Kata by Jesper Boeg
 
Homo-Adaptus Agile Worker by Lior Frenkel
Homo-Adaptus Agile Worker by Lior FrenkelHomo-Adaptus Agile Worker by Lior Frenkel
Homo-Adaptus Agile Worker by Lior Frenkel
 
Intel CHD Case Study by Ronen Ezra
Intel CHD Case Study by Ronen EzraIntel CHD Case Study by Ronen Ezra
Intel CHD Case Study by Ronen Ezra
 
Leading Innovation by Jonathan Bertfield
Leading Innovation by Jonathan BertfieldLeading Innovation by Jonathan Bertfield
Leading Innovation by Jonathan Bertfield
 
Organization architecture autonomy and accountability
Organization architecture autonomy and accountability Organization architecture autonomy and accountability
Organization architecture autonomy and accountability
 
Tribal Unity, Agile Israel 2017
Tribal Unity, Agile Israel 2017Tribal Unity, Agile Israel 2017
Tribal Unity, Agile Israel 2017
 
The mindful manager, Agile Israel 2017
The mindful manager, Agile Israel 2017The mindful manager, Agile Israel 2017
The mindful manager, Agile Israel 2017
 

Recently uploaded

CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 
Next-generation AAM aircraft unveiled by Supernal, S-A2
Next-generation AAM aircraft unveiled by Supernal, S-A2Next-generation AAM aircraft unveiled by Supernal, S-A2
Next-generation AAM aircraft unveiled by Supernal, S-A2Hyundai Motor Group
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Snow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter RoadsSnow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter RoadsHyundai Motor Group
 
Artificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraArtificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraDeakin University
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 

Recently uploaded (20)

CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 
Next-generation AAM aircraft unveiled by Supernal, S-A2
Next-generation AAM aircraft unveiled by Supernal, S-A2Next-generation AAM aircraft unveiled by Supernal, S-A2
Next-generation AAM aircraft unveiled by Supernal, S-A2
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
Snow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter RoadsSnow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter Roads
 
Artificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraArtificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning era
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 

QA team transition to agile testing at Alcatel Lucent

  • 1. All Rights Reserved - AgileSparks QA Team Transition to Agile Testing Alcatel-Lucent Haifa – Case Study Liat Arad-Bitan – QA manager, Alcatel-Lucent Dr. Ronen Bar-Nahor – AgileSparks 1
  • 2. All Rights Reserved - AgileSparks Background • Alcatel-Lucent (Haifa) specializes in content management solutions for tier-1 carriers • Decided to develop a new platform for content management for SaaS providers • Moving to new technology, development environment and Agile  • ~30 developers • ~15 QA people (manual testing), 1 automation expert 2
  • 3. All Rights Reserved - AgileSparks What We Achieved • Better quality … Continuously Working System! • More than 90% coverage • Refactoring with less fear and minimal regression efforts • E.g. Replace the database … Components … • Improved efficiency/reduced waste: • Reduced code freeze period • Test documentation maintenance • We develop only what is needed • We test only what was developed • We have full traceability for free • Re-use of automation code • QA plays a key role in the Scrum team • Better business understanding • Provides value to the team (not just “bug hunters”) • QA-Dev collaboration • High motivation (but some left…) 3
  • 4. All Rights Reserved - AgileSparks Acceptance Test Driven Development - ATDD Add a test Write some code Tests passed? Run tests Refactor Development finished Yes No No Yes 20% 75%
  • 5. All Rights Reserved - AgileSparks 5 QA implementation steps • Agile training for QA leads, Exposure to ATDD • Sprint “zero” • Looking for ATDD tools (Jbehave, Cucumber, Fitnesse ) • POC for a simple story • Decision on the BDD format • Chosing Cucumber (easy to learn, active community) • Train the team to write code • Frustration and fear from writing code • 1 week training on Java • Train in ATDD and BDD writing • Inspect and Adapt – more coaching 5
  • 6. All Rights Reserved - AgileSparks 6 QA implementation steps Tips • Promote the new tester role • Represents the PO within the team • Train early the entire team on ATDD (fail first) and how to write good BDD • Understanding the framework (Text<->code) is a must! • It is not so difficult to learn to write automation • Automation champion to support the QA team  a must • Need more focus on software engineering • Scrum team support  shared ownership • Read the Cucumber book! • Join the community 6
  • 7. All Rights Reserved - AgileSparks TIP - What we expected from an ATDD tool ? • Express expectations in a language and format that allow collaboration among the whole team • Minimum of test code • Test code written in the team’s “native” language • To play nicely with source control systems and continuous integration • Pluggable to support a variety of interfaces (e.g. UI automation) • Can become a product spec (documentation tool) • Active community 7
  • 8. All Rights Reserved - AgileSparks Acceptance Test Design BDD approach - Behavioral Driven Development • TIPS • Working software over comprehensive documentation • No more huge textual test documents & documents maintenance • Document only the purpose, expected behavior and data • Code the steps ! • Executable specs • Describe ALL expected business behavior • Decide later what will be tested in which level (UT, Manual, AT)
  • 9. All Rights Reserved - AgileSparks Acceptance for MMF – Minimal Marketable Feature (MMF) http://us.123rf.com/400wm/400/400/cokemomo/cokemomo1206/cokemomo1206 00007/13939893-mini-hamburgers-party-food.jpg http://www.levensmiddelenkrant.nl/uploads/foto/0_61_ha mburger_(Large).jpg The smallest set of functionality that must be realized in order for the customer to perceive value.
  • 10. All Rights Reserved - AgileSparks Will it always fit into iteration ? • MMF describes the system behavior  the product spec, not how it was developed • Might be split into user stories • User story is a planning tool, covers MMF’s scenarios, They exist until implemented and then they disappear ! TIP – Write Acceptance tests for MMF. Will be expanded while elaborating stories DoD.
  • 11. All Rights Reserved - AgileSparks BDD structure (Given- When-Then) Feature – [Feature/MMF title] As a [role] I want [feature] So that [benefit] Scenario 1: [Title/test purpose] Given [context/system state] And [some more context]... When [event/action] and [ next event/action] Then [outcome] and [another outcome]... Scenario 2: ... TIPS: • Business Language (and not tester) •Extract Data •Coaching
  • 12. All Rights Reserved - AgileSparks Examples • Feature: Standard Signup As a new user I want to create an account so that I can use the application Scenario: Signup with valid email/password combination Given I do not have an account When I signup with email and password Then I should be logged in And my profile details should be filled in
  • 13. All Rights Reserved - AgileSparks BDD Feature fileMMF User story tag Test purpose In unit test/manual Extract Data Then …
  • 14. All Rights Reserved - AgileSparks BDD code (java) 14 • Given  initial state for the test
  • 15. All Rights Reserved - AgileSparks BDD code (java) 15 • When  user/system actions
  • 16. All Rights Reserved - AgileSparks BDD code (java) 16 • Then expected results
  • 17. All Rights Reserved - AgileSparks Frameworks, interfaces, drivers
  • 18. All Rights Reserved - AgileSparks TIP - BDD Design • Integrate ATDD into the release process • PO writes User Story description in Jira • QA prepares BDD (after team sniffing) • PO reviews with the QA (and dev rep) • BDD is a condition for “ready story” • It is a step in the Kanban flow 18
  • 19. All Rights Reserved - AgileSparks BDD as part of ready story. Early integration (component teams) 19 Scrum +BDD Dev2dev integration Integration points/NF Writing the BDD for a US E2E and NFT
  • 20. All Rights Reserved - AgileSparks 20 TIPS - BDD Development • Team commits to the BDD!!! • Developer and QA review together the BDD and agree: • What to test, by whom and how to automate it (unit/acceptance) • Comment the unit or manual steps/scenarios in the BDD • Developer develops first the “API contract” • QA develops the automation (code review with developer) • Developer works until BDD pass (end of iteration), QA works on BDD of next iteration 20 Scrum Level 3 Sprint 1 Sprint 2 Sprint 3 PSPPSPPSP
  • 21. All Rights Reserved - AgileSparks 21 TIPS - BDD Execution • Automation of a new story is executed only in the development environment (not to break the product build) • Once the Story is done (ATDD - all automation is pass) and checked-in the main trunk also, the automation is activated. 21
  • 22. All Rights Reserved - AgileSparks 22 Continuous Integration 22
  • 23. All Rights Reserved - AgileSparks
  • 24. All Rights Reserved - AgileSparks
  • 25. All Rights Reserved - AgileSparks
  • 26. All Rights Reserved - AgileSparks 26 Make tests independent • Init state - Automate static test data creation • System level (all features) - Develop set-up utility • Feature level - Use Given step (without action) • Scenario level - Use background (cucumber) • Roll back system state • Delete scenario data at the end of the test scenario • Delete setup data at the end of test execution 26
  • 27. All Rights Reserved - AgileSparks 27 Re-use of steps/code • BDD steps reuse (execution) • Requires common data accessibility, e.g.: • Common member/code • Common data structure results • Change the data (BDD), re-use the code • Java utilities for actions/common behavior • Includes API calls that shall be easily replaced 27
  • 28. All Rights Reserved - AgileSparks 28 Re-use example Feature - Add User Given system admin exists When creating user with attributes: id|name | phone | 1 | Ronen | 00000 | Then user created successfully id|name | phone | 1 | Ronen | 00000 | 28 Feature - Update User Given creating user with attributes: id|name | phone | 1 | Ronen_1 | 55555 | And fetching user data |name | |Ronen_1 | when updating user with values: id| name | phone | 1 | Liat | 00001 | Then user updated successfully: id| name | phone | 1 | Liat | 00001 | Feature Get User Given creating user with attributes: id| name | phone | 1 | user test | 21234545 | When fetching user data |name | |user test | Then user is fetched: id|name | phone | 1 | user test | 21234545 |
  • 29. All Rights Reserved - AgileSparks COPYRIGHT © 2011 ALCATEL-LUCENT. ALL RIGHTS RESERVED. E2E Re-Use Example “Saas provider” component Module (source) Acceptance tests Java Features “Admin user” component Module (source) Acceptance tests Java Features “Common” testing Java E2E testing Features jar jar jar Given system admin logs in When calling createSaasProvider API with parameters: “Saas1” Then Saas Provider “Saas1” is created Given Saas provider Saas2 in the system When calling createAdminUser API with parameters “Admin1” Then admin user “Admin1” is created Given system admin logs in When calling createSaasProvider API with parameters: “Advanced TV” And calling createAdminUser API with parameters “Advanced TV Admin” Then Saas Provider “Advanced TV” is created And admin user “Advanced TV Admin” is created
  • 30. All Rights Reserved - AgileSparks GUI automation • Development framework AngularJS • Carma – UT (for java script) + AT • Phantom browser (better performance) • Any browser (E2E)
  • 31. All Rights Reserved - AgileSparks What next • Schedule work based on E2E priorities (to reduce cycle time) • Improve the Dev2Dev integration test • Executable spec … 31
  • 32. All Rights Reserved - AgileSparks THANKS ! 32
  • 33. All Rights Reserved - AgileSparks 33 Component, Integration & E2E Testing • Component testing • A Component is an independent unit  expose services • Tested with stubs in local component environment • MMF might be developed across components • MMF Integration testing (“white box”) • Risks areas mapped during MMF architecture review • Team exposes API for the early NFT and integration automation • Integration testing done by the teams in integration environment • E2E testing (“black box”) • No new java code- all reused from components acceptance tests • New BDD (feature files ) are written describing the flow(s) based on existing BDDs 33
  • 34. All Rights Reserved - AgileSparks Main Agile Implementation steps • Working with AgileSparks from day1 • 2 days Management Workshop • Agile principles (e.g. Kanban+Scrum, Done is Done, Zero defects) • Backlog preparation • Story Mapping to create first MVP • Tool decision (Jira – already exist) • 1 day Agile Training to all teams (Agile thinking & Scrum) • On-the-job coaching 34

Editor's Notes

  1. J behave – developers as in J, but not simple to ramp-upDidn’t understand ATDD and tool way of working – 2 weeks waisted
  2. J behave – developers as in J, but not simple to ramp-upDidn’t understand ATDD and tool way of working – 2 weeks waisted
  3. With big features everything is harder – time to define, to stabilize, to control variance, to test, to verify, to reproduce …Symptoms:Our features/user stories are too big to fit into one iteration – we need LONGER iterations..We need a long time to nail down the design for this. Our PSP for this iteration is a high-level design…Solution?Effective User Story Analysis to create Minimum Marketable Features (MMF)DesignEither do all design up frontOr have a growing evolutionary designEveryone works on highest priority – EVEN if outside comfort zoneNeed to improve collective code ownershipDevelopers need to feel safe to work everywhere in the team’s codebase
  4. Liat
  5. liat
  6. liat
  7. Start with system behavio rthan develop implementation !!!
  8. liat
  9. liat
  10. liat
  11. liat
  12. liat
  13. liat