Upload
others
View
7
Download
0
Embed Size (px)
Citation preview
TOWARDS AN APPROACH OF A
MASHUPED USER-CENTRIC SOA
PhD. Meriem [email protected]
Supervisor : Pr. Karim BaïnaSupervisor : Pr. Karim Baï[email protected]
1
OUTLINE
� Problematic :
� Problems and limitations of SOA (use case)
� End users : who are they? What do they need ?
� Research objectives
� User-centric SOA� User-centric SOA
� Elements of the solution : EUD, Web 2.0, IoS, Visual
Programming
� State of the art
� Contribution
� Enterprise Integration Patterns2
PROBLEMATIC
� SOA limitations :
1. Exclusion of the end user from the hierarchy of the SOA actors: users kept away and out of the loop
The involvement of end users in the life cycle of software development is increasingly seen as an important point, because it promises great value
2. Rigidity, heaviness and incompatibility of SOA implementations with the real constraints of end users
1. Lack of accessibilityEvery user should be able to access and use services
2. Lack of interoperability and opennessSOA implementation should adopt a variety of
interoperable technologies in order to meet the great variety of the web 3
PROBLEMATIC
� SOA limitations (suite):
3. Lack of flexibility and scalability: no support of the
composition on the fly, complex and heavy SOA stack
Complexity of service composition techniques should Complexity of service composition techniques should
be reduced and made reachable in order to empower
end users
4. Lack of mobility
SOA technologies should be made lightweight to be
widely supported by different devices.
4
PROBLEMATIC
� Use case : e-Government application
1. Users: citizens, companies or associations.
All with limited technical skills.
2. Functional description:
1. Display information
2. Ask for administrative documents
3. Dematerialize ordering and payment procedures for
public procurement
4. register online to educational institutions
3. Technical description:
Use of Web Services technology.
Services are accessible from dedicated portal interfaces.
5
PROBLEMATIC
� Use case : e-Government application
4. Limitations:
1. Users have to browse web sites to use services and retrieve the information they need. The concept of service is unclear.
2. Changes in the e-Gov solution would take time and 2. Changes in the e-Gov solution would take time and require significant involvement of experts (creating a BPEL file is not an easy task).
3. Users do not have the possibility to combine the services of the e-Gov solution with other services to meet their new needs. Examples of use cases :
- register the birth of a newborn in the various required services, either with the insurance company, social security, etc..
- recruitment advertisements in public administration are displayed in text, then it would be more interesting to display on a map.
4. Access to e-Gov services from mobile devices could have drawbacks.
6
PROBLEMATIC
� End users : � Who are they?
� What are their requirements?
� How they interact with systems and what is the purpose of these interactions?
� What should a system or software ensure to meet users needs?
What to do in the case of unsatisfiability of end users?� What to do in the case of unsatisfiability of end users?
1. Definition of end user :
A software end user is a person who interacts with information systems solely as a final information consumer.
It’s a user with minimal technical knowledge, and who uses the software for personal (business or leisure) purposes, in the context of daily life or daily work, without having any intentions to produce other systems.
They do not worry about system technologies as long as they can get what they need quickly.
7
PROBLEMATIC
� End users :
� Different categories of end users:
� Context of technology use : work, leisure, …
� Objectives or tasks
� Profils (culture, education, training, occupation,…)
� Level of mastery of the technologies : expert/beginner
Rockart, J. and Flannery, L. (1983) defined six end users categories:
� Nonprogramming end users
� Command level users
� End-user programmers,
� Functional support personnel
� End-user computing support personnel
� Programmers 8
PROBLEMATIC
� End users :
� Requirements and problems encountered:
Requirement Problem
Functional Limited set of offered features.
End users needs change constantly�systems
9
End users needs change constantly�systems
could never satisfy all end users
Usability Lack of visibility, feedback, consistency, non-
destructive operations, discoverability,
scalability, reliability
Non functionnal Lack of documentation, performance,
security, portability
PROBLEMATIC
� End users:
� The criteria for end user acceptance of technologies /
system quality:
� McCall’1977 defined 11 factors
� ISO 9126 defined 6 factors
1. Utility
2. Usability and intuitiveness
3. Efficiency, Reliebility, Maintenability, Portability
4. Personalizibility : customizibility. Work is highly
context dependant, designing models break down�
Workers need the means to tailor the systems when work
practices change.10
RESEARCH OBJECTIVES
� User-centric SOA :
� Is the possibility for all end users to design and create new
services through the combination and composition of
existing services.
� Open the Information System to the public
� More technology-independance of SOA� More technology-independance of SOA
� Lightweight SOA technologies
� Empowerment of the end user: Easy and flexible
composition on the fly of services
� Elements of the solution : EUD, Web 2.0, IoS, Visual
Programming
11
RESEARCH OBJECTIVES
� EUD (End-User Development) is an approach that :
� puts the user at the front and gives him the ability to
create on the fly its own applications that meet a
situational need.
� outsources development effort to the end user
� Web 2.0 and Mashup : mash different resources to create
new applications. Exemple : YahooPipes, Jackbe Presto
Wires, IBM Mashup Center, etc.
� Internet of Services (IoS): Internet of the futur
� Visual Programming
12
RESEARCH OBJECTIVES
� Mashup might :
� respond adequately to the individual and diverse needs of end
users
� bring the user to the center, by providing software with faces.
� improve reach and richness of information system
Richness
B2B collaborations
Enterprise Mashup
Web sites, Portals
Reach 13
STATE OF THE ART
� Current Mashup tools have some drawbacks:� Mashup tools use lightweight resources (RSS, ATOM, REST
services, etc)
� Mashup tools do not allow the creation of business process mashups
� Mashup tools do not provide stable applications
� Mashup tools are still outside the scope of end users� Mashup tools are still outside the scope of end users
� The Mashup is at an early stage and needs more research:� There is a lack of a powerful language for describing Mashup: the
current Mashup applications use procedural languages such as JavaScript, where code often separates the layer of the user interface of the layer of data integration
� The advanced Mashup applications can not be achieved.
� There is a need for patterns and models to enhance the development of Mashup applications.
14
CONTRIBUTION
� Enterprise Integration Patterns (65): Gregor Hohpe ,Bobby Woolf, 2003
� Messaging Channel patterns
� Message Construction patterns
� Message Routing patterns
Message Transformation patterns� Message Transformation patterns
� Messaging Endpoint patterns
� System management patterns
Why messaging ?
More reliable than Remote procedure invocation, File transfert,
Shared database.15
CONTRIBUTION
� Messaging Channel patterns:
discuss the way of data transmission or communication
between two applications or resources.
� A Point-to-Point Channel: allows an application to send a message
to exactly one receiver
� A Publish-Subscribe Channel creates a communication channel � A Publish-Subscribe Channel creates a communication channel
between one sender and several receivers
� A Datatype Channel ensures that each different type of data will
be send separately in a different channel, so that the receiver know
exactly what to do with the received data
� Invalid message channel
� Dead letter channel
� Guaranteed delivery channel
16
CONTRIBUTION
� Point-to-Point channel
� Publish-subscribe channel
� Datatype channel
17
CONTRIBUTION
� Message construction patterns:
decide of the intention of the message, returning a
response, huge amounts of data, slow message
� Command message
� Document message� Document message
� Event message
� Request-Reply
� Message sequence
� Message expiration
18
CONTRIBUTION
� Message routing patterns:
explains how to provide routing and brokering
ability to an integration solution.
� simple routers like content-based router, message
filter, dynamic router and recipient listfilter, dynamic router and recipient list
� composed routers like composed message processor
and scatter-gather.
19
CONTRIBUTION
� Content-based router
� Splitter
� Scatter-Gather
20
CONTRIBUTION
� Message transformation patterns:
focuses on the data processing and conversion.
These operations could operate on the data
format or the data content itself.
� envelope wrapper pattern that makes a message able � envelope wrapper pattern that makes a message able
to meet specific requirements on the format, such as
message header fields or encryption
� content enricher or the content filter act on the
message content by adding new content or removing
a part of the content.
21
CONTRIBUTION
� EIPs are implemented by a set of mediation bus:
Camel, Mule and Apache, in order to achieve
complex integration schemes.
� Our idea is to introduce the EIPs in Mashup� Our idea is to introduce the EIPs in Mashup
tools in order to enhance their integration
techniques.
� Objective : a EIPs-based SOA Mashupping
language
22
Thank you for your attention !
TOWARDS AN APPROACH OF A MASHUPED
USER-CENTRIC SOA
23
PhD. Meriem Benhaddi [email protected]
Supervisor : Pr. Karim Baïna [email protected]