Interactive Task Management System Development ... - Springer Link

4 downloads 16974 Views 208KB Size Report
being or willing to become computer experts. ... professional programmers [1, 2]. Traditional examples ... programming skills, can combine services. Most of the ...
Interactive Task Management System Development Based on Semantic Orchestration of Web Services B.R. Barricelli, P. Mussio, M. Padula, A. Piccinno, P.L. Scala, and S. Valtolina

Abstract In recent years, end users are increasingly requiring to adapt and shape the software artifacts they use, thus becoming developers of their tools without being or willing to become computer experts. Capitalizing on the experience gained in the collaboration with an Italian research and certification institution, this paper proposes a Task Management System based on a Web service architecture, aimed at supporting the activities of workflow designers of this institution. The objective is to create a system that assists such domain experts in designing workflows through semantic orchestration of existing Web services, permitting them to use the knowledge and expertise they possess.

Introduction End-User Development (EUD) is a discipline that focuses on people tailoring or even creating software artifacts, often in organizational contexts, without being professional programmers [1, 2]. Traditional examples of successful EUD concepts include spreadsheet and word processing macros. Recent developments, like Web 2.0 and the semantic Web, are increasingly contributing to EUD by enabling users to be producers rather than just consumers of information on the Web. On the other side, service-oriented technologies are offering independent services that can be building blocks for creating composite services and service-based applications. By connecting different services it would be possible to produce

B.R. Barricelli, P. Mussio, and S. Valtolina Dipartimento di Informatica e Comunicazione, Universita` degli Studi di Milano, Milano, Italy e-mail: [email protected]; [email protected]; [email protected] M. Padula, and P.L. Scala Consiglio Nazionale delle Ricerche, Istituto per le Tecnologie della Costruzione, Milano, Italy e-mail: [email protected]; [email protected] A. Piccinno Dipartimento di Informatica, Universita` degli Studi di Bari, Bari, Italy e-mail: [email protected]

A. D’Atri et al. (eds.), Information Technology and Innovation Trends in Organizations, DOI 10.1007/978-3-7908-2632-6_27, # Springer-Verlag Berlin Heidelberg 2011

237

238

B.R. Barricelli et al.

combined functionalities as a new service, also improving reuse because the same service can be part of many composite services. Despite this advantage, the current situation is that only a small number of users, with considerable modeling and programming skills, can combine services. Most of the Internet users are not able to create service application tailored to their specific needs. A recent workshop has addressed these issues [3]. Attendees have discussed the research challenges of simplifying service composition and abstracting this process from any unnecessary technical complexity, in order to support end users with no technical background in this activity. In this direction, this paper presents a case study that discusses the approach to the design of a Task Management System (TMS) that supports the activities of workflow designers of an Italian research and certification institution [4]. In other words, the system allows domain experts in designing workflows through semantic orchestration of existing Web services. The paper is organized as follows. Some related works are firstly presented. The case study is discussed by illustrating the workflow composition with TMS. The architecture of the system is then presented. Conclusions and future works conclude the paper.

Related works iGoogle and Facebook allow users to add Web services as widgets to their personalized pages. This cannot be considered service composition, because the different widgets do not exchange and/or share data or functionalities. A more ambitious goal is to enable end users to produce service based systems that fulfill their specific needs. Yahoo Pipes! is a better example of service composition: users can combine various services and perform filtering operations to get what they desire. However, this approach requires modeling skills that most end users do not have. Current research efforts primarily address professional developers, with almost no attention to needs and perspectives of end users. One of the first initiatives to target end users has been a recent workshop [3], in which some promising service composition approaches have been discussed. The SOA4ALL project is developing a framework and a set of tools to support the service lifecycle from service discovery to composition and use [5]. Referring to workflow composition through the use of Web services’ technologies, two main different approaches can be found in literature: automatic or semi-automatic. Automatic composition exploits AI algorithms used to plan how different atomic elements could be composed to create the desired workflow. A first example is given in [6] where a plug-in based, auto-adaptive architecture for Web Services composition is presented. Using an extension of AO4BPEL [7], an aspect-oriented extension to BPEL4WS [8], which allows for more modular and dynamically adaptable Web service composition, different features in the composition can be activated or deactivated at runtime. It is up to the developers to analyze the workflow to be modeled and decide which tasks should be monitored to track changes and load the

Interactive Task Management System Development

239

