Author :
Centeno, Vicente Luque ; Breuer, Peter T. ; Fernández, Luis Sánchez ; Kloos, Carlos Delgado ; Pérez, Juan Antonio Herráiz
Abstract :
Programming automated web navigation assistants, i.e., applications that automatically navigate the web performing specific tasks for the user, is far from easy. Since HTML pages offered by legacy web-based applications, which are designed to be manipulated only by people using browsers, web pages contain semi-structured information [P. Atzeni, et al., 1997] whose data schema can easily be changed, the creation and even the maintenance of this kind of applications, is very expensive. However, an increasing amount of information sources and online applications have been added to the web during the last few years, so assistants for automating tasks over those web-enabled applications are more and more needed. These assistants may automate tasks by filling in forms, following links, analyzing data embedded in web pages and performing computations over those data on behalf of the user. Software engineering techniques are clearly needed to reduce the cost, not just creating these programs (by significantly reducing their time-to-market), but even more importantly, maintaining them working properly, reducing the cost of readapting them to web site pages whose structure or navigation schemes are frequently changed. This paper proposes the well known formal method message sequence charts (MSC) [ITU-T, 1997] as a base for defining a language for programming web navigation assistants which may navigate a web site according to the user´s aims. This specification language, called XPlore, is specially suited for both requirements engineering and automatic generation of an executable, and has been successfully tested on several well known web sites.
Keywords :
Web design; hypermedia markup languages; online front-ends; software engineering; HTML; XPlore; automated web clients; cost reduction; data schema; legacy web-based applications; message sequence charts; online applications; programming automated web navigation assistants; programming web navigation assistants; semistructured information; software engineering techniques; specification language; time-to-market; web site; wed pages; Application software; Automatic programming; Costs; Data analysis; Embedded computing; Filling; HTML; Navigation; Performance analysis; Web pages;