IBIMA Publishing Communications of the IBIMA http://www.ibimapublishing.com/journals/CIBIMA/cibima.html Vol. 2010 (2010), Article ID 306853, 20 pages DOI: 10.5171/2010.306853 A Model for Characterizing the Salient Directions of Evolution in the Engineering of Web Applications

Pankaj Kamthan 1 and Nazlie Shahmir 2

1 Concordia University, Montreal, Quebec, Canada 2Shaw Cablesystems G.P., Calgary, Alberta, Canada

______

Abstract :

The development and sustenance of Web Applications is viewed from an engineering perspective. The evolution of the developmental environment of Web Applications has been multi-directional. This paper provides a conceptual characterization of these directions, relationships between these directions, and their implications towards academia and industry. The consequences of a commitment to these directions, along with the role of international standards, are considered. The challenges faced by Semantic Web Applications and Social Web Applications are briefly outlined.

Keywords : Conceptual Modeling, Experiential Knowledge, Quality, Stakeholder, Web engineering

developmental environment of Web Introduction Applications unique, and analyzes some

The Internet, particularly the Web, has played an increasingly vital role of their theoretical and practical towards communication, information, implications. It also identifies the and entertainment. This evidently has practical challenges that academic had an impact on how Web Applications institutions and industrial are perceived, developed, and managed. organizations can face in doing so.

It is known (Kruchten, 2004) that The rest of the paper is organized as conventional engineering practices follows. First, the background and cannot be simply mapped to software related work is presented. This is engineering without first understanding followed by an exploration of a list of the nature of software, and the same characteristics that uniquely posit the applies to Web Engineering (Ginige & nature of the developmental Murugesan, 2001). This paper builds environment of Web Applications along upon previous work (Kamthan & with the implications of standards Shahmir, 2010) and, from the wherever applicable. Next, the perspective of Web Engineering, implications of these characteristics in identifies and elaborates the academia and industry are considered, characteristics that make the and challenges and directions for future research are outlined. Finally, concluding remarks are given.

Copyright © 2010 Pankaj Kamthan and Nazlie Shahmir.This is an open access article distributed under theCreative Commons Attribution License unported 3.0, which permits unrestricted use, distribution, andreproduction in any medium, provided that original work is properly cited. Contact author: Pankaj Kamthan, email: [email protected]

Communications of the IBIMA 2

