Whether you are thinking about starting Agile or Scrum, have just begun, or have hit a wall after starting, you likely find yourself searching for online articles, documents, and books for guidance.
In this article, we introduce books that are particularly valuable for "Developers (Engineers and Programmers) within a Scrum Team."
In particular, we present a selection of books that are essential reading for anyone looking to effectively integrate "Design Patterns and Pattern-Oriented Architecture" into their Scrum development process.
Table of Contents
When developing with object-oriented languages, what kind of design is necessary to achieve highly reusable classes and libraries?
The definitive answer was provided by the 1995 publication, 'Design Patterns: Elements of Reusable Object-Oriented Software,' which brought the concept of design patterns into the mainstream.
The authors—Erich Gamma, Richard Helm, Ralph Johnson, and John Vlissides—are famously known as the 'Gang of Four,' and the book is affectionately referred to as the 'GoF book.'
It introduces 23 patterns that address recurring design problems with proven solutions. While 'design patterns' usually refers to these specific GoF patterns, the term is also used more broadly to describe 'successful solutions to common problems within a given context.'
The 23 patterns are as follows:
1. Iterator, 2. Adapter, 3. Template Method, 4. Factory Method, 5. Singleton, 6. Prototype, 7. Builder, 8. Abstract Factory, 9. Bridge, 10. Strategy, 11. Composite, 12. Decorator, 13. Visitor, 14. Chain of Responsibility, 15. Facade, 16. Mediator, 17. Observer, 18. Memento, 19. State, 20. Flyweight, 21. Proxy, 22. Command, 23. Interpreter
A landmark work that cataloged essential recurring elements of object-oriented software design as 'design patterns.' It provides 23 patterns to achieve flexible, reusable, and understandable designs—wisdom that remains fundamental to software engineering today.
A timeless classic that continues to support developers in an ever-changing industry. From high-level architecture to low-level implementation, it offers curated information essential for every professional engineer.
Winner of the Software Development Productivity Award.
A Swiss computer scientist and co-author of the 'Gang of Four.' Beyond this book, he co-authored the JUnit framework with Kent Beck and led the design of Eclipse's JDT. He currently leads development efforts at Microsoft for Visual Studio Code and Azure services, continuing to shape modern development tools.
The highly anticipated fourth volume in the Pattern-Oriented Software Architecture (POSA) series focuses on a pattern language for distributed computing.
POSA 4 connects numerous independent patterns and collections from existing literature into a cohesive language. It provides a holistic view of the craft of building distributed systems, featuring a foreword by Martin Fowler.
■ Key Highlights
A Senior Principal Engineer at Siemens, specializing in object technology, software reuse, and patterns. He is a member of the ANSI C++ standardization committee.
An independent consultant and speaker. He is well-known as the editor of '97 Things Every Software Architect Should Know' and a regular contributor to major technical publications.
A Professor of Computer Science at Vanderbilt University. He is the original developer of ACE and TAO, and a leading expert in patterns and middleware for distributed real-time systems.
Christopher Alexander and his colleagues presented a radical approach to architecture and planning that challenged existing conventions. At its core is the belief that people should design for themselves—their own houses, streets, and communities.
The book posits that when designing their environments, people rely on a shared 'language' that allows for infinite variety while maintaining coherence. This volume provides such a language, organized into over 250 'patterns'—each representing a solution to a specific design problem in a given context.
From the height of a window sill to the layout of a town, these patterns are deeply rooted in the essence of human behavior. They serve as the foundational inspiration for modern software design patterns and agile development philosophies.
What is Certified Scrum Developer® (CSD®) Training?
■ Overview
A systematic education and certification program by Scrum Alliance® designed to develop individuals who can collaborate effectively as Scrum development team members. A Certified Scrum Trainer (CST®) evaluates whether your technical and communication skills meet global standards.
■ What You Will Learn
Experience a one-week sprint in an ideal Scrum team, gaining technical habits by building applications. You will also receive direct guidance from Agile coaches to address real-world challenges.
■ Learn more
Apply for Odd-e Japan Training
What is Certified Scrum Developer® (CSD®) Training?
Certified Scrum Developer®(CSD®)- Scrum Alliance®
■ Training Program
・Scrum Practices (Sprint Planning, Backlog Refinement, etc.)
・Technical Practices (Agile Design, TDD, CI, Refactoring, Legacy Code Improvement, etc.)
■ Certification Process
By completing the 5-day course (2 days of Scrum foundations + 3 days of technical training) and demonstrating proficiency as an agile developer, you earn the right to apply for a 2-year certification.
Please apply for our various training programs
using the link below.