Model-Driven Development of SOA Applications II

Similar documents
SoaML Introduction. SoaML history

BIAN with BPS Design Methodology

MDA Overview Applied MDA

Service-Oriented Analysis and Design for Constructing the Online Sales Process Integration

SOA MDA and SoaML Introduction

Business-Driven Software Engineering Dr. Thomas Gschwind Dr. Jochen Küster

Architecting SOA With A Business Focus

Services Governance with IBM WebSphere

2. Business. Architecture. Service-Oriented. Architecture

Service Oriented Architecture for Architects

Enterprise IT Architectures SOA Part 2

OMG Specifications for Enterprise Interoperability

Enterprise IT Architectures SOA Part 2

INF5120 Model-Based System Development

Business Process Modeling for SOA Prepare for SOA Implementation Dr. Alex Kwok 22 Nov 2004

Cloud Computing Lectures SOA

WebSphere. Enablement for WebSphere Industry Content Packs. Telecom Enablement

Top Down Versus Bottom Up in Service-Oriented Integration: An MDA-Based Solution for Minimizing Technology Coupling

OMG SoaML Service Oriented Architecture Modeling Language - UML Profile and Metamodel for Services

Enterprise-SOA with UML+SoaML For Healthcare. Cory Casanave

Model-Based Development with SoaML

Implementing Enterprise Architecture with MDA

Designing Business Architecture and Application of E- Collaboration for Small and Medium Enterprises in Indonesia Using Service Oriented Architecture

Model based Approaches for Service Oriented Architectures. Mel Greer

Research on the Processes and Strategic Points of SOA Project Implementation

Managing Business Services Through Service Registry

RESOLVING APPLICATION DEVELOPMENT ISSUES USING SOA Y. KIRAN KUMAR 1, G.SUJATHA 2, G. JAGADEESH KUMAR 3

Service Oriented Architecture

SOA Workshop - SOMA. Service Oriented Methodology & Architecture SOMA

Possibilities for Modeling and Integration of Business Processes*

An Automated Service Realization Method

Structuring CAMA (Context Area Mobile Applications) in SOA (Service Oriented Architecture) and MDA (Modern Driven Architecture)

SERVICE ORIENTED ARCHITECTURE (SOA)

Business Process Service Oriented Methodology (BPSOM) with Service generation in SoaML

IBM Business Process Manager Telecom Pack version 7.5. Order Handling How To Guide

Business analysis & BPM methodologies. PV207 Business Process Management

IN the inaugural issue of the IEEE Transactions on Services Computing (TSC), I used SOA, service-oriented consulting

Service-oriented Architectures (SOA) - From Business to IT -

Model Driven Architecture as Approach to Manage Variability in Software Product Families

Model-Driven Service Engineering with SoaML

Analyze, Design, and Develop Applications

A Division of Data Access Technologies, Inc. Ed Harrington ed-h at modeldriven.com. San Diego, California, USA 4 February 2009

A Method for Information Systems Development According to SOA

Model-Driven Development of Service-Oriented Systems

A Rational approach to modeldriven

Business Process Service Oriented Methodology (BPSOM) with Service Generation in SoaML

Mapping Service-Orientation to TOGAF 9 Part IV: Applying Service-Orientation to TOGAF s Service Contracts

Business modeling practices: Using the IBM Rational Unified Process, IBM WebSphere Business Integration Modeler, and IBM Rational Rose/XDE

An MDA Method for Service Modeling by Formalizing REA and Open-edi Business Frameworks with SBVR

JOURNAL OF OBJECT TECHNOLOGY

Service Orientation for the Design of HLA Federations

ARIS Expert Paper. March Steps to Business-Driven SOA.

Service-oriented architecture (SOA)

Service oriented architecture solutions White paper. IBM SOA Foundation: providing what you need to get started with SOA.

Developing a Legacy to SOA Migration Method

Smart SOA in Action. Service-Oriented Architecture (SOA) for Business Process Management. IBM Software Group

Integrating Business Processes

Enterprise IT Architectures SOA Part 1

A Lightweight Approach to Service Design Specifications

From BPMN 2.0 to the Setting-Up on an ESB - Application to an Interoperability Problem

Stan Verswijver PERSONAL PROFESSIONAL PROFILE

INCOSE (MBSE) Model Based System Engineering (SoS) System of Systems Activity Introduction

Decision Making and Service Oriented Architecture for Recruitment Process. Using the New Standard Decision Model and Notation (DMN)

Service Oriented Architecture

Service-Oriented Computing

An Agile Method for Model-Driven Requirements Engineering

Mitigating Development Risks by using MDA. Chris Lema, Vice President of Technology. sosy.

