application modernization with soa best practices and...
Post on 11-Jun-2020
2 Views
Preview:
TRANSCRIPT
1
Copyright © 2009, ZapThink, LLC 1
Application Modernization with SOABest Practices and Success Stories
Jason BloombergZapThink LLC
Copyright © 2009, ZapThink, LLC 2
We’ve had IT challenges for years …
Source: Microsoft
2
Copyright © 2009, ZapThink, LLC 3
… but even after yesterday’s promises…
Source: Microsoft
Copyright © 2009, ZapThink, LLC 4
… we still have the same IT mess, only worse.
3
Copyright © 2009, ZapThink, LLC 5
If you are in a Hole, Stop Digging!
• IT Decision Making’s Fatal Flaw:– Choice between “take some extra time & money
and do it right” vs. “give me what I want the cheapest & fastest way” – guess which wins?
• Repeat enough times, leads to the IT “Rat’s Nest”
Copyright © 2009, ZapThink, LLC 6
What is SOA?
• SOA is architecture – a set of best practices for the organization and use of IT, and the discipline to follow them
• Abstracts software functionality as loosely-coupled, Business Services
• Services can be composed into applications which implement business processes in a flexible way, without programming
4
Copyright © 2009, ZapThink, LLC 7
Lego “Ilities”
• Interoperability
• Unbreakability
• Composability
• Reusability
What the Business wants from IT!What the Business wants from IT!
Copyright © 2009, ZapThink, LLC 8
What’s a Service?
• Word has many meanings
• Even in IT, has many meanings– Software-as-a-Service– IT Service
Management– SOA
5
Copyright © 2009, ZapThink, LLC 9
Levels of Service Abstraction
• Service Implementation– Working software that implements
the Service
• Service Interface– Contracted interface to underlying
functionality (includes Web Services)
• Business Service– Abstraction of underlying
functionality and data with a clear business context
Copyright © 2009, ZapThink, LLC 10
What are Services?(Technically, Service interfaces)
• Contracted interfaces to software functionality and data that communicate via messages
6
Copyright © 2009, ZapThink, LLC 11
Service Interfaces Aren’t Good Enough!
• Service Interfaces provide a technical context– Standard interfaces like Web
Services help, but don’t provide all the benefits of SOA
• Business Services provide the business context– The business doesn’t care how it
works, as long as it does!
Copyright © 2009, ZapThink, LLC 12
The Difference is the Abstraction
• Mature technology is complex on the inside yet simple on the outside
• The secret is the abstraction layer
7
Copyright © 2009, ZapThink, LLC 13
Abstraction = Working Illusion
Copyright © 2009, ZapThink, LLC 14
Building a Working Illusion
• Service abstraction provides simplicity to user
• Requires additional complexity “behind the scenes”
• Sleight of hand & misdirection!
8
Copyright © 2009, ZapThink, LLC 15
Exposing Existing Capabilities
• Service interfaces exposed from existing systems
• Often pre-defined by existing software
• Low-level representations of internal application functions or interfaces often exposed as Web Services
Copyright © 2009, ZapThink, LLC 16
SOA, Integration & Legacy
• Key goal of SOA: Integration as a byproduct of Service composition
• Goal of legacy integration: building Services to support this goal, NOT connecting systems to address a particular business need
Move away from Move away from ““connecting systemsconnecting systems””and toward and toward ““composing Servicescomposing Services””
9
Copyright © 2009, ZapThink, LLC 17
The Continued Value of Legacy
• Definition of legacy: “anything that works”– Sometimes old, but not
necessarily
• Expensive & risky to replace– Often contains mission
critical business logic
• Expensive & risky to keep around– Maintenance consumes major
portion of IT budget
““Rip & ReplaceRip & Replace”” rarely a viable optionrarely a viable option
Copyright © 2009, ZapThink, LLC 18
Legacy Migration
• Pros:– Reduces ongoing costs
of maintenance– SOA abstracts
interfaces, easing replacement
• Cons:– System still provides
value– High cost and risk
Retire legacy applications & systems;Retire legacy applications & systems;Application consolidationApplication consolidation
10
Copyright © 2009, ZapThink, LLC 19
Legacy Enablement
• Pros:– Lowers risk and cost of migration– Maintains value of legacy– Does not require SOA
• Cons:– Inflexible– Can lead to “ABOS” problems
Simplistic exposure of Simplistic exposure of legacy capabilities/data as Serviceslegacy capabilities/data as Services
Copyright © 2009, ZapThink, LLC 20
Legacy Rejuvenation
• Pros:– Squeeze more value out
of existing assets– Increases business
agility– Non-invasive
• Challenge:– Requires new
architectural approach to legacy
Leverage legacy (especially mainframe)Leverage legacy (especially mainframe)as active SOA participantas active SOA participant
11
Copyright © 2009, ZapThink, LLC 21
Migration vs. Rejuvenation
• Retiring legacy systems typically takes years
• Transition plan required regardless of final disposition
• Migration may involve rejuvenation during transition
You may never pull the plug!You may never pull the plug!
Copyright © 2009, ZapThink, LLC 22
Business Driver: Cost Savings
• Reduction in integration expense– EAI replacement/EAI maintenance reduction– Legacy enablement/migration/rejuvenation
12
Copyright © 2009, ZapThink, LLC 23
Business Driver: Reuse
• Reuse the old way: code reuse– Reusable code libraries and
subroutines – the “Holy Grail” of programming
– Branching code base reduces reusability
– Hard to write reusable code, as requirements are never clear
• Reuse the new way: Service reuse– Reuse at runtime based upon contracted functionality– Loose coupling leads to flexible reuse– Appropriate governance and flexible metadata essential!
Copyright © 2009, ZapThink, LLC 24
Reuse for Customer Value
• Typically large organizations with multiple Lines of Business
• Share customers across LOBs
• Provide value to your best customers!
13
Copyright © 2009, ZapThink, LLC 25
Reuse Challenges
• Many Services not designed for reuse
• Simply exposing Web Services does not increase reusability substantially
• Services are often too course grained to be reusable
• Core business systems do very different things and often don’t need to share Services anyway!
Copyright © 2009, ZapThink, LLC 26
Reuse over Time
New Composite Apps or Service-Enabled Existing Apps
Service Catalog
Service Model
Data Access Services Legacy API Services
Coarse-Grained Business Services
Presentation Services
1 32 4 5 6 987
1
1
1
1
1
2
2
2
2
3
3
3
3
4
4
4
5
55
5
6
6
6
6
7
7
7
7
8
8
8
8
9
9
9
9
Source: BEA Systems
14
Copyright © 2009, ZapThink, LLC 27
Is Reuse a Real SOA Benefit?
Copyright © 2009, ZapThink, LLC 28
SOA Reuse Governance
• Reuse only important in practice• Planning for reuse pointless without actual reuse!• Developers would prefer to build
anew• Application assembly a new
pattern• Reuse governance covers:
– Finding Services– Understanding Services– Composing Services– Publishing the resulting compositions
15
Copyright © 2009, ZapThink, LLC 29
Challenge: Reuse = Sharing
We all learned to share in kindergartenWe all learned to share in kindergarten……
But by the time we get to the working world, we But by the time we get to the working world, we forget how!forget how!
Copyright © 2009, ZapThink, LLC 30
Thank You!
ZapThink is an industry advisory & analysis firm focused exclusively on SOA, EA, and Enterprise 2.0.
Register for an upcoming Licensed ZapThink Architect course and obtain your LZA Credential!
Jason Bloomberg
jbloomberg@zapthink.com
top related