enterprise soa chapter 7 (ppt)- mohammed syed
TRANSCRIPT
SOA and Business SOA and Business Process ManagementProcess Management
Mohammed SyedMohammed Syed
Introduction to BPMIntroduction to BPM
BPM is a general management topicBPM is a general management topic Focuses on the strategic and Focuses on the strategic and
operational aspects of process operational aspects of process orientation in a given business areaorientation in a given business area
Builds on and transforms that which Builds on and transforms that which already exists unlike BPRalready exists unlike BPR
Recommends incremental change Recommends incremental change and evolutionary optimizationand evolutionary optimization
Introduction to BPMIntroduction to BPM
Predecessors:Predecessors:• Total Quality Management, late 1980sTotal Quality Management, late 1980s• Business Process Reengineering, early 1990sBusiness Process Reengineering, early 1990s
BPR completely reinvents the existing business BPR completely reinvents the existing business processesprocesses
Possible Reasons of Reengineering Efforts’ High Possible Reasons of Reengineering Efforts’ High Failure Rates:Failure Rates:
• Resistance to changeResistance to change• Lack of Understanding of the business modelsLack of Understanding of the business models• Failure of nerve on the part of the client companiesFailure of nerve on the part of the client companies
Two sides of BPM Two sides of BPM
Business side:Business side:• Accompanied by keywords such as ISO Accompanied by keywords such as ISO
9000 and Six Sigma9000 and Six Sigma IT Side:IT Side:
• Accompanied by keywords such as Accompanied by keywords such as process modeling and workflow process modeling and workflow managementmanagement
BPMSBPMS
Business Process Management SystemBusiness Process Management System• Provides the technical platform for realizing Provides the technical platform for realizing
BPM management initiativesBPM management initiatives Includes: Includes:
• BPM EngineBPM Engine• Facilities for business process monitoring Facilities for business process monitoring • Design toolsDesign tools• Facilities for simulationFacilities for simulation
BPMSBPMS
Typical high level features Typical high level features encompass the discovery, design, encompass the discovery, design, and deployment of business and deployment of business processes, as well as the executive, processes, as well as the executive, administrative and supervisory administrative and supervisory control over them to ensure that they control over them to ensure that they remain compliant with business remain compliant with business objectivesobjectives
BPMS, When and Why BPMS, When and Why
IT and Business must work hand in IT and Business must work hand in handhand• BPMS widely accepted at both the BPMS widely accepted at both the
business and technological levels if: business and technological levels if: An enterprise has defined and documented An enterprise has defined and documented
key business processeskey business processes Utilize Process TemplatesUtilize Process Templates
• BPM concepts are about incremental BPM concepts are about incremental changes so using pre-defined process changes so using pre-defined process templates can be extremely valuable templates can be extremely valuable
BPMS, When and WhyBPMS, When and Why
Matching the Right TechnologyMatching the Right Technology• Understand the business processUnderstand the business process• Key Characteristics:Key Characteristics:
Complexity, dynamism, degree of coordination Complexity, dynamism, degree of coordination required by the process required by the process
Adopting the development ModelAdopting the development Model• BPM platform provides a complete software BPM platform provides a complete software
development model that enforces a clean development model that enforces a clean separation between business logic and low-separation between business logic and low-level technical code level technical code
Overview of a BPM SystemOverview of a BPM System
Modeling LanguagesModeling Languages• Two most popular approaches:Two most popular approaches:
Business Process Execution Language for Business Process Execution Language for Web Services (BPEL4WS)Web Services (BPEL4WS)
Business Process Modeling Language (BPML)Business Process Modeling Language (BPML) Business Process Modeling Notation (BPMN) Business Process Modeling Notation (BPMN)
is a language that supports standardized is a language that supports standardized graphical representation of business process graphical representation of business process diagrams, similar to the UML approachdiagrams, similar to the UML approach
Overview of a BPM SystemOverview of a BPM System
Architecture of a BPM SystemArchitecture of a BPM System• Usually modeled graphically using based on Usually modeled graphically using based on
BPMN notation stored in a block structured BPMN notation stored in a block structured model (e.g., in BPEL4WS or BPML)model (e.g., in BPEL4WS or BPML)
• Process Engine creates and interprets runtime Process Engine creates and interprets runtime instances of formal process definitionsinstances of formal process definitions
• Process definitions and process instances are Process definitions and process instances are stored in repositoriesstored in repositories
• System provides interfaces to design, deploy, System provides interfaces to design, deploy, and configure process definitions and to and configure process definitions and to monitor and manage process instancesmonitor and manage process instances
BPM VisionBPM Vision
Information and rules regarding important Information and rules regarding important business processes are taken out of the business processes are taken out of the application systems and are put under the application systems and are put under the control of a BPM Systemcontrol of a BPM System
BPM System facilitates the modification, BPM System facilitates the modification, reconfiguration, and optimization of reconfiguration, and optimization of process definitions with graphical tools process definitions with graphical tools that can be used by less technology-that can be used by less technology-oriented business analystsoriented business analysts
BPM and Process Enabled SOABPM and Process Enabled SOA
The Emergence of SOA: The PastThe Emergence of SOA: The Past• Data and Functionality were separated in the Data and Functionality were separated in the
early days of programmingearly days of programming• Object Orientation merged data and Object Orientation merged data and
functionality into encapsulated, reusable object functionality into encapsulated, reusable object implementationsimplementations
• Object Orientation had severe limitations when Object Orientation had severe limitations when distributed object technology was applied to distributed object technology was applied to large-scale projectslarge-scale projects
• SOA emerged as a result with supporting SOA emerged as a result with supporting platforms such as XML Web Servicesplatforms such as XML Web Services
BPM and Process Enabled SOABPM and Process Enabled SOA
Core Business Logic vs Process Core Business Logic vs Process Control Logic: The FutureControl Logic: The Future• Core business logic comprises basic Core business logic comprises basic
data access services, complex data access services, complex calculations, and complex business rulescalculations, and complex business rules
• Process Control Logic deals with Process Control Logic deals with dynamic processes that are prone to dynamic processes that are prone to frequent change and often require frequent change and often require complex coordination with the process complex coordination with the process participantsparticipants
BPM and Process Enabled SOABPM and Process Enabled SOA
Benefits of separating CBL and PCL Benefits of separating CBL and PCL are manifoldare manifold• Increases agilityIncreases agility• Smooth Changes to existing processes Smooth Changes to existing processes
and smooth introduction of new onesand smooth introduction of new ones• Changing one process does not affect Changing one process does not affect
another processanother process• Redundancies and Inconsistencies are Redundancies and Inconsistencies are
reducedreduced
Design Implications for SOA Design Implications for SOA ArchitectsArchitects
The Challenge:The Challenge:• Identify and categorize services that represent Identify and categorize services that represent
core business logic and those that represent core business logic and those that represent process control logicprocess control logic
Aspects to be considered:Aspects to be considered:• Business and Process RequirementsBusiness and Process Requirements• The Existing Application LandscapeThe Existing Application Landscape• Make-vs-Buy DecisionsMake-vs-Buy Decisions• Resource AvailabilityResource Availability• SOA Design ConsiderationsSOA Design Considerations• Budget ConstraintsBudget Constraints