SlideShare una empresa de Scribd logo
1 de 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

Más contenido relacionado

La actualidad más candente

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
 

La actualidad más candente (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
 

Destacado

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
 

Destacado (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 a 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 a 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
 

Más de 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
 

Más de 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
 

Último

Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?Antenna Manufacturer Coco
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 

Último (20)

Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 

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

Notas del editor

  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