specific plug-in to manage these changes. Pistore et al. [9], instead, approach the automatic composition problem starting from what they define the Knowledge Level: given a specific goal, formally expressed using the EaGLe language [10], the Knowledge Level is defined as the representation of what the services composing the workflow “have to know” in terms of data, inputs and outputs, and how the variables and the functions used by the workflow to reach the desired goal have to be correlated with variables and functions of the composing services. Starting from a Web Services description in BPEL4WS, a model of the interactions between services is automatically generated; it is named Planning Domain and will be used at Knowledge Level, which is represented as a knowledge base constituted by a set of logical propositions about the variables and the operations defined over them, inferred from the BPEL4WS description. From the goal formal description, a second knowledge base is then inferred which, combined with the previous one, gives a State-Transitions system defining the desired workflow. Semi-automatic composition supports users in the task of manually composing and selecting Web services, offering a graphical interface allowing users to manipulate graphical primitives representing the workflow’s atomic components. An example is given in [11], where a Case-Based-Reasoning (CBR) approach to assist users in the composition of scientific workflows, exploiting existing workflow elements (atomic Web services or portions of existing workflows), is proposed. The user searches this knowledge base specifying parameters regarding the inputs and outputs of the desired workflow: if there is an existing workflow element that matches them, then the system proposes it to the user; alternatively, the system proposes an aggregation of workflow elements that best matches the desired workflow. Another example is Triana [12], a graphical environment that allows users to search, compose and execute Web Services; users graphically compose Web Services, by dragging the desired elements form a toolbox area to a work area, and by connecting them with lines; they save them in BPEL4WS language and eventually execute them. The system we propose in this paper follows the semi-automatic approach. Unlike the systems presented above, TMS targets the whole life cycle of a workflow, from the design to the deployment; a three layers architecture supports the stakeholders involved in the process by providing them with software environments adequate to their skills and needs.

A Task Management System The proposed case study refers to the design of a Task Management System (TMS), based on a Web service architecture, which supports the activities of workflow designers of an Italian research and certification institution. A workflow is a model which formalizes a work process for further assessment and manipulation (e.g., for optimization or iteration of specific sequences of tasks) [13]; it includes tasks, information flow, resources, and roles. Workflow management by cooperative groups of people is supported by software tools to share information, manage

240

B.R. Barricelli et al.

communication, schedule and assign tasks to the co-workers. Experts of the domain, who are not computer scientists, are involved in workflow management. We primarily consider: (1) Workflow Designers, who are in charge of designing the current workflow and supervising its correct execution; (2) Workflow Operators, who execute the workflow process. This paper focuses on Workflow Designers and on the description of the software environment that supports their activities, called TMS Editor. A Workflow Designer interacts with the TMS Editor and performs an interactive semi-automatic composition of services representing the components (tComponents) at the base of the current workflow. The whole TMS system is designed according to the Software Shaping Workshop (SSW) methodology described in [1]; it adopts a meta-design approach which underlines a novel vision of system design. All stakeholders of an interactive system, including end users, are “owners” of a part of the problem: software engineers know the technology, end users know the application domain, HumanComputer Interaction (HCI) experts know human factors, etc.; they must all contribute to system design by bringing their own expertise. Stakeholders need different software environments, specific to their culture, knowledge and abilities, through which they can contribute to shape software artifacts. They should also exchange among themselves the results of these activities in order to converge toward a common design. An interactive system is thus designed as a network of software environments, called Software Shaping Workshops (SSW or briefly workshops), each of them being either an environment through which end users perform their activities or an environment through which stakeholders participate in the design of the whole system, even at use time. The network of workshops is organized in three different levels, based on the different types of activities the workshops are devoted to (see Fig. 1): (1) the use level, lying at the bottom of the network, includes workshops that are used by domain experts to tailor and use their workshops in order to perform their activity; (2) the design level, located at the middle level of the network, includes workshops used to perform the collaborative design and development; (3) the meta-design level, at the top of the network, includes workshops used to create and maintain all the workshops in the network, usually by software engineers, but sometimes also by HCI experts and end users. In the specific case reported in this paper, the network of software environments allows end users of an organization to design, execute, and check the execution of a workflow. The attention is concentrated on the workshop used by Workflow Designers, i.e., the TMS Editor (see Fig. 1). In fact, Workflow Designers play a fundamental role for what concerns the design and the development of a workflow, and for this reason they should be directly involved in all of the activities carried out during its whole development cycle. The TMS network is designed to allow Workflow Designers and Workflow Operators to collaborate in the design and the development of a software artifact. TMS coordinates the stakeholders in the team to search, acquire, describe, and aggregate services. Such services perform each one single autonomous task in the work processes. For lack of space, only the collaborative creation of a workflow is described (Software engineers and HCI

Interactive Task Management System Development

Domain expert

241

Software engineer

HCL expert

Meta-design level

Workflow Designer

TMS editor Design level

Workflow Operator

TMS instance

Use level

Fig. 1 A simplified SSW network for the Task Management System

experts are not considered in this paper). At meta-design level, domain experts use a system workshop to define the overall structure of the workflow. These domain experts use tools for task analysis to represent in a structured way concepts and activities that constitute the workflow, without referring to implementation issues. At design level, the Workflow Designer uses the TMS Editor workshop by which s/ he transforms the task analysis document in a description of the needed components (tComponents) and the relationships among them. At use level, the Workshop Operators, use the TMS instance developed at the above levels. Figure 1 illustrates the documents traffic in the network. Downward arrows show the flow of the documents from the upper level to the lower one. They are, from meta-design level to design level, the documents describing the workflow task analysis, and from design level to use level, the executable descriptions of the TMS instance to be used. The upward dotted arrows, show the flow of communication among the users at the lower level and the (meta-) designers at the upper level. All stakeholders can communicate problems, difficulties or suggestions regarding the workshop in use to the other stakeholders, at the different levels. The case described in this paper refers to the activities of the Workflow Designer, who interacts with the TMS Editor by direct manipulation techniques to visually compose the workflow. This composition is semi-automatic: the TMS Editor, by exploiting two engines, i.e., the Semantic Search Engine (SSE) and Orchestration

