InstructorAlexandre Cuva
TypeOnsite Course
Buy NowBook Now


This is not a programming class, the facilitator will not take the time to teach programming knowledge to the student. We expect a perfect programming knowledge of at least one functional or object oriented language (Java, Javascript, .NET, Python…).

The student laptop should have all the working environment installed as usual.

To be certified the candidate must have followed the following training combination:

Option 1:

  • CSM Course (2 days)

Option 2:

  • CSD – Introduction to Scrum (1 day)
  • CSD – Technical Elective course (1 day)


Day 1 – Being a Scrum Developer

Class Project

  • Introduction to class project
  • Introduction to project infrastructure


  • Collaboration
  • Product Backlog
  • Sprint planning
  • Daily Standup
  • Sprint Review
  • Sprint Retrospective

User Story Workshop

  • Expanding Epics into stories for class project
  • Analyzing the dependencies
  • Running Spikes on Complex stories
  • Estimating the Product Backlog
  • Write Acceptance Criteria

Day 2 – Agile Development

Agile Development values and principles

  • Developer Values
  • Development Rules
  • Pair Programming

Agile Testing

  • Importance of Agile testing
  • Ensure better quality product sprint by sprint
  • Test Automation Frameworks
  • Other topics

Test Driven Development

  • Description of the TDD approach and its benefits
  • Improving the quality and design of the code by testing?
  • Different types of tests: unit, integration, functional
  • Unit testing with xUnit (JUnit, NUnit, …)
  • Refactoring

Understand the Unit test patterns

  • Respect of the principle of isolation and control of test results
  • The mocks or simulate how the code Device code tested
  • Use of simulation frameworks
  • Use of test generator QuickCheck
  • Understand xUnit patterns
  • Testing Public API, Legacy code…
  • Organization of test activities

Methodology of writing test

  • Automate the execution of JUnit
  • Generating reports
  • Integration with project management scripts (Maven, grable, npm…)

Day 3 – Continuous Delivery and code quality

Introduction to Continuous Integration

  • Principles, environment, and infrastructure
  • Branching strategies and patterns for continuous integration.
  • Solutions for Continuous Integration
  • Introduction to Jenkins
  • Team lifecycle responsibilities

Introduction to Continuous Delivery and DevOps

  • Dashboard and health projects
  • Architecture and extension principle
  • Installation, configuration and use of Jenkins
  • Automated Builds with a build tool (Maven, Gradle, npm, babel, …)
  • Automation Testing with JUnit (TDD) and Cucumber (BDD/ATDD)
  • Introduction to Docker

Clean code

  • What it is clean code
  • Clean code practices
  • Programming principle
  • Code smell
  • Must test be clean?
Section 1Scrum Developper
Lecture 1Class Project
Lecture 2Review Scrum practices

Leave a Reply