Upload
diego-stuart
View
216
Download
1
Tags:
Embed Size (px)
Citation preview
Andrea Maurino
Web Service Design Methodology
Batini, De Paoli, Maurino, Grega, Comerio WP2-WP3
Roma 24/11/2005
2Web Service Design Modeling
Outline
Aim and guidelines
Ontologies
Phases
Future work
3Web Service Design Modeling
The methodology
The methodology provides a rationale for designing/re-designing of a Web service.
The guidelines of our methodology are:
Consider channels and users as first-class citizens;
Consider different level of abstractions;
Evaluate and model QoS requirements;
Use different skills for different problems;
Use standard tools.
4Web Service Design Modeling
Ontologies
WSDM exploits three different ontologies developed within the MAIS project:
• Services
• QoS
• Context (channel + user profile)
Three different perspectives:
• Acquisition of common knowledge and mutual relations among entities;
• Verification of the Web service compliancy with ontology definitions;
• Enrichment of ontologies by adding new services, qualities and relationships discovered during the development process.
5Web Service Design Modeling
Ontology relationships
Service
Abstract_Service Internet_Service Travel_Service
QualityOfService
QoS_ServiceLevelQoS_PhysicalQoS_NetworkQoS_Architectural
Context
UserProfile Channel
UserActivity UserDescriptionUserRole UserPreference
ConceptualChannel LogicalChannel TechnologicalChannel
Has
Has
OntoServ
OntoQoS
OntoContext
Business Process
provides
Has
QualityOfService
QoS_ServiceLevel
QoS_SL_Domain_Dependent
QoS_SL_Domain_Independent
Usability
Availability
UserProfile
UserDescription
Interest Job PhysicalQualities
MentalQualities
Personal data
BodyFunction
Skills
Education
Expertise
RelationCapabilities
DeliveryTime
Comprehensibility
Learnability
Operability
Pleasantness
MessagePriority
AttachmentPreference
ConfirmationPriority
TruncateMessage
MessageSize
AttachmentNumber
Security
Reliability
Context
Security
OntoContext OntoQoS
...
Channel
UserPreference ...
6Web Service Design Modeling
The steps of the methodology
Service ModelingActual
Service Modeling
New Service
Modeling
High-Level Re-Design
Interaction Design
Data and Operation
Design
Customization
Services Identification
Channel Customization
User Customization
Specification of Conceptual Channels
Domain Requirements(User Roles and
Business Processes)
Actual Services
Specification of Technological
Channels
User Profiles
Class Diagrams
Functional Requirements
User Requirements
Specification of Logical Channels
Non-Functional
Requirements
Provider Technological Requirements
Final UML Diagrams
Web Service Description
Functional UML Diagrams
Enriched UML Diagrams
Implementation and Deploy
WSDL/WSOL Documents
7Web Service Design Modeling
Services Identification
Goal: define a detailed specification of functional and non-functional requirements for the Web service that has to be developed.
Input: Specification of conceptual channels: an high-level specification of the channels to deliver the service; Domain requirements: business processes the organization needs to support and the roles of the involved users.
Output: Functional / Non-functional requirements: a description of the service in terms of operations, QoS and Context (userProfile and channels) .
Services Identification
Functional / Non-FunctionalRequirements
Specification of conceptualchannels
Domain Requirements
8Web Service Design Modeling
Service Modeling
Goal: design the high-level model of the Web service, according to the data and operations that the service will offer.
Input: Functional requirements: defined in the previous phase;
Output: Functional UML Diagrams: represent the domain elements (class diagram) and a description of the interaction between the system and the users (sequence diagram).
Actual Service Modeling
New Service Modeling
Actual Service
Class Diagram
Service Modeling
Functional Requirements
Functional UML Diagrams
9Web Service Design Modeling
Service Modeling
The Service modeling phase is divided in two sub-phases:
Actual service modeling: has the goal to model UML diagrams describing the existing services to be redesigned to meet the new requirements. Input of this sub-phase are:
Actual service: description of the existing services in terms of interfaces and interactions; Class diagram: the definition of the data structure of the service.
New service modeling: if actual service modeling has been performed, it has the goal to modify the specification of the existing service according to new requirements. Otherwise, it aim is to design a new service.
10Web Service Design Modeling
High-Level Re-Design
Goal: revise and enrich the UML diagrams in the light of the non-functional requirements, the user requirements and the specification of logical channels, and QoS.
Input: Non-functional requirements: defined in the Service Identification phase; Specification of logical channels: specify the logical component involved in the channel, their value constraints and their range of value.
Output: Enriched UML Diagrams.
Data and OperationDesign
Interaction Design
Non-functionalrequirements
Specification oflogical channels
High-level Re-Design
Enriched UML Diagrams
11Web Service Design Modeling
High-Level Re-Design
The High-Level Re-design Phase is divided in two sub-phases:
Data and Operation Design: has the goal to enrich UML class diagram of services with non-functional requirements including QoS, channel description and user profile. The designer consults the OntoContext, and OntoQoS ontologies to perform this operation.
Interaction Design: has the goal to enrich UML sequence diagrams with user, channel and QoS requirements and describe the behavior of software components defined in the previous sub-phase.
12Web Service Design Modeling
Customization
Goal: refine the current design specification by evaluating the actual deployment scenario. The assumptions taken in the previous phases are compared with the different characteristics of users and providers to verify if service qualities, user and channel profiles are adequate.
Input: Specification of technological channels: technological specification of the different channel components; Provider technological requirements; User profile: static and dynamic characteristics of the user.
Output: Final UML diagrams.
ChannelCustomization
UserCustomization
Specification oftechnologica
lchannels
Providertechnologicalrequirements
Customization
Final UML Diagrams
User Profiles
13Web Service Design Modeling
Customization
The Customization phase is divided in two sub-phases:
Channel Customization: has the goal to evaluate the current specification with respect to the available technologies. This evaluation process considers channel constraints imposed by the service provider.
User Customization: has the goal to provide quality thresholds that can be determined by end user profiles and validate if the actual service specification is able to satisfy them.
14Web Service Design Modeling
Web Service Description
Goal: transform UML diagrams into web services descriptions according to standard languages. The languages we use are:
WSDL (Web service description language): enables specification of data types (the type element), operation signatures (the message and operation elements), port types (the portType element), message format and transport protocol details (the binding element), network addresses of different ports (the port element), and grouping of different ports into a Web Service (the service element).
WSOL (Web service offerings language): enables specification of non-functional aspects of the Web Service (e.g. QoS constraints).
15Web Service Design Modeling
Future work
Use of the UML profile proposed by OMG for the definition of the QoS;
Extension of our methodology in order to design composite web services;
Definition of a complete set of tools that supports the designer in the different phases of the methodology.