Keynote Presentation: Driving the Value of SOA in an Enterprise Architecture

Incorporating Model-Driven Techniques into Requirements Engineering for the Service-Oriented Development Process

A Customizable Methodology for the Model-driven Engineering of Service-based System Landscapes

14. E-Commerce Applications and Infrastructures

<Insert Picture Here> Oracle Business Process Analysis Suite: Overview & Product Strategy

Rational Unified Process (RUP) in e-business Development

Service Oriented Architecture

MDA in the Federal Government

Designing Web Services with Tropos

Architecture Development Methodology for Business Applications

Design of SOA Integration for 3C Distribution Channel

SOA Concepts. Service Oriented Architecture Johns-Hopkins University

A Quick Chat About SOMF Structural Modeling

IBM s SOA Quality Management Strategy with Rational and Tivoli Terry Goldman Technical Evangelist Rational Software IBM ASEAN/SA

WebSphere for SOA. BPM with SOA: Your Most Potent Weapon to Take on Business Complexity

Business Process Management system using SOA

SERVICE ORIENTED ARCHITECTURE SOA INTRODUCTION

Web Services And Service Oriented Architecture Lab Manual

Towards Realization of Web Services-Based TSA from NGOSS TNA*

Effective Governance: Empowering Teams to Innovate

A Semantic Service Oriented Architecture for Enterprise Application Integration

MDA and Stakeholders in an MDA Process

Integration Through A Service Oriented Architecture

IBM Rational Systems Strategy

Business Process Management

Using UN/CEFACT S Modelling Methodology (UMM) in e-health Projects

Using intentional actor modeling. enterprise software architectures

SOA Analyst Certification Self-Study Kit Bundle

2008 IEEE International Conference on Web Services (ICWS) SERVICES COMPUTING. A New Thinking Style of Education and Engineering. September 25, 2008

SOA Enabled Workflow Modernization

Application Architecture: Reusing Existing Applications in SOA-Based Business Processes

When the programming model shifted from the traditional procedural model to

Master thesis. Process and realization of SOA centralized system

Transcription:

Model-Driven Software Engineering Model-Driven Development of SOA Applications II Dr. Jochen Küster (jku@zurich.ibm.com)

Agenda Process and Techniques for SOA Development From Service Realization to Service Implementation Summary and References 2

Process and Techniques for SOA Development 3

Overview of Methods for Developing SOA Applications Different methods exist for building SOA applications Service-oriented Modeling and Architecture (SOMA) Method for developing service-oriented solutions developed by IBM can be used together with SoaML and IBM tooling Quasar Enterprise Method for service-oriented engineering of application landscapes Developed by cap gemini sd&m SOA Methodology A set of principles for designing service-oriented solutions Based on a book by T. Erl Sometimes referred to as Mainstream SOA Methodology 4

Main Phases of SOMA Identification phase Aims at identifying services Various techniques can be used Specification phase Aims at specifying services and components Result is a service-oriented architecture Realization phase Refine components Service Implementation Construct, generate and assemble services 5

Activities for SOA Development (SOMA) [Source:SOMA] 6

Roles and Tools used in SOA Application Development Role Business Executive Business Analyst Software Architect Solution Architect Task Convey business goals Analyze business requirements Design the architecture of the solution Implement the solution Tool IBM Rational Requirements Composer IBM Rational Requirements Composer IBM Rational Software Architect IBM Rational Application Developer 7

Identification of Services Input of activity: Business requirements, business processes, business goals Output of activity: Services architecture (SoaML model) Roles: Business Analyst, Software Architect Techniques: Goal-service modeling Identifies capabilities needed to realize business requirements such as goals and strategies Domain decomposition Uses activities of business processes and other descriptions to identify needed capabilities Existing asset analysis Mines capabilities from existing applications 8

Goal-Service Modeling Business goals are decomposed into subgoals until actionable goals are obtained Key Performance Indicators (KPIs) are identified Metrics are identified for measuring KPIs Candidate services are identified for reaching business goals Candidate services are then captured as Capabilities in SoaML 9

Goal-Service Modeling Example [Source:SOMA] 10

Capabilities and Candidate Services Candidate Services can be captured as capabilities in SoaML 11

Specification of Services Input of activity: Capabilities Output of activity: Service Specification, Service Data Model Roles: Business Analyst, Software Architect Key Activities: Specify Service Interfaces including operations and roles 12

Elements of a Service Specification Name of the service Provided and required interface, describing functional capabilities Its name Required or optional service data inputs or outputs Preconditions, post-conditions, exceptions, fault conditions Any communication protocol or rules Capabilities that consumers have to provide to be able to use the service Requirements for service implementers Constraints Qualities of service that consumers should expect and that providers have to provide (cost, availability, performance, ) Policies such as security or transaction scopes 13

