Programming Books C Java PHP Python Learn more Browse Programming Books
Lean Architecture: for Agile Software Development and over one million other books are available for Amazon Kindle. Learn more
  • List Price: $50.00
  • Save: $31.69 (63%)
Rented from RentU
To Rent, select Shipping State from options above
Due Date: May 28, 2015
FREE return shipping at the end of the semester. Access codes and supplements are not guaranteed with rentals.
FREE Shipping on orders over $35.
Used: Good | Details
Sold by RentU
Condition: Used: Good
Comment: Fast shipping from Amazon! Qualifies for Prime Shipping and FREE standard shipping for orders over $35. Overnight, 2 day and International shipping available! Excellent Customer Service.. May not include supplements such as CD, access code or DVD.
Access codes and supplements are not guaranteed with used items.
Qty:1
  • List Price: $50.00
  • Save: $9.06 (18%)
In Stock.
Ships from and sold by Amazon.com.
Gift-wrap available.
Sell yours for a Gift Card
We'll buy it for $11.95
Learn More
Trade in now
Have one to sell? Sell on Amazon
Flip to back Flip to front
Listen Playing... Paused   You're listening to a sample of the Audible audio edition.
Learn more
See all 2 images

Lean Architecture: for Agile Software Development Paperback – July 26, 2010

ISBN-13: 978-0470684207 ISBN-10: 0470684208 Edition: 1st

Buy New
Price: $40.94
Rent
Price: $18.31
34 New from $26.42 17 Used from $22.91
Rent from Amazon Price New from Used from
Kindle
"Please retry"
Paperback
"Please retry"
$18.31
$40.94
$26.42 $22.91
Free Two-Day Shipping for College Students with Amazon Student Free%20Two-Day%20Shipping%20for%20College%20Students%20with%20Amazon%20Student


Frequently Bought Together

Lean Architecture: for Agile Software Development + Just Enough Software Architecture: A Risk-Driven Approach + Documenting Software Architectures: Views and Beyond (2nd Edition)
Price for all three: $142.37

Buy the selected items together
NO_CONTENT_IN_FEATURE

Shop the new tech.book(store)
New! Introducing the tech.book(store), a hub for Software Developers and Architects, Networking Administrators, TPMs, and other technology professionals to find highly-rated and highly-relevant career resources. Shop books on programming and big data, or read this week's blog posts by authors and thought-leaders in the tech industry. > Shop now

Product Details

  • Paperback: 376 pages
  • Publisher: Wiley; 1 edition (July 26, 2010)
  • Language: English
  • ISBN-10: 0470684208
  • ISBN-13: 978-0470684207
  • Product Dimensions: 7.4 x 0.7 x 9.2 inches
  • Shipping Weight: 1.7 pounds (View shipping rates and policies)
  • Average Customer Review: 4.3 out of 5 stars  See all reviews (15 customer reviews)
  • Amazon Best Sellers Rank: #62,043 in Books (See Top 100 in Books)

Editorial Reviews

Review

'...a book of advice that is broad, enabling, and concrete.' (Lean Magazine, January 2010).

From the Back Cover

It's time for change - after 30 years, DCI has risen to complete the vision of object-oriented programming!

Aiming at no less than a paradigm shift, Lean Architecture uses a modern approach to software design, while embracing refreshing new insights of Lean and Agile. Giving a down-to-earth view of Agile requirements and the often-ignored relationship between requirements and architecture, this book goes beyond the fashionable idea of User Stories, and shows you how to employ Use Cases in a lightweight, incremental, Agile way. The authors detail the DCI (Data, Context and Interaction) architecture paradigm and show how DCI succeeds where object-oriented programming languages alone have failed to integrate software design with the end user's understanding of the overall business structure.

However, this is not a methodology book, but a book which focuses on code, with plenty of code examples. Topics covered include: Agile production, Stakeholder Engagement, Organizational issues, Scala/Python/Java implementation of the DCI account example, Qi4J and much more.

Renowned software architecture expert James Coplien and agile requirements expert Gertrud Bjørnvig share their expertise to give you concrete design advice that will help you:

  • Create software that builds on your end-user mental models rather than design methodologies
  • Write software that can directly be verified against behavioral requirements
  • Organize - so that all your stakeholders support each other
  • Support rapidly changing feature code in stable domain code to help embrace change

Lean Architecture casts a new light over important aspects of software development that have been marginalized or forgotten by the agile movement – it will help you find your own path.


More About the Author

Jim ("Cope") Coplien is a speaker and author whose works range from programming and architecture to ethnography and organizational design. He is a founder of the Software Pattern discipline and of organizational patterns, which in turn were one of the foundations of Scrum. Though he writes for a technical audience, his works focus on the human element of product development. His latest work, "Lean Architecture" is as much about how architecture helps make software usable, as it is about software maintainability on the technical side.

Cope lives near Helsingør, Denmark, with his wife and son.

Customer Reviews

