Documenting Software Systems with Views IV: Documenting Web Transaction Design with UWAT+ Damiano Distante Scott Tilley Shihong Huang Dept. of Innovation Engineering Dept. of Computer Sciences Dept. of Computer Science University of Lecce, Italy Florida Institute of Technology Florida Atlantic University damiano.distante@unile.it stilley@cs.fit.edu shihong@cse.fau.edu ABSTRACT This paper describes an approach to documenting the conceptual design of Web Transactions using UWAT+. A Web Transaction is a collection of serial and/or parallel activities that contributes to achieving a user-oriented business objective using a Web-based application. UWAT+ is a meta-model for describing the various aspects of a Web Transaction in a holistic manner. It is an extension of the Transaction Design Model that is part of the Ubiquitous Web Applications (UWA) framework, a comprehensive framework for designing ubiquitous Web applications. A series of (extended) UML diagrams are used to graphically document the UWAT+ meta-model, which greatly facilitates adoption of the approach by practicing software engineers and technical writers. Use of the approach for documenting Web Transaction designs in both forward and reverse engineering processes is described. Categories and Subject Descriptors D.2.7 [Software Engineering]: Distribution, Maintenance, and Enhancement – documentation. General Terms Documentation, Standardization Keywords Web applications, transaction design, documentation, business processes, UWAT+, software views 1. INTRODUCTION Business applications have become omnipresent on the Web. Complex systems such as e-commerce, e-government, and e- banking applications, enterprise information systems, and customer relationship management programs have adopted the Web as the meta-platform of choice. Such systems implement business processes by means of Web Transactions, which are collections of serial and/or parallel activities that contribute to achieving a user- oriented business objective. The navigational nature of the Web, coupled with the operational and transactional nature of business applications, induces a unique design requirement on these kinds of applications: both hypermedia issues and transaction aspects need to be considered holistically. One the one hand, models and methodologies used in traditional hypermedia application design fall short when addressing transactional aspects. On the other hand, software engineering design practices and models that have proven successful for traditional (non-navigational, non-Web-based) applications fall short when addressing navigational issues. There are two common practices for modeling Web Transactions that realize business processes. The first is emulating transactions as a sequence of navigational steps (or neglecting them entirely) [3]. The second is considering them as a second-class by-product of the overall site design process [4]. Both practices result in poor quality Web applications due to the presence of erroneous and unpredictable behavior, with undesirable effects on the realization of the business itself (e.g., low customer satisfaction due to low usability of the online service). From a software engineering point of view, neglecting or improperly addressing Web Transaction design documentation causes numerous problems that can arise during long-term system evolution. These problems include: § Difficulties in communication and understanding between designer and customer (first), and designer and developer (later), in the application process realization; § Unpredictability of the development process and resultant application quality; § Difficulties in verifying the traceability between business process requirements and transaction implementation. This paper presents an approach for documenting Web Transaction design at the conceptual level that addresses some of these problems. The approach relies on a meta-model, named UWAT+, for describing the numerous aspects that, taken together, characterize a Web transaction. The UWAT+ meta-model [1] is an extension of the Transaction Design Model proposed as part of the Ubiquitous Web Applications (UWA) [14][13] design framework, a comprehensive framework for designing ubiquitous Web applications. The next section of the paper discusses Web Transactions, various techniques that can be used to document their design, and 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. SIGDOC’04, October 10–13, 2004, Memphis, Tennessee, USA. Copyright 2004 ACM 1-58113-809-1/04/0010…$5.00. 33