does agile enterprise architecture = agile + enterprise architecture?
Post on 04-Jul-2015
Embed Size (px)
DESCRIPTIONDoes Agile EA Equal Agile Plus EA? Confusion over the word “agile” is actually one of the challenges with Enterprise Architecture (EA) today. So, what does "agile" -- or in some quarters, "Agile" -- mean today, and how do we apply Agile to architecture? Most people use the phrase "Agile Architecture" to refer to software architecture appropriate for Agile software development projects -- not EA at all. Nevertheless, there is a growing Agile EA movement that extends the core principles of the Agile manifesto to EA more broadly. This approach deemphasizes the role of frameworks and other artifacts, and instead treats the enterprise as a complex adaptive system. Agile EA thus leverages complex systems theory, including the role of emergent properties, to rethink how organizations innovate and otherwise deal with change within the context of market and regulatory constraints. Attendees of this session will: * Gain clear differentiators between Agile software architecture and Agile EA * Understand the role of complex systems theory to the practice of Agile EA * Learn how Bloomberg Agile Architecture(tm) can support organizations' agility requirements in the future
- 1. Copyright 2014, Intellyx, LLC1Does Agile EA =Agile + EA?Jason BloombergPresidentjason@intellyx.com@theebizwizard
2. About Jason Bloomberg President of Intellyx Advise companies on their digitaltransformation initiatives & help vendorscommunicate their agility stories Write for Forbes, Wired, &DevX on Digital Transformation Buy my latest book,The Agile ArchitectureRevolutionCopyright 2 2014, Intellyx, LLC 3. The Agile ManifestoManifesto for Agile Software DevelopmentWe are uncovering better ways of developingsoftware by doing it and helping others do it.Through this work we have come to value: Individuals and interactions over processesand tools Working software over comprehensivedocumentation Customer collaboration over contractnegotiation Responding to change over following a planThat is, while there is value in the items onthe right, we value the items on the left more.Copyright 3 2014, Intellyx, LLCSource: http://www.agilemanifesto.org 4. Context: SoftwareDevelopment Focus on small teamsthat crank out code Iterative, self-organizing,collaborative Focus on creatingworking softwareWell-run Agile development meansproducing a lot of good softwarequicklyCopyright 4 2014, Intellyx, LLCPhoto Credit: Phil Whitehouse https://www.flickr.com/photos/philliecasablanca/2473728872/sizes/l 5. What about Architectureon Agile Projects? We dont need no stinkinarchitecture! Architecture lumped in withdocumentation (less is more) Architects slow downdevelopers Architects produce artifactsthat arent Agile Lead to extra workCopyright 5 2014, Intellyx, LLCPhoto Credit: Yortw https://www.flickr.com/photos/yortw/5470226807/sizes/lWidespread belief that Agile andArchitecture dont mix 6. But we Do NeedArchitecture! Software architecture Appropriatemodularization ofcode Selection ofappropriatecomponents & libraries Integration strategy Systems architecture Scalability of distributed application Cloud deployment issues Availability, caching, etc.Copyright 6 2014, Intellyx, LLC 7. Create Minimum ViableArchitecture All documentation,artifacts, diagrams,etc. are means to anend Dont architect morethan thestakeholders want Problems: Shortsighted Leads to legacyissues Limits agilityCopyright 7 2014, Intellyx, LLCPhoto Credit: Camera Eye Photography https://www.flickr.com/photos/camera_is_a_mirror_with_memory/6628934195/sizes/l 8. Defer Commitment onDesign Decisions Traditional architecturecompleted beforedevelopment On Agile projects,tentative architecturegood enough Commit to designdecisions in appropriateiteration/sprintCopyright 8 2014, Intellyx, LLCPhoto Credit: Wade Rockett https://www.flickr.com/photos/waderockett/2947370316/sizes/o/ 9. The Overbuilding Paradox How do stakeholders knowwhat flexibility they willrequire? How generalized shouldcode be? When to build capabilitiesvs. when to buildaffordances?Copyright 9 2014, Intellyx, LLCPhoto Credit: Ishikawa Ken https://www.flickr.com/photos/chidorian/19898378/sizes/l 10. Capabilities vs.Affordances Capability Ability to perform orachieve certainoutcomes throughfeatures or functions Apps have capabilities Affordance A property of an object which allows an individualto perform an action Tools have affordances Depends upon how user wants to use toolCopyright 10 2014, Intellyx, LLCPhoto Credit: EraPhernalia Vintage https://www.flickr.com/photos/eraphernalia_vintage/3034341310/sizes/o/ 11. Why Agile SoftwareArchitecture isnt Agile Agile movement focuses on working software Focus on getting the software to meet itsrequirements Get all roadblocks out of the way Agile-built software is coded to be fit for purposeCopyright 11 2014, Intellyx, LLCPhoto Credit: B4bees https://www.flickr.com/photos/brizo_the_scot/4013939756/sizes/l 12. Instant Legacy Difficult to upgrade Systems areinflexible Impossible toreplace Difficult tocustomize Challenge tointegrate Expensive over timeCopyright 12 2014, Intellyx, LLCPhoto Credit: LHOON https://www.flickr.com/photos/lhoon/2288339151/sizes/l 13. The Goal of AgileSoftware Requirement to build software that responds tochanging requirements Inherent flexibility vs. rapid development &deploymentCopyright 13 2014, Intellyx, LLCPhoto Credit: Robert Couse-Baker https://www.flickr.com/photos/29233640@N07/14859431605/sizes/z/ 14. Scaling Agile for theEnterprise EnterpriseArchitecture context Organization,process, technology,and information Legacy context Existing applications,middleware, systems of record Business focused, iterative, get stuffto work, iconoclasticCopyright 14 2014, Intellyx, LLCPhoto Credit: Boston Public Library https://www.flickr.com/photos/boston_public_library/8962106164/sizes/l 15. Different Meanings ofAgile Agile-with-a-capital-A Software development thatfollows the Agile Manifesto General meaning of agile Business agility as propertyof an organizationCopyright 15 2014, Intellyx, LLCPhoto Credit: Earl McGehee https://www.flickr.com/photos/ejmc/10653135183/sizes/l 16. Business Agility Responsiveness Tactical value Resilience Risk mitigation Innovativeness Strategic valueCopyright 16 2014, Intellyx, LLCPhoto Credit: Masonite Burn https://www.flickr.com/photos/masonite-burn/6273626739/sizes/lAbility to respond to change in thebusiness environment and leveragechange for competitive advantage 17. Responsiveness The ability to respondquickly and efficiently to(potentially) positive changein the business environment Changing customer demand Changing marketplaceenvironment Changing supply chainfactors Tactical driverCopyright 17 2014, Intellyx, LLCPhoto Credit: Good Eye Might https://www.flickr.com/photos/brittanyg/1796000993/sizes/l 18. Resilience The ability to respondquickly and efficiently tonegative change in thebusiness environment Managing risk Bouncing back fromadverse events Disaster recovery Security breach response Regulatory changeresponse Tactical driverCopyright 18 2014, Intellyx, LLCPhoto Credit: Joe https://www.flickr.com/photos/bitshaker/167480266/sizes/o/ 19. Innovativeness The ability to introduce change into the businessenvironment in order to achieve a strategicadvantage New products or services Expand market share Enter new marketsCopyright 19 2014, Intellyx, LLCPhoto Credit: Kay Kim https://www.flickr.com/photos/kaykim/3883340152/sizes/o/ 20. Wheres Our BusinessAgility? Organizations must be responsive, resilient, andinnovative Business agility is a property of the enterprise People and technology can be flexible as well,but we must architect our organizations to beagileCopyright 20 2014, Intellyx, LLCPhoto Credit: Stuart Berwick https://www.flickr.com/photos/lapleader/793507962/sizes/l 21. Introducing ComplexAdaptive Systems Systems of systemsthat exhibit emergentproperties Properties of systemas a whole Component systemscan be human,technology, etc. Self-organizingCopyright 21 2014, Intellyx, LLCPhoto Credit: DirectDish https://www.flickr.com/photos/13800911@N08/3557789021/sizes/l 22. Enterprise as ComplexAdaptive System Business agility isproperty of organizationas a whole, hence anemergent propertyof the organization Enterprise is system ofsystems that exhibitsemergent properties System of people andtechnologyCopyright 22 2014, Intellyx, LLCPhoto Credit: agu2000_de https://www.flickr.com/photos/38123550@N00/166930597/sizes/o/ 23. Engineering a ComplexSystem Architecture focuses on the overalldesign of a system How all components of the systemmust work together to achievebusiness goals Engineering focuses on the best wayto build and run a system Lifecycle best practices (qualityassurance, deployment, updates, etc.) Compliance with architectureAgile principle: respond to change overfollowing a planCopyright 23 2014, Intellyx, LLCPhoto Credit: Brent 2.0 https://www.flickr.com/photos/brentinoz/4221291984/sizes/o/ 24. At the Heart of AgileArchitecture Think of the enterprise as a system of systems Component systems are people and technologysystems We must architect the organization so entireenterprise exhibits businessagility We can only engineerbusiness agility via itscomponent systems Change is constant & howchanges to componentsystems affect the enterprise is unpredictableCopyright 24 2014, Intellyx, LLCPhoto Credit: nickodoherty https://www.flickr.com/photos/nick-od/9151191333/sizes/l 25. Complex vs. TraditionalSystems Avoid emergent properties in traditional systems Traditional system: given requirements, build torequirements Complex system: establish initial conditions andrules for behavior ofcomponent systems,and emergence takescare of itself Feedback loops arecommonCopyright 25 2014, Intellyx, LLCPhoto Credit: Franco Folini https://www.flickr.com/photos/livenature/8064660509/sizes/l 26. The Secret to Emergence Rules that affect behavior ofcomponent systems can bevery simple Emergent behaviors oftenunpredictable Try something, see whathappens, repeat Feedback loops & iterativeapproachesCopyright 26 2014, Intellyx, LLCPhoto Credit: Juan Leis https://www.flickr.com/photos/kaibara/4632384645/sizes/lSound Agile to You? 27. Attractors for ComplexSystems Stable Emergent behaviors die out ornever occur Not applicable to enterprise Cyclical System bounces between two ormore well-defined states Also not applicable Chaotic Unpredictable, few discernable patterns Normal state for enterprise Agile Exhibiting desired emergent behaviorsCopyright 27 2014, Intellyx, LLCPhoto Credit: Anders Sandberg https://www.flickr.com/photos/arenamontanus/273180669/sizes/o/ 28. Architecting ComplexSystems Coherence of system If emerging behavior strays from desired outcome,have pre-established means for bringingorganization back in line Feedback loops Gather & analyze data on emergent behavior tocorrelate with initial constraints and determinenext course of action Mimics natural selection Favor desired behavior and discourage undesirablebehavior, and system will adapt to changedenvironmentCopyright 28 2014, Intellyx, LLC 29. Agility vs. Flexibility