Web Services In Context

Download Report

Transcript Web Services In Context

Putting Web Services
into Context
Brent Carlson
VP of Technology
LogicLibrary, Inc.
Agenda








Today’s complex IT environment
Web services: an opportunity to align
technology with business
The enABLE methodology
An example component – CurrencyExchange
Applying the enABLE methodology to our
example
A business process example – RosettaNet
An enterprise case study – CNA Insurance
Summary
©2003 LogicLibrary, Inc.
Today’s Complex IT Environment
Generations of technologies coupled with current business demands
Further complicated by:
 Budget constraints
 Competitive pressures
 Need to protect corporate
knowledge
©2003 LogicLibrary, Inc.
Web Services: An Opportunity to
Align Technology with Business

Web services provide enterprises with the
opportunity to:

Normalize existing applications

Modernize legacy applications with new
technologies

Isolate new development from legacy
environments

Enable current business systems to support
next-generation business processes
©2003 LogicLibrary, Inc.
… But It Doesn’t Happen For Free

Blindly applying Web services technology
will result in:




Poor performance
YALOT: Yet Another Layer Of Technology
More spaghetti code
IT organizations need to take the time to:


Define where they are going
Align their application development and
integration with business needs
©2003 LogicLibrary, Inc.
The enABLE Methodology

Assess


Build


a catalog of essential software development assets
(SDAs) mapped to your roadmap (i.e., your business
architectures and models)
Locate


what you have and create a roadmap for migrating to
Web services
the most appropriate software development assets for
your high-priority services, using the catalog you have
built
Employ

these assets in your tools of choice for developing
Web services
©2003 LogicLibrary, Inc.
An Example SDA:
CurrencyExchange Component
IComponent
©2003 LogicLibrary, Inc.
Applying enABLE to Our Example:
Assess…

Technology on which the asset is based
 .NET

Compatibility of the asset’s technology with future technical plans
 Plans going forward for service-oriented architecture based
on .NET Framework

Available documentation that describes the asset
 UML model, documentation, requirements, …

Current use of the asset in the organization’s business activities
 Used for support of international order processing (internal)

Expected use of the asset to support future business needs
 Expand international order processing to the Web and to
automated B2B integration
©2003 LogicLibrary, Inc.
Applying enABLE to Our Example:
Build…
<<comp spec>>
Order System
OrderMaintanance
<<comp spec>>
Shipping System
ShippingRequest
ShippingStatus
Quote
ShippingMethod Management
Import
SalesTaxCalculation
Reporting
<<comp spec>>
CreditCard Handler
<<comp spec>>
Analytical System
<<comp spec>>
SalesTaxCalculator
Payments
Verification
<<comp spec>>
Financial
Accounting
Sales Transaction
Prediction
<<comp spec>>
Currency Exchange
System
Conversion
CurrencyMaintanance
©2003 LogicLibrary, Inc.
FinancialReporting
Applying enABLE to Our Example:
Build…

Primary UML construct is class diagram
laying out coarse-grained reference
components/services

Other UML constructs to consider:


Use Cases
 Establish initial requirements for business function
 Actors
 Preconditions
 Functional scenario / use case steps
Activity Diagrams
 Describe detailed process or subprocess flow
underlying a use case
 Specific activities can be mapped to functional
capabilities that are to be implemented as
services
©2003 LogicLibrary, Inc.
Web
Applying enABLE to Our Example:
Build…

Sample Use Case Diagram
Cashier
Restocker
©2003 LogicLibrary, Inc.
Sell Items
Accept Returned Items
Applying enABLE to Our Example:
Build…

Drilling into Sell Items Activity Diagram…
no
Retrieve Item
Information
Create Invoice
Entry
last item?
yes
Calculate Taxes
Calculate Shipping
and Handling
Convert
Currency
no
are items priced in
currency of customer?
yes
Generate
Invoice
©2003 LogicLibrary, Inc.
Applying enABLE to Our Example:
Build…

Associating Convert Currency Activity with Component…
©2003 LogicLibrary, Inc.
Applying enABLE to Our Example:
Build…

