Implementing Agile Test Driven Development for Non-Developers Training

Duration: 
2 days
Codes: 
TP2765

Overview

Test-driven development (TDD) is an evolutionary approach to development where you must first write a test that fails before you write new functional code. This process was developed by Kent Beck and Ward Cunningham. It is primarily an agile approach to software development and is one of the core principles of Extreme Programming.

Audience

Test professionals, test managers, project leaders, quality analysts and developers

2 day

Skills Gained

Working within in a dynamic, learning environment, guided by our expert Agile TDD team, attendees will:

  • Be introduced to the concept of development agility and the Agile Manifesto
  • Review each of the major agile development methods underscoring their strengths and weaknesses
  • Understand how to manage an agile environment even within a structured organizational approach
  • Learn how to introduce agility into a development organization
  • Examine what unit testing is and how various xUnit frameworks facilitate unit testing
  • Review the xUnit family of unit testing tools
  • Understand the concepts of and motivations for Test-Driven Development
  • Relate unit testing, test driven development, and test coverage to agile processes
  • Understand the importance of refactoring in supporting agile and test driven processes
  • Understand what Continuous Integration is and what the components of CI are
  • Examine the motivations for CI
  • Review best practices for everything from CI to testing within the context of agile development

Throughout the course, students will be led through a series of progressively advanced topics, where each topic consists of lecture, group discussion, comprehensive lab exercises and review.If your team requires more advanced materials or custom topics, this course may be easily adjusted to accommodate. We offer many additional Agile, TDD and software engineering courses which may be blended with this course for a track that best suits your development objectives.

Prerequisites

This is a beginner- level course, designed for test professionals, test managers, project leaders, quality analysts, and developers. No specific prerequisites are assumed. Knowledge of current development processes, such as structured top-down development and the waterfall method is beneficial.

Course Outline

Outline of Implementing Agile Test Driven Development for Non-Developers Training

1. Agile Rationale and Concepts

  • Reducing Risk Through Agility
  • The Discipline of Timeboxing
  • Incremental Delivery and Evaluation
  • Agile Method: Scrum
  • Agile Method: XP
  • Pair Programming

2. The Agile Approach

  • Agile Software Development Manifesto
  • The Agile Principles
  • Identifying Features
  • Managing Features
  • Communication Dynamics

3. Agile Iterative Development

  • Iterative Approaches
  • Phased Iterative Development
  • Iterating
  • Feasibility & Planning
  • Development
  • Adaptation & Deployment

4. Prioritizing and Planning

  • Features and Backlogs
  • FDD Process
  • Prioritizing Features
  • Release Planning
  • Assigning Features to Iterations

5. Building

  • Typical Continuous Integration Process
  • CI Server
  • Automate Source Code Management
  • Automate Build Process
  • Automate Testing
  • Automate Deployment
  • Session: Unit Testing

6. Unit Testing Overview

  • Purpose of Unit Testing
  • Good Unit Tests
  • Test Stages
  • Unit Testing Vs Integration Testing

7. Unit Testing Tools

  • Understanding Unit Testing Frameworks
  • JUnit Overview
  • Test Case using JUnit
  • Failures vs. Errors

8. Unit Testing Best Practices

  • "Good" Tests
  • Bad Smells
  • White-Box Unit Testing
  • Black-Box Unit Testing
  • Automation and Coverage

9. Transitioning to Agility

  • Agility: Some Process, Some Mindset
  • Characteristics that Enable Agility
  • Characteristics that Inhibit Agility
  • Risks Associated with Migrating
  • Smoothing the Transition

10. The Bottom Line

  • Agile Migration Patterns
  • Extending the Migration
  • Coding Practices
  • Source Control
  • Pair Programming and Code Reviews
  • Continuous Integration
  • Legacy Code

Related Courses

 

Thinking about Onsite?

If you need training for 3 or more people, you should ask us about onsite training. Putting aside the obvious location benefit, content can be customised to better meet your business objectives and more can be covered than in a public classroom. It's a cost effective option.

Submit an enquiry from any page on this site, and let us know you are interested in the requirements box, or simply mention it when we contact you.

ITILv3, RESILIA, PRINCE2, PRINCE2 Agile, AgileSHIFT, MSP, M_o_R, P3M3, P3O, MoP, MoV courses on this page are offered by QA Affiliate of AXELOS Limited. ITIL, RESILIA, PRINCE2, PRINCE2 Agile, AgileSHIFT, MSP, M_o_R, P3M3, P3O,MoP, MoV are registered trademarks of AXELOS Limited. All rights reserved.