|
|
SOA and SOA Development for the UML Experienced |
Course
Overview
This course provides a solid
overview of applying Component Based
Development/Design using UML. The
context is a Service Oriented
Architecture (SOA) in which a
Service Oriented Process (SOP) is
applied.
What will I learn?
This course is targeted at
Architects, Analysts and Designers. Students should be familiar with OO and UML
It is important to understand that this is not a Web Services course nor is this
a programming course. This is a course on Service Orientation (SO) explaining
the techniques involving:
• The SO Architecture
• A SO Software Development Process
• Various SO Technologies
The role of Web Services is explained in the SO Technologies section. This
course will clearly explain that Web Services is merely one of the many
technologies used to implement an SOA.
This course guides the student through the steps of using UML and BPMN to define
a system that is comprised of service and components. The overall architecture
of such a system is the Service Oriented Architecture. The student will learn
how the use different UML and BPMN models and understand their semantics in an
SOA. Furthermore students will learn techniques used in most Software
Development Processes that deliver a system in terms of components and services,
a so called Service Oriented Process.
The course will illustrate the significance of Business Process Models and how
they help the further development of the IT Model. Students will learn how BPM
defines use cases, services, components and orchestrations.
• Explain the Service Oriented domain (Architecture, Process, Technology and
Organization)
• Specifying your SOA Business goals
• Explain the (possible) role of Component Based Development in a SOA
• Define Service Architecture Layers and service types
• Explain and be able to define SOA Policies
• Usage of UML
• Explain BPMN and be able to use BPMN for your business process modeling
• Transform your BPMN in an executable model
• Define the Architecture and design of a system following a Service Oriented
Process using BPMN and UML
• Design the internals of a component (Service Realization)
• Various Service Oriented Technologies
• Technologies required to define the SOA (technology will be based Web
Services)
• Overviews of WSDL, BPEL and WS-Policy
For more details look at the objectives set for the sessions and lessons of this
course.
Course
Contents
Introduction to Service
Orientation
• Define the SOA
• List benefits of SOA
• Understand the move in IT which
leads us to SOA and the business
value it can bring
• Define Business Agility and
explain the different aspects of
agility
• Define a Service and a software
service
• Discuss the possible role of Web
Services in an SOA
• Understand the relation between
SOA and CBD
• List benefits of using components
for the Service implementation
• Describe the requirements of the
Software Development Process that
leads to services.
Describing a Service Oriented
Process (SOP)
• Examine the gap in Software
Development between the model and
the domain experts (the source).
• Examine the gap in Software
Development between the model and
the developers (the goal).
• Recognize the area of tension
between these two gaps.
• Discuss the potential role SOA
plays in managing that gap.
• Recap/Overview of UML 2.1
• Describe the requirements of the
Software Development Process that
leads to services.
• Discuss elements of a Service
Oriented Process (SOP)
• Understand the different workflow
in a SOP
• Discuss the cultural and
organizational changes required for
SOA and SOP
• Understand the concept of "Design
by Contract"
• Understand that SOP requires an
iterative and incremental approach.
Business Process Modelling
Business Process models (BPM)
• Understand the role of BPM
• Appreciate the usage of BPM
• Discuss BPMS
• Position BPEL and WfMC's XPDL
• Pragmatic BPM (IT driven BPM)
• Understand how BPM can simplify
and guide further analysis
• List different BPM notations
(e.g., UML, Catalyst, BPMN)
• Introduce Catalyst as a BPM
process
• Role of BPM is Software
development
• Understand BPM's role in use case
modeling
• Understand BPM's role in SO
Component and Orchestration
Identification and modelling
IT Driven BPM
• Decomposing an organization
into process groups
• Introduce the Process Hierarchy
Diagram (Catalyst)
• Define an Identifiable Business
Process
• Define the process flow for an
Identifiable process
• Define a Elementary Business
Process
• Introduce the Business Process
Modeling Notation (BPMN)
• Understand BPMN's Pools and Lanes
• Understand BPMN's Events , Tasks,
and the other BPMN elements
Process of Service Planning and
Specification Overview
• Understand the steps involved
in specifying and populating the
service architecture.
• Project (Consume) driven Service
Harvesting
• Discuss other means of identifying
services
• Define Service Portfolio Planning
• Discuss Strategic, Tactical and On
Demand Service
• Discuss other methods for planning
the service portfolio
• Describe the role of Service
Management (governance)
• Understand what comprises the
Specification of Service (SoS)
• Understand the possible role of
WSDL
• Introduce WS-Policy as a means of
augmenting the service specification
Service Portfolio Planning
• Understand the objectives of
Service Portfolio Planning (SSP)
• Describe techniques for
identifying
Service/Business/Architectural
domains
• Describe possible contents of the
SOA Policies and Guidelines
• Defining Services using the
Business Architecture (using the BPM)
• Illustrate a consume driven (IT
Model) approach for identifying
Services using a Conceptual Model.
• Illustrate another top-down
approach using the Services Process
Model.
• (IT Model) Understand the process
of Conceptual modelling
Consume driven Service Operation
Specification
• Define a process of Service
Operation Specification
• Identify Process operation using
BPMN or the Use Cases Model
• Design Process as an Orchestration
or Process Operations
• Decide between these two process
implementation
• Identify business operations
• Specify operation signatures for
procedure style services
• List two ways for specifying
operation signatures for document
style services
• Specifying, modelling and managing
the Service Data types
• Completing the Service
Specification (services contract)
using requirements
• Functional requirements and
exceptions (Faults)
• Describe the services in a WSDL
Document
Orchestration using BPMN and BPEL
• Understand how to identify
orchestrations using BPMN
• Understand what makes a BPMN model
executable
• Model an Orchestration using BPMN
• Introduce BPEL and it's mapping
with BPMN
Requirements Capture
• Understand the process of
requirements capture
• Understand how to model
requirements
• List different types of
requirements
• Understand the relation between
UML and requirements
• Understand how to model functional
and non-functional requirements
• Understand the relation with the
business model
• Understand the role of Use cases
Use Case Modeling
• Introduce use cases in more
detail.
• Understand the Use case Diagram
• Introduce the concept of a Use
case, Actor and their Relationships
• Explain a technique of Use case
modelling
• Introduce techniques of
identifying Actors
• Introduce techniques of
identifying Use cases
• Understand the characteristics of
a "good" Use case
• List guidelines
• Understand Use case relationships:
extends and includes
• understand how Use cases
complement the Requirements
Documenting Use Cases with
Scenarios
• Understand scenarios
• Understand the difference between
primary and secondary scenarios
• Understand what scenarios describe
Elaborate the Use Case Model
• Briefly introduce the
technique of Conceptual Modelling
• Understand the Objective of the
Conceptual Modelling
• Create a conceptual model
• Learn to distinguish good and bad
attributes
Web Services Technologies Introduced
Communication protocols (HTTP &
SMTP)
• Provide an overview of HTTP
• Introduce HTTPS
• Provide an overview of SMTP
• Show the use of HTTP/SMTP with Web
Services
Introduction to SOAP
• Provide an overview of SOAP
• Show the use of SOAP with Web
Services
• Explain some of the differences
between SOAP 1.1 and 1.2
Introduction to WSDL and UDDI
• Show the use of WSDL with Web
Services
• Provide an overview of WSDL
• Explain the UDDI specification
• Introduce UDDI registries
• Explain the differences between
UDDI version 2 and version 3
Overview of MDA
• Understand why MDA is a
logical step in software
development.
• Understand the basic concepts of
MDA.
• Understand how UML and MDA relate.
• Understand how model
transformations can be realized.
MDA Applied in an Actual Design
• Demonstrate how a tool can
support an MDA process
• Demonstrate creation of the CIM,
PIM and PSM models
• Demonstrate round trip code
generation
• Demonstrate how models stay
synchronized
Hands-on lab exercises
1. Model a Process using a
BPD-Model the Business Process flow
of a few selected elementary
business processes (using BPMN)
2. Identify the Orchestration
Services-Understand how to identify
orchestration services
3. Identifying the Business
Services-The objective is to
understand ways of identifying
services.
4. Identify Service
operations-Understand how to
identify Service Operations and
verify completeness using a formal
approach.
5. Graphically model an
Orchestration using BPMN-Understand
how to model an Orchestration using
BPMN and understand how to invoke
such a service
Hands-on lab exercises (in
appendences)
1. Define the System
Requirements (Creating the PIM)-The
objective is not so much the use
case modelling, but the use case
modelling exercise is added so that
you see all the steps. Furthermore,
it will give you insight into the
High View system.
2. Write a use case scenario-Learn
how to write use case scenarios
3. Create a conceptual model-Create
a conceptual model of the HighView
domain based on the use-cases
identified earlier. Reflecting the
essential concepts in the problem
domain.
Recommended Follow-On Courses
None
Duration
3 days
|
Cost |
|
Recommended reading & follow on courses
Service-Oriented Architecture: Concepts, Technology & Design Testimonials
Who has been on this course before
|
