Emergent Design: Training and Resources
Emergent Design: The Evolutionary Nature of Professional Software Development
by Scott L. Bain
Buzz About the Book
Related Courses at Net ObjectivesOnline RepositoryAppendix B of the book provided the starting information for this repository, but it will continue to grow and change as readers, students, and other developers join and add their views. It is free for your use, and only requires registration (which is also free) if you wish to contribute.Yahoo! Tech GroupFor questions and comments regarding the book, or any of the concepts surrounding agile software development techniques. | |
Table of Contents
00 - Introduction
01 - Software as a Profession (sample available here)
02 - Out of the Closet - Patterns and Professionalism in Software Development
03 - The Nature of Software Development (sample available here)
04 - Evolution in Code Stage 1
05 - Introduction to Patterns
06 - Building a Pyramid
07 - Paying Attention to Qualities and Pathologies
08 - Paying Attention to Principles and Wisdom
09 - Paying Attention to Practices
10 - Paying Attention to Disciplines - Unit Testing
11 - Paying Attention to Disciplines - Refactoring
12 - Test-Driven Development
13 - Patterns and Forces
14 - Emergent Design, a Case Study
15 - A Conclusion: 2020
Appendix A - Evolutionary Paths
Appendix B - Overview of Patterns Used in the Examples
Appendix C - The Principle of the Useful Illusion
Appendix D - For Further Reading
Errata:
| Page | Issue |
| 64 | Figure 4.3 - The "uses" arrow between "LocalStatusSender" and "PagingStatusSender" should not be there |
| 116 | Paragraph 8, final sentence says "drifted back to the right" when it should say "drifted back to the left" |
| 208 | Second Code Example, third line from the end, MockDAO should be mockDAO |
| 230 | The "printReportLines" method and "calculateAverage" method should both take "ArrayList clines" as a parameter |
| 249 | Figure 12.7, case B - Third circle should say DecB rather than DecA appearing twice |
| 285 | Final paragraph, second sentence, "mange" should be "manage" |
| 286 | All references to "Card" or "Cards" should be "Chip" or "Chips" |
| 323 | Figure B.12 - the first Handler should be "Handler1" rather than "Handler2" appearing twice |
| 326 | Figure B.12 - the Handlers should not have void return type |