• Save
Architecture without an end state
Upcoming SlideShare
Loading in...5
×

Like this? Share it with your network

Share

Architecture without an end state

  • 4,049 views
Uploaded on

When we devise plans in Enterprise Architecture, we often propose a multiyear plan with a vision of the end state. The trouble is, before we reach that end state, _something_ comes along to disrupt......

When we devise plans in Enterprise Architecture, we often propose a multiyear plan with a vision of the end state. The trouble is, before we reach that end state, _something_ comes along to disrupt our grand vision. It may be a business event (acquisition, partnership, divestiture) or a technology event (rise of the web, mobile devices, shift to REST instead of SOA).

Instead of making grand visions, we should focus on continuous adaptation to changing circumstances.

This presentation, from OOP 2012 in Munich, offers 8 heuristics for riding the continuing wavefronts of change.

More in: Technology , Business
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
4,049
On Slideshare
4,002
From Embeds
47
Number of Embeds
6

Actions

Shares
Downloads
0
Comments
0
Likes
9

Embeds 47

http://localhost 16
http://coderwall.com 15
http://a0.twimg.com 12
https://twitter.com 2
http://www.twylah.com 1
http://getpocket.com 1

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. ARCHITECTURE WITHOUT AN END STATE Michael T. Nygard Relevance, Inc. michael.nygard@thinkrelevance.com @mtnygard © 2011-2012 Michael T. Nygard, All Rights Reserved.Thursday, January 26, 12
  • 2. The Typical Enterprise Architecture ProposalThursday, January 26, 12
  • 3. 1. Start with a caricatureThursday, January 26, 12
  • 4. 2. Show the promiseThursday, January 26, 12
  • 5. 3. Pitch the plan Call Now 011 45 72 84 26Thursday, January 26, 12
  • 6. 1. Start with a caricature Current StateThursday, January 26, 12
  • 7. 2. Show the promise End StateThursday, January 26, 12
  • 8. 3. Pitch the plan Legacy Conversion Year 1 Year 2 Year 3 Vendor Selection Converged & Pilot ApplicationsThursday, January 26, 12
  • 9. 4. Start a new cycle Legacy crap Year 1 Year 2 Year 3 Legacy crap Year 1 Year 2 Year 3 Legacy crap Year 1 Year 2 Year 3 Previous CIO’s boondoggle Year 1 Year 2 Year 3 Current CIO’s vision Year 1 Year 2 Year 3Thursday, January 26, 12
  • 10. The “steady state” is a superposition of ongoing wavefronts of change.Thursday, January 26, 12
  • 11. Complex Systems • No “grand narrative”, no privileged vantage point. • Only locally contextualized views • Many local optimizations • Global optimization not possibleThursday, January 26, 12
  • 12. Complex Systems One person cannot know the complete ramifications of a decision.Thursday, January 26, 12
  • 13. 8 Rules 1. Embrace PluralityThursday, January 26, 12
  • 14. Single System Of Record TRUTHThursday, January 26, 12
  • 15. Like world peace, it exists only briefly and is so very fragile.Thursday, January 26, 12
  • 16. Obvious Challenges To SSoR • Mergers & acquisitions • Partnerships • Divestitures • Entering new marketsThursday, January 26, 12
  • 17. Epistemological Challenges • “We can only know what we can record.” • SSoR must choose one representation • “What is a customer?” • Any model enables some thoughts, disallows others.Thursday, January 26, 12
  • 18. Example: Getting SKUd • What is a Stock Keeping Unit (SKU)? • Can be sold • Must be shipped • Takes up shelf space • Has a price & cost • One SKU exists per “kind of thing” that can be sold • Does not track the individual inventory itemThursday, January 26, 12
  • 19. Getting SKUd: Changes In One Year New Market Rendered Irrelevant Added Shelf space, shipping, Tracking individual Digital Downloads fixed cost purchases Multiple prices & Partner sales Controlled ID space shippers per item Home Installation & 16,000,000 add’l Renovation SKUsThursday, January 26, 12
  • 20. Competing Deconstructions COGS Distribution COGS COGS Stocking Distribution Distribution Stocking Stocking Presentation Presentation Pricing Presentation Pricing Delivery Pricing Delivery Inventory Delivery Inventory Inventory EntitlementsThursday, January 26, 12
  • 21. Competing Extents COGS Distribution Stocking Presentation All SKUs Pricing Delivery InventoryThursday, January 26, 12
  • 22. Competing Extents All SKUs Dark MatterThursday, January 26, 12
  • 23. Federated Extents Hardgoods Services Software Partners Subscriptions PackagesThursday, January 26, 12
  • 24. Multiple Systems Of Record Hardgoods Services Software Partners Subscriptions PackagesThursday, January 26, 12
  • 25. Multiple Systems Of Record Focus on • Local authorities and spans • System of identifiers: URNs & URIs • Representations for interchange • Enable copies instead of eliminating them • Representations identify their contributorsThursday, January 26, 12
  • 26. Multiple Systems Of Record Enablers • DNS • HTTP • XMLThursday, January 26, 12
  • 27. Multiple Systems Of Record Consumers must assume open world • Cannot embed rules from all sources • Use service URLs to identify mechanics • E.g., “price me by posting to this URL”Thursday, January 26, 12
  • 28. 8 Rules 1. Embrace Plurality 2. Contextualize DownstreamThursday, January 26, 12
  • 29. Business Rules Are Contextual How much information is required? What is the lifecycle of the entity? What can it be used for in the current state? Answers will vary across business units.Thursday, January 26, 12
  • 30. Example: Comparing Desk Sizes Equity Fixed-income HFT per Frequency per minute per day microsecond Size 105 – 106 106 – 107 104 – 106 Execution Ratio ~ 1:1 1:1 1:105Thursday, January 26, 12
  • 31. Example: Auto Financing How many rules are the same between personal auto financing and fleet vehicle leasing?Thursday, January 26, 12
  • 32. Upstream & DownstreamThursday, January 26, 12
  • 33. Upstream & DownstreamThursday, January 26, 12
  • 34. Upstream & DownstreamThursday, January 26, 12
  • 35. Upstream & Downstream Augment ContextualizeThursday, January 26, 12
  • 36. Apply policies in systems nearest the users. Those will change most often.Thursday, January 26, 12
  • 37. Corollary: Minimize the entities that all systems need to know about.Thursday, January 26, 12
  • 38. 8 Rules 1. Embrace Plurality 2. Contextualize Downstream 3. Beware GrandiosityThursday, January 26, 12
  • 39. ! Enterprise Data DictionaryThursday, January 26, 12
  • 40. ! Enterprise Data ArchitectureThursday, January 26, 12
  • 41. ! Global Object ModelThursday, January 26, 12
  • 42. ! “One World”Thursday, January 26, 12
  • 43. Prerequisites For An Enterprise Modeling Project • Global perspective • Agreement across all business units • Talent for abstraction • Concrete experience in all contexts • Small enough team to make decisionsThursday, January 26, 12
  • 44. Prerequisites For An Enterprise Modeling Project • Global perspective • Agreement • Talent • Concrete • Small for abstraction ∅ across all business units experience in all contexts enough team to make decisionsThursday, January 26, 12
  • 45. How are industry standards different?Thursday, January 26, 12
  • 46. CompromiseThursday, January 26, 12
  • 47. The Modeling Fallacy All models are wrong. Some are useful.Thursday, January 26, 12
  • 48. 1. Seek compromises 2. Assume an open world 3. Begin small, incrementalize 4. Allow lengthy comment periodsThursday, January 26, 12
  • 49. 8 Rules 1. Embrace Plurality 2. Contextualize Downstream 3. Beware Grandiosity 4. DecentralizeThursday, January 26, 12
  • 50. Decentralization Explore market space Explore solution spaceThursday, January 26, 12
  • 51. Chaos? What about standards? What about duplication?Thursday, January 26, 12
  • 52. Prerequisites • Transparency Methods, work, and results must be visible • Isolation One group’s failure cannot cause widespread damage • Economics Distributed economic decision-makingThursday, January 26, 12
  • 53. Example: Boeing 777 Aircraft Weight Cost 1 pound gross weight = $ 300 per plane Source: “Principles of Product Development Flow”, D. ReinertsenThursday, January 26, 12
  • 54. Set Tradeoff Policies Centrally Define balancing forces globally. Allow local optimization.Thursday, January 26, 12
  • 55. Misconception: Centralization == LeverageThursday, January 26, 12
  • 56. Leverage? Centralize IT ➞ Constant budget fight, features vs. architecture. Playing “catch up” to business units.Thursday, January 26, 12
  • 57. Leverage. Decentralize ➞ Slivers of other budgets, working toward shared benefits.Thursday, January 26, 12
  • 58. 8 Rules 1. Embrace Plurality 5. Isolate Failure Domains 2. Contextualize Downstream 3. Beware Grandiosity 4. DecentralizeThursday, January 26, 12
  • 59. Operational FailuresThursday, January 26, 12
  • 60. Operational FailuresThursday, January 26, 12
  • 61. Operational FailuresThursday, January 26, 12
  • 62. Solution Space Failures Giant bet on a strategy? “Bet the company” means one shot.Thursday, January 26, 12
  • 63. Value Of Modularity Splitting Excluding Substitution Inversion Augmenting Porting Source: “Design Rules: The Power of Modularity.”, Baldwin & Clark, 2000.Thursday, January 26, 12
  • 64. Value Of Modularity Options Source: “Design Rules: The Power of Modularity.”, Baldwin & Clark, 2000.Thursday, January 26, 12
  • 65. Value Of An Option Profit Positive Payoff Negative Payoff (do not exercise) Value at exercise “long call”Thursday, January 26, 12
  • 66. Value Of An Option Profit Positive Payoff Negative Payoff (do not exercise) Value at exercise “long call”Thursday, January 26, 12
  • 67. Negative Option Value Failed system or failed business unit == negative value option. Isolate the failure, use modularity options.Thursday, January 26, 12
  • 68. Example: Trading Company Many small applications, integrated by messaging. Cheaper to rewrite than maintain individual apps.Thursday, January 26, 12
  • 69. Example: Advertising Optimization Hundreds of auction/placement algos. “Developer anarchy.”Thursday, January 26, 12
  • 70. Example: The Ultimate In Resilient Architecture CICS Transactions You can always fit another screen in somewhere.Thursday, January 26, 12
  • 71. Resilient architecture admits componentwise change.Thursday, January 26, 12
  • 72. 8 Rules 1. Embrace Plurality 5. Isolate Failure Domains 2. Contextualize 6. Data Outlives Applications Downstream 7. Applications Outlive 3. Beware Grandiosity Integrations 4. DecentralizeThursday, January 26, 12
  • 73. Example: Mailing-list Vendor First list assembled: 1972 Still in operation: 2011 Data set is as old as I am.Thursday, January 26, 12
  • 74. Database Technology ISAM VSAM Network Hierarchic Relational Graph KVS DocumentThursday, January 26, 12
  • 75. Integration Technology CICS FTP RPC Sockets RPC CD-ROM XML-HTTP RPC ESBThursday, January 26, 12
  • 76. Typical Layered Architecture UI Application Domain PersistenceThursday, January 26, 12
  • 77. “Hexagonal Architecture” Or Ports & Adapters System Boundary Feeds out Feeds in ad ap ter pte r Databases a ad r a pte ad ad Users ap ter Domain ad ap ter ELinux: Disabled at runtime. SELinux: Unregistering netfilter hooks type=1404 audit(1316273329.901:2): selinux=0 auid=4294967295 ses=4294967295 input: PC Speaker as /class/input/input0 r netfront: Initialising virtual ethernet driver. pte netfront: device eth0 has copying receive path. netfront: device eth1 has copying receive path. Floppy drive(s): fd0 is unknown type 15 (usb?), fd1 is unknown type 15 (usb?) a Failed to obtain physical IRQ 6 ad floppy0: no floppy controllers found work still pending lp: driver loaded but no devices found ad md: Autodetecting RAID arrays. md: autorun ... ap ter Monitoring Admins Metrics http://alistair.cockburn.us/Hexagonal+architectureThursday, January 26, 12
  • 78. Hexagonal Enterprise ArchitectureThursday, January 26, 12
  • 79. 8 Rules 1. Embrace Plurality 5. Isolate Failure Domains 2. Contextualize 6. Data Outlives Applications Downstream 7. Applications Outlive 3. Beware Grandiosity Integrations 4. Decentralize 8. Increase DiscoverabilityThursday, January 26, 12
  • 80. Omniscience is impossible. Facilitate coincidence instead.Thursday, January 26, 12
  • 81. Improve by building on the work of others. It’s not eliminating duplication or reducing cost. But costs will come down as a result of being better.Thursday, January 26, 12
  • 82. Prerequisites • Visible work: • Internal blogs • Open code repositories • Modern search engine (homegrown is fine)Thursday, January 26, 12
  • 83. Beware: Budget Culture • Contributions are disruptions • Inquiries are alarming. • They presage a budget annexation attack.Thursday, January 26, 12
  • 84. Engineering Culture • Default to open sharing • Every app should have links to: • Team blog • Bug submission • CI serverThursday, January 26, 12
  • 85. Foster engineering culture at the grass roots.Thursday, January 26, 12
  • 86. Thursday, January 26, 12
  • 87. 8 Rules 1. Embrace Plurality 5. Isolate Failure Domains 2. Contextualize 6. Data Outlives Applications Downstream 7. Applications Outlive 3. Beware Grandiosity Integrations 4. Decentralize 8. Increase DiscoverabilityThursday, January 26, 12
  • 88. You Probably Aren’t Either Of These Guys Vint Cerf The ArchitectThursday, January 26, 12
  • 89. Stop chasing the end stateThursday, January 26, 12
  • 90. Abandon the 3 Year Plan Legacy Conversion Year 1 Year 2 Year 3 Vendor Selection Converged & Pilot ApplicationsThursday, January 26, 12
  • 91. Thursday, January 26, 12
  • 92. ARCHITECTURE WITHOUT AN END STATE Michael T. Nygard Relevance, Inc. michael.nygard@thinkrelevance.com @mtnygard © 2011 Michael T. Nygard, All Rights Reserved.Thursday, January 26, 12
  • 93. PHOTO CREDITS http://www.flickr.com/photos/geishaboy500 http://www.youtube.com/watch?v=08xQLGWTSag http://www.flickr.com/photos/vin60 http://www.flickr.com/photos/sergiu_bacioiuThursday, January 26, 12