Suggested Reading for PSD I™
Modern Tooling and Practices for Software Developers
Prior to taking the PSD I certification a great way to prepare is to attend the Applying Professional Scrum - Software Developer training course, taught by a Scrum.org Professional Scrum Trainer.
The PSD I assessment includes questions from the following Focus Areas as defined in the Professional Scrum Competencies. Approximately 85% of the questions will be selected randomly from the following Focus Areas.
- Developing & Delivering Products Professionally:
- Backlog Refinement, Cross-functional, Self-managed Development, Design & Architecture, Documentation, Programming, Quality, Testing.
Additionally, approximately 15% of the questions will be selected randomly from the Focus Areas listed below. These questions are designed to validate your knowledge around the core concepts of Scrum. First and foremost, read and understand the Scrum Guide. You might also benefit from reviewing material found on the PSM I Suggested Reading page.
- Understanding and Applying the Scrum Framework:
- Empiricism, Scrum Values, Scrum Team, Events, Artifacts, Done.
- Developing People and Teams:
- Self-Managing Teams, Facilitation, Coaching and Mentoring.
- Managing Products with Agility:
- Forecasting & Release Planning, Product Value, Product Backlog Management, Stakeholders & Customers.
Where to begin
- Study the Scrum Guide.
- Review the series of articles, blogs, videos and more that pertain to the 2020 version of the Scrum Guide.
- Learn from the Software Developer Learning Path.
- Study from the PSM I Suggested Reading page for questions about the core concepts of Scrum.
Blogs and Articles
- The Professional Scrum Team by Peter Götz
- Professional Scrum Development with Azure DevOps by Richard Hundhausen
- The DevOps Handbook by Gene Kim
Cross-Functional, Self-Managed Development
Developers in Scrum are self-managing. Self-management requires not only the availability of the right development skills, but also collaboration, team commitment, joint problem ownership, shared goals and creativity. The Developers autonomously make all decisions on how to do the work that they have forecast to complete in a Sprint.
- Coaching Agile Teams by Lyssa Adkins
- Actionable Agile Metrics for Predictability by Daniel S. Vacanti
Creating great software includes understanding the needs of users, stakeholders and the marketplace. In today’s highly complex markets with many unpredictable changes, details are added to requirements last minute, and even while programming. The Developers and the Product Owner collaborate on the software expectations in creating, clarifying, and estimating items in the Product Backlog.
- The Professional Product Owner by Don McGreal and Ralph Jocham
Design, Architecture, and Programming
Scrum has an iterative-incremental approach to software development and the focus is on shippable software at the end of every Sprint. In the domains of software design and architecture this leads to a major shift, i.e., from prescriptive and upfront to emergence. Designs and architectures grow and change as applications and products grow and change. As part of incremental development, Scrum places quality before scope. Writing high-quality code is an art in itself. It requires skills, dedication, mastery, agreed practices, and agreed on standards.
- Building Evolutionary Architectures: Support Constant Change by Neal Ford, Rebecca Parsons and Patrick Kua
- Continuous Delivery: Reliable Software Releases through Build, Test, and Deployment Automation by Jez Humble and David Farley
- Refactoring: Improving the Design of Existing Code by Martin Fowler
It is considered a good agile development practice to think through requirements before writing functional code. It helps to consider work in terms of how it will be tested, but it also helps to eliminate other wasteful activities that are traditionally part of upfront requirements specification processes. The ability to deliver shippable software by the end of every Sprint requires different testing strategies, where testing activities are to be done as part of development.
- Test Driven Development: By Example by Kent Beck
- Agile Testing: A Practical Guide for Testers and Agile Teams by Lisa Crispin and Janet Gregory