242

B.R. Barricelli et al.

Engine (OE), retrieves and orchestrates the Web services components which satisfy the Workflow Designer’s requests. The graphic interface of the TMS Editor, together with the OE, supports the Workflow Designer to compose the desired workflow; s/he has not to worry about the technical details of the orchestration process and orchestration language (BPEL4WS), deferring them to the software engineers by communicating with them and exchanging the resulting orchestration document. Thus, the Workflow Designer does not need to be a computer science expert. The collaboration of the different communities of end users – e.g., Workflow Managers, Workflow Designers – in the workflow composition activity leads to a powerful and significant social activity, and all the stakeholders contribute in enriching, managing and updating the shared knowledge base of the TMS network.

TMS Editor Architecture The aim of the TMS Editor is to support the design activity of Workflow Designers by allowing them to exploit their tacit knowledge and expertise, and without boring them with technical details about the language used to implement, store and transmit the final workflow document. The TMS Editor interface is designed so that Workflow Designers can operate according to an EUD approach for designing workflows by means of visual commands and widgets [14]. The visual widgets are used to show tComponents and their relations in a graphic way translating the semantic description of the tComponents and their relations into visual forms. On the other side, this semantic description enables a mapping between the WSDL (Web Services Description Language) [15] interface of the tComponent with a Conceptual Reference Model (CRM) describing its behavior, goal and structure. The CRM of a tComponent is a set of classes and properties, expressed in OWL (Web Ontology Language) [16], describing its semantics in term of used field, input and output interfaces, interaction style, and algorithmic behavior. Exploiting this information the Workflow Designer can use the Semantic Search Engine (SSE) for retrieving the tComponents useful to compose the final structure of the workflow according to the workflow structure defined at meta-design by domain experts (see Fig. 2). The mapping between each WSDL description and the related CRM of each tComponent is carried out through RDF (Resource Description Framework) [17], while the mapping between the CRM description and the visual widget representing it is achieved in the TMS Editor by means of its visual interface. Therefore, exploiting these visual representations of each tComponent, the Workflow Designer is able to design a workflow through the integration of heterogeneous tComponents matching their input-output interface. To support this activity the TMS Editor has to adopt specific techniques of composition and integration management services. An Orchestration Engine (OE) translates the composition defined by the Workflow Designer using the TMS Editor interface, into a BPEL4WS workflow document describing the correct sequence of operations in the workflow.

Interactive Task Management System Development

243

Fig. 2 The architecture of the TMS Editor