Background and Related Work management principles, and disciplined and systematic approaches, to the This section includes preliminaries that successful development, deployment, are relevant for the rest of the paper. It and maintenance of ‘high-quality’ Web also discusses previous work on Applications. characterizing Web Applications. Table 1 illustrates a number of other Basics of Web Engineering disciplines from computer engineering, The Web came into prominence in the science, and technology that Web early 1990s and, as indicated by a Engineering derives from and depends number of indices upon for its existence. A detailed (http://www.worldwidewebsize.com/), discussion of these cognate disciplines continues to grow. However, the need is beyond the scope of this paper. Each for its management in general and an of these disciplines contributes to one engineering approach towards the of more of the basic elements of Web development of Web Applications in Engineering, namely project, people, particular was only realized in the late process, and product. There are certain 1990s (Powell, Jones, & Cutts, 1998). It disciplines such as quality engineering is then that the terms such as Web Site that can be further divided into sub- Engineering and Web Engineering were disciplines like reliability engineering, coined. Web Engineering is a discipline security engineering, concerned with the establishment and engineering, and so on. use of sound scientific, engineering, and

Table 1. A list of cognate disciplines of Web Engineering.

Document Engineering Distributed Systems Engineering Human-Computer Interaction Hypermedia Engineering Information Systems Web Engineering Is-Related-To Engineering Model Engineering Multimedia Engineering Network Engineering Quality Engineering Software Engineering

For the sake of this paper, a Web Site is the client- and/or server-side, and a defined as a collection of resources that schedule comprising of several weeks reside in a distributed computing or months from inception to environment enabled by the completion. A Web Application is an technological infrastructure of the exemplar of distributed software Internet and a Web Application is systems. defined as a Web Site that behaves like an information-intensive interactive Stakeholders of Web Applications software system specific to a domain A stakeholder is a person who has and typically requires a non-trivial interest in a Web Application for some infrastructure for development. The purpose. The stakeholders for a aforementioned infrastructure may software system in general and Web include a disciplined and systematic Application in particular can be development process, a team with high- classified on the basis of different views level of knowledge and skills, of the business, social, and technical deployment of additional software on environment in which the system 3 Communications of the IBIMA

resides. Fig. 1 shows a partial Application organized in a hierarchical classification of stakeholders of a Web manner.

Fig. 1. A partial view of a taxonomy of stakeholders of a Web Application.

In this paper, a business view is individual characteristics are not given considered, and the stakeholders of a and the discussion is relatively dated. Web Application are broadly classified into producers and consumers . The It has been noted that Web Applications producers are responsible for server- vary in a number of ways from side concerns of a Web Application; the traditional software including consumers are receivers on the client- uncertainty of the domain, often shorter side of a Web Application. For example, time-to-market, and rapid changes in an engineer is a kind of producer of a technologies (Lowe, 2003; Ziemer & Web Application, and a user is a kind of Stålhane, 2004). This is relevant to the consumer of a Web Application. of Web Applications. However, the arguments The classification can be granularized are often based on perception rather further. For example, a user could be than social and technical reality. decomposed into novice and expert user, or into beginner and advanced It has been pointed out that different user. types of Web Applications vary along the lines of their nature, form, purpose, It is possible to devise more and development (Selmi, Kraïem, & sophisticated stakeholder classification Ghézala, 2005). However, the treatment schemes (Pacheco & Garcia, 2008) is relatively dated. based on other criteria. For example, stakeholders could be classified as The variations between software based on the degree of influence on the engineering and Web Engineering have development of a Web Application or been pointed out (Mendes & Mosley, the interaction with a Web Application. 2006). However, the criteria focus on It is also possible to devise a the underlying technologies rather than multifaceted classification scheme for the stakeholders. the stakeholders of a Web Application. However, doing so is beyond the scope Finally, a characterization from the of this paper. viewpoint of basic elements of Web Engineering, namely project, people, Related Work on Characterizing the process, and product has been Development of Web Applications proposed (Kamthan, 2009a). It This section presents a chronological highlights the characteristics and account of previous work related to this challenges that make a Web Application paper. A model for characterization of unique as compared to desktop Web Applications has been presented software systems. The approach taken (Lowe, 2002). However, details of in this paper is an alternate, although not necessarily orthogonal, to this work. Communications of the IBIMA 4

Towards Identifying and Information Interaction-Intensive, [C-5] Understanding the Evolution of Web Model-Driven, [C-6] Open Environment- Applications Engineering Based, [C-7] Pattern-Oriented, and [C-8] Quality-Sensitive. [C-1] − [C-8] are not The following characteristics, based on orthogonal. the observations and experience of the authors over a number years, identify Fig. 2 depicts [C-1] − [C-8], and their the pivotal directions of evolution in the interrelationships of dependencies. The developmental environment of Web presence of an arrow signifies a binary Applications: [C-1] Computing relationship in the sense that the source Environment-Neutral, [C-2] Domain- ‘relies-upon’ the destination. Specific, [C-3] Human-Centered, [C-4]

Fig. 2. The characteristics of evolution in the development of Web Applications and their interrelationships of dependencies.

Characteristics in Context are desirable. However, currently these can not be unequivocally seen as The characteristics [C-1] − [C-8] apply perceived directions for the evolution in only to the Surface Web, not the Deep the development of Web Applications. Web. It is the contention of the authors that [C-1] − [C-8] are relevant; however, [C-1] Computing Environment-Neutral there is no claim that they are sufficient. In the last two decades, there has been a The degree of salience of [C-1] − [C-8] is proliferation of computing devices and not equal; however, this paper also does user agents with diverse configurations. not compare (say, rank) these In particular, there has been an influx of characteristics. The relationships computing devices that vary between [C-1] − [C-8] are many-to- considerably in their options for data many and non-transitive. In the rest of input/output, screen capabilities, the paper, the relationships between memory, disk space, and processing these characteristics have been power. highlighted explicitly wherever necessary. It is not practical for a typical user to change the underlying device or user It could be noted that certain additional agent to suit the demands of different characteristics, such as Ethically-Aware, Web Applications. It is expected by the Standards-Conforming, or Value-Added, users that the same services are are among the potential candidates that available on an array of devices (related 5 Communications of the IBIMA

to [C-3]). Therefore, it has become ever of minimizing (ideally, eliminating) more important for Web Applications to dependency of a Web Application on be perceived as being neutral to the user agents can require more time and volatility in the computing effort on part of producers, not least environment. due to the fact that the user agents are themselves prone to change. This In the past decade, there has been variability also places extra burden on notable progress in this direction. The acceptance testing. current initiatives such as the W3C’s Ubiquitous Web Applications Activity [C-2] Domain-Specific are a step forward. The producers of From initial ‘experiments’ in new Web Applications have been technologies, Web Applications have confronting the challenge by providing evolved to become an integral and, in dynamic delivery of resources based on some cases, uniquely indispensable, an assessment of the client-side part of an organization’s vision. In this computing environment. This sense, the evolution of Web assessment can, for example, include Applications has been from genericity recognizing the device and to specificity. personalizing according to user preferences. There are different types of software systems addressing different domains Indeed, the dynamicity of the (Forward & Lethbridge, 2008), and the underlying technology is being same is the case for Web Applications increasingly suppressed in favor of the (Arrue, Vigo, & Abascal, 2008). The services being rendered. For example, nature and underlying goals of an pointing out to the user to adjust screen organization can constitute information resolution, suggesting that a specific of the underlying domain and this user agent is the ‘best fit’ for a given information can be reflected in a Web Web Application, or recommending to Application. For example, a Web Portal download a specific plug-in for a is domain-specific, and has been particular user agent to view a video instrumental in the proliferation of clip or read a document, has become far domain-specific Web Applications. less common than it used to be a decade Indeed, being domain-specific has been ago. Indeed, doing so may even be central to the success of Web considered a design anti-pattern. Applications aimed for e-business, e- education, and e-government. Implications from Standards There is a need to distinguish and The proliferation of information classify different types of Web technologies such as the Extensible Applications addressing different Markup Language (XML), the Extensible domains. This is because an Stylesheet Language Transformations understanding of the domain and its (XSLT), and the Cascading Style Sheets subsequent realization has an impact on (CSS) has been useful in bringing the all aspects of the development of a Web neutrality of computing environment to Application. The actual information, a practical realization. style of expressing information, and presentation of information in a Web Challenges Application are all influenced by the In general, a commitment to computing properties of the domain. For example, environment-neutrality is not free of the theme of a Web Portal selling cost. In order to achieve computing gaming software needs to be environment-neutrality to an identifiably different from a Web acceptable degree, any advantages Application connected to an airline’s specific to, for example, hardware or information system or to a University’s software optimization, must be learning management system. sacrificed. To check device variability, particularly that on mobile devices, the There is increasing support for domain devices themselves and/or device engineering in the development of Web simulators need to be acquired. The aim Applications. The Feature-Oriented Communications of the IBIMA 6

Domain Analysis (FODA) methodology in the development of highly interactive is one of the approaches for domain systems of the past few decades. For analysis. The information of the example, it led to the ascent of underlying domain is critical to the user participatory design in user interface models and usage models (related to [C- engineering in the 1980s and the 3]), and the requirements specification. proliferation of agile methodologies in There are high-level design patterns software engineering in the 1990s. such as the SITE BRANDING pattern (Van Duyne, Landay, & Hong, 2003) that In the past decade, it has been suggest that the genre of a Web recognized even more so that Application be specified at the start of consideration of only technical aspects development (related to [C-7]). These is insufficient in providing the quality of high-level decisions constrain the service expected from Web Applications selection of low-level design patterns by their consumers. The users of and, as a result, the design of the final interactive systems such as Web Web Application is specific to the target Applications are not homogeneous. domain. Indeed, users can vary in a number of ways including age, mental and physical Implications from Standards ability, educational background and skills, culture, gender, geographical It has been pointed out in the ISO 9241- location, goals, personal preferences, 151:2008 Standard that a Web and temperament. This diversity must Application should explicitly indicate its be acknowledged, embraced, and purpose. subsequently acted upon. To increase the likelihood of acceptance and hope Challenges for success, the human factors need to be explicitly acknowledged and There can be undesirable side-effects of embraced. Indeed, the human- domain-specificity. The language used centeredness of Web Applications in a domain-specific Web Application, needs to be reflected throughout including terminology, may be development and during operation. acceptable to regular users; however, it may alienate new users if appropriate The acknowledgement of the steps are not taken. These steps could significance of the role of humans has include general introduction to the led to a variety of changes at all levels of features of the Web Application and development of Web Applications. It provision of context-sensitive help. also led to a number of approaches, as shown in Table 2, for developing [C-3] Human-Centered interactive systems in general and Web The need to explicitly take into account Applications in particular. the concerns of users always had a part Table 2. The different human-centered approaches for the development of Web Applications.

Activity-Centered Design Contextual Design Empathic Design Goal-Directed Design Human-Centered Approaches Participatory Design in Web Engineering Sociable Design Task-Centered Design Usage-Centered Design User-Centered Design User Experience Design

7 Communications of the IBIMA

The shift of the focus on technologies to 151:2008 Standard, and for user- focus on people has had an impact on centered design in the ISO 9241- how the development of Web 210:2010 Standard. Applications should be viewed. The process models for development of Web Challenges Applications have become more human-centric (Kamthan, 2008). For There are possible side-effects of example, approaches for formulating human-centeredness of Web concrete user models based on an input Applications. An emphasis on the users of aforementioned human factors and and their environment may lead to for eliciting user requirements that are over-attention and dependence on the based on a dialogue with real users data derived from ethnographic studies have garnered attention. and user feedback, both during and after development. An initiative for The acceptance of a user’s context, personalization usually comes at the inception of personalization (related to cost of privacy, and providing a priori [C-2]), and use of recommender guarantees to users of the appropriate systems are some of the prime use of the data submitted by them can examples of human-centeredness of be a challenge. There is also the Web Applications. potential for the use of the Web for persuasion (Weinschenk, 2009) that can The New Generation of Consumers of adversely impact the credibility of a Web Applications Web Application (Fogg, 2003).

The interplay between people and [C-4] Information Interaction-Intensive digital technology has reached a new The ‘invisibility’ of a computer was frontier. A digital native (Palfrey & posited more than two decades ago Gasser, 2008) is a person who was born (Norman, 1998). To be able to shield at the time digital technologies were the intricacies of a computer from taking shape and/or has grown up with humans has become an intended goal of digital technologies. These digital software systems in the intervening technologies include those that underlie years. Indeed, for some developments the current non-stationary computing involving frequent, sophisticated devices as well as the Internet in interactions between humans and general and the Web in particular. In computers, such as ‘smart’ contrast, there is also a growing environments (Streitz, Kameas, & population of digital laggards, especially Mavrommati, 2007), it has become a in certain countries where the human reality. life expectancy has improved. By treating information as a ‘first-class’ The need for taking heterogeneity of concern, the Web has acted as a catalyst consumers into account during the in this regard. The Web has placed yet development of Web Applications has another layer between a human and the become ever more important due to the computer’s operating system interface, increasing number of and the widening namely that of information interfaces gap between digital natives and digital (Pirolli, 2007). It has been shown in laggards. empirical studies (Weinreich et al., 2008) that, instead of merely seeking Implications from Standards information, users now also expect to be able to interact with a Web This movement towards human- Application to carry out certain tasks. centeredness had an impact on the Therefore, the study of human- development of international standards. information interaction (HII) in general For example, there is treatment of and information interfaces in particular software ergonomics in the ISO/TR is imperative for understanding the 9241-100:2010 Standard, for user nature of Web Applications. It is likely needs and context of use in the ISO that, among the consumers of Web 9241-210:2010 Standard, for user goals Applications, the digital natives are the and user tasks in the ISO 9241- most exposed to and accustomed to the Communications of the IBIMA 8

presence of information interfaces an abstract Web Application, the user (related to [C-3]). interface of the user agent, and the user interface of the underlying operating Fig. 3 illustrates a tier of multiple system. interfaces: the information interface of

Fig. 3. The information interface in the hierarchy of human-to-machine interaction.

The presence of hypermedia in general abstract information interface in and hypertext in particular in a relation to other, higher-level document; controls in an embedded interfaces, namely that of the user agent applet; menus of conventionally and the operating system. The presence desktop, office publishing applications of information design patterns in the inside a user agent; and so on, are design of the elements of the essentially manifestations of information interface is evident. information interfaces. Fig. 4 shows an

Fig. 4. An example of an abstract information interface for a Web Application and its context. 9 Communications of the IBIMA

HII could be considered as a sub-field of presence of a weak information scent human-Web interaction (HWI). HII (Pirolli, 2007) and/or the absence of relies on a number of cognate any context-sensitive help. The disciplines (Albers, 2008) such as challenge increases if there are features cognitive psychology, social psychology, across interfaces that are same or human factors, HCI, information similar in presentation but different in science, and technical communication. functionality, or same or similar in The structural, behavioral, and functionality but different in creational aspects of information presentation. For example, accessibility interface design usually make use of and usability issues of the search patterns (related to [C-7]). interface provided by a Web Application are not necessarily identical The ascent of HII has had broad and to that of a general-purpose search profound implications, a trend that is engine or to that provided by a user likely to continue in the foreseeable agent being used to access that Web future. HII has led to the emergence in Application. recent years of new sub-disciplines such as the ascent of information [C-5] Model-Driven modeling, information design, and The development of Web Applications information quality. It has also helped has steadily been moving towards reduce the (at times, superficial) abstraction . There are various compartmentalization of art, science, approaches for achieving abstraction, and engineering, and brought people one of which is conceptual modeling. from these areas together to There are a number of advantages of collaborate. The usefulness of modeling including creating an conventional conceptual modeling environment for discussion across approaches and relevance of project team, early cost estimation, conventional (software) quality models exploring and experimenting with is being challenged. design alternatives, identifying stakeholders, minimizing attention at Implications from Standards the level of transient technologies, and There conventionally has not been any so on. standard for user interfaces on the Web. The existence of the ISO 9241-151:2008 The assortment of desirable models Standard has changed that; however, includes a problem domain model, user not being legally binding, there is no model (such as user role, user profile, guarantee that it will be adopted and and/or persona), usage model (such as followed in the future. a use case model and/or a task model), and macro- and micro-architectural Challenges design models. The design models can be refined further to include specific The presence of information interfaces aspects of design such as structure and presents new development challenges. behavior, usually using design patterns For example, a consumer may have to (related to [C-7]). Table 3 lists some deal with multiple different interfaces early conceptual models in the within the same Web Application or development of Web Applications and across different Web Applications. This their potential uses. could be prohibitive, particularly in the

Communications of the IBIMA 10

Table 3. The potential uses of early conceptual models in the development of Web Applications.

Conceptual Model Type Potential Use(s)

Problem Domain Model Requirements Elicitation and Specification, Glossary

Stakeholder Model Plan User Requirements Elicitation and Specification, User Model Acceptance Testing Cost Estimation, Behavioral Requirements Elicitation, Test Use Case Model Case Specification Task Model Interaction Design Description

The interest and initiatives towards conceptual modeling. In general, modeling Web Applications has modeling is both art and science gradually increased over the past (Lieberman, 2007), and the knowledge decade (Rossi et al., 2008). There are and experience in these is rare. The modeling approaches such as the presence of different modeling Object-Oriented Hypermedia Design notations may give engineers a choice; Method (OOHDM), UML-based Web however, lack of communicability Engineering (UWE), W2000, and the across notations persists. There are a Web Modeling Language (WebML) that number of UML profiles for Web are specific to Web Applications. The Applications (Rossi et al., 2008), often availability of open modeling with different goals; however, none environments (related to [C-6]) provide have emerged as a ‘standard.’ Finally, choices and such as ArgoUML can help for automatic model transformations, Web Application projects with such as in the case of MDA, adequate budgetary constraints. mapping and necessary tool support may not exist. Implications from Standards [C-6] Open Environment-Based There is explicit support for conceptual The availability of open resources, for modeling of information and both the producer and the consumer, information structures in the ISO 9241- has played a critical role in the success 151:2008 Standard. In recent years, of the Web. Indeed, it is not an various general approaches for meta- overstatement to assert that a modeling have been proposed including widespread acceptance of the Web in the ISO/IEC 24744:2007 Standard and, absence of an open environment would under the umbrella of the Model-Driven not have been possible. Architecture (MDA) in general and the Meta-Object Facility (MOF) in The architecture of the Web (Jacobs & particular, the Unified Modeling Walsh, 2004) is based on an open Language (UML). There are now a environment. The specifications for number of extensions of UML for Web Hypertext Transport Protocol (HTTP), Applications in form of UML profiles, the Internet protocol suite on which it is each often focused on one of the based, and the successors of HTTP, possible views of the application. including but not limited to, the Hypertext Transport Protocol Secure Challenges (HTTPS) and SOAP, are open. The same applies to addressing schemes such as In spite of its usefulness, the adoption of the Uniform Resource Identifiers (URIs) conceptual modeling is not automatic. and Internationalized Resource The organization’s process maturity Identifiers (IRIs). Finally, specifications and availability of resources can affect of markup languages for information the degree of commitment to description such as the HyperText 11 Communications of the IBIMA

Markup Language (HTML) and XML are standards or are considered as DocBook, scripting languages such as standards. ECMAScript and PHP: Hypertext Preprocessor (PHP), relational database Challenges management systems (RDBMS) such as MySQL, and content management In spite of the prevalence of OSS, their systems (CMS) that are based on quality is still an open issue. The PHP/MySQL such as WordPress, are stability of OSS is not guaranteed: there also open. are open source projects that have become dormant or have been The support software that is of primary discontinued after relatively short concern to the producers and the period of time. A commitment to such consumers of Web Applications has also OSS can therefore impact the velocity of been open. The classical exemplars on development of a Web Application. As the client-side include the NCSA Mosaic open source projects are voluntary and Lynx and on the server-side include efforts, timely customer support can be the NCSA Web server. These were an issue, especially for new initiatives. followed by the introduction of the Apache Web server and then the [C-7] Pattern-Oriented formation of the Apache Software The reliance on the knowledge Foundation, followed by the ascent of garnered from past experience is crucial the Mozilla Project. The Open Source for any development. A pattern is Software (OSS) has made an defined as an empirically proven indispensable contribution to the solution to a recurring problem that evolution of the Web and its successors, occurs in a particular context namely the Semantic Web and the (Buschmann, Henney, & Schmidt, 2007). Social Web. The ‘family’ of OSS clients, If made available properly, patterns servers, scripting and programming constitute one form of conceptually language processors, and content reusable experiential knowledge for the management systems has flourished commons. over the past decade. This has eased the entry barriers for small-to-medium-size In the past couple of decades or so, enterprises (SME) to use and/or patterns have been discovered and produce Web Applications. applied in a variety of domains, including those related to Web OSS for the Web and the Web for OSS Applications. The discipline of Web Engineering was initially influenced by The relationship between the Web and the work in hypermedia engineering, OSS is symbiotic (Kamthan, 2007). interaction design, and information Indeed, Web has become the de facto systems engineering, followed by platform for the development of OSS. software engineering. The same trend There are a number of OSS foundries seems to have been followed in the such as SourceForge initial ‘discovery’ of patterns for Web (http://sourceforge.net/) that have Applications. been set up as Web Applications, and have been instrumental in In recent years, a systematic approach dissemination of OSS; there are OSS based on patterns, for orienting the tools for high-fidelity prototyping, development of (Mobile) Web which have proven useful for user Applications aiming for ‘high-quality’, interface design; there are OSS tools for has been realized (Kamthan, 2008). In test automation, which have particular, it is expected that conceptual contributed to quality evaluation; and models of development during the so on. analysis and design phases are based on patterns. The deployment of tools can Implications from Standards become crucial in a ‘large-scale’ use of patterns (related to [C-6]). Table 4 The technological infrastructure illustrates the role of patterns in the underlying the Web including HTTP, development of Web Applications based HTTPS, SOAP, URI, HTML, ECMAScript, on some Web Engineering process. Communications of the IBIMA 12

Table 4. The relationships between patterns and models in a process for the development of Web Applications.

Is-Sensitive-To Web Application Quality Model Web Engineering Process Is-Visible-In Conceptual Models Is-Supported- Patterns Web Application Quality By Model Web Application Stakeholder Depends-On Model May-Use Patterns Conceptual Models Lead-To Web Application

Patterns for Web Applications and patterns. The acquisition of patterns Web Applications for Patterns can pose a challenge, particularly by those who are new or unfamiliar with The relationship between the Web and the pattern collections available in print patterns is symbiotic (Kamthan, 2008). and/or electronic form. This is largely Indeed, Web has become the de facto due to the absence of a single index of platform for dissemination of patterns. patterns and lack of documented There are a number of pattern experience in using patterns. The collections on repositories such as the selection of patterns is also non-trivial Hypermedia Design Patterns to compare patterns that are similar, Repository, the Portland Pattern that is, provide different solutions to Repository, and the Amsterdam the same problem due to a number of Collection of Patterns that have been set reasons including the absence of a up as Web Applications, and continue to ‘standard’ for pattern description. It is serve the pattern community. expected that the use of patterns can aid quality; however, in general, the Implications from Standards relationship between quality and patterns (Kamthan, 2009b) is equivocal There are currently no standards (related to [C-8]). related to any inherent aspects of patterns. The Software Engineering [C-8] Quality-Sensitive Body of Knowledge (SWEBOK), as The pursuit for product quality is defined by the ISO/IEC TR 19759:2005 intrinsic to all engineering, and Web Standard, has support for patterns in its Engineering is no exception. The Software Design Knowledge Area. The success of a software system as ISO/IEC 23026:2006 Standard and the perceived by its stakeholders is often ISO 9241-151:2008 Standard also have strongly related to its quality (Pertet & limited support for patterns. Narasimhan, 2005). Indeed, systems exhibiting ‘poor’ quality can be rejected Challenges by their consumers and, in turn, can incur notable losses to their producers. In spite of the advantages emanating from a commitment to patterns, there A quality model is useful for creating an are certain limitations. There may be understanding of quality. In general, a insufficient development experience in quality model provides a decomposition new domains. Therefore, even though of quality into a number of relevant desirable, there may not be any attributes and relationships between patterns for such domains. For example, those attributes. The quality models even though the awareness of proposed by standards initiatives for accessibility in the development of Web desktop systems are deemed Applications has increased over the insufficient for the needs presented by past decade, there is currently a scarcity distributed software systems and their of stable and mature accessibility stakeholders. For example, the ISO/IEC 13 Communications of the IBIMA

9126-1:2001 Standard does not adequately address information quality. Prevention and Cure In a recent quality model for Web Applications (Kamthan, 2008), there is In recent years, the significance of emphasis on a number of quality preventative approach to quality attributes including accessibility, assurance and evaluation throughout credibility, legality, maintainability, the development process of Web privacy, reliability, security, and Applications has been acknowledged usability. This model also underscores (Kamthan, 2008). This is necessary in the interplay of quality and patterns conjunction with curative approaches (related to [C-7]). to quality assurance and evaluation such as inspections and testing. The movement over the years in the quality engineering of Web Applications Implications from Standards has been from technical to social concerns. The needs of the consumers There are standards pertaining to both should be viewed as ‘first-class’ by generic as well as specific aspects of producers (related to [C-3]). It is quality. The ISO 9000:2005 Standard therefore only natural that the and the ISO/IEC 9126-1:2001 Standard development must take into account the apply to a general software system. experience , including emotional There is explicit emphasis on responses (Norman, 2004), of users accessibility, privacy, and usability in during interaction with a Web the ISO/IEC 23026:2006 Standard Application. The motivation for and/or the ISO 9241-151:2008 achieving ‘high-quality’ Web Standard. Furthermore, there is an Application has evolved naturally. The implicit emphasis on credibility in these users are spending increasingly more standards. There have been notable time on the Web, and increasingly efforts in this area but more needs to be depending on the Web for routine done. activities. For example, a corporate trainer may want to use a Web Challenges Application for laboratory demonstration without being In spite of the evident significance of interrupted by unsolicited pop-ups on quality assurance and evaluation, it is unrelated topics; a senior citizen with not free of cost. The size of the low visual acuity would like to use the organization, process maturity, Web for banking from home but may be requisite training, timelines-to-market, concerned about readability of text and and availability of resources are some entrusting others with personal of the factors that can affect a information; a person with epilepsy commitment to quality control. For would like to use the Web to look for example, the infrastructure required for travel destinations for her upcoming setting up a dedicated quality vacation without being confronted with engineering program, including animations; and so on. For that, laboratories, may not be within the accessibility, credibility, and usability budget of certain academic institutions are likely to be seen as increasingly and SME. The number of engineers for significant measures of success of a testing Web Applications has improved typical Web Application. over the years; however, experts in heuristics evaluation of accessibility or There is concerted effort by commercial usability are scarce and not vendors like Adobe Systems, IBM, inexpensive. There are a few free-to-use Microsoft, and Sun Microsystems to tools for evaluating, say accessibility, ensure that their products are sensitive credibility, and usability of Web to quality concerns of end-users. In Applications; however, guidance for particular, the support for accessibility their appropriate use may not always in products such as Adobe Flash, Adobe be freely available, if at all. There Reader, and Java programming currently are limited approaches for language has increased over the past quality meta-modeling. It appears that decade. currently there is no single, universal Communications of the IBIMA 14

quality model that is applicable to all and a single quality model may not be software systems. Furthermore, in their sufficient. Indeed, as shown in Table 5, existing form, the quality models for there is a need for multiple quality conventional software systems are not models for a Web Application, each sufficient for Web Applications. A Web emphasizing a specific aspect of that Application can be a complex system, Web Application.

Table 5. A selected collection of different quality models in the development of Web Applications.

Type of Quality Model Examples Conceptual Model Quality Domain Model Quality Model, Use Case Model Model Quality Model Specification Quality Model Requirements Specification Quality Model, User Story Quality Model Information Quality Model Text Quality Model, Graphics Quality Model, Animation Quality Model Design Quality Model Navigation Design Quality Model, Presentation Design Quality Model Implementation Quality Model Data Quality Model, Source Code Quality Model

Implications of Characterizing Web technology-oriented courses under Applications Engineering the label of ‘Developing a Web Site,’ ‘Using Technology X or Tool Y for The characteristics that reflect Creating a Web Site,’ ‘Web Design,’ relatively stabilizing invariants in the or the like, it could open new vistas evolution of Web Applications need to for curriculum design by increasing be identified and explored for a number the level of abstraction of courses. of reasons, including their implications The potential directions for courses on the two important sectors of society: include Conceptual Modeling of Web academia and industry. These are Applications (related to [C-5]), Open explored next. Source Web Engineering (related to [C-6]), Quality of Web Applications Implications for Academia (related to [C-7] and [C-8]), and A characterization of Web Applications User-Centered Web Engineering aims to provide an understanding of the (related to [C-3] and [C-8]), to name state-of-the-art in the development of a few. In these courses, basic Web Applications. This is relevant to concepts of Web Engineering and both educators and researchers. services to humans become primary, and technology, albeit important, • Teaching. A characterization of Web becomes secondary. Applications could be useful for • educators who are involved in Research. A characterization of curriculum development related to Web Applications could be useful for Web Engineering at their respective researchers who are looking for new institutions of higher education. For problems related to Web example, [C-1] − [C-8] could be Engineering. For example, an placed into the Web Engineering examination of the client-side Body of Knowledge (WEBOK) properties of Web Applications has (Navarro, 2009) and aligned led to the formulation of a more according to a pedagogical model for accurate usability model (Bruno, Web Engineering education Tam, & Thom, 2005). There are (Hadjerrouit, 2005). Furthermore, obviously many other problems of instead of the conventional focus on potential research interest including, but not limited to, 15 Communications of the IBIMA

elicitation of relationships between relevant to the underlying process [C-1] − [C-8] and the standards for environment, a trend that is likely to Web Engineering such as the continue for the foreseeable future. ISO/IEC 23026:2006 Standard; In that regard, agile methodologies elicitation of metaphors for Web have a role to play. The Applications on small, non- organizations have come to embrace stationary devices (related to [C-3]); methodologies such as Crystal being able to provide rich services to Orange Web, Extreme Programming both able and disable users in a cost- (XP), Lean Development, Scrum, and effective manner (related to [C-3] customizations of the Unified and [C-8]); formulation of metrics Process (UP) including the Rational for accessibility (related to [C-8]); Unified Process (RUP) and the Open and so on. Unified Process (OpenUP). In some cases, process environments being Implications for Industry followed are adapted for the The ascent of the Web has led to industry in general and to the fundamental shifts in the industrial organization in particular. In other culture. The Web has become a ‘first- cases, users are being solicited, class’ medium for a number of preferably early, for evaluation of industries. This has had a notable and feedback on design prototypes. impact on business decision making If carried out appropriately, these and organizational practices, especially practices have positive implications those industries that are committed to towards the quality and longevity of Business-to-Business (B2B) and the product (related to [C-3] and [C- Business-to-Consumer (B2C) electronic 8]). commerce (E-Commerce). • People. There are a number of A characterization of Web Applications stakeholders of any engineering is relevant to technical leaders who are product. The ubiquity of the Web involved in planning their future has taken the classical industrial information technology policies at their practice of attending to customers respective organizations. There is a towards new directions. There is constant drive in industry to gain a increasing attention towards people competitive edge through a number of involved in the use of Web means such as by improving existing Applications. In particular, the focus workflows, finding avenues of reusable continues to shift from technological knowledge, eliciting new directions for determinism to the needs and tasks personnel training, and so on. An of users. For example, user models understanding of the avenues being such as personas (Pruitt & Adlin, pursued in the engineering of Web 2006), usage models such as use Applications could help charter new case models (Neill & Laplante, paths for these directions. 2003), and approaches for user requirements such as user stories • Process. In the early days of the (Cohn, 2004) are being increasingly Web, the organizations followed an deployed in industry (related to [C- ad-hoc or essentially linear 3]). approaches towards the development of ‘large-scale’ Web Directions for Future Research Applications. With the passage of time, there have been fundamental The Web upon conception, and for a changes in the process environment number of years thereafter, has that is adopted and deployed for the remained centered on the one-to-many development of Web Applications. model of communication of For example, taking into information. It has been realized that consideration the working habits of the Web must evolve if it is to reach its the people involved (related to [C- full potential envisioned at its inception. 3]) and following an evolutionary approach during development are being recognized as increasingly Communications of the IBIMA 16

Towards Characterizing the is driven by ‘collective intelligence,’ Development of Next Generation of Web realized by information technology, and Applications characterized by user participation, There have been two notable and openness, and network effects. complementary directions of the evolution of the Web. The Semantic Web The Semantic Web and the Social Web, has emerged as an extension of the Web as shown in Fig. 5, reflect machine- that adds technological infrastructure oriented and human-oriented extension for better knowledge representation, of the Web, respectively. The interpretation, and reasoning (Hendler, development of Semantic Web Lassila, & Berners-Lee, 2001). The Applications is concerned with Social Web , or as it is more commonly representation of information, while the referred to by the pseudonym Web 2.0 Social Web Applications is concerned (O’Reilly, 2005), is the perceived with the presentation of information, evolution of the Web in a direction that respectively.

Fig. 5. The two salient directions of the extensions of the Web.

The attention on the Semantic Web has demonstrated by experimental search reinforced the significance of the engines like CORESE, SWSE, and separation of the representation from Swoogle. the presentation of information. This, in turn, has positive implications towards The Social Web celebrates the human accessibility, usability, and involvement in the evolution of the maintainability. For example, multiple Web. If the Web leveled the playing field user-supplied style sheets can be between large and small businesses, the associated with a single source of Social Web, to certain extent, levels the representation, and multiple target playing field between producers and presentations can be generated from a consumers. It has spawned a new era of single source of representation. A better Social Web Applications, and opened representation of knowledge opens new new vistas for collaboration among possibilities for ‘intelligent’ user globally distributed participants. interfaces (IUIs), especially those for Indeed, Social Web applications like adaptation and personalization. The Del.icio.us, Facebook, Flickr, Scribd, representation of knowledge in form of Wikipedia, and YouTube, are but a few ontologies hold the promise of more examples of the phenomenon where a precise and relevant searching as 17 Communications of the IBIMA

consumer becomes a co-producer, or a especially those labeled as Rich Internet prosumer , in a social network. Applications (RIA) and implemented in Asynchronous JavaScript and XML It is relatively early to characterize this (AJAX), need to commit to universal new generation of applications, and design (Chisholm & May, 2008), and constitutes an area of future research therefore to accessibility and usability interest. In doing so, the characteristics (related to [C-8]). However, given a [C-1] − [C-8] are deemed necessary but group of participants in a Social Web not sufficient. For the sake of argument, Application, there is also a need to consider the case of Social Web consider the sociological impact that Applications (Bell, 2009). It is likely that entails from the computer-mediated Social Web Applications need to move communication among participants. from genericity to specificity (related to Therefore, the types of relationships [C-2]). For example, there are generic among stakeholders of Social Web social networking applications like Applications, such as those shown in Facebook, but also means for creating Fig. 6, become crucial. In doing so, community-specific social networks quality attributes that were previously using systems such as Ning. The need dormant or nonexistent, especially for an appropriate information those related to affect (Pang et al., interface design is crucial for Social 2010), come into play. For example, the Web Applications (related to [C-4]). For quality attributes related to human example, rich information interface emotion such as politeness (Whitworth, design of Social Web Applications such 2009) are imperative for both the as the DocuWiki editor need to be success of social computing and mindful of its higher-level context, sustainability of Social Web namely that of the user agent and the Applications but is not completely operating system. Furthermore, to be addressed by [C-8]. inclusive, the Social Web Applications,

Fig. 6. A range of relationships between stakeholders of a Social Web Application.

Conclusion the society, as a whole, has a collective responsibility. The Web continues to grow at an alarming pace, and the dependence of A commitment to the characteristics the society on it continues to increase. pertaining to the evolution of Web The velocity (speed and direction) of Applications presented in this paper evolution of the Web (Murugesan, comes with technical and social 2010) and the sustainability of the Web challenges for both the producers and are pressing imperatives towards which for the consumers of these applications. In the past decade, there have been many advances towards enabling the Communications of the IBIMA 18

technological infrastructure of the Web Web Applications That Reach Everyone . in lieu of addressing the technical O’Reilly Media. challenges. However, there is much to be done in addressing the social Cohn, M. (2004). User Stories Applied: challenges, especially as they pertain to For Agile Software Development . the new generation of Web Addison-Wesley. Applications. To do that, may require a change in the organization culture. Fogg, B. J. (2003). Persuasive Technology: Using Computers to Change In conclusion, for a coherent evolution What We Think and Do . Morgan of the discipline of Web Engineering, its Kaufmann. unique nature needs to be acknowledged and studied Forward, A., & Lethbridge, T. C. (2008). systematically. To address that, there is A Taxonomy of Software Types . School of a need to consider Web Engineering Information Technology and from different, and hopefully time- Engineering. Technical Report: TR- invariant, viewpoints. The 2008-06. University of Ottawa, Ottawa, characterization presented in this paper Canada. is one direction in furthering the understanding of the nature of Web Ginige, A., & Murugesan, S. (2001). Web Engineering. Engineering: An Introduction . IEEE Multimedia, 8(1), 14-18. References Hadjerrouit, S. (2005). Designing a Albers, M. J. (2008). Human-Information Pedagogical Model for Web Engineering Interaction . The Twenty Sixth Annual Education: An Evolutionary Perspective . ACM International Conference on Journal of Information Technology Design of Communication (SIGDOC Education, 4, 115-140. 2008), Lisbon, Portugal, September 22- 24, 2008. Hendler, J., Lassila, O., & Berners-Lee, T. (2001). The Semantic Web . Scientific Arrue, M., Vigo, M., & Abascal, J. (2008). American, 284(5), 34-43. Supporting the Development of Accessible Web Applications . Journal of Jacobs, I., & Walsh, N. (2004). Universal Computer Science, 14(16), Architecture of the World Wide Web, 2699-2719. Volume One . World Wide Web Consortium (W3C) Recommendation. Bell, G. (2009). Building Social Web Applications: Establishing Community at Kamthan, P. (2007). On the Prospects the Heart of Your Site . O’Reilly Media. and Concerns of Integrating Open Source Software Environment in Software Bruno, V., Tam, A., & Thom, J. (2005). Engineering Education . Journal of Characteristics of Web Applications that Information Technology Education, 6, Affect Usability: A Review . The 45-64. Nineteenth Conference of the Computer-Human Interaction Special Kamthan, P. (2008). A Situational Interest Group (CHISIG) of Australia on Methodology for Addressing the Computer-Human Interaction, Pragmatic Quality of Web Applications Canberra, Australia, November 21-25, by Integration of Patterns . Journal of 2005. Web Engineering, 7(1), 70-92.

Buschmann, F., Henney, K., & Schmidt, Kamthan, P. (2009a). A Model for D. C. (2007). Pattern-Oriented Software Characterizing Web Engineering . In: Architecture, Volume 5: On Patterns and Encyclopedia of Information Science Pattern Language s. John Wiley and and Technology, Second Edition. M. Sons. Khosrow-Pour (Ed.). IGI Global, 2631- 2637. Chisholm, W., & May, M. (2008). Universal Design for Web Applications: 19 Communications of the IBIMA

Kamthan, P. (2009b). On the Symbiosis and Information Appliances Are the between Quality and Patterns . The Third Solution . The MIT Press. International Workshop on Software Patterns and Quality (SPAQu 2009), Norman, D. A. (2004). Emotional Design: Orlando, USA, October 25, 2009. Why We Love (Or Hate) Everyday Things . Basic Books. Kruchten, P. (2004). Putting the “Engineering” into “Software O’Reilly, T. (2005). What Is Web 2.0: Engineering” . The Fifteenth Australian Design Patterns and Business Models for Software Engineering Conference the Next Generation of Software . O’Reilly (ASWEC 2004), Melbourne, Australia, Network, September 30, 2005. April 13-16, 2004. Pacheco, C., & Garcia, I. (2008). Kamthan, P., & Shahmir, N. (2010). On Stakeholder Identification Methods in the Directions of Evolution in the Software Requirements: Empirical Engineering of Web Applications. The Findings Derived from a Systematic Fourteenth IBIMA conference on Global Review . The Third International Business Transformation through Conference on Software Engineering Innovation and Knowledge Advances (ICSEA 2008), Sliema, Malta, Management, Istanbul, Turkey, June 23- October 26-31, 2008. 24, 2010. Palfrey, J., & Gasser, U. (2008). Born Lieberman, B. A. (2007). The Art of Digital: Understanding the First Software Modeling . Auerbach Generation of Digital Natives . Basic Publications. Books.

Lowe, D. (2002). Characterisation of Pang, M., Suh, W., Hong, J., Kim, J., & Lee, Web Projects . The Eighth Australian H. (2010). A New Web Site Quality World Wide Web Conference (AusWeb Assessment Model for the Web 2.0 Era . 2002), Sunshine Coast, Australia, July 6- In: Handbook of Research on Web 2.0, 10, 2002. 3.0 and X.0: Technologies, Business, and Social Applications. S. Murugesan (Ed.), Lowe, D. (2003). Web System IGI Global, 387-410. Requirements: An Overview . Requirements Engineering, 8(2), 102- Pertet, S. M., & Narasimhan, P. (2005). 113. Causes of Failure in Web Applications . PDL Technical Report PDL-CMU-05- Mendes, E., & Mosley, N. (2006). Web 109. Carnegie Mellon University, USA. Engineering . Springer-Verlag. Pirolli, P. (2007). Information Foraging Murugesan, S. (2010). Web X.0: A Road Theory: Adaptive Interaction with Map . In: Handbook of Research on Web Information . Oxford University Press. 2.0, 3.0 and X.0: Technologies, Business, and Social Applications. S. Murugesan Powell, T. A., Jones, D. L., & Cutts, D. C. (Ed.), IGI Global, 1-11. (1998). Web Site Engineering . Prentice- Hall. Navarro, A. (2009). A SWEBOK-based Viewpoint of the Web Engineering Pruitt, J., & Adlin, T. (2006). The Persona Discipline . Journal of Universal Lifecycle: Keeping People in Mind Computer Science, 15(17), 3169-3200. Throughout Product Design . Morgan Kauffman. Neill, C. J., & Laplante, P. A. (2003). Requirements Engineering: The State of Rossi, G., Pastor, O., Schwabe, D., & the Practice . IEEE Software, 20(6), 40- Olsina, L. (2008). Web Engineering: 45. Modelling and Implementing Web Applications . Springer-Verlag. Norman, D. A. (1998). The Invisible Computer: Why Good Products Can Fail, Selmi, S. S., Kraïem, N., & Ghézala, H. H. the Personal Computer Is So Complex, B. (2005). Toward a Comprehension Communications of the IBIMA 20

View of Web Engineering . The Fifth International Conference on Web Engineering (ICWE 2005), Sydney, Australia, July 27-29, 2005.

Streitz, N., Kameas, A., & Mavrommati, I. (2007). The Disappearing Computer: Interaction Design, System Infrastructures and Applications for Smart Environment s. Springer-Verlag.

Van Duyne, D. K., Landay, J., & Hong, J. I. (2003). The Design of Sites: Patterns, Principles, and Processes for Crafting a Customer-Centered Web Experience . Addison-Wesley.

Weinreich, H., Obendorf, H., Eelco, M., & Herder, M. (2008). Not Quite the Average: An Empirical Study of Web Use . ACM Transactions on the Web, 2(1), 5:1-5:31.

Weinschenk, S. M. (2009). Neuro Web Design: What Makes Them Click? New Riders.

Whitworth, B. (2005). Polite Computing . Behaviour & Information Technology, 24(5), 353-363.

Whitworth, B. (2009). Politeness as a Social Software Requirement . International Journal of Virtual Communities and Social Networking, 1(2), 65-84.

Ziemer, S., & Stålhane, T. (2004). The Use of Trade-offs in the Development of Web Applications . International Workshop on Web Quality (WQ 2004). Munich, Germany. July 27, 2004.