Title: Towards StyleOriented SOA Design
1Towards Style-Oriented SOA Design
First International Workshop on Design of
Service-Oriented Applications
Chen Wu, Elizabeth Chang, Vidyasagar Potdar
School of Information Systems Curtin University
of Technology Perth, AUSTRALIA
2Agenda
- Motivation
- Software Architectural Styles
- Framework of WS-Architecture Styles
- Catalog of WS-Architecture Styles
- Related Work
- Conclusion and Future work
3Motivation
- Quality requirement really matters
- Second most significant criteria to choose
WS-Solutions (Ciganek et al. 2005) - Architecture heavily affects QR (Lundberg et al.
1999) - An essential artifacts for architectural design
Style - We need
- a catalog of well-identified web services
architecture styles (patterns) with their
corresponding rationales and business contexts - This paper provides
- An investigation of existing web services
architectural styles
4Software Architectural Styles
- Originally borrowed from the classical field of
architecture - Major characteristic prescriptive nature
constraint - Definition of Style an architectural style is a
coordinated set of architectural constraints that
restricts the roles/features of architectural
elements and the allowed relationships among
those elements within any architecture that
conforms to that style (Fielding 2000) - Purposes of Style
- Categorizing architectures,
- Defining common characteristics of architecture,
and - Composing new architecture
5Classification of WS-Architecture Styles
- Traditional Architectural Styles
- e.g. layered, broker, distributed, blackboard,
event-driven, etc. - Agent Classification
- Middle-agent
- Matchmaker
- Facilitator
- Multi-agent
- Web Services Lifecycle
- Discovery
- Execution
- Composition
6Framework of WS-Architecture Styles
7Basic Styles within WS-Lifecycle
8Matchmaker
- Matchmaker Architectural Style
9Matchmaker
- Basic Matchmaker (BM)
- Layered Matchmaker (LM) (Wang et al 2004, Yu and
Lin 2004, and Degwekar et al 2004)
10Primary Problems for Centralized Matchmaker
- UDDI is not scale well, lead to serious
performance bottlenecks (Papazoglou et al. 2003,
Paolucci et al 2004) - Load-balancing strategies does not constitute a
practical solution (Pilioura et al. 2004) - Replication between UDDI registries does not
occur in practice (Thaden et al. 2003, Wang et al
2003) - Creating a scalable model for distribution of
data is difficult (Sivashanmugam et al 2004)
11Matchmaker (cont.)
- Hierarchical matchmaker
- Papazoglou et al 2003
12Matchmaker (cont.)
- Federated Matchmaker (FM)
- (Thaden et al. 2003, Sivashanmugam et al. 2004,
Verma et al. 2004)
13Peer-to-Peer
- Peer-to-Peer Architectural Style
14P2P Discovery Style(Ayyasamy et al 2003, Wang et
al 2003, Prasad and Lee 2003, Emekci et al 2004,
Paolucci et al 2003, Schmidt and Parashar 2004,
Banaei-Kashani et al 2004)
- Common application of leveraging P2P in DWS
environments - Major problems
- Existing UDDI model is not utilized at all
- Trust and Security is not guaranteed
15P2P Service Composition Approaches
- P2P Composition
- Static Composition Style (P2PC-S)
- Partition and assignment of process specification
at design-time (Muth et al 1998, Nanda et al
2004) - each local engine at run-time only obtains the
partial process (Benatallah et al 2002, Chafle et
al 2004) - Mobil Composition Style (P2PC-M)
- whole process specification and its related
instances to the hosts during the run-time
(Lakhal et al 2004) - Hybrid Composition Style (P2PC-H)
- Mixed SC-P2PE and MC-P2PE (Schuler et al 2004)
16Static Composition Style (P2PC-S)
17Mobil Composition Style (P2PC-M)
18Broker
- Broker Architectural Style
19Broker Style
- Classical broker (Buschmann et al., 1996)
20Broker (cont.)
- Basic broker
- Layered broker
- (Pires et al., 2003, Paolucci et al., 2004,
Fuchs, 2004).
21Broker (cont.)
- Enterprise Service Bus from Industry vendors
(Balani, 2005)
22Asynchronous Broker
- Callback
- WSIF JMS (opensource http//ws.apache.org/wsif)
- WS-Callback (Goland et al., BEA Systems, 2003)
- WS-Addressing (Gudgin and Hadley, 2005)
- Client-Side Framework (Ruth et al. 2005)
- Publish-Subscribe
- WS-Notification (Graham and Niblett, 2004)
- WS-BaseNotification
- WS-Brokered Notification
- WS-Topics
- WS-Eventing (Geller, 2004)
- Matching is a major issue
- semantics and ontology
23Broker (cont.)
- Async-Federated broker (Wu et al., 2005)
24RESTful WS Style (Fielding 2000, Mitchell 2002,
Prescod 2002, He 2004)
- REpresentational State Transfer Web part of
Web Services - An architectural style for Web
- No need to reinvent the wheel ! existing Web
architecture is a proven scalable distributed
systems - Web Services ? Web RPC (Traditional
WS-Architecture) - Architectural Constraints
- Stateless _at_ Server, Stateful _at_ Client
- Small set of consistent interface (GET, POST,
PUT, DELTE) - Message Centric rather than Interface API
Centric (SOAP 1.2) - Explicit resource identifier URI
- Real Case Amazon.com (80 vs. 20)
25Tuplespace Service
- Fensel 2004, Bussler et al., 2005
Tuple-Space
read
write
26Related Work
- Buschmann et al., 1996 presented architecture
patterns, but not related to web services
applications - A series of architectural styles for network
application are surveyed in (Fielding, 2000) - Web services architectural patterns are defined
and identified in (Endrei et al., 2004) from
Industry perspective for e-Business applications - Research in (Maximilien and Singh, 2005) is the
closest work to our efforts. It catalogs SOA
architectural styles and conceptually evaluates
these identified six styles based on their
proposed multi-agent model rather than from
related literature research and industry
practices
27Conclusion
- In this paper, we surveyed web services
architectural styles in current literature - Our next research goal is to offer an analysis of
these architecture styles based on a well-defined
quality framework - The aim of such analysis is to help architect
select the most appropriate architecture styles
given specified requirements captured from the
stakeholders
28Questions SuggestionsThank you for your
attention!
First International Workshop on Design of
Service-Oriented Applications