Agile Software Development, Principles, Patterns, and Practices
اصول، الگوها و شیوهها مهم هستند، ولی این افراد هستند که آنها را به کار میبندند. همان طور Alistair Cockburn گفته است "فرایند و تکنولوژی بر روی خروجی پروژه از اثرات ثانویه هستند. آن چیزی که جزء اثرات اولیه تاثیر گذار بر پروژه است، افراد هستند."
ما نمیتوانیم تیمهای برنامه نویسان را مدیریت کنیم، به شرط آن که سیستمهای ساخته شده از اجزای تشکیل شده توسط فرایند وجود داشته باشند. افراد واحدهای برنامه نویسی plug-compatible نیستند. اگر میخواهیم که پروژه هایمان موفق شوند، ما باید تیمهای خود سازمانده و مشارکتی ایجاد کنیم.
شرکت هایی که به تشکیل چنین تیم هایی تشویق میکنند، مزیت رقابتی قابل توجهی نسبت به آن هایی که نگرششان این است که شرکتهای توسعه نرم افزار چیزی بیش از یک شرکت درپیت نیست. یک تیم نرم افزاری خوب، قدرتمندترین نیروی توسعه نرم افزار است.
Table of Contents
Section 1. Agile Development
Chapter 1. Agile Practices
Chapter 2. Overview of Extreme Programming
Chapter 3. Planning
Chapter 4. Testing
Chapter 5. Refactoring
Chapter 6. A Programming Episode
Section 2. Agile Design
Chapter 7. What Is Agile Design?
Chapter 8. SRP: The Single-Responsibility Principle
Chapter 9. OCP: The Open-Closed Principle
Chapter 10. LSP: The Liskov Substitution Principle
Chapter 11. DIP: The Dependency-Inversion Principle
Chapter 12. ISP: The Interface-Segregation Principle
Section 3. The Payroll Case Study
Chapter 13. Command and Active Object
Chapter 14. Template Method & Strategy: Inheritance vs. Delegation
Chapter 15. Facade and Mediator
Chapter 16. Singleton and Monostate
Chapter 17. Null Object
Chapter 18. The Payroll Case Study: Iteration One Begins
Chapter 19. The Payroll Case Study: Implementation
Section 4. Packaging the Payroll System
Chapter 20. Principles of Package Design
Chapter 21. Factory
Chapter 22. The Payroll Case Study (Part 2)
Section 5. The Weather Station Case Study
Chapter 23. Composite
Chapter 24. Observer—Backing into a Pattern
Chapter 25. Abstract Server, Adapter, and Bridge
Chapter 26. Proxy and Stairway to Heaven: Managing Third Party APIs
Chapter 27. Case Study: Weather Station
Section 6. The ETS Case Study
Chapter 28. Visitor
Chapter 29. State
Chapter 30. The ETS Framework
Appendix A: UML Notation I: The CGI Example
Appendix B: UML Notation II: The Statmux
Appendix C: A Satire of Two Companies