Lean Architecture: for Agile Software Development

More and more Agile projects are seeking architectural roots as they struggle with complexity and scale - and they're seeking lightweight ways to do it Still seeking? In this bookthe authorshelp you to find your own path Taking cues from Lean development,they can help steer your project toward practices with longstanding track records Up-front architecture? Sure. You can deliver an architecture as code that compiles and that concretely guides development without bogging it down in a mass of documents and guesses about the implementation Documentation? Even a whiteboard diagram, or a CRC card, is documentation: the goal isn't to avoid documentation, but to document just the right things in just the right amount Process? This all works within the frameworks of Scrum, XP, and other Agile approaches

[1]  Glenford J. Myers,et al.  Structured Design , 1974, IBM Syst. J..

[2]  Alistair Cockburn,et al.  Patterns for Effective Use Cases , 2002 .

[3]  B. Randell,et al.  Software Engineering Techniques: Report of a conference sponsored by the NATO Science Committee, Rome, Italy, 27-31 Oct. 1969, Brussels, Scientific Affairs Division, NATO , 1970 .

[4]  Trygve Reenskaug,et al.  The Model-View-Controller (MVC) Its Past and Present , 2003 .

[5]  Harvey Ellis,et al.  after , 1998, The Lancet.

[6]  Mike Cohn,et al.  Succeeding with Agile: Software Development Using Scrum , 2009 .

[7]  Dan R. Olsen,et al.  Developing user interfaces , 1998 .

[8]  Robert C. Martin Clean Code - a Handbook of Agile Software Craftsmanship , 2008 .

[9]  S. Brand THE CLOCK OF THE LONG NOW , 1999 .

[10]  Ivar Jacobson,et al.  Object Design: Roles, Responsibilities, and Collaborations , 2002 .

[11]  Mike Cohn,et al.  User Stories Applied: For Agile Software Development , 2004 .

[12]  Jon Trinder,et al.  The Humane Interface: New Directions for Designing Interactive Systems , 2002, Interact. Learn. Environ..

[13]  Elizabeth J. Davidson Joint application design (JAD) in practice , 1999, J. Syst. Softw..

[14]  Bertrand Meyer,et al.  Object-Oriented Software Construction, 2nd Edition , 1997 .

[15]  W. R. Howard Lean – Agile Software Development: Achieving Enterprise Agility , 2010 .

[16]  Mary Poppendieck,et al.  Implementing Lean Software Development: From Concept to Cash (The Addison-Wesley Signature Series) , 2006 .

[17]  Andrew N. Baldwin,et al.  Analytical design planning technique (ADePT): a dependency structure matrix tool to schedule the building design process , 2000 .

[18]  James Milne Neighbors,et al.  Software construction using components , 1980 .

[19]  P. Cochat,et al.  Et al , 2008, Archives de pediatrie : organe officiel de la Societe francaise de pediatrie.

[20]  Pekka Abrahamsson,et al.  Does Test-Driven Development Improve the Program Code? Alarming Results from a Comparative Case Study , 2008, CEE-SET.

[21]  Alan C. Kay A Personal Computer for Children of All Ages , 1972, ACM Annual Conference.

[22]  Kristen Nygaard,et al.  SIMULA: an ALGOL-based simulation language , 1966, CACM.

[23]  Kent Beck Kent Beck's Guide to Better Smalltalk: THINK LIKE AN OBJECT , 1997 .

[24]  Ken Auer,et al.  Extreme Programming Applied: Playing to Win , 2001 .

[25]  Oscar Nierstrasz,et al.  Traits: Composable Units of Behaviour , 2002, ECOOP.

[26]  Evans,et al.  Domain-driven design , 2003 .

[27]  Xiaoqing Wen,et al.  VLSI Test Principles and Architectures: Design for Testability (Systems on Silicon) , 2006 .

[28]  Kent Beck,et al.  Test-infected: programmers love writing tests , 2000 .

[29]  Kent L. Beck,et al.  Test-driven Development - by example , 2002, The Addison-Wesley signature series.

[30]  Martin Odersky,et al.  Programming in Scala: A Comprehensive Step-by-Step Guide, 2nd Edition , 2010 .

[31]  David A. Moon,et al.  Object-oriented programming with flavors , 1986, OOPLSA '86.

[32]  Kent L. Beck,et al.  Extreme programming explained - embrace change , 1990 .

[33]  Samuel Smiles,et al.  ...Self-help ; with illustrations of character, conduct, and perseverance , 1881 .

[34]  Angela Martin Exploring the XP Customer Role - Part II , 2004, XP.

[35]  Daniel Roos,et al.  The machine that changed the world : the story of lean production , 1991 .

[36]  Michael Kirchner,et al.  面向模式的软件体系结构. 卷3, 设计系列 = Pattern-oriented software architecture. Volume 3, Patterns for resource management , 2004 .

[37]  S. Hart New Product Development , 1995 .

[38]  Daniel R. Greening Enterprise Scrum: Scaling Scrum to the Executive Level , 2010, 2010 43rd Hawaii International Conference on System Sciences.

[39]  Carl Bedingfield A pattern language for web usability , 2003, UBIQ.

[40]  Mira Mezini,et al.  Pi: a Pattern Language , 2009, OOPSLA.

[41]  M. E. Conway HOW DO COMMITTEES INVENT , 1967 .

[42]  G. G. Stokes "J." , 1890, The New Yale Book of Quotations.