Service Specification Example Operation or event reception Service Interface (SoaML) Roles (SoaML) Communication protocol (SoaML) Note: The ShippingService realizes the Shipping interface and uses the required interface ScheduleProcessing 14

Service Specification Example 15

Service Data Model Example Service data is data exchanged between service consumers and providers Note: This is not to be confused with a WSDL messages 16

Realization of Services Input of activity: Service Specification, Service Data Model Output of activity: Service Design Model Roles: Software Architect Key Activities: Service provisioning Decide which service providers provide which services Design the service implementations Service composition Assemble and connect service consumers and providers 17

Service Realization Example: Service Provisioning Participant Invoicer provides the InvoicingService service Participant Invoicer provides the Invoicing interface Participant Invoicer requires the InvoiceProcessing interface Participant Invoicer implements the two operations completepricecalculation and initiatepricecalculation The completepricecalculation has to be consistent with the protocol The initiatepricecalculation operation is implemented using Java 18

Service Composition The OrderProcessor Participant provides the Purchasing Service and orchestrates the InvoicingService, SchedulingService and ShippingService 19

Service Composition The participant Manufacturer provides the complete service design model 20

From Service Realization to Implementation 21

Implementation of Services Input of activity: Service Design Model Service Data Model Service Data Model Service Design Model Output of activity: Implementation of Service Design Model for a selected platform Roles: Software Architect Key Activities: Transform Service Design Model using predefined transformations Add implementation relevant details manually 22

Models used for Service Implementation Interfaces Participants providing services Participants assembling services according to a ServicesArchitecture 23

Target Architecture: IBM SOA Programming Model Business Objects in XSD WSDL Interfaces Modules Module Assemblies in SCA Processes in BPEL4WS Java components 24

Generation using Rational Software Architect The UML to SOA transformation generates a WebSphere Integration Developer project from the SoaML models Library projects contain business objects, interfaces, module exports shared by other projects Module projects contain a module implementation for each participant in the UML services model Service Data Model Business Objects in XSD SCA Module Assemblies Service Design Model SCA Modules SCA Components Automatic generation BPEL Processes 25

Generation using Rational Software Architect For each class and data type an XSD element is created For each UML interface a WSDL porttype is created For each UML activity a BPEL process is created Each service provider component is transformed into a module Connections between participants in UML are implemented as bindings between module imports and exports in SCA Service Data Model Business Objects in XSD SCA Module Assemblies Service Design Model SCA Modules SCA Components Automatic generation BPEL Processes 26

Module Assembly Example Compare to the OrderProcessor participant 27

Implementation of the Architecture After generation, the implementation must be completed manually: Opaque behaviors must be implemented by adding Java code. Correlation for business processes needs to be specified. Correlation specifies information needed to identify instances of a component. User Interfaces for human tasks must be created. 28

Setting SoaML into MDA Perspective PIM in SoaML Service Data Model Service Design Model Automatic generation PSM (SCA) Business Objects in XSD SCA Modules BPEL Processes SCA Module Assemblies SCA Components Code (SCA implementation) UI for Human tasks Java for Components Manual completion 29

Summary of Lecture Introduction to SOA and SOA key concepts SoaML profile for modeling SOA applications Process and techniques for Model-Driven Development of SOA applications Generation of SOA applications from SoaML model References: Service oriented architecture Modeling Language (SoaML) - Specification for the UML Profile and Metamodel for Services (UPMS), OMG Adopted Specification, Finalisation Task Force Beta 2 document (FTF Beta 2), December 2009. J. Amsden. Modeling with SoaML Part 1 Part 5. IBM developerworks. [SOMA] A. Arsanjani et al. SOMA: A method for developing service-oriented solutions. IBM Systems Journal, Vol 47, No 3, 2008. [IBM SSS] Ibrahim M., Long G, Service-Oriented Architecture and Enterprise Architecture, http://www.ibm.com/developerworks/ webservices/library/ws-soa-enterprise1/ 30

Further References G. Engels et al. Quasar Enterprise. Anwendungslandschaften service-orientiert gestalten. dpunkt Verlag, 2008. M. Huhns et al. Service-oriented computing: key concepts and principles, IEEE Internet Computing, Volume 9, Issue 1, Jan-Feb 2005, Page(s):75-81 M. Papazoglou, W. van den Heuvel; Service Oriented Architectures: Approaches, Technologies and Research Issues; VLDB Journal, 16:389 415, 2007 31