You are on page 1of 6

A Strategic-Oriented Method for Web Applications Design: A Case Study

Semia Sonia Selmi, Naoufel Kraiem, Henda Ben Ghezala ENSI, National School of Computer Science, 2010, Manouba, Tunisia Abstract
We present in this paper a strategic-oriented method for the design of Web Applications The method is a multi-process approach which its principle goal is to guide designer during all basic phases of web design through different kinds of guidelines at different levels of abstraction. Proposed method is based on existing methods. These latter are redefined in components and then stored in a method database. According to the situation at hand, most appropriate components are selected and assembled to build a situational method which is the most suitable one. We have opted for the use of the MAP process meta-model in order to provide designer ability to personalize design process and thus offering more flexibility during design was essentially the information dissemination and in which web applications were simple text and images, applets and style sheets. These applications have grown to be online transactional, enterprise-wide planning, web-based collaborative work environments, and so on. Consequently, existing methods should evolve to cover all aspects which may have effect on the future web application quality. Second, associated process models are prescriptive. They describe a process as a set of activities with conditions constraining their order. Nevertheless, the linear view of activity decomposition seems to be inadequate for modelling web applications design processes. Being prescriptive, processes are already predefined and specify only what must be done. However, a design process does not always specify what must be done but contains some specification of what can be done. Accordingly, web design process should be considered as a situation-oriented one. Depending on current situation, different decisions could be taken dynamically and progressively in web design process. In this paper, we propose a method providing designer at one hand with complete features coverage, and at the other hand with the ability to personalize his process according to the situation in which he is faced and offering, so, required flexibility. The remainder of this paper is organized as follow. We provide in the second section an overview of the method, its principle, components, process meta-model associated and situational factors. In the third section, we apply the method to a simple case study: a research laboratory application. Finally, in section 4, we summarize our conclusions and future works.

1.Introduction
In the last years, considerable attention has been given to Web engineering discipline. The essence of Web engineering is to successfully manage the diversity and complexity of Web application development, and hence, to avoid potential failures that can have serious implications [6]. Various methods have been proposed to support the development of web applications and to overcome their increasingly complexity such RMM [8], OOHDM [13] [7], UWE [10], WSDM [3] and WebML [2], HFPM [11], etc. To study and understand deeply these methods, we have proceed to their evaluation according to a Web Engineering Framework. The presentation of the proposed framework is out the scope of this paper, for details readers can see [14]. Several conclusions have been obtained from this evaluation and some major limitations of existing methods have been identified particular with regard to a) features to involve during a web application design and b) the level of flexibility provided by these methods. First, major existing methods do not consider systematically all features should be implied during design of a complex web application such potential users profiles or complexity of services offered by the application. Although many efforts have been done in this issue following the continual increase of modern web applications complexity, it is not yet mature. This is can be due to the first nature of the web that goal

2. A Strategic-oriented method for web applications design


2.1. Principle
In response to these limitations, we propose a generic method based on existing web design methods. These methods are redefined and decomposed in components and stored in a method database. Most appropriate and suitable components according to situation at hand will be selected and assembled to built a new situational method.

Proceedings of the Advanced International Conference on Telecommunications and International Conference on Internet and Web Applications and Services (AICT/ICIW 2006) 0-7695-2522-9/06 $20.00 2006 IEEE

The proposed method offers panoply of processes for the design of a wide range of web applications. For each one, particularities and specific aspects are considered. We distinguish between the four following kinds of applications: kiosk applications (simple web sites), Web Information Systems (WIS), adaptive applications and e-commerce applications. Instead to be prescriptive, our method provides a panoply of alternative ways of doing a task and the appropriate alternative is selected depending upon the situation in which application is developed and to which designer is faced such his experience degree, type of the application he intends to develop or also the degree of adaptation he proposes to consider and which application should provide. Consequently, we propose a method providing designer at one hand with complete features coverage, and at the other hand with the ability to personalize his process according to the situation in which he is faced and offering, so, required flexibility.

navigation model. All others aspects are considered in the back end of the application. They are transparent to the user. Based on this criterion, we have distinguished between two classes of models: Commun models class and Features models class. The first class comprises models that refer to the front end of the application: application domain model, navigation model and presentation model. The second class contains all others models: requirements analysis model, adaptation model, user model, business model and service model.

2.3. The proposed Meta-Model


