GO
Virtual Public Training
No events found.
Effective Scrum Developer

Learn Work at Home Collaboration!

 

Using .NET or Java

 
 

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.

Acceptance Test Driven Development