SlideShare uma empresa Scribd logo
1 de 35
December 2011
     Specifications For Enterprise Testing

                Presenters
Sathyan Sethumadhavan & Shalabh Varma
Agenda
                 Where do we spend more time

                 A new approach for collaboration

                 Implement Specifications

                 Gauge Progress

                 Q&A

Private and Confidential. © 2011 ThoughtWorks, Ltd. All rights reserved.
Do you experience any of this
                                                               Defects Leakage -
                                                               Missing Requirements

  Frequent changes -                                                                  Test and Requirements
  Breaks existing                                                                     documents becomes
  functionalities                                                                     stale


                 Long Regression                                                    Spends more time on
                 Cycles                                                             defect management and
                                                                                    triage
                                                                Less confidence -
                                                                Existing test
                                                                coverage

Private and Confidential. © 2011 ThoughtWorks, Ltd. All rights reserved.
Do you spend more time here
                                                                  Requirements
                                                                  document
             Creating test                                                            Fix production
             Cases/Steps                                                              Defects


                                                                                      Traceability
                                                                                      Matrix
             Defect
             Management
                                                                 Creating test plan
                                                                 and strategy


Private and Confidential. © 2011 ThoughtWorks, Ltd. All rights reserved.
Private and Confidential. © 2011 ThoughtWorks, Ltd. All rights reserved.
Specifications Driven Development




Private and Confidential. © 2011 ThoughtWorks, Ltd. All rights reserved.
Can
                                 EXAMPLES                                  Become   TESTS
                                        Elaborate                                   Verify


                                                                REQUIREMENTS




Private and Confidential. © 2011 ThoughtWorks, Ltd. All rights reserved.
Specifications – Focus Area
                                      Creating test
        Requirements
                                      plan and
                                      strategy
                                                                           Specifications
        document
                                                                           for both humans     Specifying
                                 Traceability                              and machines        Collaborately
    Fix                          Matrix
    production
    defects

                            Managing
 Creating                   stale artifcats
 test cases                                                           Tests as          Validating
                                                                      Documentation     Frequently
           Defect
           management
           and analysis




Private and Confidential. © 2011 ThoughtWorks, Ltd. All rights reserved.
A Good Specification
                   Examples should be complete

                   Precise and Testable

                   True Specification – Not a script

                   About business functionality – Not software design

                   Self-explanatory and focused




Private and Confidential. © 2011 ThoughtWorks, Ltd. All rights reserved.
A Good Specification




Private and Confidential. © 2011 ThoughtWorks, Ltd. All rights reserved.
A Good Specification




Private and Confidential. © 2011 ThoughtWorks, Ltd. All rights reserved.
Benefits
                   Distributed teams - Necessary artifacts and re-use artifacts

                   One-time specification – Referred by stakeholders and team

                   Artifacts remain as living documents

                   Focus on collaboration and communication gap

                   More time on exploratory/business testing

                   Time-to-market availability

Private and Confidential. © 2011 ThoughtWorks, Ltd. All rights reserved.
Specifications – Key Process Patterns




Private and Confidential. © 2011 ThoughtWorks, Ltd. All rights reserved.
Key Process Patterns
                                                                           Derive Scope
                                                                           Out Of Goals

                                          Living                                                 Specifying
                                      Documentation                                             Collaborately




                                             Validating                                     Illustration using
                                             Frequently                                         examples



                                        Automate without                                    Refining
                                      changing specification                              Specification



Private and Confidential. © 2011 ThoughtWorks, Ltd. All rights reserved.
Key Process Patterns - Goals
                                                                              Understand customer’s
                                                                              business requirements
                               Derive Scope
                               Out Of Goals

             Living                                          Specifying       Understand the “Why” and
         Documentation                                      Collaborately
                                                                              “Who”

       Validating
       Frequently
                                                         Illustration using
                                                             examples
                                                                              Understand the intent and
                                                                              value
          Automate without                             Refining
        changing specification                       Specification
                                                                              Understand the Output

                                                                              Team delivers complete feature
Private and Confidential. © 2011 ThoughtWorks, Ltd. All rights reserved.
Key Process Patterns - Collaboration


                              Derive Scope Out
                                  Of Goals                                     All Team       Three
             Living                                        Specifying
                                                                               Workshop      Amigos
         Documentation                                    Collaborately




       Validating                                        Illustration using
       Frequently                                            examples

                                                                                Ad-Hoc       Write +
                                                                              Conversation   Review
          Automate without                             Refining
        changing specification                       Specification




