Overview• Introduction• SOA life Cycle• Modeling Approaches• Service Oriented Modeling Framework (SOMF)• BPMN• Question/Answer Session• References
Introduction• We tend to replace old technologies with new one• The interoperability, reusability, and other issues• Concept of SOA ▫ Maximize the software asset reuse. ▫ Addresses the challenges of tightly coupled software ▫ Favor the loosely coupled software ▫ Also tackles budget and ROI issues
What is SOA modeling “Service-oriented modeling is a software development practice that employees modeling disciplines and language to provide strategic and tactical solutions to enterprise problems. This anthropomorphic modeling paradigm advocates a holistic view of analysis, design and architecture of all organizational software entities, conceiving them as a service-oriented assets, namely services”. [Michael Bell]
SOA life CycleService MetamorphosisStrategyStructureGovernanceFundingReturn on Investment(ROI)
Strategy• Driving Force of any Project.• Long-Term plan for service life cycle.• Essential for scheduling events, planning stage and create timetable.• Should not offer small-scale solution.• Should contribute ▫ Proactive approach to address unseen events and stability. ▫ Road map, alternative and agility. ▫ Reachable, measurable and realistic mile stone within budget and time.
Structure• Structure means framework in which services are constructed qualified and operated in production environment.• It should be flexible that enable effective management service.• Framework Components of Structure ▫ Timeline ▫ Events ▫ Season ▫ Discipline
Events• Begins, last for while and then disappear.• Have pattern• Start at particular time.• Types of events ▫ Planned events ▫ Unplanned• Four Major Events. ▫ Staged ▫ Unpredictable ▫ Random ▫ Conditional
Season • Season are timeframe in which services transform from idea to physical entities and deployed in production. • Major Season. ▫ Design-time Season ▫ Run-Time Season.
Discipline• Discipline are best practices and standards that facilitate service design, architecture, construction, operation in production and management initiatives throughout services oriented life cycle timeframe.• Types of Discipline: ▫ Season Discipline Design-Time Run-time ▫ Continuous Discipline
SOA life Cycle Model (cont.)• Governance• Funding• Return On Investment.
SOA Modeling Approaches• Service-Oriented Modeling Architecture(SOMA)• Service-Oriented Modeling Framework(SOMF)
SOMA• IBM introduced SOMA in 2004• It implements the Service oriented analysis and design through Identification, Specification & realization of services, components and flows.• SOMA Life Cycle consists of: ▫ Identification ▫ Specification ▫ Realization ▫ Implementation ▫ Deployment ▫ Management
Identification Top-down Business use cases> Specification for business Services. Bottom-Up Review and analysis existing System. Middle-out Ties services to goal and sub goals.
Specification• Classification ▫ Hierarchy ▫ composite• Subsystem ▫ Interdependencies and flow between sub systems ▫ Object Model• Composite Specification ▫ Data, Rules, Services.• Services Allocation ▫ Rules Objects, Mediators.
Realization• Services realization ▫ Web services ▫ Legacy System
Service Oriented Modeling Framework(SOMF)• Modeling framework structure is a high level map that depicts various components that contribute a successful modeling approach• It identifies “What to do” aspect of service development scheme• Used for effective project planning and to identify the milestones of service oriented initiative
Modeling Practices• Abstraction Concepts are intangible entities which originates from persons ideas and they reside in the mind of person The abstraction process employs conceptualization best practice that yields conceptual services which are treated like a valuable asset despite being intangible• Realization The realization process starts when most of the ideas have been formalized and established as organizational concepts during abstraction phase The goal of realization practice is to transform the intangible services in to more concrete software assets
Modeling Environments • It is not a physical location where modeling process take place. • The modeling environment is about four P’s ▫ People: denotes the personnel involved in guiding and enforcing modeling disciplines which includes business and technological personnel as well. ▫ Planning: identifies the tactical and strategic aspects of the process. It includes project plans, strategy documents, design and architectural blueprints and diagrams. ▫ Process: the sequence of activities that business and technological personnel peruse to achieve modeling goals. ▫ Policies: how a solution can be proposed in environmental framework. Management perspectives, check and balance and modeling standards reflects the policies.
Modeling Environment (Cont.)• Conceptual Environment ▫ Conceptual environment assist the following activities: Facilitate the studies of organization business model and business strategies Involving business and technology personnel in conceptualization session Helps architects, developers and modelers in development of conceptual services
Modeling Environment (Cont.)• Analysis Environment ▫ The analysis environment facilitates the transformation of conceptual services into an analysis service for further inspection and categorization• Logical Environment ▫ The logical environment supports the transformation of analysis services onto more tangible design services
Discipline Specific Modeling• Modeling discipline is a field of knowledge that offers standards and policies to facilitate service oriented development activities during service life cycle.• It identifies the core process in which business and technical personnel must be engaged
Discipline Specific Modeling (cont.)• Service oriented modeling discipline focuses on the six areas of expertise: ▫ Conceptualization ▫ Discovery and analysis ▫ Business integration ▫ Design ▫ Conceptual Architecture ▫ Logical Architecture
Service Oriented Conceptualization• Service oriented modeling process starts from service conceptualization phase• Driving concepts behind future solution services are indentified• The service oriented conceptualization process yields intangible service oriented assets called “conceptual services”
Service oriented conceptualization model ▫ Attribution Analysis Characterizing business solution preposition in terms of features, quality and properties ▫ Identification it enables the discovery of services
Service oriented discovery and analysis• It is also used to identify the services that can contribute to business or technological solutions.• In discovery and analysis we verify the conceptual services that are devised during conceptualization phase.• The viability of the conceptual services are also checked in discovery and analysis phase
• Discovery and Analysis phase has three main activities:
Discovery and Analysis Activities • Typing & Profiling: It enables us to label a service base on its organizational identity and business & technological context.• Service Analysis: Determines whether a business solution is viable to participate. Use service granularity assessment to check viability. It also validates the practicality, loose coupling and reusability of the services. • Service Analysis modeling: ▫ Service analysis modeling creates the miniature replica of future service oriented implementation ▫ Analysis modeling is presented in graphical artifacts or diagrams which show the sense of how the actual solution formation will look like
Service-Oriented Business Integration• Service-Oriented Business Integration advocates finding the right match between services and their corresponding business architecture .• Conceptual business integration Represent business architectures that support the organization’s products, maintain communications with clients and partners and facilitate better management• Structural business integration Provides various methods to enable proper integration of services with various business domains
Service-Oriented Design Model• Creates a solution wireframe that can facilitate service life cycle architecture initiatives.• Offers tools and guidance to connect the dots, device service collaboration and interface mechanisms, establish solid service formations that can coexist in well-coordinated ecosystem and manage transactions.
Service-Oriented Design Model Service-oriented design steps1. Service relationship modeling ▫ Specifies how message exchange and coordination between consumer and services are done ▫ Grant safe access to subscribers for public services2. Logical structure modeling ▫ Represent the solution to the problem in structural perspective3. Service behavioral modeling ▫ Concerned with behavior of services in a particular operating environment. ▫ Solves problems stemming from service interaction and collaboration as well as coordination between activities.
Conceptual Architecture• The service oriented conceptual architecture process is to design a strategy and indentify the general directions before addressing the tangible aspects of the proposed architecture.• To address the general direction of an organizational architecture and to identify the major architecture components a conceptual architecture diagram is used
Conceptual Architecture Diagram• Element notations
Logical Architecture• It addresses the asset utilization, consumption, reusability, interoperability and loose coupling.• The asset utilization diagram provides detailed interaction between the deployed software package
SOMF Modeling generations Used-to-be ▫ The software components deployed and configured in past As-is ▫ Software components that are being utilized now To-be ▫ Design of software components that will be deployed and configured in future
Contents General Overview Why BPMN ? Elements of BPMN Flow Objects Connection Objects SwimLanes Artifact Objects
General OverviewBusiness Process is a collection of related ,structured activities or tasks that produce a specific service (serve a Managment particular goal) for a particular customer. Operational Processes: Core business activities , Create primary value stream. Management Processes: Govern operation of a process Supporting Processes: Support core activities Operational Supporting
General OverviewBusiness process modeling is the activity of representing processes of an enterprise, so that the current (“as is ”) process may be analyzed and improved in the future (“to be”).BPMN defines Business Process Diagram (BPD), which is made up of set of graphical elements. These elements enable easy development of simple diagrams that look familiar to most business analysts (e.g. a flowchart diagram)Creating a simple mechanism to model business processes and at the same time handling the complexity inherent to business processes is one of the driving force for the development of BPMN.
General Overview The primary goal of BPMN is to provide a notation that is readily understandable by all business users, from the business analysts that create the initial drafts of the process , to the technical developers responsible for implementing the technology that will perform those processes and finally, to the business people who will manage and monitor those processes.The second goal of BPMN ensure that XML languages designed for the execution of business language such as WSBPEL, can be visualized with a business-oriented notation.
General OverviewUsing BPMN it is possible to model Orchestration processes Private non-executable (internal) Business Processes Private executable (internal) Business processes Public processesChoreographiesCollaborations A view of conversations
Why BPMN + SOMF?Allows for the emergence of a modeling viewpoint wherein business process activities are directly related to the services that realize them.Early discovery of organizational core entities.Clarifies the direction and scope for impending software development projects.Enables practitioners to employ the SOMF transparency model to trace modifications to business processes and keep track on return on investments (ROI).
Basic Elements of BPMN Sequence Activity flow Message Gateway flow Artifacts Event Associatio Document/ n Data Connection objects Flow Objects Group of SwimLanes Elements lane Lane z 2Pool Text annotation 1
Flow ObjectsThe main graphical elements that define the behavior of a process.Activities : Activities represent the work that is carried out as a part of a business process.Gateways : Represent modeling element for divergence and convergence of the flow
Flow ObjectsEvents : Represents something that happens in the course of the business process. Usually have a cause and a result
Connecting ObjectsConnect two flow objectsSequence Lines : represent in which order the activities will be performed.Associations: Represent association between data, text and other artifacts with flow objects.Message Lines: represent the flow of message between two separate process participants that send and receive them.
SwimLanes Organize activities into separate visual categories in order to illustrate different functional capabilities or responsibilities.Pool : Represents different participants in a process.Lanes: A sub partition within the pool.
ArtifactsProvide ability to add context appropriate to the specific modeling situation. Data Objects: A mechanism to show how data is required or produced by activities. Groups: Used for documentation and analysis purpose. Annotations: Provide additional text information to the reader of the BPNM diagram. Message : depicts the contents of a communication between two participants. Not Allowed to override basic meanings of graphical representation.
Pizza Consumer Pizza received Pay Eat Select Order the the Pizza pizza pizza pizza Hungry Hunger For Pizza Satisfied 60 minutes Ask for pizza Calm custom Pizza Chef Clerk er Where is my pizza? Bake Pizza Vendor the pizza Delivery Receiv Delive e r the payme boy pizza nt
Integrating BPMN and SOMFA Service can be correlated with one or more BPMN constructs at one of the three levels:1. At a business process element level.2. At the sub-process element level3. At the individual , atomic activity level.
BPMN RulesChronological approach-process models should be oriented on time line(from left to right or topdown)Processes generally begin with triggering events and flow through to significant business results.All tasks or activities are assigned to roles that are meaningful to people in the business.A complete model should display how objects or data (both ) are transferred and where they are going.
BPMN RulesA process can be modeled in hierarchical fashion (e.g. with sub process)Establish organization standards or guidelines for developing models and naming model elements (process dictionary)Establish standards for versioning methods associated with the process model and artifact level to provide requirement traceability(Version Control Systems).
References• Service-oriented modeling, Service analysis, Design and Architecture by Michael Bell(2008)• Service-oriented modeling and architecture, How to identify, specify, and realize services for your SOA by Ali Arsanjani, Ph.D. (Nov 2004)• Business Process Model and Notation (BPMN) Version 2.0• Combining the Service Oriented Modeling Framework™(SOMF™) with the Business Process Modeling Notation™(BPMN™) Sep 2011