Returning to our component model…

Map our reference component to our example asset
Reference Component operation
Component method
getSupportedCurrencies
getCurrencyCodes
defineSupportedCurrency
no direct equivalent
convertCurrencyValue
convert
defineExchangeRate
setExchangeRate
deleteExchangeRate
clearExchangeRate
©2003 LogicLibrary, Inc.
Applying enABLE to Our Example:
Locate…

Finding assets as part of an application
development project

Identify the applicable portion of the business
reference model


Investigate the services and operations defined
by the model


convertCurrencyValue, etc.
Initiate a search for SDAs mapped against the
model


Currency Exchange system
CurrencyExchange component is found
Retrieve various artifacts to evaluate the asset

UML model, source code, …
©2003 LogicLibrary, Inc.
Applying enABLE to Our Example:
Locate…

Techniques and tools for locating candidate SDAs

Word of mouth – find out what others are using
to meet this requirement

Manual – browse models and scan source code

Search statically maintained spreadsheets

Use an SDA mapping and discovery engine,
such as LogicLibrary’s Logidex
©2003 LogicLibrary, Inc.
Applying enABLE to Our Example:
Employ...

Design considerations for our example Web
service

How should we expose the information from
our specialized date range exception to our
Web service client?

Do we choose to expose our conversion
strategy capability on the Web service?

Do we create separate Web services for our
currency conversion operations from our
currency maintenance operations, or do we
combine them into one service?
©2003 LogicLibrary, Inc.
Applying enABLE to Our Example:
Employ...

Combining multiple SDAs into a single Web
service

Do our SDA interfaces match our desired service
API? If not, what additional behaviors are
required? Can we harvest other SDAs to
support these behaviors?

Do some operations span multiple assets? If so,
where does the glue logic reside? How do we
implement compensation logic?
We will revisit these points in our case study…
©2003 LogicLibrary, Inc.
A Business Process Example:
RosettaNet

What is RosettaNet?

“RosettaNet is a consortium of major
Information Technology, Electronic
Components, Semiconductor Manufacturing
and Telecommunications companies working
to create and implement industry-wide, open
e-business process standards. These standards
form a common e-business language, aligning
processes between supply chain partners on a
global basis.”
From RosettaNet’s home page at www.rosettanet.org
©2003 LogicLibrary, Inc.
Why Is RosettaNet Interesting?

Prasad Rampalli, Intel’s IT Architect:

“We have championed the whole B2B commerce
space with a lingua franca based on the
RosettaNet standard. It is based on an XML
messaging format and has a sufficient level of
encryption to enable secure B2B conversations
with the multitudes of trading partners that
we've got.”
From Dec 15, 2002 ZDNet interview
http://techupdate.zdnet.com/techupdate/stories/main/0,14179,2901716
,00.html
©2003 LogicLibrary, Inc.
Emerging Business
Process Standards

Significant industry movement away from EDI
towards standardized, XML-based business
process and messaging definitions


Web services is accelerating this trend
Other examples of business process standards:



ACORD: insurance
IFX: financial services
ebXML: electronic business/trading
©2003 LogicLibrary, Inc.
Emerging Business
Process Standards

Advantages:
 Can learn from industry best practices and experience
 XML-based message sets
 Standard data dictionaries
 Reference business processes
 Packaged applications are adopting standards as they
move towards Web service-oriented APIs
Besides, your business partners are probably already doing
something here and will take you with them – whether you
like it or not!
 Intel: “…13 percent of all our machine-to-machine, B2B
transactions today are happening through the
(RosettaNet) standard – roughly 30,000 transactions a
month.”
©2003 LogicLibrary, Inc.
Back to RosettaNet…

Composed of Clusters, Segments, and Partner
Interface Processes (PIPs)

Example:

Cluster 3: Order Management
 Segment 3C: Returns and Finance
 PIP 3C3: Notify of Invoice