Private and Confidential. © 2011 ThoughtWorks, Ltd. All rights reserved.
Key Process Patterns - Examples
                                                                            Requirements - Don’t provide full and
                                                                            unambiguous context
                              Derive Scope Out
                                  Of Goals

             Living                                          Specifying     Don’t have Yes/No answers in your
         Documentation                                      Collaborately
                                                                            example

       Validating
       Frequently
                                                           Illustration
                                                         using examples
                                                                            Ask for alternate way for validation


          Automate without                             Refining             Avoid making up your own data
        changing specification                       Specification



                                                                            Avoid temptation to explore all
                                                                            possibility
Private and Confidential. © 2011 ThoughtWorks, Ltd. All rights reserved.
Key Process Patterns - Refining




Private and Confidential. © 2011 ThoughtWorks, Ltd. All rights reserved.
Key Process Patterns - Refining
                                                                              Don’t create workflow like descriptions

                              Derive Scope Out
                                  Of Goals                                    Don’t get trapped in user interface
             Living                                          Specifying       details
         Documentation                                      Collaborately



                                                                              Show and lets the user understand
       Validating                                        Illustration using
       Frequently                                            examples

                                                                              Refined Examples = Acceptance
          Automate without                            Refining                criteria for delivery
        changing specification                      Specification




Private and Confidential. © 2011 ThoughtWorks, Ltd. All rights reserved.
Key Process Patterns - Refining




Private and Confidential. © 2011 ThoughtWorks, Ltd. All rights reserved.
Key Process Patterns - Automation
                                                                              Plan for automation upfront

                              Derive Scope Out
                                  Of Goals                                    Don’t delegate automation towards the
             Living                                          Specifying       end
         Documentation                                      Collaborately



                                                                              Avoid automating existing manual
       Validating
       Frequently
                                                         Illustration using
                                                             examples
                                                                              scripts

         Automate without
             changing
                                                       Refining               Automate along system boundaries with
                                                     Specification
           specification
                                                                              necessary context

                                                                              Automated Specification = Executable
Private and Confidential. © 2011 ThoughtWorks, Ltd. All rights reserved.
                                                                              Specification
Key Process Patterns - Automation




Private and Confidential. © 2011 ThoughtWorks, Ltd. All rights reserved.
Key Process Patterns - Validation
                                                                              Fix the most annoying thing, fix it and
                                                                              repeat
                              Derive Scope Out
                                  Of Goals

             Living                                          Specifying       Simpler test doubles for external
         Documentation                                      Collaborately
                                                                              systems

     Validating
     Frequently
                                                         Illustration using
                                                             examples
                                                                              Isolated environment and fully
                                                                              automated deployments
          Automate without                             Refining
        changing specification                       Specification
                                                                              Look for ways for faster feedback

                                                                              Don’t just disable failing tests
Private and Confidential. © 2011 ThoughtWorks, Ltd. All rights reserved.
Key Process Patterns – Living
       Documentation      Don’t create long specifications

                              Derive Scope Out
                                  Of Goals                                    Avoid using technical concepts in tests
           Living                                            Specifying
       Documentation                                        Collaborately
                                                                              Base specification on personas

       Validating                                        Illustration using
       Frequently                                            examples         Evolve the ubiquitous language and
                                                                              use it consistently.
          Automate without                             Refining
        changing specification                       Specification

                                                                              Organize based on functional areas


Private and Confidential. © 2011 ThoughtWorks, Ltd. All rights reserved.
Implementing Specifications




Private and Confidential. © 2011 ThoughtWorks, Ltd. All rights reserved.
Greenfield

                                                                           Implement as part of the big
                                                                           process change

                                                                           Use TDD as a first step towards
                                                                           Specifications

                                                                           Follow the key process patterns




Private and Confidential. © 2011 ThoughtWorks, Ltd. All rights reserved.
Existing Projects
                                                                           Start with automated tests

                                                                           Don’t talk process or jargon words

                                                                           Don’t make test automation end goal

                                                                           Our Focus - Collaboration and process-
                                                                           change

                                                                           Executable specification in the same
                                                                           codebase

Private and Confidential. © 2011 ThoughtWorks, Ltd. All rights reserved.
Gauge Progress




