Home » Training » Courses » Scrum Developer Training
- Massively increase your output of work
- Use TFS 2010 effectively with Scrum
- Become "Scrum certified"
- The 'only' Microsoft approved course
TFS Professional Scrum Developer Course (PSD) - Agile Software
Development Training
-
Wellington
6th - 10th Sept
-
Sydney
13th - 17th Sept
-
Melbourne
20th - 24th Sept
-
Beijing
4th - 8th Oct
-
Perth
11th - 15th Oct
Scrum Training
This Professional Scrum Developer (PSD) course is a unique and intensive five-day
experience for software developers. The course guides teams on how to turn product
requirements into potentially shippable increments of software using the Scrum framework,
Visual Studio 2010, and modern software engineering practices. Attendees will work
in self-organizing, self-managing teams using a common instance of Visual Studio
Team Foundation Server 2010 to achieve this goal.
Audience
This course is suitable for any member of a software development team - architect,
programmer, database developer, tester, etc. Entire teams are encouraged to attend
and experience the course together, but individuals are welcome too. Attendees will
self-organize to form cross-functional Scrum teams. These teams require an aggregate
of skills specific to the selected case study. Please see the last page of this
document for specific details. Product Owners, ScrumMasters, and other stakeholders
are welcome too, but keep in mind that everyone who attends will be expected to
commit to work and pull their weight on a Scrum team.
What should you know by the end of the course?
Scrum will be experienced through a combination of lecture, demonstration, discussion,
and hands-on exercises. Attendees will learn how to do Scrum correctly while being
coached and critiqued by the instructor, in the following topic areas:
- Form effective teams
- Explore and understand legacy "Brownfield" architecture
- Define quality attributes, acceptance criteria, and "done"
- Create automated builds
- How to handle software hotfixes
- Verify that bugs are identified and eliminated
- Plan releases and sprints
- Estimate product backlog items
- Create and manage a sprint backlog
- Hold an effective sprint review
- Improve your process by using retrospectives
- Use emergent architecture to avoid technical debt
- Use Test Driven Development as a design tool
- Setup and leverage continuous integration
- Use Test Impact Analysis to decrease testing times
- Manage SQL Server development in an Agile way
- Use .NET and T-SQL refactoring effectively
- Build, deploy, and test SQL Server databases
- Create and manage test plans and cases
- Create, run, record, and play back manual tests
- Setup a branching strategy and branch code
- Write more maintainable code
- Identify and eliminate people and process dysfunctions
- Inspect and improve your team's software development process
What does the week look like?
This course is a mix of lecture, demonstration, group discussion, simulation, and
hands-on software development. The bulk of the course will be spent working as a
team on a case study application delivering increments of new functionality in mini-sprints.
Here is the week at a glance:
Monday morning and most of the day Friday will be spent with the computers powered
off, so you can focus on sharpening your game of Scrum and avoiding the common pitfalls
when implementing it.
The Sprints
Timeboxing is a critical concept in Scrum as well as in this course. We expect each
team and student to understand and obey all of the timeboxes. The timebox duration
will always be clearly displayed during each activity. Expect the instructor to
enforce it.
Each of the 1/2 day sprints will roughly follow this schedule:
|
Component |
Description |
Minutes |
|
Instruction
|
Presentation and demonstration of new and relevant tools & practices
|
60
|
|
Sprint planning meeting
|
Product owner presents backlog; each team commits to delivering functionality
|
10
|
|
Sprint planning meeting
|
Each team determines how to build the functionality
|
10
|
|
The Sprint
|
The team self-organizes and self-manages to complete their tasks
|
120
|
|
Sprint Review meeting
|
Each team will present their increment of functionality to the other teams
|
≤ 30
|
|
Sprint Retrospective
|
A group retrospective meeting will be held to inspect and adapt
|
10
|
Each team is expected to self-organize and manage their own work during the sprint.
Pairing is highly encouraged. The instructor/product owner will be available if
there are questions or impediments, but will be hands-off by default. You should
be prepared to communicate and work with your team members in order to achieve your
sprint goal. If you have development-related questions or get stuck, your partner
or team should be your first level of support.
Module 1: INTRODUCTION
This module provides a chance for the attendees to get to know the instructors as
well as each other. The Professional Scrum Developer program, as well as the day
by day agenda, will be explained. Finally, the Scrum team will be selected and assembled
so that the
forming, storming, norming, and performing can begin.
- Trainer and student introductions
- Professional Scrum Developer program
- Agenda
- Logistics
- Team formation
- Retrospective
Module 2: SCRUMDAMENTALS
This module provides a level-setting understanding of the Scrum framework including
the roles, timeboxes, and artifacts. The team will then experience Scrum firsthand
by simulating a multi-day sprint of product development, including planning, review,
and retrospective meetings.
- Scrum overview
- Scrum roles
- Scrum timeboxes (ceremonies)
- Scrum artifacts
- Simulation
- Retrospective
It's required that you read Ken Schwaber's
Scrum Guide in preparation for this module and course.
MODULE 3: IMPLEMENTING SCRUM IN VISUAL STUDIO 2010
This module demonstrates how to implement Scrum in Visual Studio 2010 using a Scrum
process template*. The team will learn the mapping between the Scrum concepts and
how they are implemented in the tool. After connecting to the shared Team Foundation
Server, the team members will then return to the simulation – this time using Visual
Studio to manage their product development.
- Mapping Scrum to Visual Studio 2010
- User Story work items
- Task work items
- Bug work items
- Demonstration
- Simulation
- Retrospective
Module 4: THE CASE STUDY
In this module the team is introduced to their problem domain for the week. A kickoff
meeting by the Product Owner (the instructor) will set the stage for the why and
what that will take during the upcoming sprints. The team will then define the quality
attributes of the project and their definition of "done." The legacy application
code will be downloaded, built, and explored, so that any bugs can be discovered
and reported.
- Introduction to the case study
- Download the source code, build, and explore the application
- Define the quality attributes for the project
- Define "done"
- How to file effective bugs in Visual Studio 2010
- Retrospective
Module 5: HOTFIX
This module drops the team directly into a
Brownfield (legacy) experience by forcing them to analyze the existing application's
architecture and code in order to locate and fix the Product Owner's high-priority
bug(s). The team will learn best practices around finding, testing, fixing, validating,
and closing a bug.
- How to use Architecture Explorer to visualize and explore
- Create a unit test to validate the existence of a bug
- Find and fix the bug
- Validate and close the bug
- Retrospective
Module 6: PLANNING
This short module introduces the team to release and sprint planning within Visual
Studio 2010. The team will define and capture their goals as well as other important
planning information.
- Release vs. Sprint planning
- Release planning and the Product Backlog
- Product Backlog prioritization
- Acceptance criteria and tests
- Sprint planning and the Sprint Backlog
- Creating and linking Sprint tasks
- Retrospective
At this point the team will have the knowledge of Scrum, Visual Studio 2010, and
the case study application to begin developing increments of potentially shippable
functionality that meet their definition of done.
Module 7: EMERGENT ARCHITECTURE
This module introduces the architectural practices and tools a team can use to develop
a valid design on which to develop new functionality. The teams will learn how Scrum
supports good architecture and design practices. After the discussion, the teams
will be presented with the product owner's prioritized backlog so that they may
select and commit to the functionality they can deliver in this sprint.
- Architecture and Scrum
- Emergent architecture
- Principles, patterns, and practices
- Visual Studio 2010 modeling tools
- UML and layer diagrams
- SPRINT 1
- Retrospective
Module 8: TEST DRIVEN DEVELOPMENT
This module introduces Test Driven Development as a design tool and how to implement
it using Visual Studio 2010. To maximize productivity and quality, a Scrum team
should setup Continuous Integration to regularly build every team member's code
changes and run regression tests. Refactoring will also be defined and demonstrated
in combination with Visual Studio's Test Impact Analysis to efficiently re-run just
those tests which were impacted by refactoring.
- Continuous integration
- Team Foundation Build
- Test Driven Development (TDD)
- Refactoring
- Test Impact Analysis
- SPRINT 2
- Retrospective
Module 9: AGILE DATABASE DEVELOPMENT
This module lets the SQL Server database developers in on a little secret – they
can be agile too. By using the database projects in Visual Studio 2010, the database
developers can join the rest of the team. The students will see how to apply Agile
database techniques within Visual Studio to support the SQL Server 2005/2008/2008R2
development lifecycle.
- Agile database development
- Visual Studio database projects
- Importing schema and scripts
- Building and deploying
- Generating data
- Unit testing
- SPRINT 3
- Retrospective
Module 10: SHIP IT
Teams need to know that just because they like the functionality doesn't mean the
Product Owner will. This module revisits acceptance criteria as it pertains to acceptance
testing. By refining acceptance criteria into manual test steps, team members can
execute the tests, recording the results and reporting bugs in a number of ways.
Manual tests will be defined and executed using the Microsoft Test Manager tool.
As the Sprint completes and an increment of functionality is delivered, the team
will also learn why and when they should create a branch of the codeline.
- Acceptance criteria
- Testing in Visual Studio 2010
- Microsoft Test Manager
- Writing and running manual tests
- Branching
- SPRINT 4
- Retrospective
Module 11: OVERCOMING DYSFUNCTION
This module introduces the many types of people, process, and tool dysfunctions
that teams face in the real world. Many dysfunctions and scenarios will be identified,
along with ideas and discussion for how a team might mitigate them. This module
will enable you and your team to move toward independence and improve your game
of Scrum when you depart class.
- Scrum-butts and flaccid Scrum
- Best practices working as a team
- Team challenges
- ScrumMaster challenges
- Product Owner challenges
- Stakeholder challenges
- Course Retrospective
What will be expected of you and you team?
This is a unique course in that it's technically-focused, team-based, and employs
timeboxes. It demands that
the members of the teams self-organize and self-manage their own work to collaboratively
develop increments of software.
All attendees must commit to:
- Pay attention to all lectures and demonstrations
- Participate in team and group discussions
- Work collaboratively with other team members
- Obey the timebox for each activity
- Commit to work and do your best to deliver
All teams should have these skills:
- Understanding of Scrum
- Familiarity with Visual Studio 2010
- C#, .NET 4.0 & ASP.NET 4.0 experience*
- SQL Server 2008 development experience
- Software testing experience
* Check with the instructor ahead of time for the exact technologies
Self-organising teams
Another unique attribute of this course is that it's a technical training class
being delivered to teams of developers, not pairs, and not individuals.
Ideally, your actual software development team will attend the training to ensure
that all necessary skills are covered. However, if you wish to attend an open enrolment
course alone or with just a couple of colleagues, realize that you may be placed
on a team with other attendees. The instructor will do his or her best to ensure
that each team is cross-functional to tackle the case study, but there are no guarantees.
You may be required to try a new role, learn a new skill, or pair with somebody
unfamiliar to you. This is just good Scrum!
Who should NOT take this course?
Because of the nature of this course, as explained above, certain types of people
should probably not attend this course:
- Students requiring command and control style instruction – there are no prescriptive/step-by-step
(think traditional Microsoft Learning) labs in this course
- Students who are unwilling to work within a timebox
- Students who are unwilling to work collaboratively on a team
- Students who don't have any skill in any of the software development disciplines
- Students who are unable to commit fully to their team – not only will this diminish
the student's learning experience, but it will also impact their team's learning
experience
Location Details
Canberra
|
Presented by
Adam Cogan,
Peter Gfader.
Hosted at Microsoft Canberra
2/44 Sydney Ave
Forrest
Directions
|
|
Sydney
|
Presented by
Adam Cogan,
John Liu.
Hosted at SSW
Gateway Court Suite 10
81 - 91 Military Road
Neutral Bay
Directions
|
|
Melbourne
|
Presented by
Adam Cogan,
Peter Gfader.
Hosted at Microsoft Melbourne
Level 5, 4 Freshwater Place
Southbank
Directions from CBD
|
|
Milan
|
Presented by
Adam Cogan,
Peter Gfader.
Hosted at Microsoft Milan
Via Rivoltana, 13 20090 Segrate (MI)
Directions
|
|
London
|
Room - Shivling
Bldg 4, Third Floor, Zone D
Microsoft Reading Offices
Microsoft Campus
Thames Valley Park
Reading RG6 1WG
Directions
|
|
Beijing
|
This course will be available in both English and Mandarin.
Presented by
Adam Cogan,
Lei Xu.
Hosted at Microsoft Beijing
1st Floor, Microsoft Tower, LSH Plaza
8 Wangjing Street, Chaoyang
Directions
|
|
Wellington
|
TBA.
|
Course Materials
What You Need To Bring
- A laptop (4GB of RAM, Windows XP or higher, 20GB of free disk space)
- A mouse
- If you do not have access to a laptop you can use for the course you can rent one
from SSW for $75 a day. Please contact sales on +61 2 9953 3000 to arrange this.
Related Links
Past Events
- Canberra
3rd - 7th May
- Sydney
24th - 28th May
- Melbourne
21st - 25th June
- Milan
28th June - 2nd July
-
London
26th - 30th July
-
Beijing
2nd - 6th Aug