This is neither a beginner's "how to do it in ten easy lessons" nor is it a design method.
Trygve Reenskaug
If you are using Lean, Scrum, XP or any of the other agile approaches in any of the roles in the process, this is the book for you.
Bojan Jovicic
Their the technique of choice Use Case Analysis is argued to be the most natural yet flexible option.
Igor Lobanov

Most Helpful Customer Reviews

17 of 21 people found the following review helpful By Trygve Reenskaug on August 17, 2010
Format: Paperback
This is a different book. Where most books expound a single theme such as Agile, Lean, or Scrum, "Lean Architecture for Agile Software Development" paints on a much broader canvas: Working with the end user, end user's mental model, user requirements, system architecture, and right down to actual code.

This is neither a beginner's "how to do it in ten easy lessons" nor is it a design method. It is a book written for the mature professional by two authors whose long experience has given them a deep understanding of what really matters in practical programming.

At a first glance, many methodologies appear as mere fads, but Coplien and Bjørnvig see through the fads and build on their real worth to create a thought-provoking and eminently practical book.

Three random jottings from my first reading:

* Architecture: "No matter how we care to define it, software architecture should support the enterprise value stream even to the extent that the source code itself should reflect the end user's mental model of the world."

* Lean secret: "...unite specialists together in one room: everybody, all together, from early on."

* Form and functionality: "System architecture should reflect the end user's mental model of the world. The model has two parts: The first part relates to the user's thought process when viewing the screen, and to what the system is: its form. The second part relates to what end users do - interacting with the system - and how the system should respond to user input. This is the system functionality. We work with users to elicit and develop these models and to capture them in code as early as possible.
Read more ›
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again
11 of 14 people found the following review helpful By Steve Berczuk VINE VOICE on September 6, 2010
Format: Paperback
When I was a C++ programmer in the early 90's Coplien's Advanced C++ Programming Styles and Idioms was a source of interview material when looking for programmers. It's a good bet that this book may fill the same role for those looking to see if candidates for architect roles understand what it means to be an architect in a Lean or Agile Organization. This book dispels the myth that Agile and Architecture don't go together and explains the balance between Agile architecture and too much Big Up Front Design. This book emphasizes the importance of frequent collaboration between stakeholders in defining a good architecture and helps you to understand the importance of architecture to the success of agile projects. With code examples throughout, this book emphasizes that architecture and coding must go together. After describing some general principles of how architecture can add value to an agile project, the authors explain the Data Context, Interaction (DCI) architecture, which provides an framework for building lean architectures. My one minor complaint is that the transition between the general discussions of lean architecture and the focused discussion of DCI was a bit abrupt. But this was a minor distraction from an enjoyable and informative read. Rich with citations, places to go for more information, and historical context, this book will be useful for anyone who is struggling with how to build systems that need to support complicated user interactions (which could describe most non-trivial systems).
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again
8 of 10 people found the following review helpful By Marc Grue on November 3, 2010
Format: Paperback
This first book covering the new DCI paradigm of programming is a must read for anyone interested in separating the more often changing behavioral parts of code related to use cases from the more slowly evolving structural parts of domain data.

A great practical description of how the use case evolves and translates directly into code, of how to reflect the end users mental model in code - making it much more readable for both programmers and domain experts. It goes into detail about how use case roles translates to Object Roles playing out their part of a use case algorithm and how they get injected into the domain objects to use their state. And we are presented with how the Context can set up the mapping of Roles to domain Objects in different flexible ways before firing off the trigger Interaction of the use case.

Apart from example code in C++ and Ruby through out the last chapters of the book, it also have a great appendix with coded DCI examples in Scala, Python, C#, Ruby and Squeak.

For anyone interested I can also recommend visiting the Google "object-composition" group where all the concepts are discussed and explored.
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again
5 of 6 people found the following review helpful By T. Anderson TOP 1000 REVIEWERVINE VOICE on January 25, 2011
Format: Paperback Verified Purchase
I have the greatest respect for this author for the contributions he has made to the software development industry. This is a very good book to read to get his view of software development.

This book is a great read if you are an experienced developer. I do not recommend it to people new to the software development industry.

Do not pick this book up and think you are going to learn how to do software architecture. Personally I would have named the book "Thoughts on Lean". I found the book very interesting and found it to contain a lot of great advice, but it does not paint the complete picture of how to accomplish solid software architecture.

I like the DCI coverage, but would only use it if it can be documented better than what is shown in the book. Code is not enough documentation for me.

Personally I will apply the techniques in this book to modular level design and development. Over the years I have found that to be the place agile and lean development practices belong, not at the architecture level. Their programming techniques help to achieve a very modifiable architecture, which to me is the most import quality attribute you should strive for on any project of decent size.

Although my review comes off as a bit negative, the negativity is not a reflection of the quality of this book's wisdom. It is my personal bias against what the agile movement has done to the environments I am constantly finding myself cleaning up. Agile is perceived all to often as the easy road, when in fact it is a road only for the highly experienced and a select few.

All in all I recommend reading this book if you want to broaden your horizon. The personal insight the author provides into building software is worth the time.
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again

Most Recent Customer Reviews


What Other Items Do Customers Buy After Viewing This Item?