Private and Confidential. © 2011 ThoughtWorks, Ltd. All rights reserved.
Gauge Progress




Private and Confidential. © 2011 ThoughtWorks, Ltd. All rights reserved.
Take Away
                   Distributed teams - Necessary artifacts and re-use artifacts

                   One-time specification – Referred by stakeholders and team

                   Artifacts remain as living documents

                   Focus on collaboration and communication gap

                   More time on exploratory/business testing

                   Time-to-market availability

Private and Confidential. © 2011 ThoughtWorks, Ltd. All rights reserved.
Case Studies




Private and Confidential. © 2011 ThoughtWorks, Ltd. All rights reserved.
Case Studies




Private and Confidential. © 2011 ThoughtWorks, Ltd. All rights reserved.
Tools

                   Twist - http://studios.thoughtworks.com/twist-agile-test-
                   automation/
                   Cucumber – http://cukes.info
                   Concordion – http://www.concordion.org
                   FitNesse - http://fitnesse.org
                   Jbehave - http://jbehave.org
                   GreenPepper: http://www.greenpeppersoftware.com.
                   Robot Framework: http://www.robotframework.org
                   SpecFlow: http://www.specflow.org
                   TextTest: http://www.texttest.org

Private and Confidential. © 2011 ThoughtWorks, Ltd. All rights reserved.
Contact us

 Sathyan Sethumadhavan
satnair@thoughtworks.com


     Shalabh Varma
svarma@thoughtworks.com
References

                   ① Specification by example and Manning the specification-
                     Gojko Adzic
                   ② Projects implemented SDD in real-time




Private and Confidential. © 2011 ThoughtWorks, Ltd. All rights reserved.

Mais conteúdo relacionado

Mais procurados

How to bake in quality in agile scrum projects
How to bake in quality in agile scrum projectsHow to bake in quality in agile scrum projects
How to bake in quality in agile scrum projectsSantanu Bhattacharya
 
Dnv Improving Your Process Performances With Agile
Dnv   Improving Your Process Performances With AgileDnv   Improving Your Process Performances With Agile
Dnv Improving Your Process Performances With AgileGeorge Ang
 
3 Keys to Great Customer Experience When Launching Web and Mobile Applications
3 Keys to Great Customer Experience When Launching Web and Mobile Applications3 Keys to Great Customer Experience When Launching Web and Mobile Applications
3 Keys to Great Customer Experience When Launching Web and Mobile ApplicationsCompuware APM
 
Be a winner…use requirements engineering p
Be a winner…use requirements engineering pBe a winner…use requirements engineering p
Be a winner…use requirements engineering pSven Krause
 
Researching Standards - What? Why? How? And?
Researching Standards - What? Why? How? And?Researching Standards - What? Why? How? And?
Researching Standards - What? Why? How? And?Michael zur Muehlen
 
Tools Processes And Training
Tools Processes And TrainingTools Processes And Training
Tools Processes And Trainingdgholden
 
Agile for Startups
Agile for StartupsAgile for Startups
Agile for StartupsBhavin Javia
 
SIM presentation Oct 9 2012
SIM presentation Oct 9 2012SIM presentation Oct 9 2012
SIM presentation Oct 9 2012sdlc_coach
 
ITSM Academy Webinar Leveraging Process Design
ITSM Academy Webinar Leveraging Process DesignITSM Academy Webinar Leveraging Process Design
ITSM Academy Webinar Leveraging Process DesignITSM Academy, Inc.
 
Avatars of Test Driven Development (TDD)
Avatars of Test Driven Development (TDD)Avatars of Test Driven Development (TDD)
Avatars of Test Driven Development (TDD)Naresh Jain
 
The role of mro in enhancing operational capability and mission readiness
The role of mro in enhancing operational capability and mission readinessThe role of mro in enhancing operational capability and mission readiness
The role of mro in enhancing operational capability and mission readinessMichael Parsons
 
A tale of bad requirements
A tale of bad requirementsA tale of bad requirements
A tale of bad requirementsFran McKain
 
Erp Logic Corporate Brochure
Erp Logic Corporate BrochureErp Logic Corporate Brochure
Erp Logic Corporate Brochurecaldnambi
 
Business Value Articulation In Software Projects
Business Value Articulation In Software ProjectsBusiness Value Articulation In Software Projects
Business Value Articulation In Software ProjectsHARMAN Services
 