These tComponents are gathered by a knowledge base composed by a set of archives made available by various tComponent providers. The tComponents provider, willing to share its tComponents, must first perform a UDDI (Universal Description, Discovery and Integration) registration of the tComponents on a tComponents Provider Registry. The registration consists of three different elements: (1) a WSDL description of the tComponent to be invoked, describing the syntactical and computational-based aspects about the tComponent; (2) a Conceptual Reference Model (CRM) of the tComponent; (3) a RDF description that maps the CRM onto the WSDL description of the tComponent. Interacting with the SSE through the TMS editor, Workflow Designers can search the more suitable tComponents, according to the context of use of workflow defined at meta-design. Then they trigger the orchestration activity to produce the final description of the workflow process as a BPEL4WS document. This document is represented on the screen as a sketch of the widgets representing the tComponents and their relations.

Conclusions This paper presents a task management system, based on a Web service architecture, aimed at supporting end users of an organization to design, execute, and check the execution of a workflow. Among the stakeholders there are Workflow

244

B.R. Barricelli et al.

Designers, who design the workflow and supervise its correct execution, and Workflow Operators, who execute the workflow process. The paper focuses on Workflow Designers and on the description of the TMS Editor, i.e., the software environment that supports their activity. A Java-based prototype of the TMS Editor is currently under development, encompassing the composition and the tComponents’ semantic search capabilities. As future works, we are planning to evaluate the usability of the TMS editor with both cognitive and semiotics methods.

References 1. Costabile, M. F., Fogli, D., Mussio, P. and Piccinno, A. (2007) Visual Interactive Systems for End-User Development: a Model-based Design Methodology, IEEE TSMCA 37(6): 1029–1046. 2. Lieberman, H., Paterno`, F. and Wulf, V. (2006) End User Development. New York, Springer. 3. Costabile M.F., Ruyter B.D., Mehandjiev N., Mussio P. (2010), End-user development of software services and applications. In: Proc. of AVI 2010, 403–407, Rome, Italy ACM. 4. Barricelli, B. R., Mussio, P., Padula, M. and Scala, P. (2010) TMS for multimodal information processing, To appear in Multimedia Tools and Applications. New York, Springer. 5. SOA4All project (2010) Retrieved Sept. 3, 2010: http://www.soa4all.eu. 6. Wu, Z., Ranabahu, A., Sheth, A. P., and Miller, J. (2007). Automatic Composition of Semantic Web Services using Process and Data Mediation. Technical report, kno.e.sis center, Wright State University. 7. Charfi, A., Mezini, M. (2007) AO4BPEL: An Aspect-oriented Extension to BPEL, Springer Netherlands 10(3):309–344. 8. Web Services Business Process Execution Language: OASIS Standard, Overview (2007) Retrieved Sept. 3, 2010: http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html. 9. Pistore, M., Marconi, A., Bertoli, P. and Traverso, P. (2005) Automated Composition of Web Services by Planning at the Knowledge Level. In Proc. of IJCAI 2005, 1252–1259. San Francisco, Morgan Kaufmann Publishers. 10. Dal Lago, U., Pistore, M., and Traverso, P. (2002) Planning with a Language for Extended Goals. In Proc. of AAAI’02, 447–454. Menlo Park, USA, American Association for Artificial Intelligence. 11. Chinthaka, E., Ekanayake, J., Leake, D. and Plale, B. (2009) CBR Based Workflow Composition Assistant. In Proc. of SERVICES 2009, 352–355. Washington, IEEE Computer Society. 12. Shalil, M., Shields, M., Taylor, I. and Wang, I. (2004) Triana: A Graphical Web Service Composition and Execution Toolkit. In Proc. of ICWS 2004, 514. Washington, IEEE Computer Society. 13. Graphic technology – Database architecture model and control parameter coding for process control and workflow (Database AMPAC), ISO/TR 16044:2004, ver. 2004-06-07. 14. Valtolina, S. (2008) Design of Knowledge Driven Interfaces in Cultural Contexts. IJSC 2(4):525–553. 15. WSDL Web Service Description Language Version 2.0 W3C Recommendation (2007) Retrieved Sept. 3, 2010: http://www.w3.org/TR/wsdl20. 16. OWL Web Ontology Language Overview W3C Recommendation (2004) Retrieved Sept. 3, 2010: http://www.w3.org/TR/owl-features. 17. RDF/XML Syntax Specification (Revised) W3C Recommendation (2004) Retrieved Sept. 3, 2010: http://www.w3.org/TR/rdf-syntax-grammar.

Suggest Documents