Web Services Engineering: Promises and Challenges

3 downloads 0 Views 206KB Size Report
expected to change the paradigms of both software development and use. This panel will ... copies bear this notice and the full citation on the first page. To copy.
Web Services Engineering: Promises and Challenges Mikio Aoyama

Sanjiva Weerawarana

Nanzan University, Japan

IBM T. J. W. Research Center, USA

IBM Research, Japan

[email protected]

[email protected]

[email protected]

Hiroshi

Maruyama

Clemens Szyperski

Kevin Sullivan

Doug Lea

Microsoft Research, USA

University of Virginia, USA

State University of New York, USA

[email protected]

[email protected]

[email protected]

ABSTRACT

2. E V O L U T I O N TO W E B SERVICES

Web services are emerging technologies to reuse software as services over the lnternet by wrapping underlying computing models with XML. Web services are rapidly evolving and are expected to change the paradigms of both software development and use. This panel will discuss the current status and challenges of Web services technologies.

We can trace three evolutionary precursors to Web services as illustrated in Figure 1.

1. W E B A N D W E B SERVICES The essential nature of the Internet, including universal connectivity, decentralization, openness, and dynamic evolution, challenges Software Engineering by raising questions such as how software can be developed and used on the Internet? The emerging technologies of Web services are promising to tackle some of the essential problems by introducing the concept of software-as-service [1-3].

1)

From component to Web services: Web services are considered as reusable software components [8] over the Intemet by wrapping the interface with XML and publishing it over the Internet.

2)

From ASP (Application Service Provider) to Web services: ASPs created a model of software-as-service by leasing software at remote sites over the Internet. Unlike conventional ASPs, which provide coarse grained package software such as ERP, Web services enable to combine any software as service, and subscribe to them over the Internet.

3)

From application to application integration across the organizations: End-to-end solutions along with the value chain are the keys to competitiveness over the Intemet. Demands of new types of software are ever increasing in such as e-Business, XML EDI (Electronic Data Interchange) and EAI (Enterprise Application Integration). These new domains extend the scope of applications and applications development.

Web services are defined as "internet-based applications fulfilling a specific task or a set of tasks, that can be combined with other Web services to maintain workflow or business transactions" [4].

3. T E C H N O L O G I E S F O R W E B SERVICES Technologies for Web services can be classified into two layers:

[ Computing [ [ Platform :,(~t:)~I .

.

.

.

.

.

,itecture ntegrati°n (M[dd]eware) .

.

.

Web services platforms to describe, discover and execute Web services, and

2)

Web services engineering to develop applications with Web services.

Component-Based System

i

.

1)

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

] .

.

.

.

.

.

Figure 1 Evolution to Web Services

Is~ice

: ~ Compositi n

Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. ICSE'02, May 19-25, 2002, Orlando, Florida, USA. Copyright 2002 ACM 1-58113-472-X/02/0005...$5.00. 647

~

~L- - - ~ - , ,: •

,e,a-Oa,a

Figure 2 Web Services Platforms

operation? How can the platforms manage the non-functional properties, such as QoS and security?

3.1 Web Services Platforms As illustrated in Figure 2, a Web services platform is built up with XML-based technologies across several layers as summarized in Table 1.

4.2 Services Engineering The scope of Web services applications goes beyond organizational boundaries, such as e-Business. So, integration and collaborations are key issues. And, dynamic provision and evolution of Web services are a new area of Software Engineering.

Besides these technologies, a wide variety of technologies are under development based on XML. Table 1 Technologies for Web Services Platforms

Technology

Description

SOAP (Simple Object Access Protocol)/XMLP (XML Protocol) WSDL (Web Services Description Language) WSFL (Web Services Flow Language)

W3C standard of messaging protocol across the services.

4.3 Business Models

UDDI (Universal Description, Discovery and Integration) ebXML

W3C standard of describing functional interface of Web services. Web services composition language based on workflow. Web services composition language based on n-calculus. A specification of service directory enabling to look up the location of Web service on the Interact at run time. EDI Protocol standard based on XML.

RosettaNet

Platform intended for supply chain management of electronics parts.

XLANG

Non-ownership of software and service outsourcing over the Internet will challenge the software industry as well as whole industries of software users.

5. ISSUES We discuss whether Web services change the way that software is developed from the following different viewpoints. (1) Model: What is a Web service and its underlying model? (2) Architecture: What architectures are most appropriate for systems based on Web services? (3) Development methodology: How do Web services change the way that software is developed and deployed? How do we facilitate and manage the integration and evolution of systems based on Web services, which are often not the control of a single design authority? [5-7]

3.2 Web Services Engineering

(4) Impact and Issues created: What's the impact of Web services to software research and business? What new issues for Software Engineering do Web services create?

As a new domain of Software Engineering, Web Services Engineering concerns every aspect from development, deployment, use, to evolution of Web services, such as analysis, architectures, development methodologies, descriptions, testing, development environments, management, and applications. Figure 3 illustrates the process of implementation and execution of Web services based on the service-oriented architecture.

I

t

y_DDl_Sei~ver I[ Registry (

i

[1] Aoyama, M., Intelligent Software Services over the Intemet, Information Modeling and Knowledge Bases, IX, lOS Press, The Netherlands, Feb. 2000, pp. 128-135.

Implementation of Services (Components)J

Int[erface

IU D~eeflistry],-H---=~-~ Description (a)Find//I~ - ~[[ [ with WSDL =.~b~Get (2)Find| ] (3)Get ~..-Routing Deployment ~ ....... [ I Service Provider t.

REFERENCES

I

|

Wg~lf't

[2] Bennett, K., et al., Service-Based Software: The Future for Flexible Software, Proc. APSEC 2000, IEEE CS Press, Singapore, Dec. 2000, pp. 214-221.

]

| )

[3] Maruyama, H., Aoyama, M., and Weerawarana, S. (eds.), Proc. WebSE (Int 'l Workshop on Web Services Engineering) 2002, IEEE CS Press, Nara, Jan. 2002, pp. 143-228.

I [ [ lye# I I

Service 18)Response ~7)ReJspon~se[S'~'v'er~p~'~ ~ 11 Requester (c)R~quest / I for kmlnvokd 2" II 1'

' ' if)Response

[4] IBM, Web Services: Taking e-business to the Next Level, White Paper, 2000, http://www3.ibm.com/services/uddi/papers/e-businessj.pdf.

'l SOAP ~ ~ Jl | ' 't~tn~P'Y ~ J [

[5] Lea, D., Design for Open Systems in Java, Proe. of Coordination '97, LNCS, Vol. 1282, Springer, Berlin, 1997, pp. 32-45.

Figure 3 Implementation and Execution of Web Services

4. CHALLENGES

[6] Sullivan, K. J., and Notkin, D., Reconciling Environment Integration and Software Evolution, ACM TOSEM, Vol. 1, No. 3, Jul., 1992, pp. 229-268.

Web services pose a wide variety of research and development challenges to Software Engineering community. The followings are just a few names of them.

[7] Sullivan, K. J., et al., The Structure and Value of Modularity in Software Design, Joint Proc. of 8th ESEC/9th FSE, ACM Press, Vienna, Sep. 2001, pp. 99-108.

4.1 Platform Although the platform technologies are rapidly developing, the question remains: can Web services provide a uniform platform like a Web with a capability of constructing complex and mission critical Web services, such as transaction processing and real-time

[8] Szyperski, C , Component Software, Addison Wesley, 1998.

648