Mais procurados (19)

How to bake in quality in agile scrum projects
How to bake in quality in agile scrum projectsHow to bake in quality in agile scrum projects
How to bake in quality in agile scrum projects
 
Dnv Improving Your Process Performances With Agile
Dnv   Improving Your Process Performances With AgileDnv   Improving Your Process Performances With Agile
Dnv Improving Your Process Performances With Agile
 
3 Keys to Great Customer Experience When Launching Web and Mobile Applications
3 Keys to Great Customer Experience When Launching Web and Mobile Applications3 Keys to Great Customer Experience When Launching Web and Mobile Applications
3 Keys to Great Customer Experience When Launching Web and Mobile Applications
 
Be a winner…use requirements engineering p
Be a winner…use requirements engineering pBe a winner…use requirements engineering p
Be a winner…use requirements engineering p
 
Researching Standards - What? Why? How? And?
Researching Standards - What? Why? How? And?Researching Standards - What? Why? How? And?
Researching Standards - What? Why? How? And?
 
Env General
Env GeneralEnv General
Env General
 
Tools Processes And Training
Tools Processes And TrainingTools Processes And Training
Tools Processes And Training
 
Agile for Startups
Agile for StartupsAgile for Startups
Agile for Startups
 
SIM presentation Oct 9 2012
SIM presentation Oct 9 2012SIM presentation Oct 9 2012
SIM presentation Oct 9 2012
 
ITSM Academy Webinar Leveraging Process Design
ITSM Academy Webinar Leveraging Process DesignITSM Academy Webinar Leveraging Process Design
ITSM Academy Webinar Leveraging Process Design
 
Etops at a glance
Etops at a glanceEtops at a glance
Etops at a glance
 
Etm551 lecture05
Etm551 lecture05Etm551 lecture05
Etm551 lecture05
 
Avatars of Test Driven Development (TDD)
Avatars of Test Driven Development (TDD)Avatars of Test Driven Development (TDD)
Avatars of Test Driven Development (TDD)
 
The role of mro in enhancing operational capability and mission readiness
The role of mro in enhancing operational capability and mission readinessThe role of mro in enhancing operational capability and mission readiness
The role of mro in enhancing operational capability and mission readiness
 
A tale of bad requirements
A tale of bad requirementsA tale of bad requirements
A tale of bad requirements
 
Erp Logic Corporate Brochure
Erp Logic Corporate BrochureErp Logic Corporate Brochure
Erp Logic Corporate Brochure
 
Business Process
Business ProcessBusiness Process
Business Process
 
Snp T bone sapphire
Snp T bone sapphireSnp T bone sapphire
Snp T bone sapphire
 
Business Value Articulation In Software Projects
Business Value Articulation In Software ProjectsBusiness Value Articulation In Software Projects
Business Value Articulation In Software Projects
 

Destaque

Specification by Example
Specification by ExampleSpecification by Example
Specification by ExampleSergey Shishkin
 
Moving Towards Zero Defects with Specification by Example
Moving Towards Zero Defects with Specification by ExampleMoving Towards Zero Defects with Specification by Example
Moving Towards Zero Defects with Specification by ExampleSteve Rogalsky
 
Specification by Example
Specification by ExampleSpecification by Example
Specification by ExampleExcella
 
Specifications test automation pyramid public
Specifications test automation pyramid   publicSpecifications test automation pyramid   public
Specifications test automation pyramid publicSathyan Sethumadhavan
 
Using The Page Object Pattern
Using The Page Object PatternUsing The Page Object Pattern
Using The Page Object PatternDante Briones
 
Behavior Driven Development
Behavior Driven DevelopmentBehavior Driven Development
Behavior Driven DevelopmentAlexey Tigarev
 
Specification by Example
Specification by ExampleSpecification by Example
Specification by ExampleDeclan Whelan
 
Ingesting Drone Data into Big Data Platforms
Ingesting Drone Data into Big Data Platforms Ingesting Drone Data into Big Data Platforms
Ingesting Drone Data into Big Data Platforms Timothy Spann
 
Vijay & Supriya - Test your service not your ui
Vijay & Supriya - Test your service not your uiVijay & Supriya - Test your service not your ui
Vijay & Supriya - Test your service not your uivodQA
 
Gypsum products in Dentistry
Gypsum products in DentistryGypsum products in Dentistry
Gypsum products in DentistryAjeya Ranganathan
 
