Team Driven Development (TDD) workshop

by QAI Global Institute Claim Listing

Team-Driven Development is a vital component of the Agile Software Development Methodology and the overall DevOps movement. So, it is helpful to have, at a minimum, a high-level understanding of Agile practices and scrum ceremonies, and TDD fits into the overall Agile, Scrum, and DevOps landscape.

Price : Enquire Now

Contact the Institutes

Fill this form

Advertisement

QAI Global Institute Logo

img Duration

Enquire Now

Course Details

Team-Driven Development is a vital component of the Agile Software Development Methodology and the overall DevOps movement. So, it is helpful to have, at a minimum, a high-level understanding of Agile practices and scrum ceremonies, and TDD fits into the overall Agile, Scrum, and DevOps landscape.

In addition, part 1 serves as a levelling exercise to ensure that team members speak the same language during upcoming labs and discussions.

 

Components of Agile

  • User Stories.

  • Tasks.

  • Bugs.

  • Automated Builds.

  • Automated Tests.

  • Continuous Inspection.

 

The Role of TDD in Agile Development

  • Automated Unit Tests.

  • Automated Acceptance Tests.

 

The Role of TDD in Agile Development

  • Automated Unit Tests.

  • Automated Acceptance Tests.

 

Part 2: Unit Testing:

Unit Testing is a critical component of Team-Driven Development (TDD). Small code units are tested throughout the development process, which isolates functionality to ensure that individual parts work correctly.

 

Unit Test Fundamentals

  • Reason to do Unit Testing.

  • What to Test: Right BICEP.

  • CORRECT Boundary Conditions.

  • Properties of Good Tests.

 

Frameworks

  • What is JUnit.

  • JUnit Building Blocks.

  • Test Cases.

  • Test Suites.

  • Examples.

 

Agile Testing Strategy

  • Agile Testing Quadrant.

  • Automation Pyramid.

  • Assertions.

 

Test Attributes

  • Setup / TearDown.

  • JUnit Lifecycle.

  • System Under Test.

  • Test Design Strategy.

  • Naming our Tests.

  • Exceptions.

 

Lab: Introduction to Unit Testing

  • IDE and Project Setup.

  • Running our first Unit Test.

  • Explore Junit framework.

  • Test Attributes.

  • Assert Statements.

 

Part 3: Team-Driven Development:

Essential TDD techniques require developers to write programs in short development cycles, and critical steps must be taken. Tests are created before the code is written. Once the code passes testing, it is refactored to adhere to the most effective and acceptable standards.

 

TDD Rhythm

  • TDD Overview.

  • Red, Green, Refactor.

  • TDD Benefits.

 

Sustainable TDD

  • Development without TD.

  • Test Last.

  • Test Last in Parallel.

  • Test-Driven Development.

 

Supporting Practices

  • Collective Ownership.

  • Continuous Integration.


Eight Wastes of Software Development

  • Ripple effect of defects.

  • Partially Done Work.

  • Extra Features.

  • Relearning.

  • Handoffs.

  • Task Switching.

  • Delays.

  • Defects.

 

Test Automation

  • Automate, Automate, Automate.

  • Automate Early and Often.

  • Additional Topics Identified.

 

Lab: Team-Driven Development

  • Start Team-Driven Development on our example App.

  • Write unit team cases.

  • Experience RED, Green, Refactor Process.

 

Part 4: Principles of Agile Development

TDD is directly influenced by design, so it will be a priority to consider this during implementation. Considering design principles will enable teams to experiment with different approaches and gear towards more functional programming.

 

Design Principles Overview

  • Coding Principles.

  • isolation of the SUT.

  • Developing independently testable units.

 

Test doubles

  • Introducing test doubles.

  • Stubs.

  • Fakes.

  • Mocks.

 

Lab: Continue development on example App

  • Setting up Test doubles for our example app.

  • Discuss and implement Mocking.

 

Part 5: Refactoring

Refactoring is another essential technique of TDD, and most software development teams are most likely doing some form of refactoring regularly. Refactoring can be used in several different workflows, which will be explored in this Part.

 

