Overview
The Certified Scrum Developer Workshop (CSD): Hands-on Agile engineering is a three day instructor-led course that creates an immersive, collaborative experience requiring participants to engage in exercises, hands-on labs and discussions. Through this course, participants will gain a thorough understanding of the key concepts of Agile methodology and scrum ceremonies and be introduced to Agile concepts, such as, Agile manifesto, Agile teams, daily scrums, sprint setup, sprint analysis, sprint review, test driven development, automated builds, automated tests, continuous inspection and continuous integration.
What You'll Learn
- Define the core concepts of Agile software development
- Participate in Sprint planning and execution
- Implement test-driven development
- Incorporate continuous inspection
- Implement continuous integration
Curriculum
- Triple constraints
- Five levels of planning
- User stories
- Relative sizing
- Sprint execution
- Sprint demo
- Team retrospective
- Customer collaboration
- Team collaboration
- Pair programming and pricing
- Architecture as a concern
- Design principles
- Coding standards
- Collective code ownership
- Simple design
- System metaphor
- Testability as a driving concern
- Test first vs. Test last
- TDD Rhythm: Red, Green, Refractor
- TDD influence on design
- Unit testing principles
- Safety net of tests
- Refactoring patterns
- Refactoring for maintainability
- Discuss the attitude of continuous integration
- Discuss how and why you must develop a single command line build
- Automating the build
- The 10-minute build
- Benefits and practices of continuous integration
- Testing quadrants
- Automation
- Unit tests
- Integration tests
- Acceptance tests
- Functional tests
- Acceptance criteria
- Writing acceptance tests
- Acceptance test driven development
- Automating acceptance tests
- Recap essential Scrum Developer practices
- Team ground rules to start off on the right foot
- Develop a roadmap leveraging Scrum Developer practices
Who should attend
- Software developers
- Quality assurance
- Product owners
- Development team