Skip to main content Skip to main navigation
  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