We apply the MAP formalism for representing deliverables models and underlying processes. According to [1] [12], a MAP is a process model in which a non deterministic ordering of intentions and strategies has been included. As shown in figure 1, the MAP is a labelled directed graph with intentions as nodes and strategies as edges between intentions. It consists of a number of sections each of which is a triplet <source intention Ii, target intention Ij, strategy Sij>. A strategy is an approach, a manner to achieve an intention. The strategy, as part of the triplet <Ii, Ij, Sij>, characterizes the flow from Ii to Ij and the way Ij can be achieved. The specific manner in which an intention can be achieved is captured in a section of the MAP. The generic MAP contains a finite number of paths from Start to Stop, each of them prescribing a way to design a web application, each of them is a web design process. For further details on Map see [1] [12]. Figure 1 presents the generic meta-model of web application design. A possible path is illustrated by bold strategies. We detail, in the following, the some strategies of the generic MAP and we illustrate each step with the example of a research laboratory application.

2.2. Components: Product Models


When we have investigated in the study of existing methods we have observed that they consider design process in terms of phases and their deliverables, often models. A typical web design approach has a number of phases delivering the following models [5]: Conceptual model, Navigation model, Presentation model. However, due to the evolution of the web and therefore of web applications and their complexity, others phases are recognized and consequently others models are delivered such Requirements analysis model, Adaptation model, User model, Business model and Service model. The first four models can be delivered during the design process of any web application. However, others are specific to some web applications types. For instance, both adaptation and user modelling phases are performed during design of an adaptive application [3]. In fact, an adaptive application must include a user model to describe users properties, preferences and knowledge. It must also provide adaptive mechanisms for the dynamic adaptation of the hypermedia on the basis of the state of the user model. It is obvious that success of web applications depend largely on users satisfaction. Users are interested in the information displayed in the application, how they can navigate through this information, and how this information is presented. These aspects are directly associated to the frond end of the application. It is what the user views and with what he interacts. All these aspects refer respectively to: Application domain model, presentation model and

Figure 1. The generic process of design

Proceedings of the Advanced International Conference on Telecommunications and International Conference on Internet and Web Applications and Services (AICT/ICIW 2006) 0-7695-2522-9/06 $20.00 2006 IEEE

The MAP of figure 1 contains the following two intentions Define Feature Model and Define Common Model in addition to Start and Stop intentions. Intentions can be achieved in diverse ways. For example, Define Feature Model intention can be achieved with Business-guided strategy, User-centred strategy and/or Requirements-centred strategy. These strategies can be performed in parallel or alternatively depending on situation at hand. As for Define Application Model intention, it can be achieved either by following Process-guided strategy or Pattern-guided strategy.

Notation standardization factor determines that designer can adopt either standard notation or proper notation during design process.

3. A Case study: A Research laboratory


application
4.1. Part of Problem description
Researchers want, first at all, to have idea about laboratorys activities, projects undertaken in the laboratory: both projects undertaken in cooperation with others laboratories and internal projects. They are also interested in researcher members: their personal information, their ability to supervise a research work, list of their publications and research results such as thesis, master or even prototypes realized and courses assured. Non member users are interested in also conferences being in the same research area of the laboratory and organized events such workshops, and so on. As for researcher members, they wish to accede to all these information in addition to give them ability to fill in the researcher form on line. He should, first, proceed to an authentication step to allow them store new results or update oldest and also to fill the researcher form. Researcher members desire to be informed by mail or new pages if there is new events. Research results are sorted, annotated or removed based on state of the user model. The application can model their interests in researches results by registering the results visited and even those have been marked (in bookmarks) by members as being of special interest. For this, members are asked to introduce a list of keywords that will be administrated by the system. As we can conclude, research laboratory application implies different users with different views, and specially for researcher members for who application must model a user model and then be adaptable according to their profiles.

2.4. Situational Factors


Situational factors help designer in the choice of the appropriate strategy and/or intention among several presented in the MAP. We have identified a number of factors that we have classified into three following categories: Application factors Application type: {Kiosque, Web Information System, Adaptive, E-commerce} The choice of one path among others in the MAP can be determined by the kind of the application designer intends to develop. All aforementioned types are obviously web applications; however they are different in term of deliverables models during process design. These aspects will be more detailed in all with length of the paper. Service complexity: {Low, Medium, High} Designer Experience: {Low, Medium, High} This factor specifies if the designer has already participated in the development of similar applications belonging to the same domain. It is to notice that web applications belonging to a same domain have similar structures and provide similar services. User-application adaptation: {Low, Medium, High} This factor determines the adaptation degree of the application to the user. High degree is attributed to an adaptive application. If designer intends to consider user aspect during design process and thus he will adopt a user-centred approach without proposing adaptation mechanisms, this factor will take the medium value. In other cases, factor will be of a low degree. Domain factors Problem clarification: {Low, Medium, High} This factor allows knowing if the problem project is well defined and clarified or not. Others Notation standardization: {Proper, Standard}

4.2. Evaluation of the Situation


From the above description of the problem, we have determine the following situational factors of evaluation: adaptive Application type: medium Service complexity: medium Experience of designer: User application adaptation: high low Problem clarification: standard Notation standardisation:

