Anda di halaman 1dari 25

pplication Development & Maintenance

Services
HCU-ADMS

Service Oriented Architecture


with Open source tools
HCU-ADMS
Agenda
o Introduction to service oriented architecture
(SOA)
o Technologies to implement SOA
o Available tools
o Prototype with Open source tools

Takeaways
o Demonstrate SOA readiness to customers
o Quickly prototype using open source tools
HCU-ADMS
Credit
Taj
Card
Hotel
Indian Airlines Authentication Oberoi
Service
Service Hotel
Service

Jet Airlines
Service Hertz
Car
Travel Application reservation

External Service
data Confirmation
HCU-ADMS
What is SOA
o An architectural style
o Goal is to achieve loose coupling among interacting software agents.

What is a Service
o A unit of work done by a service provider to achieve desired end results for
a service consumer
o Service users are not knowledgeable about the implementation
o Service is defined by explicit implementation with independent interfaces
o Services are loosely coupled
o Invoked through communication protocols implementing location
transparency & interoperability
o Services encapsulate reusable business functionality
HCU-ADMS

SOA Predictions
According to Gartner

o SOA will become the dominant framework for creating and


delivering software

o By 2006, more than 60% of IT professional services market will


be based on the exploitation of web services standards and
technologies

o By 2008, SOA will provide the basis for 80% of development


projects. Most application software revenue will come from
products that were built using SOA

o By 2010, 80% of application software revenue growth , including


licenses and subscription fees, will come from products based
on SOA.
HCU-ADMS
The services required
o Routing
o Addressing
o Communication technologies, protocols and standards
o Reliable messaging
o Publish / subscribe
o Response / request
o Events
o Service aggregation
o Legacy and application adaptors
o Connectivity to enterprise application integration
middleware
o Protocol transformation
o Message and data transformations
HCU-ADMS
The services required
(Contd..)

o Application server environments (e.g.J2EE and .Net)


o Language interfaces for service invocation (e.g. Java,
C/C++/C#)
o Authorization
o Authentication
o Development and deployment tooling
o Service interface definition (e.g.WSDL)
o Service directory and discovery
o Logging and monitoring
o Policy and quality of service

An ESB provides the above


HCU-ADMS
The services required
o Define business process
o Communication technologies, protocols and standards
o Application server environments (e.g.J2EE and .Net)
o Business Process Modeling support in the tool
o Persistent state management
o Database support
o Long running transactions
o Business process versioning
o Event handling
o Load balancing
o Process activity monitoring

A Business process engine provides the above


HCU-ADMS
Layered service-oriented
architecture
Presentation 5 6 7
Portlets
Consumer
Service

QoS, Security, Management, UDDI &


4

Monitoring (Infrastructure Service)


Business Process

(Enterprise Service Bus)


Process Choreography

Integration Architecture
3
Services
Simple and Composite Services
2
Components
Enterprise Components
Provider
Service

Custom Package
Application
Existing Application Resources

Composite service
Simple service
HCU-ADMS
Mapping to OSS Tools
Presentation
5 6 7
Any technology Portlets
Consumer
Service

4
Business Process Engine
ActiveBPEL, Intalio PXE

Enterprise Service Bus

JUDDI Registry, Muse


(ServiceMix, Celtix)
3
Services
Java, Dot Net, Any technology services
2
Components
Enterprise Components
Provider
Service

Custom Package
Application
Existing Application Resources

Composite service
Simple service
HCU-ADMS
The need for this Service
Offering
o Expressed by delivery teams
o Customers’ enquiries on experiences
o Competency development
o Expertise in SOA and tools
HCU-ADMS
The scope of prototype
o Picked up from travel domain
o Customer’s request for flight, hotel and car reservation
o Communicate with different service providers
o Reserve all or none
o Focus on business process orchestration
HCU-ADMS

Application demo
HCU-ADMS
The technology stack
o Active BPEL (www.activebpel.org)
o JBoss (www.jboss.org)
o Eclipse (www.eclipse.org)
o MySql database (www.mysql.com)
HCU-ADMS
Why ActiveBPEL
o Open source
o Roadmap for advanced requirements, commercial products
o Designer built on Eclipse extensible development platform
o Follows BPEL4WS1.1 standards, adapting to newer versions (WSBPEL 2.0)
o Good documentation
o Process can be simulated, debugged
o Supports remote debugging
o Integrated with leading application servers.
HCU-ADMS
Architecture
Web
services

Browser

Apache
Tomat Active BPEL
Browser
web server

Browser
MySQL
JBoss Application server Database

Demonstrated in the POC


HCU-ADMS
Business flow
Take customer’s request for flight reservation (From, to, date, class, number of seats),
Hotel reservation (city, date, room type, number of days, number of rooms)
Car reservation (city, date, type, number of days, number of cars)

Check for available flights Check for available hotels Check for available cars

Display availability information to customer

Customer selects flight, hotel and car, provides credit card info

Failure
Check credit

Check and block car


Check and block hotel Failure
Check and block flight

Release flight/hotel/car booking


Success

Confirm flight Confirm hotel Confirm car

BPEL
Confirmation to customer
HCU-ADMS
Active BPEL features/demonstrated
o Supports Full BPEL 1.1 specification – Demonstrated
o Process persistence – Demonstrated
o Parallel execution of activities – Demonstrated
o Compensation Handling – Demonstrated
o Web services event
o Service invocation policies (WS-Policy)- Not supported
as per the spec
o Server fault-tolerance – Demonstrated
o Diagram based debugging – Demonstrated
o XPath support – Demonstrated
o Brower Management console – Demonstrated
o Process simulation in the designer - Demonstrated
HCU-ADMS

Process orchestration – Check


Availability
HCU-ADMS
Process orchestration – Block,
Confirm,Release
HCU-ADMS
Performance implications

Overhead due to
o XML parsing
o Marshalling / unmarshalling
o Database persistence

Some published numbers..


o Overhead in message creation, marshalling,
unmarshalling, consumption
o A local method invocation in Java takes 0ms.
o A remote method invocation to a process on the same
machine using SOAP/HTTP takes approx. 13ms.
o A remote method invocation to a process on a remote
machine using SOAP/HTTP takes approx. 47ms.
o Tradeoff if performance is prime
HCU-ADMS
Roadmap

o Integrate with open source ESB


o Publish integration with other commercial/open source tools
o Comparison of open source and commercial tools
o Competency in SOA architecture
o SOA testing
o Consulting services for SOA projects
o Track evolving standards in SOA
o Help business acquisition
HCU-ADMS
Q&A
HCU-ADMS

Thank you

For further information,


please contact
soa_adms@satyam.com

Anda mungkin juga menyukai