Europe: +41 78 715 83 09 - Asia: +84 ‎975 112 112
contact@finix.asia

Certified Scrum Developer – 5 days

Course Overview

According to Scrum Alliance (www.scrumalliance.org), “Certified Scrum Developers have demonstrated — through a combination of formal training and a technical skills assessment — that they have a working understanding of Scrum principles, and have learned specialized Agile engineering skills. The Certified Scrum Developer course is designed for software developers (programmers) who are building software in a Scrum environment. The goal is to expose students to the most important tools and techniques needed to build good software in the iterative and incremental fashion that Scrum requires. These ideas are central to the entire field of Agile software development.

A successful Scrum Developer is committed to continuous improvement. The coursework and dedication needed to achieve a CSD sharpen the participant’s skills to help to become a better practitioner of Scrum. By earning a Certified Scrum Developer certification, you:

  • Learn the foundations of Scrum and the scope of the Certified Scrum Developer’s role from the best minds in Scrum.
  • Demonstrate to employers and peers your understanding of core Scrum knowledge.
  • Expand your career opportunities by staying relevant and marketable across all industry sectors adopting Agile practices.
  • Engage with a community of recognized Scrum experts who are committed to continuous improvement.”

This 5-day certification track (Track #2) is divided into 3 parts are explained below.

Part 1: Intro to Scrum CSD course (1 day)

Description:

During the first day, the student learns about the Agile Manifesto, Scrum practices, the roles, values, ceremonies, and artifacts. The facilitator will use nearly no slide, most of the chapters are either design, either the student resolve exercises in teams. Some serious game will be used.

Course Outline:

Day 1 - Understand Scrum

Introduction

  • 5 days Overview
  • Agile Manifesto values and principles

How Scrum work

  • The Scrum processes
  • The Backlog
  • The Sprint Backlog

The Scrum Ceremonies

  • The Sprint planning
  • The Daily Stand up
  • The Sprint Review
  • The Retrospective

The Scrum Roles

  • The Scrum Master
  • The Product Owner
  • The Scrum Team
  • The Stakeholders roles
  • The relation and communication between the roles

Project Planning and Reports

  • The visual tools: Scrum Board, Sprint Burndown…
  • Estimate the velocity
  • The planning poker

Part 2: CSD technical course, including coding (3 days)

Description:

The Certified Scrum Developer course is designed for software developers and programmers who are designing software in a Scrum environment. The goal is to expose the most important tools and techniques that are needed to be applied to design software in the iterative and incremental fashion. These ideas are central to the entire field of Agile software development.

The Certified Scrum Developer (CSD) Learning objectives cover the critical skills in coding, testing, refactoring, continuous integration, and other related topics that are needed for successful team software development in the Scrum style. The course involves actual programming in a team environment. This course notwithstanding is a programming course, not a survey, overview, or discussion. This training will enhance your technical skills in Agile software development.

This Certified Scrum Developer (CSD) training which will allow performing test-driven development, acceptance test-driven development, refactoring, and continuous integration in a course provided sandbox situation. You will be familiar with the terms and practices involved, and with why these practices are important. This is the first steps toward becoming an expert in Scrum-style iterative and incremental development.

Course Outline:

Day 2 - Being a Scrum Developer

The second day the student use everything they learned from the first day in a small project where they practices all.

Class Project

  • Introduction to class project
  • Introduction to project infrastructure

Scrum

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

User Story Workshop

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

Day 3 - Agile Development

Starting day 3, student learn the agile practices coming from the eXtreme Programming or the Software Craftsmanship.

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

A methodology of writing test

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

Day 4 - 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?

Day 5 - Advanced subject

Course Outline:

  • Property-based Testing
  • Advanced use of ATDD/BDD
  • Coding Dojo
  • ScrumXP practice
  • Programming by Intention
  • The Tester role
  • Mob Programming
  • PingPong Programming…

Alexandre Cuva

Co-founder, Agile Lean Coach and Facilitator
Alexandre Cuva, recognized specialist with 19 years of experience in an international environment, Alexandre is an Agile Coach, Consultant, and…
View Profile
Translate »