Automation testing strategy, approach & planning
Automation testing  strategy, approach & planningAutomation testing  strategy, approach & planning
Automation testing strategy, approach & planningSivaprasanthRentala1975
 

Destaque (13)

Specification by Example
Specification by ExampleSpecification by Example
Specification by Example
 
Moving Towards Zero Defects with Specification by Example
Moving Towards Zero Defects with Specification by ExampleMoving Towards Zero Defects with Specification by Example
Moving Towards Zero Defects with Specification by Example
 
Specification by Example
Specification by ExampleSpecification by Example
Specification by Example
 
Specifications test automation pyramid public
Specifications test automation pyramid   publicSpecifications test automation pyramid   public
Specifications test automation pyramid public
 
Beyond Page Objects
Beyond Page ObjectsBeyond Page Objects
Beyond Page Objects
 
Using The Page Object Pattern
Using The Page Object PatternUsing The Page Object Pattern
Using The Page Object Pattern
 
Amazon search test case document
Amazon search test case documentAmazon search test case document
Amazon search test case document
 
Behavior Driven Development
Behavior Driven DevelopmentBehavior Driven Development
Behavior Driven Development
 
Specification by Example
Specification by ExampleSpecification by Example
Specification by Example
 
Ingesting Drone Data into Big Data Platforms
Ingesting Drone Data into Big Data Platforms Ingesting Drone Data into Big Data Platforms
Ingesting Drone Data into Big Data Platforms
 
Vijay & Supriya - Test your service not your ui
Vijay & Supriya - Test your service not your uiVijay & Supriya - Test your service not your ui
Vijay & Supriya - Test your service not your ui
 
Gypsum products in Dentistry
Gypsum products in DentistryGypsum products in Dentistry
Gypsum products in Dentistry
 
Automation testing strategy, approach & planning
Automation testing  strategy, approach & planningAutomation testing  strategy, approach & planning
Automation testing strategy, approach & planning
 

Semelhante a Specifications For Enterprise Testing

TDD in functional testing with WebDriver
TDD in functional testing with WebDriverTDD in functional testing with WebDriver
TDD in functional testing with WebDriverMikalai Alimenkou
 
Requirements Manager Center of Excellence: “Achieving Goals Without Formaliz...
Requirements Manager Center of Excellence:  “Achieving Goals Without Formaliz...Requirements Manager Center of Excellence:  “Achieving Goals Without Formaliz...
Requirements Manager Center of Excellence: “Achieving Goals Without Formaliz...IIBA Rochester NY
 
Technology Projects. What could possibly go wrong
Technology Projects. What could possibly go wrongTechnology Projects. What could possibly go wrong
Technology Projects. What could possibly go wrongAndrew Lewis
 
Effective Strategies for Distributed Testing
Effective Strategies for Distributed TestingEffective Strategies for Distributed Testing
Effective Strategies for Distributed TestingAnand Bagmar
 
Pulse Design & Delivery Panel
Pulse Design & Delivery PanelPulse Design & Delivery Panel
Pulse Design & Delivery PanelMauricio Godoy
 
Do The Right Thing - Empowering Your Test Teams
Do The Right Thing - Empowering Your Test TeamsDo The Right Thing - Empowering Your Test Teams
Do The Right Thing - Empowering Your Test TeamsSmartBear
 
Reporting _ Scott Tunbridge _ Op Mgmt to Perf Excel.pdf
Reporting _ Scott Tunbridge _ Op Mgmt to Perf Excel.pdfReporting _ Scott Tunbridge _ Op Mgmt to Perf Excel.pdf
Reporting _ Scott Tunbridge _ Op Mgmt to Perf Excel.pdfInSync2011
 
Agile Developers Create Their Own Identity[1]
Agile Developers Create Their Own Identity[1]Agile Developers Create Their Own Identity[1]
Agile Developers Create Their Own Identity[1]Surajit Bhuyan
 
Agile Developers Create Their Own Identity
Agile Developers Create Their Own IdentityAgile Developers Create Their Own Identity
Agile Developers Create Their Own IdentityAjay Danait
 
An Introduction to Software Performance Engineering
An Introduction to Software Performance EngineeringAn Introduction to Software Performance Engineering
An Introduction to Software Performance EngineeringCorrelsense
 
