Application Modernization with SOA Best Practices and...

15
1 Copyright © 2009, ZapThink, LLC 1 Application Modernization with SOA Best Practices and Success Stories Jason Bloomberg ZapThink LLC Copyright © 2009, ZapThink, LLC 2 We’ve had IT challenges for years … Source: Microsoft

Transcript of Application Modernization with SOA Best Practices and...

Page 1: Application Modernization with SOA Best Practices and ...doveltech.com/.../ApplicationModernizationSOA-PSOA... · 3 Copyright © 2009, ZapThink, LLC 5 If you are in a Hole, Stop Digging!

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

Page 2: Application Modernization with SOA Best Practices and ...doveltech.com/.../ApplicationModernizationSOA-PSOA... · 3 Copyright © 2009, ZapThink, LLC 5 If you are in a Hole, Stop Digging!

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.

Page 3: Application Modernization with SOA Best Practices and ...doveltech.com/.../ApplicationModernizationSOA-PSOA... · 3 Copyright © 2009, ZapThink, LLC 5 If you are in a Hole, Stop Digging!

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

Page 4: Application Modernization with SOA Best Practices and ...doveltech.com/.../ApplicationModernizationSOA-PSOA... · 3 Copyright © 2009, ZapThink, LLC 5 If you are in a Hole, Stop Digging!

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

Page 5: Application Modernization with SOA Best Practices and ...doveltech.com/.../ApplicationModernizationSOA-PSOA... · 3 Copyright © 2009, ZapThink, LLC 5 If you are in a Hole, Stop Digging!

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

Page 6: Application Modernization with SOA Best Practices and ...doveltech.com/.../ApplicationModernizationSOA-PSOA... · 3 Copyright © 2009, ZapThink, LLC 5 If you are in a Hole, Stop Digging!

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

Page 7: Application Modernization with SOA Best Practices and ...doveltech.com/.../ApplicationModernizationSOA-PSOA... · 3 Copyright © 2009, ZapThink, LLC 5 If you are in a Hole, Stop Digging!

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!

Page 8: Application Modernization with SOA Best Practices and ...doveltech.com/.../ApplicationModernizationSOA-PSOA... · 3 Copyright © 2009, ZapThink, LLC 5 If you are in a Hole, Stop Digging!

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””

Page 9: Application Modernization with SOA Best Practices and ...doveltech.com/.../ApplicationModernizationSOA-PSOA... · 3 Copyright © 2009, ZapThink, LLC 5 If you are in a Hole, Stop Digging!

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

Page 10: Application Modernization with SOA Best Practices and ...doveltech.com/.../ApplicationModernizationSOA-PSOA... · 3 Copyright © 2009, ZapThink, LLC 5 If you are in a Hole, Stop Digging!

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

Page 11: Application Modernization with SOA Best Practices and ...doveltech.com/.../ApplicationModernizationSOA-PSOA... · 3 Copyright © 2009, ZapThink, LLC 5 If you are in a Hole, Stop Digging!

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

Page 12: Application Modernization with SOA Best Practices and ...doveltech.com/.../ApplicationModernizationSOA-PSOA... · 3 Copyright © 2009, ZapThink, LLC 5 If you are in a Hole, Stop Digging!

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!

Page 13: Application Modernization with SOA Best Practices and ...doveltech.com/.../ApplicationModernizationSOA-PSOA... · 3 Copyright © 2009, ZapThink, LLC 5 If you are in a Hole, Stop Digging!

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

Page 14: Application Modernization with SOA Best Practices and ...doveltech.com/.../ApplicationModernizationSOA-PSOA... · 3 Copyright © 2009, ZapThink, LLC 5 If you are in a Hole, Stop Digging!

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

Page 15: Application Modernization with SOA Best Practices and ...doveltech.com/.../ApplicationModernizationSOA-PSOA... · 3 Copyright © 2009, ZapThink, LLC 5 If you are in a Hole, Stop Digging!

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

[email protected]