Why Refactor?

  • Red, Green, Refactor.

  • Benefits.

  • Development without TDD.

 

Refactoring Methods

 

Refactoring Cycle

  • Reduce Local Variable Scope.

  • Replace Temp with Query.

  • Remove Dead Code.

  • Extract Method.

  • Remove Unnecessary Code.

Lab: Continue our example project

  • Implement new test cases.

  • TDD Cycle.

  • Discuss and implement Refactoring Needs.

 

Part 6: Pair Programming:

Pair Programming is an effective way to improve code quality. In this Part, we will discuss pairing and how it leads to better software design and a lower development cost.

 

Pair Programming & Advantages of Pairing

  • Both Halves of the Brain.

  • Focus.

  • Reduce Interruptions.

  • Reduce Resource Constraints.

  • Multiple Monitors.

  • Challenges.

 

Pairing Techniques

  • Pair Rotation.

  • Ping Pong Pairing..

  • Promiscuous Pairs

  • Pair Stairs.

  • Cross-Functional Pairing.

Lab – Experience pair programming and continue developing our example app.

 

Part 7: Acceptance Team-Driven Development (ATDD) & Behaviour-Driven Development (BDD)

Acceptance Tests are a basic form of functional specification, and Behaviour Driven Development dictates what happens as an effect of these tests being run. In this Part, we will cover the difference between them and how they are closely related.

 

Acceptance Testing

  • Acceptance Tests.

  • Why Acceptance Tests?.

  • Acceptance Test Execution.

  • Who Writes Acceptance Tests.

  • Pair Test Writing.

 

Best Practices for Effective Testing

  • Keys to Good Acceptance Tests.

  • Writing Acceptance Criteria.

  • Acceptance Test Example.

  • Acceptance Test-Driven Development (ATDD).

 

BDD vs. ATDD

  • Specification by Example.

  • BDD Frameworks.

  • BDD Examples.

 

Lab: Experience ATDD and BDD

  • Experience ATDD or BDD and discuss the impact on TDD.

 

Part 8: Simulation:

  • Experience Agile development with team-driven development, behaviour-driven development and pair programming

 

  • Delhi Branch

    1010-12 Ansal Towers, 38 Nehru Place, Delhi

Check out more Team Development courses in India

MIT (Metamorphosis Institute of Transformation) Logo

Team Building

Team Building Training is offered by MIT (Metamorphosis Institute of Transformation). Metamorphosis, in simplest terms, means ‘transformation’ that happens through various stages of evolution and development in a Life Cycle. It is the process that transforms a dull larva into a beautiful butter...

by MIT (Metamorphosis Institute of Transformation) [Claim Listing ]
You Can Change Institute Logo

Team Building Skill

Team Building Skill training is offered by You Can Change Institute for all skill level. Our trainers believe in guiding, mentoring and nurturing the untapped potential of every individual participant and change them for better. 

by You Can Change Institute
Talent Management Zone Logo

Team Building & Managing Teams Training

Team Building & Managing Teams Training is offered by Talent Management Zone.Our training programs and course contents are structured and proven approach which helps every student to achieve their goal. We give more practice and exercises to students to equip their knowledge in practical manner.

by Talent Management Zone [Claim Listing ]
Skills Ally Logo

Team Building Training

Our team building Course in Delhi is one of the high-demanding courses offered by Ramanjeet Kaur. The course is designed to overcome the challenges a person face in managing the personal as well as professional environment. The course aims at imparting crucial skills so that team can give their 100...

by Skills Ally [Claim Listing ]
Essence Learning Logo

Team Skills/ Problem Solving

Team Skills/ Problem Solving course is offered by Essence Learning for all skill level. Essence Learning is Aviation and Hospitality Vocational Training and Placement Institute to provide quality affordable training in this field.

by Essence Learning [Claim Listing ]

© 2024 coursetakers.com All Rights Reserved. Terms and Conditions of use | Privacy Policy