Chapter 1 ASE Slides ppt
Chapter 1 ASE Slides pptChapter 1 ASE Slides ppt
Chapter 1 ASE Slides pptMr SMAK
 
Idexcel Independent Testing Services Presentation
Idexcel Independent Testing Services PresentationIdexcel Independent Testing Services Presentation
Idexcel Independent Testing Services PresentationIdexcel
 
Lean & Agile Project Management: For Large Distributed Virtual Teams
Lean & Agile Project Management: For Large Distributed Virtual TeamsLean & Agile Project Management: For Large Distributed Virtual Teams
Lean & Agile Project Management: For Large Distributed Virtual TeamsDavid Rico
 
OOW 09 EBS Application Change Management Pack
OOW 09 EBS Application Change Management PackOOW 09 EBS Application Change Management Pack
OOW 09 EBS Application Change Management Packjucaab
 

Semelhante a Specifications For Enterprise Testing (20)

TDD in functional testing with WebDriver
TDD in functional testing with WebDriverTDD in functional testing with WebDriver
TDD in functional testing with WebDriver
 
Requirements Manager Center of Excellence: “Achieving Goals Without Formaliz...
Requirements Manager Center of Excellence:  “Achieving Goals Without Formaliz...Requirements Manager Center of Excellence:  “Achieving Goals Without Formaliz...
Requirements Manager Center of Excellence: “Achieving Goals Without Formaliz...
 
Technology Projects. What could possibly go wrong
Technology Projects. What could possibly go wrongTechnology Projects. What could possibly go wrong
Technology Projects. What could possibly go wrong
 
Life After PPM
Life After PPMLife After PPM
Life After PPM
 
Effective Strategies for Distributed Testing
Effective Strategies for Distributed TestingEffective Strategies for Distributed Testing
Effective Strategies for Distributed Testing
 
Tw specifications for-testing1
Tw specifications for-testing1Tw specifications for-testing1
Tw specifications for-testing1
 
Pulse Design & Delivery Panel
Pulse Design & Delivery PanelPulse Design & Delivery Panel
Pulse Design & Delivery Panel
 
Do The Right Thing - Empowering Your Test Teams
Do The Right Thing - Empowering Your Test TeamsDo The Right Thing - Empowering Your Test Teams
Do The Right Thing - Empowering Your Test Teams
 
Eswaranand Attuluri CV
Eswaranand Attuluri CVEswaranand Attuluri CV
Eswaranand Attuluri CV
 
Reporting _ Scott Tunbridge _ Op Mgmt to Perf Excel.pdf
Reporting _ Scott Tunbridge _ Op Mgmt to Perf Excel.pdfReporting _ Scott Tunbridge _ Op Mgmt to Perf Excel.pdf
Reporting _ Scott Tunbridge _ Op Mgmt to Perf Excel.pdf
 
Agile Developers Create Their Own Identity[1]
Agile Developers Create Their Own Identity[1]Agile Developers Create Their Own Identity[1]
Agile Developers Create Their Own Identity[1]
 
Agile Developers Create Their Own Identity
Agile Developers Create Their Own IdentityAgile Developers Create Their Own Identity
Agile Developers Create Their Own Identity
 
Agile at AT&T
Agile at AT&TAgile at AT&T
Agile at AT&T
 
Agile meets waterfall
Agile meets waterfallAgile meets waterfall
Agile meets waterfall
 
An Introduction to Software Performance Engineering
An Introduction to Software Performance EngineeringAn Introduction to Software Performance Engineering
An Introduction to Software Performance Engineering
 
Chapter 1 ASE Slides ppt
Chapter 1 ASE Slides pptChapter 1 ASE Slides ppt
Chapter 1 ASE Slides ppt
 
Idexcel Independent Testing Services Presentation
Idexcel Independent Testing Services PresentationIdexcel Independent Testing Services Presentation
Idexcel Independent Testing Services Presentation
 
Lean & Agile Project Management: For Large Distributed Virtual Teams
Lean & Agile Project Management: For Large Distributed Virtual TeamsLean & Agile Project Management: For Large Distributed Virtual Teams
Lean & Agile Project Management: For Large Distributed Virtual Teams
 
Quality & Reliability in Software Engineering
Quality & Reliability in Software EngineeringQuality & Reliability in Software Engineering
Quality & Reliability in Software Engineering
 
