Contact us regarding additional platforms
Part of the Scrum Alliance Certified Developer Program
This course is aimed at helping software development professionals and teams be more effective when implementing Scrum and other agile software development methodologies. In an effort to raise the effectiveness of Scrum, the Scrum Alliance has created the Certified Scrum Developer program. This course is designed to deliver the core Agile Development Practices Learning Objectives of that program.
Audience
This course is intended for professional software developers who are on a Scrum team and want to understand how Scrum and agile engineering practices are applied and how they affect their role in the team. The participant should have an understanding of Scrum preferably from taking our Certified ScrumMaster Workshop or a similar course.
The Approach
One of the agile practices commonly used by Scrum teams is the breakdown of requirements into User Stories. This course was designed to meet this user story:
As a Developer on a Scrum team, I want to use Agile Engineering Practices, so that my team delivers business value with Production Quality Software in every Sprint.
To meet this goal this course meets the Scrum Alliance Learning Objectives for the Certified Scrum Developer Program in these areas:
Collaboration
The teamwork and collaboration on a Scrum team
Architecture and Design
The principles that drive code quality and support quick delivery of business value from testable, understandable and correct code.
Test Driven Development
Using the practice of Test First to help ensure the requirements are well understood and automated tests can be added to the build process to validate the system in the future.
Refactoring
The process of improving the design of software to increase the understandability and testability of the code and allow for easy and safe additions to the system in the future.
Continuous Integration
The process of creating and running automated build and test cycles as new code is checked in so that cross-application issues are discovered as soon as possible.
Course Outline
The course is structured around these user stories that provide the goals for each section:
The Developer Role In Scrum
As a Developer I want to understand my role on a Scrum Team So that the team is successful in meeting Sprint and Release goals.
Test First
As a Developer I want to clearly understand the story So that I can deliver the right functionality.
Writing Unit Tests
As a developer I want to write effective Unit Tests So that I will know when the code is done.
Agile Analysis for Developers
As a Developer I want quickly and accurately break down requirements So that the work of delivering the business value can be planned effectively.
What is Quality Code?
As a Developer I want to write high quality code and be able to evaluate code quality So that the project is not slowed down in the future by poor quality code.
Scrum Teamwork
As a Developer I want to work collaboratively and efficiently with the other members of my Scrum team So that the Sprint and Release Goals are achieved.
Test Driven Development
As a Developer I want to write small tests then write the code to pass the tests and clean up the code So that I can work quickly and efficiently.
Agile Architecture
As a Developer I want to create software components that are maintainable and efficient So that the product will have a long life and adapt to new requirements easily.
Talking About Design
As a Developer I want to have a common language to use when discussing application design with other developers So that we can quickly and accurately describe the system design.
Refactoring
As a Developer I want to clean up my new code safely So that the new code is flexible and easy to understand.
Automated Refactoring
As a Developer I want to use automatic tools to Refactor So that I can concentrate on delivering the functionality.
Integrating Often
As a Developer I want to verify that my code works in the system and does not break the system as often as possible So that issues are discovered quickly and the project is almost always in a state that can be demonstrated.
Continuous Integration
As a Developer I want use a build system that automatically builds the system and runs all automated tests So that integrating often is as easy as possible.
Learning Objectives
This Course Satisfies these Learning Objectives from the Scrum Alliance Certified Scrum Developer Program:
Architecture and Design Test Driven Development Collaboration Refactoring Continuous Integration
For more information see the Effective Agile Development Registered Education Provider Page on the Scrum Alliance Web Site.