Proceedings of the Advanced International Conference on Telecommunications and International Conference on Internet and Web Applications and Services (AICT/ICIW 2006) 0-7695-2522-9/06 $20.00 2006 IEEE

This evaluation allow to determine a particular path in the generic MAP illustrated in figure 2. Given the current situation, process start by progressing to Define Feature Model intention with the three strategies. These latter are detailed in a low level of abstraction by 3 MAPs as illustrated by the figure 2. Due to the space which is not enough, we will not present refinements of the all strategies. The Requirements-centred strategy helps to gather and form requirements specification of both potential users and stakeholders, see figure 2.a. To elucidate requirements of both intervenient, we have opted for the interviews by which we have identified both functional requirements and non functional ones.

strategy to conceptualize services and corresponding activities that user will perform during navigation in the application. In general, most propositions working on the extension of existing methods to define business processes have been done around the use of activities diagrams of UML. Some others propose their proper notation and diagrams. Figure 4 presents an activity diagram that shows the simplified flow of control to fill a researcher form. In this diagram the SignIn sub activity starts the process. Next, depending on whether the user is member of laboratory or not, he can be either directly driven to the authentication sub activity state or he can be added to the system through some controls. Once this activity has been completed, the user fill in the researcher form.
<<extend>>

<<extend>> Consult

Consult events

<<extend>> Consult Projects in cooperation

<<extend>> User Non Member Consult projects

<<extend>> Consult internal Projects

Consult activities

<<extend>>

<<extend>> Search <<extend>>

Consult Research themes

<<extend>> Search Member <<extend>>

Search Book

Search rapport <<extend>> Search Content <<extend>> search Paper

<<include>> Store Data <<extend>> Search prototype Authenticate

membre

Figure 2. Refinement of the three strategies allowing to realize Define Feature Model intention Non functional ones refer to properties that application should satisfy such as ergonomics, usability, navigability and so on. As for functional requirements, we can distinguish 5 types [4] as following: Data Requirements, Navigational Requirements, Interface Requirements, Personalization Requirements, Transactional Requirements. Once requirements have been elucidated, we have chosen the use case technique [9] following then the Semi-formal approach strategy for their specification. Figure 3 shows a simplified use case of the laboratory application. The Service-guided strategy is followed either if application is e-commerce or is characterised by high or medium complexity of services, which is the case of our example. This strategy is detailed in figure 2.b. Since application at hand is not an e-commerce one, we should follow the Guided primary processes

<<extend>>

Fill in Researcher Form

Update User Profile

Update Content

View news

Figure 3. Use case diagram of the research laboratory application The User-centered strategy should be performed since users require some adaptation of visible aspects with regard to the information manner about news. In such case, we have to consider both users aspects and adaptation techniques through a user model and an adaptation model, see figure 2.c. The user model is the view the system has of the user, i.e. the systems belief about the users knowledge.

Proceedings of the Advanced International Conference on Telecommunications and International Conference on Internet and Web Applications and Services (AICT/ICIW 2006) 0-7695-2522-9/06 $20.00 2006 IEEE

Figure 4. Service Model of the fill in Researcher form process To progress to Define User Model intention, designer can follow one of these three alternatives strategies: representation-techniques strategy through which designer will apply one technique of representation of user models or with the modelling strategy by which user model is modelled as a class diagram [13] or else informal description strategy in which he simply describes users, associated classes and characteristics informally with natural language. This latter can not be performed during an adaptive application. In our example, shown in figure 5, we have followed the modelling strategy [10] by which we aim to establish which user attributes will be chosen to elaborate a user profile and to determine how these attributes are related to each other. The following characteristics of the users are included in the user model of the Online Research laboratory application: research results the member user visits, research results that are marked by the user, positive and preferences the user chooses to be informed about new events. Some of the values of these user attributes are updated dynamically by the system (e.g. visited articles); others are set by the user and can only be changed by her (e.g. keywords). The user model for the Online Research laboratory is shown in figure 5. Class Visited registers how often the user visits a result research. The class Marked models the result research that are marked by the user (bookmarks). Class UserKeyword models themes of interest. Classes News model preferences of the user. Once User Model is defined, we should progress to Define Adaptation Model intention since application is an adaptive one. The adaptation model is a set of rules specified to control adaptation of content, navigation and presentation aspects of application. An example of rule can be applied on the case of research laboratory: If the member visits a research content, this visit is registered in the instance of the associated class Visited and the current date of the visit is recorded.

Figure 5. User Model of Researcher Laboratory application Once designer has achieved Define Feature Model intention, he must progress to Define Common Model intention either following guided-process strategy or based-patterns strategy. As it is presented in figure 6, Define Conceptual Model intention can be achieved by following either modelling techniques strategy which is applied when designer decides to start from scratch and to adopt a well known conceptual data model like ER model [5] or any Object-Oriented technique [12] to define Conceptual model; or web design frameworkguided strategy allowing designer reuse conceptual design components that he already participated in their design; or rules-guided strategy which is followed when designer has adopted in requirements analysis phase the user interaction diagram (UID) [7].