©2003 LogicLibrary, Inc.
Drilling Into Our Example…
©2003 LogicLibrary, Inc.
Drilling Into Our Example…
©2003 LogicLibrary, Inc.
Drilling Into Our Example…
©2003 LogicLibrary, Inc.
Drilling Into Our Example…
©2003 LogicLibrary, Inc.
…Bringing Us Back To
Our Original Use Case
Cashier
Restocker
©2003 LogicLibrary, Inc.
Sell Items
Accept Returned Items
…Bringing Us Back To
Our Original Use Case
no
Retrieve Item
Information
Create Invoice
Entry
last item?
yes
Calculate Taxes
Calculate Shipping
and Handling
Convert
Currency
no
are items priced in
currency of customer?
yes
Generate
Invoice
©2003 LogicLibrary, Inc.
…And Our Original
Component Model
©2003 LogicLibrary, Inc.
…And Finally To Our
Original Component!
©2003 LogicLibrary, Inc.
So What?
Business processes matter to an IT organization!
 After all, you are “in business” to support the business
(and not the other way around…)
 Defining the right business processes is hard work
 Most organizations do not have a clear view of how
they do business
 Using standards-based processes (in part or in whole)
can help to rationalize the business
 Don’t try to “boil the ocean” – pick and choose the most
important/dynamic areas of business to focus on
 Linking business processes to existing and new
technology is also hard work
 Web services (and service-oriented architectures)
can help
 Tools can help

Which leads us to our case study…
©2003 LogicLibrary, Inc.
An Enterprise Case Study:
CNA Insurance

CNA Insurance
 Global Insurance organization
 12 billion in revenue
 15,000 employees total, 1,600 in IT workforce

CNA’s Service-oriented Architecture Initiative
 Led by Dmitry Tyomkin and Boris Lublinsky,
Enterprise Architects, CNA’s Solutions and
Architecture Group
 Objectives:
 Build bridges between different systems and
applications
 Leverage existing IT assets
 Create ability to respond quickly and efficiently
to changes in the business environment
©2003 LogicLibrary, Inc.
SOA in the Enterprise Architecture –
CNA’s View
Business Process
Driven Enterprise
Services Rationalization of
Enterprise Systems
Against Business
Meaningful Services
EAI - Integrating and
Exposing Existing
Enterprise Systems
Mainframe
Existing IT
Hardware/Sofware
Topology
Mainframe
Workstations
Data
Servers
©2003 LogicLibrary, Inc.
Data
Servers
Data
Current SOA Components in CNA


Consolidated Infrastructure
Enterprise Service Bus





Integration Hub
Service Invocation and Execution
Framework
Service Locator
Services Implementation Framework
Service Classification
©2003 LogicLibrary, Inc.
CNA’s Service Catalog:
LogicLibrary Logidex
Projected Service
Acquisition
Acquired Service
Certification

Integral part of SOA

Follows service lifecycle

Manages development and
deployment information
Certified Service
Implementation
Implemented Service
Testing
Tested Service
Deployment
©2003 LogicLibrary, Inc.
Deployed Service
Service Composition

Services and Methods are managed independently
 Services are composed of one or more Methods
 Methods may be composed within one or more Services



Relationships between Services and Methods are
managed with strongly-typed asset-to-asset
relationships within Logidex-managed metadata
Appropriate Methods identified as new Services are
defined and projected
 Projection process includes



Typically a Method will be composed within a single Service
Selecting from predefined Methods
Specifying new candidate Methods
Method-level granularity within Logidex enables
 More granular usage tracking
 Flexible service composition based on domain needs
©2003 LogicLibrary, Inc.
Summary
To mitigate the risks & fully realize the benefits
of implementing Web services:

Don’t blindly apply Web services technology
 Today’s tools can generate Web services quickly, but….

Take the time to define your future business process needs
 If you don’t know where you are going, how will you ever
get there?

Review your current business systems
 Don’t “boil the ocean.” Pick the key systems that support
business needs.

“Meet in the middle”
 Map your current business systems to your future
business processes.
©2003 LogicLibrary, Inc.
Thank you!
Brent Carlson
VP of Technology
[email protected]