[43]  James Noble,et al.  Small memory software - patterns for systems with limited memory , 2000 .

[44]  Norman L. Kerth,et al.  Project Retrospectives: A Handbook for Team Reviews , 2001 .

[45]  Barbara Liskov,et al.  Data Abstraction and Hierarchy , 1987 .

[46]  Peter Sommerlad,et al.  Pattern-Oriented Software Architecture Volume 1: A System of Patterns , 1996 .

[47]  Barry W. Boehm,et al.  Software Engineering Economics , 1993, IEEE Transactions on Software Engineering.

[48]  Daniel Hoffman,et al.  Commonality and Variability in Software Engineering , 1998, IEEE Softw..

[49]  Linda M. Northrop,et al.  Quantifying Product Line Benefits , 2001, PFE.

[50]  Larry L. Constantine,et al.  Software for Use - A Practical Guide to the Models and Methods of Usage-Centered Design , 1999 .

[51]  E. Burton Swanson,et al.  Characteristics of application software maintenance , 1978, CACM.

[52]  Karen Holtzblatt,et al.  Contextual design , 1997, INTR.

[53]  Christopher Alexander,et al.  The Timeless Way of Building , 1979 .

[54]  D. Snowden,et al.  A leader's framework for decision making , 2007 .

[55]  Paul Barry,et al.  Patterns, Patterns and More Patterns , 2005 .

[56]  J. M. Neighbors,et al.  Draco: a method for engineering reusable software systems , 1989 .

[57]  Kent L. Beck,et al.  Test Driven Development (TDD) , 2003, XP.

[58]  A. Meyers Reading , 1999, Language Teaching.

[59]  Philippe Kruchten,et al.  The Software Architect -and the Software Architecture Team , 1999 .

[60]  I. G. BONNER CLAPPISON Editor , 1960, The Electric Power Engineering Handbook - Five Volume Set.

[61]  Gertrud Bjornvig Patterns for the Role of Use Cases , 2003, EuroPLoP.

[62]  Douglas C. Schmidt,et al.  A pattern language for distributed computing , 2007 .

[63]  Karl Lieberherr,et al.  Adaptive Object-Oriented Software: The Demeter Method with Propagation Patterns , 1995 .

[64]  Marion Boyer,et al.  The Clock of the Long Now , 2009 .

[65]  Terence Parr The Definitive ANTLR Reference: Building Domain-Specific Languages , 2007 .

[66]  David Lorge Parnas,et al.  Review of David L. Parnas' "Designing Software for Ease of Extension and Contraction" , 2004 .

[67]  Steve Vinoski,et al.  Advanced CORBA® Programming with C++ , 1999 .

[68]  Glenn Ballard,et al.  Positive Vs. Negative Iteration in Design , 2000 .

[69]  Frank Buschmann,et al.  Pattern-Oriented Software Architecture, a Pattern Language for Distributed Computing , 2007 .

[70]  Robert L. Glass,et al.  The Standish report: does it really describe a software crisis? , 2006, CACM.

[71]  Thomas J. Allen,et al.  The organization and architecture of innovation : managing the flow of technology , 2007 .

[72]  Dave Astels,et al.  The RSpec Book: Behaviour Driven Development with RSpec, Cucumber, and Friends , 2010 .

[73]  Witold Rybczynski,et al.  The Most Beautiful House in the World , 1989 .

[74]  Mordechai Ben-Menachem,et al.  Writing effective use cases , 2001, SOEN.

[75]  Robert Hanmer,et al.  Patterns for Fault Tolerant Software , 2007 .

[76]  A. Wierdsma,et al.  Becoming a learning organization : beyond the learning curve , 1992 .

[77]  Ruben Rivas Architecture as a metaphor , 1998 .

[78]  Ron Jeffries,et al.  Extreme Programming Installed , 2000 .

[79]  David S. Janzen,et al.  Does Test-Driven Development Really Improve Software Design Quality? , 2008, IEEE Software.

[80]  Richard P. Gabriel,et al.  Patterns of Software: Tales from the Software Community , 1996 .

[81]  Krzysztof Czarnecki,et al.  Generative Programming: Methods, Techniques, and Applications , 2002, ICSR.

[82]  James Coplien,et al.  Advanced C++ Programming Styles and Idioms , 1991, Proceedings. Technology of Object-Oriented Languages and Systems, TOOLS 25 (Cat. No.97TB100239).

[83]  Ivar Jacobson,et al.  Object-oriented software engineering - a use case driven approach , 1993, TOOLS.

[84]  Gary Mak Spring Recipes: A Problem-Solution Approach , 2008 .

[85]  Trygve Reenskaug,et al.  Working with objects - the OOram software engineering method , 1995 .

[86]  Henry Lieberman,et al.  A Shared View of Sharing: The Treaty of Orlando , 1988, Object-Oriented Concepts, Databases, and Applications.

[87]  James O. Coplien,et al.  Curiously recurring template patterns , 1995 .

[88]  James O. Coplien,et al.  Multi-paradigm design for C++ , 1998 .

[89]  Steven A. Demurjian,et al.  Analyzing and measuring reusability in object-oriented design , 1997, OOPSLA '97.

[90]  Ralph Johnson,et al.  design patterns elements of reusable object oriented software , 2019 .

[91]  J. Liker The Toyota Way , 2003 .

[92]  Brenda Laurel,et al.  Computers as theatre , 1991 .