text.skipToContent text.skipToNavigation
  1. Home
  2. Computer Science & IT
  3. Intermediate / Advanced Programming
  4. Object Oriented Design
  5. Agile Software Development, Principles, Patterns, and Practices

Agile Software Development, Principles, Patterns, and Practices, 1st edition

  • Robert C. Martin

Published by Pearson (October 15th 2002) - Copyright © 2003

1st edition

Unfortunately, this item is not available in your country.

Overview

Best selling author and world-renowned software development expert Robert C. Martin shows how to solve the most challenging problems facing software developers, project managers, and software project leaders today.

  • This comprehensive, pragmatic tutorial on Agile Development and eXtreme programming, written by one of the founding father of Agile Development:
  • Teaches software developers and project managers how to get projects done on time, and on budget using the power of Agile Development.
  • Uses real-world case studies to show how to of plan, test, refactor, and pair program using eXtreme programming.
  • Contains a wealth of reusable C++ and Java code.
  • Focuses on solving customer oriented systems problems using UML and Design Patterns.

Robert C. Martin is President of Object Mentor Inc. Martin and his team of software consultants use Object-Oriented Design, Patterns, UML, Agile Methodologies, and eXtreme Programming with worldwide clients. He is the author of the best-selling book Designing Object-Oriented C++ Applications Using the Booch Method (Prentice Hall, 1995), Chief Editor of, Pattern Languages of Program Design 3 (Addison Wesley, 1997), Editor of, More C++ Gems (Cambridge, 1999), and co-author of XP in Practice, with James Newkirk (Addison-Wesley, 2001). He was Editor in Chief of the C++ Report from 1996 to 1999. He is a featured speaker at international conferences and trade shows.

Table of contents

I. AGILE DEVELOPMENT.

 1. Agile Practices.

 2. Overview of Extreme Programming.

 3. Planning.

 4. Testing.

 5. Refactoring.

 6. A Programming Episode.

II. AGILE DESIGN.

 7. What Is Agile Design?

 8. SRP: The Single-Responsibility Principle.

 9. OCP: The Open-Closed Principle.

10. LSP: The Liskov Substitution Principle.

11. DIP: The Dependency-Inversion Principle.

12. ISP: The Interface-Segregation Principle.

III. THE PAYROLL CASE STUDY.

13. Command and Active Object.

14. Template Method & Strategy: Inheritance vs. Delegation.

15. Facade and Mediator.

16. Singleton and Monostate.

17. Null Object.

18. The Payroll Case Study: Iteration One Begins.

19. The Payroll Case Study: Implementation.

IV. PACKAGING THE PAYROLL SYSTEM.

20. Principles of Package Design.

21. Factory.

22. The Payroll Case Study (Part 2).

V. THE WEATHER STATION CASE STUDY.

23. Composite.

24. Observer—Backing into a Pattern.

25. Abstract Server, Adapter, and Bridge.

26. Proxy and Stairway to Heaven: Managing Third Party APIs.

27. Case Study: Weather Station.

VI. THE ETS CASE STUDY.

28. Visitor.

29. State.

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.

Appendix D. The Source Code Is the Design.

Index.

For teachers

All the material you need to teach your courses.

Discover teaching material