Professional Documents
Culture Documents
Patrick Ziegler
Senior Manager GSC Business-driven SOA (EMEA) IDS Scheer AG
www.processworld.com
How can I ensure the reuse of processes and services? How can I identify services? How can I ensure that my technical processes map the business processes? How can I keep my service landscape transparent? How do I know how to change IT processes when business processes are changed?
IDS Scheer AG
www.processworld.com
Typical goals Business Goals Enabling fast introduction of new business models Attaining adaptability to support ongoing change Accomplishing a closer alignment of IT with business needs Achieving higher productivity of Business Processes
IT Goals Enabling greater re-use of IT assets Reducing development costs and project times Achieving faster delivery of value to the business Accomplishing a higher degree of effectiveness in implementation, modification, and integration of IT systems
IDS Scheer AG
www.processworld.com
Business-Driven SOA
Business BPM
Business-Driven SOA
Call Center
Production
Fulfillment
Accounting
Receive Order
Initiate Production
Complete Production
Shipment
Issue Invoice
Receive
Invoke
Invoke
Switch
Receive
Switch
Invoke
Invoke
Reply
CRM
SCM
ERP
FI/CO
eBusiness
Legacy
Technical BPM
IDS Scheer AG www.processworld.com 4
Business Analyst
Business Process Definition Business Rule Definition Business Service and Data Definition Enterprise Architecture
IDS Scheer AG
www.processworld.com
SOA Repository
WS WS
Business Application
SYS
SYS
SYS
BPEL-Processes BPEL
WS WS
Business Application
UML-Diagrams
businessClass MovieTheater name: String shows(in movie: Movie): Show[*] {query} * 1 1..* number: Integer seatCount: Integer shows(in movie: Movie): Show[*] {query} shows(in movie: Movie, in beginning: Date): Show {query} 1 * * businessClass Movie title: String duration: Integer 1 * businessClass Show beginning: Date = null numberOfSoldTickets: Integer schedule(in beginning: Date) cancel() mov ie(): Movie {query} * 1 beginning(): Date {query} av ailableTickets(): Integer {query} createReservation(in requestedTickets: Integer): Reservation cancelReserv ations() addReservation(in reservation: Reservation) 1 businessClass Theater
WS Repository WSDL
businessClass Ticket
* businessClass Reservation numberOfReservedTickets: Integer reservationCode: Integer create create(in show: Show, in numberOfTickets: Integer): Reservation
IDS Scheer AG
www.processworld.com
IDS Scheer AG
www.processworld.com
Build high-value business services orchestrations as input for process execution engines using business and service architectures
Create blueprint of executable business processes based on business processes and services Implement executable business processes Manage vendor dependencies across business and service architectures Derive object-oriented design from business diagrams Design services and applications in detail Generate exchange descriptions or code
Develop services and applications based on business requirements using UML based object-oriented analysis and design
IDS Scheer AG
www.processworld.com
Design
Tailor service Architecture Framework Define Business Processes Detail IS-requirements ISon Processes
Implementation
Create Implementation Roadmap Transform Business Processes to IT processes Implement IT process
Controlling
Control Running Services
Design Services
Technical Design of Services Implementation of services Test of Service and Process Implementation
IDS Scheer AG
www.processworld.com
Design
Implementation
Technical Process Models
Controlling
Process Models
Process Performance
UMG Group
Check solvency Attract Customers Check vehicle offer Reject credit applicat ion
Executive Board
Supervisory Board
Calculate loan loss risk Avoi d loss of time for manual processing
Organization Map
Business Units
United Motors Automotive Engineering
Administration
Marketing
Legal Department
Service Capabilities
is responsible for Credit Appl ication Direct Credit Approval Service is IT-responsiblie for is user of
IT & Organization
Service Operations
System Performance
wsdlService http://creditmgmt.soa.umg.ids.com/::CreditManagementService
Client data
Financial data
Internal data
Investments data
Party data
Account data
Financial Systems
HR Systems
GLM
PSMS
HRMS
Application Landscape
FAS
IMS
GFMS
Individual
GSS
GMS
IDS Scheer AG
www.processworld.com
10
IDS Scheer AG
www.processworld.com
11
Reusable Business Components Business Processes Business Services Roles & Responsibilities
IDS Scheer AG www.processworld.com
Reusable IT Components
Web Services
Databases
Workflow
Network Protocols
Data Structures
12
IDS Scheer AG
www.processworld.com
13
Business Analyst
IT Architect
Process Engineer
Integration Engineer
Software Engineer
IDS Scheer AG
www.processworld.com
14
Tailor service Architecture Framework Define Business Processes Detail IS-requirements ISon Processes
Process Models
Calculate loan loss risk Avoi d loss of time for manual processing
Service Capabilities
is responsible for Credit Appl ication Direct Credit Approval Service is IT-responsiblie for is user of
IT & Organization
IDS Scheer AG
www.processworld.com
15
Hands-on SOA using the example of an integrated application Life UMG showcase illustration on a sample system architecture How to face central questions during SOA planning and analysis How to derive an integrated application from business and technical models Abstraction in models is key Process illustration on different levels of abstraction through appropriate models Identify relevant SOA architectural aspects during SOA Blueprint Conceptual benefits using ARIS SOA Architect
IDS Scheer AG www.processworld.com 16
UMG Overview
IDS Scheer AG
www.processworld.com
17
Optimization of process step Check Credit Application Automate manual steps Integrate external services Expose existing legacy functionality Business case
Car dealer agent defines credit conditions together with customer Customer has been advised about financing possibilities Personal information are available: address, income, employment Car dealer accesses UMGs online systems and performs the step Check Credit Application
IDS Scheer AG www.processworld.com 18
UMG Showcase: Business process and User interface Car dealer accesses financing application online Automated system steps Check customer credit rating Check customer solvency Check car offer and calculates credit increase User interaction in case of possible credit increase Customer can accept or reject credit increase proposal
Credit approval checks
Credit application Direct credit approval requested Calculate credit risk
Customer data
CreditRanking
Solvency insufficient
Vehicle offer ID
Credit application
Credit application
Credit application
Credit application
Credit application
Credit application
Credit application
Credit application
IDS Scheer AG
www.processworld.com
19
CreditRanking
Vehicle offer ID
Credit application
Credit application
Credit application
Credit application
Credit application
Credit application
IDS Scheer AG
www.processworld.com
20
Corporate Applications
Process Execution Plattform
UMG Application in Webbrowser Check direct credit application
Automotive Applications
SAP XI
Car Sales Service
Banking Applications
SAP 6.4
Car Order Management
SAP Web AS
J2EE Server
IDS Scheer AG
www.processworld.com
21
Automotive Applications
Check calculated vehicle offer
SAP XI/PI
Rules Engine
SAP 6.4
Price calculation
Request order details
NON-SAP
Car Configurator
SAP 6.4
Car Order Management
SAP APO
Disposability Check
Price calculation valid Price calculation not valid
Configuration available
Check Disposability
IDS Scheer AG
www.processworld.com
22
IDS Scheer AG
www.processworld.com
23
CreditMgm t Services
Cluster
Leasing
Claim Management
Risk Management
RiskMgmt Services
Cluster
IDS Scheer AG
www.processworld.com
24
Software Blueprint: Service design Service design Analyse and identify service operations Analyse and identify capabilities
Banking Applic ations Financing CreditSales Services
Cluster
CreditSales Servic es
Cluster
Check Solvenc y
CreditMgm t Services
Cluster
Capability
CreditService
Servic e
IDS Scheer AG
www.processworld.com
25
Process Implementation
Work Products
Service Operations
wsdlService http://creditmgmt.soa.umg.ids.com/::CreditManagementService
IDS Scheer AG
www.processworld.com
26
Business Processes
Service model
Partner Services
Cluster
System landscape
Banking Applications Financing CreditSales Services
Cluster
Start with your Business needs Modeling of business processes Analyze and design services Mapping to system landscape Identification of business objects
Aggregate Services Orchestration
Ext. Services
Dupletten Prfung
Capability
BLZ+Konto Prfung
Capability
Partner Service
Servic e
Partner Neuanlage
Operation
CreditMgm t Services
Cluster
Partner Suche
Operation
Leasing
Partner Statistik
Operation
Claim Management
Risk Management
RiskMgmt Services
Cluste r
Business objects
PoliceNr Vertrag hat Vertrags Positionen Positions GUID
Translate Business BPM into Technical BPM Automated service discovery combines business process steps and appropriate services. Automatic transformation into technical BPEL Comprehensive service repository is established
Components
BPEL processes
Implement application UML and MDA integration Export to various implementation platforms
IDS Scheer AG www.processworld.com
Implement application
27
Platform-dependent Implementation
Executable BPEL Process
Scheduling Request
Java Beans
PoliceNr
Vertrag hat
Vertrags Positionen
Positions GUID
Logical Services
Partner Services
Cluster
Services Design
wsdlService IT Service Description
Java Interfaces
Dupletten Prfung
Capability
BLZ+Konto Prfung
Capability
Partner Service
Servic e
Partner Neuanlage
Operation
reside interface wsdlPortType computePricePT w peration +initiatePriceCalculation(in input: priceCalculationM sdlO sg)
Partner Suche
Operation
Partner Statistik
Operation
Java Packages
Automotive Applications
SAP XI
Car Sales Service
Banking Applications
Partner
Vertrag
PatnerDatentypen
VertragsDatatypen
SAP Web AS
J2EE Server
PartnerServices
VertragsServices
IDS Scheer AG
www.processworld.com
28
Business Processes
Implementation
Dupletten Prfung
Capability
BLZ+Konto Prfung
Cap ability
Partner Service
Servic e
reside
Partner Neuanlage
Operation
Partner Suche
Opera tion
Partner Statistik
Opera tion
SOA governance
The central SOA repository created in ARIS maintains the link between business processes and service landscape and thus enables SOA Business Processes governance.
Process Owner
Definition of SOA governance model, organization and process Organizational model and service ownership Goals and objectives, metrics Governance processes in ARIS Metadata catalog Service validation Publishing and discovery governance
Logical service model
Partner Services
Cluster
Automotive Applications
SAP XI
Car Sales Service
Banking Applications
SAP Web AS
J2EE Server
Dupletten Prfung
Capability
BLZ+Konto Prfung
Cap ability
Partner Service
Servic e
Partner Neuanlage
Operation
Partner Suche
Opera tion
Partner Statistik
Opera tion
IDS Scheer AG
www.processworld.com
30
SOA governance
How to enforce a consistent set of design, reuse and interoperability standards across an organisation to realize the benefits of SOA? 1. Definition of SOA governance model, organization and process Goals and objectives, metrics Organizational model and service ownership Governance process:
Design-Time e.g. Metadata catalogue & service validation in ARIS, design & code review manually Publishing and discovery governance e.g. registry in ARIS, automated unit test Run-time governance e.g. monitoring
2.
Definition of SOA policies Business policies e.g. performance criteria's, approval levels Process policies e.g. versioning, responsible for publishing Technology standards compliance e.g. WSDL, SOAP Security policies
3.
IDS Scheer AG
Process Owner
SYS
SYS
SYS
Web-Service Repository
Partner Services
Cluster
BPEL Processes
Dupletten Prfung
Capability
BLZ+Konto Prfung
Capability
Partner Service
Servic e
Partner Neuanlage
Operation
Partner Suche
Operation
Partner Statistik
Operation
UML Diagrams
businessClass MovieTheater name: String shows(in movie: Movie): Show[*] {query} * 1 1..* number: Integer seatCount: Integer shows(in movie: Movie): Show[*] {query} shows(in movie: Movie, in beginning: Date): Show {query} 1 * * businessClass Movie title: String duration: Integer 1 * businessClass Show beginning: Date = null numberOfSoldTickets: Integer schedule(in beginning: Date) cancel() mov ie(): Movie {query} * 1 beginning(): Date {query} av ailableTickets(): Integer {query} createReservation(in requestedTickets: Integer): Reservation cancelReserv ations() addReservation(in reservation: Reservation) 1 businessClass Theater
Automotive Applications
SAP XI
Car Sales Service
Banking Applications
Data model
PoliceNr Vertrag hat Vertrags Positionen Positions GUID
SAP Web AS
J2EE Server
businessClass Ticket
* businessClass Reservation numberOfReservedTickets: Integer reservationCode: Integer create create(in show: Show, in numberOfTickets: Integer): Reservation
IDS Scheer AG
www.processworld.com
32
Experiences (Does and Don'ts) Do not start at only business or IT side Start with a small pilot, but keep complete company architecture in mind Convince all levels of concerned people SOA is not a one time project and ready at a special time, as BPM in common it leads to a continuous procedure of managing this architecture Not all roles, especially the process engineer, have to be covered by one person, in many cases it is better to build teams covering all aspects of the role
IDS Scheer AG www.processworld.com 33
IDS Scheer AG
www.processworld.com
34
IDS Scheer AG
www.processworld.com
35