From client's dreams to achievable projects: An expert system for determining web site feasibility

This paper presents a web based expert system application that carries out an initial assessment of the feasibility of a web project. The system allows detection of inconsistency problems before design starts, and suggests correcting actions to solve them. The developed system presents important advantages not only for determining the feasibility of a web project but also by acting as a means of communication between the client company and the web development team, making the requirements specification clearer. 1. THE RISKS OF INSUFFICIENT REQUIREMENTS ANALYSIS IN WEB DESIGN Information society, globalisation, Internet, dot com companies, Nasdaq, and an endless number of new terms have become popular in western society. Communication and Information Technologies (CIT) are now so integrated into our everyday lives that it is difficult to find a work environment in which they do not make their presence felt to a greater or lesser extent (Negroponte,1997). Unavoidably, companies have encountered this technology and they have decided to exploit it for business. Initially, companies restricted themselves to acquiring a virtual presence on the web. Having a URL address to include in their publicity was enough. Nowadays, company managers are slowly realising that there are good web projects and bad web projects, and that the market is asking for quality web projects. However, quality is an elusive concept. It is commonly accepted that quality (IEEE, 1992) is difficult to define. One may resort to the definition adopted by ISO in order to have a point of reference: “set of properties and characteristics of a product or service that define its aptitude to satisfy certain requirements, whether explicit or implicit” (ISO, 1996). It is common practice (Pressman, 1997, Sommerville, 1996) to attempt to specify, as part of the process of product or service development, the requirements of users or clients, specially in areas governed by contract. Still, it is not unheard of to find situations in which the requirements remain implicit, in such a way that the developers of the product or service must identify them and define them to some extent. In any case, requirements should be translated into a set of properties and characteristics, as well as clearly specified criteria for deciding whether the product or service satisfies those requirements. Counter to common practice, client's or user's requirements include indications concerning not only the functionality of the product or service but its usability, dependability, security... 1.1 Clients Either Give Up... This process of acquiring specifications of the user's requirements is a complex and costly task, in all fields of software development. For the development of web projects there is a high probability that the client will have very little prior knowledge about the technologies to be used, and this greatly increases the difficulty of the requirement acquisition process. In many cases, clients do not even know what a good web document can do for them. They know, mostly from hearsay, that a product/service of this kind can satisfy a great variety of objectives, but they do not know how to gather them all together in a single project. To overcome this obstacle, companies (particularly small companies) approach software development environments in search of useful clues. This first approximation is usually disheartening: far from clarifying concepts, software development companies rely on jargon so technical that it often leaves the uninitiated in even more confusion than they started off with. The absence of commonly accepted design rules, the disparity of criteria on which to base the elaboration of cost estimates, the very intangibility of a web product, as well as a high dose of roguery in a market as immature as this one, make it almost impossible to compare two web projects. To calibrate the extent to which a specific project meets the requirements of the company that will pay for it is even more difficult. All this, together with the incredible disparity of prices from a few tens of euros to many thousands for the same company and the almost absolute absence of method, causes mistrust and lack of motivation in. For such reasons, many companies have abandoned their web project or reduced it to a purely testimonial role. The untimely demise of so many web projects at this early stage of their conception could be avoided if some means were provided to carry out the acquisition of specification somewhat systematically. Such means should leave no room for misunderstandings between the two participating agents (clients and developers). 1.2 ...or Get The Wrong Web