Figure 6. Refinement of the Process-centred strategy allowing to realize Define Common Model intention

Proceedings of the Advanced International Conference on Telecommunications and International Conference on Internet and Web Applications and Services (AICT/ICIW 2006) 0-7695-2522-9/06 $20.00 2006 IEEE

Once the conceptual model is defined, designer progress to achieve Define Navigation Model intention using three different strategies, see figure 6. The Service-guided strategy is followed when navigation model will be build from the service model by applying a number of rules. The Web based framework-guided strategy is chosen if designer has a high degree of experience in such domain. Finally, the guided-process strategy consists on the reuse of a particular method component stored in a method database which is judged the most or among most appropriate ones to build the navigation model. Finally, designer can choose to achieve Define Presentation Model intention using process-guided strategy and so adopt one of existing methods or with Web based framework strategy. The most appropriate path according to the situation at hand is illustrated by bold strategies in figure 6. All these strategies and others of figure 2 are detailed in a lower level of abstraction in order to provide a more effective guidance to designer. Moreover, designer is guided with respectively guidelines and/or associated arguments which help him to select the best strategy according to its purpose and current situation.

Wide Web Conference (Www9), Amsterdam, Netherlands, May 15-19, 2000. [3] De Troyer, O.M.F., Leune, C.J. (1998). WSDM: a User Centered Design Method for Web Sites. In Proceedings of WWW7 Conference, Brisbane, April 1998. [4] Escalona, M.J, Koch, N. ((2004). Requirements Engineering for Web applications-A comparative study, Journal of Web Engineering, Vol.2, N.3 193-212. [5] Fraternali, P. (1999). Tools and Approaches for Developing Data-Intensive web Applications: a Survey. ACM Computing Surveys. [6] Ginige, A. and Murugesan, S. (2001). Web Engineering: An Introduction. IEEE MultiMedia, vol. 8, no.1, Jan.Mar. 2001, pp 14-18, [7] Gell, N., Schwabe, D., Vilain, P. (2000). Modeling Interactions and navigation in Web Applications. In Proceedings of the World Wide Web and Conceptual Modeling Workshop, ER00 Conference, LNCS 1921, Springer, Salt Lake City, 2000. [8] Isakowitz, T., & Stohr, E.A., & Balasubramanian, P. (1995). RMM: a Methodology for Structured Hypermedia Design. ACM Communications vol. 38, no. 8, pp. 34-44. [9] Jacobson, I. (1992). Object-oriented Software Engineering: A Use case driven Approach. Addison Wesley. [10] Koch. N. (2001). Software Engineering for Adaptive Hypermedia Systems-Reference Model, Modelling Techniques and Development Process. Ph.D Thesis, Fakultt der Mathematik und Informatik, LudwigMaximilians-Universitt Mnchen. [11] Olsina, L. (1998). Building a Web-based information system applying the hypermedia flexible process modeling strategy. 1st International Workshop on Hypermedia development, Hypertext98. [12] Rolland, C., & Prakash, N., & Benjamen, A. (1999). A multi-model view of process modelling. Requirements Engineering Journal 4 (4) 169-187. [13] Schwabe, D. & Rossi, G. (1998). Developing Hypermedia applications using OOHDM. Proceedings of Workshop on Hypermedia development Process, Methods and Models, Hypertext98. [14] Selmi, S., Kraiem, N., and Ben Ghazala, H. (2005). Toward a comprehension view of Web Engineering. Accepted in ICWE2005 International Conference on Web Engineering, Sydney, Australia, 25-29 July 2005.

4.Conclusion
The paper has presented a strategic-oriented method for the design of web applications. The proposed method is a multi-process approach. It is formalized with the multi-model process MAP. The method has the advantage to guide designer during all steps providing him with the ability to personalize design process dynamically based on situation in which he is placed. Method is presented through a simplified example of a research laboratory application. The example adopted is still simple but we are working in more complicated case studies. In parallel, we are developing a tool supporting our method.

5.References
[1] Benjamen, A. Une approche multi-dmarches pour la modlisation des dmarches mthodologiques. PhD Thesis, University Paris 1, 1999. [2] Ceri, S., Fraternali, P., Bongio, A. Web Modeling Language (WebML): a modeling language for designing Web sites. Proceedings of the 9th International World

Proceedings of the Advanced International Conference on Telecommunications and International Conference on Internet and Web Applications and Services (AICT/ICIW 2006) 0-7695-2522-9/06 $20.00 2006 IEEE

You might also like