Lean Architecture: for Agile Software Development Paperback – 13 Jul 2010
|New from||Used from|
- Choose from over 13,000 locations across the UK
- Prime members get unlimited deliveries at no additional cost
- Find your preferred location and add it to your address book
- Dispatch to this address when you check out
Frequently bought together
Customers who viewed this item also viewed
Enter your mobile number or email address below and we'll send you a link to download the free Kindle App. Then you can start reading Kindle books on your smartphone, tablet, or computer - no Kindle device required.
To get the free app, enter your mobile phone number.
Would you like to tell us about a lower price?
If you are a seller for this product, would you like to suggest updates through seller support?
′...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.See all Product description
Customers who bought this item also bought
Showing 1-6 of 15 reviews
There was a problem filtering reviews right now. Please try again later.
I've watched time and time again how business's fail to understand the core principles of lean/agile methodologies, especially architecture. The industry is rife with incompetence that worships short-term gain and long-term pain!
Too many managers/projects have thrown the baby out with the bathwater in order to introduce 'agile/lean' practices. I've only skimmed the contents at this stage and it is a testimony to the pearls-of-wisdom contained in this book that it can quickly be observed that this book addresses the balance! How many more projects (and ultimately companies/industries) must we sideline because of incompetent management decisions/practices. Come on IT, get with the 'program'!!!!
At first the book takes mostly academic stance. Authors go to great lengths to show the convergence of Lean and Agile ideas in a way that Lean enables Agile, and Agile without lean is wasteful and generally painful exercise. The architecture is seen as an enabling factor for low-waste development. The purpose of it is to separate and isolate slowly changing parts of a system (what-the-system-is -- domain, which is unlikely to change fast) from quickly evolving ones (what-the-system-does -- ever-changing business scenarios). The idea is definitively not new, but this is the first book where it got some convincing theoretic underpinnings.
Other pillar, which is reflecting end users' mental model of the domain in the code in order to enable adequate degrees of freedom, is introduced in middle chapters. Authors are convinced, nothing more Agile than proper requirements capturing. Their the technique of choice Use Case Analysis is argued to be the most natural yet flexible option.
Endgame is quite dynamic. Authors present an advanced architectural style of MVC family called DCI (Data, Context and Interaction). The essence of the style is an approach to laying out the code so it to a maximum degree reflects the mental model of end users, which is captured in the form of use cases. As far as I know this is the first book on DCI, so if you -- like me -- prefer reading books to learn about big new things, this is the way to go. Code examples are in abundance.
Few notes on the style. The text sometimes gets dense and very hard to get through. Reading first chapters require discipline and persistence, though if you managed to get through university, it shouldn't be a problem anyway. On a brighter side, once you cope with the first part, the narrative becomes surprisingly exciting and rich in ideas. Don't try skipping though, first chapters are essential for understanding the message.
As a summary, this is quite a advanced book on software architecture. I dare to say that it may be immediately usable for majority of software architects, but even if not, there are still plenty of food for thought. Moreover, I'd recommend reading it to anyone in software industry as it provides a solid background for understanding how to develop applications and systems with less waste.
(This review was originally posted on Enterprise Systems Engineering blog -- see profile for URL)
Some people might say it is too "academic" in style but honestly, being "academic" is not an excuse for being so hard to read. If "academic" means "unreadable" then I'm glad I'm not in academia.
I don't think this is too "academic", it's just badly written. Software writing needs more genuine academic rigour, but that's not what this book is. It's just badly communicated ideas.
If you like academia, and think software architecture is about abstract base classes... buy this book. Personally I want those hours back.
Would you like to see more reviews about this item?