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: $21.42 (43%)
Rented from RentU
To Rent, select Shipping State from options above
Due Date: Dec 20, 2014
FREE return shipping at the end of the semester. Access codes and supplements are not guaranteed with rentals.
Qty:1
  • List Price: $50.00
  • Save: $7.58 (15%)
Only 11 left in stock (more on the way).
Ships from and sold by Amazon.com.
Gift-wrap available.
Lean Architecture: for Ag... has been added to your Cart
Trade in your item
Get a $12.63
Gift Card.
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: $42.42
Rent
Price: $28.58
40 New from $28.85 17 Used from $25.16
Amazon Price New from Used from
Kindle
"Please retry"
Paperback
"Please retry"
$42.42
$28.85 $25.16
Free%20Two-Day%20Shipping%20for%20College%20Students%20with%20Amazon%20Student


Frequently Bought Together

Lean Architecture: for Agile Software Development + Documenting Software Architectures: Views and Beyond (2nd Edition) + Software Architecture in Practice (3rd Edition) (SEI Series in Software Engineering)
Price for all three: $156.55

Buy the selected items together

NO_CONTENT_IN_FEATURE

Shop the New Digital Design Bookstore
Check out the Digital Design Bookstore, a new hub for photographers, art directors, illustrators, web developers, and other creative individuals to find highly rated and highly relevant career resources. Shop books on web development and graphic design, or check out blog posts by authors and thought-leaders in the design 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: 9.1 x 7.5 x 0.8 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: #121,497 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

4.3 out of 5 stars
5 star
9
4 star
3
3 star
1
2 star
2
1 star
0
See all 15 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

16 of 20 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
3 of 3 people found the following review helpful By Stefan on October 19, 2011
Format: Paperback
This book is an important contribution in its field. It is interesting, relevant and quite different. Not your typical software architecture book talking about connectors and components and the many classification of the possible combinations between the two. I warmly recommend the material as a fresh, original perspective on software architecture, use cases, requirements, coding. Not convincing enough for a four stars review? this is because I dislike the imperative cliché : "a must read" and also because I realized there is no "silver bullet" architecture book. I like the fact that Agile shows in a "normal" light, not that different from any common sense architecture where waste is not welcome, especially in documentation. Software has the unique feature of documenting itself, why try to duplicate that? In fact "Dispelling agile myths" is the title of a chapter.
It is refreshing to be reminded that OO is not only about subclassing and polymorphism, but one of its initial intent was having same mental (OO) model with your business partners.

I can see how it might not satisfy the most pragmatic programmers (and yes I am aware of the apparent contradiction: "lean and agile are for pragmatic developers!") Ample references are made to a topic carried on from an earlier book: Organizational Patterns, which is basically software architecture reflected in people interactions. Many techniques, habits, narratives, analogies or rules of thumb contribute to the originality of the material and the definition of the elusive features of software architecture.
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