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]