What is this course?
This hands-on course will give you an understanding of how technical teams work together in Scrum, using behaviour-driven development (BDD) and test-driven development (TDD) to produce high-quality software products to agreed customer requirements. Some intentional architecture and design is included, coupled with the discipline of constant refactoring to improve the effectiveness of your approach. You will also learn how to lock-down the quality of your projects using continuous integration (CI) and increase deployment speed with continuous delivery (CD). You will leave the session with the tools you need to work individually or as a part of a team to create, and maintain excellent, high-quality software products.
This workshop is highly interactive and contains a large proportion of hands-on development exercises and demonstrations. A practical project runs throughout the course. It is aimed at those with experience of programming in a common OO language, preferably with some prior experience of Agile.
The short test which completes the course provides eligibility for Scrum Alliance Certified Scrum Developer (CSD) status if you also hold the Certified ScrumMaster qualification. Application to the Scrum Alliance for Certified Scrum Developer status can be made at any time following the training.
Please note that this course will be run on the .Net stack. We think it is very important to present the course in a single technology because of its hands-on nature, to give you the opportunity to interact with other users of the technology and to allow us to delve into the detail of the specific tooling for the platform (e.g. Specflow, NUnit.). This course can also be delivered in Java.
What will you learn?
This 3 day course will give you an in-depth understanding of Agile Software Development so that you can:
- Plan work successfully
- Understand where tests come from
- Work with customers to produce unambiguous specifications
- Know how to deal with non-functional requirements
- Produce an effective definition of done
- Use customer-facing tools to automate requirements as tests
- Mock dependencies to enable deterministic testing
- Use the red-green-refactor cycle to produce code
- Recognise the motivators underlying design principles
- Identify anti-patterns in Agile Software Development
- Be aware of where the V model fits in the Agile world
- Work confidently with legacy code
What our delegates say
“Another great course from agil8 – it filled a knowledge gap that I’ve had for years!”
James Marshall, Eurocamp
Certified Scrum Developer with David Putman
“For me it was money well spent and Agil8 delivered the quality training I needed. Thanks Agil8″.
Rickard Jones, Agile Coach
Certified Scrum Developer with David Putman
Meet your trainer
Read David’s bio
What topics will be covered?
- Principles of agile architecture
- Design practices
- Principles that enable testability and ease refactoring; Unit testing principles and practices
- Test-driven development (TDD) as a design approach
- Red-green-refactor cycle
- What makes good tests/measuring test effectiveness
- Single command build
- Creating automated builds, fast and self-testing
- The importance of a single repository
- Automating deployment
- Working together as one team; Including the customer in the process
- Pair programming
- Refactoring for maintainability; Refactoring to patterns
- Dealing with legacy code
In addition, given the instructor’s substantial hands-on experience working with Agile teams, you will have the opportunity to ask specific questions about software development issues within your own organisation.
What will you receive?
- 3 days of high quality instruction from a Scrum Alliance approved Trainer and award-winning Agile expert with over 12 years’ Agile experience.
- Course materials (printed bound copy plus access to electronic versions and other reference materials)
- Agil8 Planning Poker® cards for use in team estimating
- Agil8 Community membership including face-to-face and virtual networking and knowledge sharing opportunities, access to industry experts, special offers and invitations to special events
- If you hold Certified ScrumMaster or Certified Scrum Product Owner qualifications, you will be eligible to apply to the Scrum Alliance for Certified Scrum Developer status upon successful completion of the training and the short test at the end of the course. You may apply to the Scrum Alliance for CSD status any time after the training. See here for further information.
- For courses on our public schedule, refreshments throughout the course, including full cooked, 2 course lunch, drinks and snacks and breakfast if you arrive early enough!
Who is this course suitable for?
- Software developers that want to be successful using Scrum
- Anyone involved in Agile Software Development, but in particular, those playing Developer or QA roles
- Those newly setting out on their Agile journey as well as those already using Agile or Scrum but looking for help with their Agile software development skills
- Those with the following roles within their organisation:
- Agile Coaches
- Team Leaders
- Development Team Members (Analysts, Architects, Designers, Coders, QA, etc.)
- Functional/Departmental Managers
- Delegates attending this course must have a prior awareness and understanding of Agile team practices including User Stories and Iteration Planning. Those delegates who are already Certified Scrum Masters or Certified Scrum Product Owners will be eligible for Certified Scrum Developer status on completion of this course.
Are there any prerequisites for this course?
There are no formal pre-requisites for this course, however this course does not cover the Scrum process or other Agile methodologies, but rather looks specifically at the activities around software development within them. As such, it is aimed at those with a prior understanding of, or experience using Agile team practices including User Stories, Planning and Estimating. A Certified ScrumMaster or Certified Scrum Product Owner certification would be ideal preparation but is not essential.
In order to be able to take the course, you will need to bring with you a laptop pre-loaded with the following software:
- A laptop with Visual Studio 2015 Professional installed – http://www.visualstudio.com/downloads/download-visual-studio-vs
- Resharper – https://www.jetbrains.com/resharper/
- NUnit – http://www.nunit.org/
- Specflow – http://www.specflow.org/
- Git for Windows – http://git-scm.com/downloads
When installing Git delegates need to click the “install as context menu in Explorer” options.
How should you prepare for this course?
This course does not cover the Scrum process or other Agile methodologies, but does look specifically at the activities around software development within them. As such, it is aimed at those with a prior understanding of or experience using Agile team practices including User Stories, Planning and Estimating.
There are no formal reading requirements for this course, however the following materials may be helpful to review prior to attending the course:
What about certification?
This course includes a short test which is completed in the last session. Students who complete the training and pass the test will be eligible for Scrum Alliance Certified Scrum Developer status if they also hold the Certified ScrumMaster qualification. Application for Certified Scrum Developer status can be made to the Scrum Alliance by delegates any time after the training