OOW 09 EBS Application Change Management Pack
OOW 09 EBS Application Change Management PackOOW 09 EBS Application Change Management Pack
OOW 09 EBS Application Change Management Pack
 

Último

Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
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
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 

Último (20)

Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
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
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 

Specifications For Enterprise Testing

  • 1. December 2011 Specifications For Enterprise Testing Presenters Sathyan Sethumadhavan & Shalabh Varma
  • 2. Agenda Where do we spend more time A new approach for collaboration Implement Specifications Gauge Progress Q&A Private and Confidential. © 2011 ThoughtWorks, Ltd. All rights reserved.
  • 3. Do you experience any of this Defects Leakage - Missing Requirements Frequent changes - Test and Requirements Breaks existing documents becomes functionalities stale Long Regression Spends more time on Cycles defect management and triage Less confidence - Existing test coverage Private and Confidential. © 2011 ThoughtWorks, Ltd. All rights reserved.
  • 4. Do you spend more time here Requirements document Creating test Fix production Cases/Steps Defects Traceability Matrix Defect Management Creating test plan and strategy Private and Confidential. © 2011 ThoughtWorks, Ltd. All rights reserved.
  • 5. Private and Confidential. © 2011 ThoughtWorks, Ltd. All rights reserved.
  • 6. Specifications Driven Development Private and Confidential. © 2011 ThoughtWorks, Ltd. All rights reserved.
  • 7. Can EXAMPLES Become TESTS Elaborate Verify REQUIREMENTS Private and Confidential. © 2011 ThoughtWorks, Ltd. All rights reserved.
  • 8. Specifications – Focus Area Creating test Requirements plan and strategy Specifications document for both humans Specifying Traceability and machines Collaborately Fix Matrix production defects Managing Creating stale artifcats test cases Tests as Validating Documentation Frequently Defect management and analysis Private and Confidential. © 2011 ThoughtWorks, Ltd. All rights reserved.
  • 9. A Good Specification Examples should be complete Precise and Testable True Specification – Not a script About business functionality – Not software design Self-explanatory and focused Private and Confidential. © 2011 ThoughtWorks, Ltd. All rights reserved.
  • 10. A Good Specification Private and Confidential. © 2011 ThoughtWorks, Ltd. All rights reserved.
  • 11. A Good Specification Private and Confidential. © 2011 ThoughtWorks, Ltd. All rights reserved.
  • 12. Benefits Distributed teams - Necessary artifacts and re-use artifacts One-time specification – Referred by stakeholders and team Artifacts remain as living documents Focus on collaboration and communication gap More time on exploratory/business testing Time-to-market availability Private and Confidential. © 2011 ThoughtWorks, Ltd. All rights reserved.
  • 13. Specifications – Key Process Patterns Private and Confidential. © 2011 ThoughtWorks, Ltd. All rights reserved.
  • 14. Key Process Patterns Derive Scope Out Of Goals Living Specifying Documentation Collaborately Validating Illustration using Frequently examples Automate without Refining changing specification Specification Private and Confidential. © 2011 ThoughtWorks, Ltd. All rights reserved.
  • 15. Key Process Patterns - Goals Understand customer’s business requirements Derive Scope Out Of Goals Living Specifying Understand the “Why” and Documentation Collaborately “Who” Validating Frequently Illustration using examples Understand the intent and value Automate without Refining changing specification Specification Understand the Output Team delivers complete feature Private and Confidential. © 2011 ThoughtWorks, Ltd. All rights reserved.
  • 16. Key Process Patterns - Collaboration Derive Scope Out Of Goals All Team Three Living Specifying Workshop Amigos Documentation Collaborately Validating Illustration using Frequently examples Ad-Hoc Write + Conversation Review Automate without Refining changing specification Specification Private and Confidential. © 2011 ThoughtWorks, Ltd. All rights reserved.
  • 17. Key Process Patterns - Examples Requirements - Don’t provide full and unambiguous context Derive Scope Out Of Goals Living Specifying Don’t have Yes/No answers in your Documentation Collaborately example Validating Frequently Illustration using examples Ask for alternate way for validation Automate without Refining Avoid making up your own data changing specification Specification Avoid temptation to explore all possibility Private and Confidential. © 2011 ThoughtWorks, Ltd. All rights reserved.
  • 18. Key Process Patterns - Refining Private and Confidential. © 2011 ThoughtWorks, Ltd. All rights reserved.
  • 19. Key Process Patterns - Refining Don’t create workflow like descriptions Derive Scope Out Of Goals Don’t get trapped in user interface Living Specifying details Documentation Collaborately Show and lets the user understand Validating Illustration using Frequently examples Refined Examples = Acceptance Automate without Refining criteria for delivery changing specification Specification Private and Confidential. © 2011 ThoughtWorks, Ltd. All rights reserved.
  • 20. Key Process Patterns - Refining Private and Confidential. © 2011 ThoughtWorks, Ltd. All rights reserved.
  • 21. Key Process Patterns - Automation Plan for automation upfront Derive Scope Out Of Goals Don’t delegate automation towards the Living Specifying end Documentation Collaborately Avoid automating existing manual Validating Frequently Illustration using examples scripts Automate without changing Refining Automate along system boundaries with Specification specification necessary context Automated Specification = Executable Private and Confidential. © 2011 ThoughtWorks, Ltd. All rights reserved. Specification
  • 22. Key Process Patterns - Automation Private and Confidential. © 2011 ThoughtWorks, Ltd. All rights reserved.
  • 23. Key Process Patterns - Validation Fix the most annoying thing, fix it and repeat Derive Scope Out Of Goals Living Specifying Simpler test doubles for external Documentation Collaborately systems Validating Frequently Illustration using examples Isolated environment and fully automated deployments Automate without Refining changing specification Specification Look for ways for faster feedback Don’t just disable failing tests Private and Confidential. © 2011 ThoughtWorks, Ltd. All rights reserved.
  • 24. Key Process Patterns – Living Documentation Don’t create long specifications Derive Scope Out Of Goals Avoid using technical concepts in tests Living Specifying Documentation Collaborately Base specification on personas Validating Illustration using Frequently examples Evolve the ubiquitous language and use it consistently. Automate without Refining changing specification Specification Organize based on functional areas Private and Confidential. © 2011 ThoughtWorks, Ltd. All rights reserved.
  • 25. Implementing Specifications Private and Confidential. © 2011 ThoughtWorks, Ltd. All rights reserved.
  • 26. Greenfield Implement as part of the big process change Use TDD as a first step towards Specifications Follow the key process patterns Private and Confidential. © 2011 ThoughtWorks, Ltd. All rights reserved.
  • 27. Existing Projects Start with automated tests Don’t talk process or jargon words Don’t make test automation end goal Our Focus - Collaboration and process- change Executable specification in the same codebase Private and Confidential. © 2011 ThoughtWorks, Ltd. All rights reserved.
  • 28. Gauge Progress Private and Confidential. © 2011 ThoughtWorks, Ltd. All rights reserved.
  • 29. Gauge Progress Private and Confidential. © 2011 ThoughtWorks, Ltd. All rights reserved.
  • 30. Take Away Distributed teams - Necessary artifacts and re-use artifacts One-time specification – Referred by stakeholders and team Artifacts remain as living documents Focus on collaboration and communication gap More time on exploratory/business testing Time-to-market availability Private and Confidential. © 2011 ThoughtWorks, Ltd. All rights reserved.
  • 31. Case Studies Private and Confidential. © 2011 ThoughtWorks, Ltd. All rights reserved.
  • 32. Case Studies Private and Confidential. © 2011 ThoughtWorks, Ltd. All rights reserved.
  • 33. Tools Twist - http://studios.thoughtworks.com/twist-agile-test- automation/ Cucumber – http://cukes.info Concordion – http://www.concordion.org FitNesse - http://fitnesse.org Jbehave - http://jbehave.org GreenPepper: http://www.greenpeppersoftware.com. Robot Framework: http://www.robotframework.org SpecFlow: http://www.specflow.org TextTest: http://www.texttest.org Private and Confidential. © 2011 ThoughtWorks, Ltd. All rights reserved.
  • 34. Contact us Sathyan Sethumadhavan satnair@thoughtworks.com Shalabh Varma svarma@thoughtworks.com
  • 35. References ① Specification by example and Manning the specification- Gojko Adzic ② Projects implemented SDD in real-time Private and Confidential. © 2011 ThoughtWorks, Ltd. All rights reserved.

Notas do Editor

  1. Start with automated testsCollaboration between testers and developersMore time spent on exploratory testingDon’t talk process or jargon wordsShow failing testsDon’t make test automation end goalOur FocusCollaboration and process-change