Professional Documents
Culture Documents
Tools and Approaches For Developing Data-Intensive Web Applications: A Survey
Tools and Approaches For Developing Data-Intensive Web Applications: A Survey
Applications: A Survey
PIERO FRATERNALI
Politecnico di Milano
The exponential growth and capillar diffusion of the Web are nurturing a novel
generation of applications, characterized by a direct business-to-customer
relationship. The development of such applications is a hybrid between traditional
IS development and Hypermedia authoring, and challenges the existing tools and
approaches for software production. This paper investigates the current situation of
Web development tools, both in the commercial and research fields, by identifying
and characterizing different categories of solutions, evaluating their adequacy to
the requirements of Web application development, enlightening open problems, and
exposing possible future trends.
Prototyping
& Verification
Design:
structure Implementation
navigation
presentation
1 2
Among the current proposals are those of Taka- A macroscopic difference is in the interpretation
hashi and Liang [1997]; Atzeni et al. [1998]; and of relationships, in which database modeling rep-
Fraternali and Paolini [1998]. resents semantic associations to be persistently
—Prototyping and validation: Simpli- thereof), and the decision on the time
fied versions of the applications are of “binding” between content and ap-
deployed to users for early feedback. plication pages, which can be offline
The importance of prototyping is par- or online.
ticularly emphasized in the Web con-
text, as it is in hypermedia, because —Evolution and maintenance: After de-
the intrinsic complexity of the inter- livery, changes in the requirements or
faces requires a timely evaluation of bug fixes may require the revision of
the joint effectiveness of structure, structure, navigation, presentation,
navigation, and presentation [Nielsen or content. Changes are applied as
1996]. Typically, a prototype is built high as possible in the development
prior to design and on a simplified chain and propagated down to imple-
architecture, e.g., as a set of manually mentation.
implemented pages containing sam- The process model described caters to
ples of the application content, which a variety of actual processes, whose ap-
emulate the desired appearance and plicability depends on the specific devel-
behavior. opment context, including the available
—Design: Conceptual schemas are tool support, financial and time con-
transformed into a lower-level repre- straints, application complexity, and
sentation, closer to the needs of im- change frequency. Generally speaking,
plementation, but still independent of with applications of limited size and
the actual content of the information fairly stable requirements, requirement
base. Typically, the structural view of analysis is directly followed by imple-
the application is mapped to the mentation, possibly after a number of
schema of a storage repository, the iterations through prototyping. Concep-
navigational view into a set of access tualization and design assume more rel-
primitives over the content reposi- evance as the complexity and volatility
tory, and the presentational view into of the application increase.
a set of content-independent visual
2.2 Models, Languages, and Notation
specifications (styles). The latter ac-
tivity, called visual design, is of great A Web application is characterized by
importance in Web application devel- three major design dimensions:
opment and is emerging as an auton-
omous discipline [Sano 1996; Horton —Structure describes the organization
et al. 1996]. of the information managed by the
application, in terms of the pieces of
—Implementation: The repository is content that constitute its informa-
filled with new content prepared by tion base and of their semantic rela-
domain experts and/or with existing tionships.
data stored in legacy systems; the ac-
tual interfaces, pages inWeb terminol- —Navigation concerns the facilities for
ogy, are constructed by embedding re- accessing information and for moving
pository content and navigational across the application content.
commands into the appropriate pre- —Presentation affects the way in which
sentation style. The mapping of de- application content and navigation
sign to implementation requires the commands are presented to the user.
choice of the network language in
which the application is delivered To support the representation of ap-
(e.g., HTML, Java, ActiveX, or a mix plication features during the develop-
ment lifecycle, languages with different
levels of formality and abstraction can
recorded, whereas in Web modeling a navigation be used.
possibility is generally implied. At the conceptual level, applications
are described by means of high-level in the Web context because the final
primitives which specify the structural, rendering of interface depends on the
navigational, and presentational views browser and display device, thus it may
in a way that abstracts from any archi- be necessary to map the same abstract
tectural issue. presentation scheme to different de-
Structural modeling primitives de- signs and implementations.
scribe the types of objects that consti- At the design level, structured or
tute the information base and their se- semistructured data models are used to
mantic relationships, without represent the features of an application
commitment to any specific mechanism in a way amenable to manipulation,
for storing, retrieving, and maintaining query, and verification. Typically, de-
the actual instances of such object sign representations are maintained as
types. Examples of notation that can be relational or object-oriented schemas, to
used to express structural features in- exploit the capabilities of database
clude the best-known conceptual data management systems, or as semistruc-
models, like the entity-relationship tured objects, to cope with information
model [Chen 1976] and various object having partial or missing schemas [Flo-
models [Rumbaugh et al. 1991]. rescu et al. 1998].
Navigation modeling primitives ex- At the lowest degree of abstraction,
press the access paths to objects of the applications are represented by means
information base and the available in- of implementation-level languages, no-
ter- and intraobject navigation facili- tably network languages directly inter-
ties, again without committing to any pretable by the user’s browsers. At this
specific technique for implementing ac- stage, content, navigation, and presen-
cess and navigation. The vast range of tation are directly embedded in the
notation and techniques proposed for physical marked-up texts or programs
the more general problem of human- that make up the application.
computer interaction specification can
be employed for navigation modeling: 2.3 Reuse
data models extended with built-in nav-
igation semantics [Garzotto et al. 1993; As in any other software process, reuse
Isakowitz et al. 1995; Fraternali and is an important aspect, related to the
Paolini 1998] or explicitly annotated facility of building a novel application
with behavioral specifications [Kesseler from existing artifacts [Biggerstaff and
1995; Schwabe and Rossi 1995]; first- Perlis 1989]. Reuse may happen at all
order logic [Garg 1988]; Petri nets levels of the development process: con-
[Stotts and Furuta 1989]; finite state ceptual schemas, design schemas, con-
machines [Zheng and Pong 1992]; and tent, and physical application pages can
formal grammars [Jacob 1982] are be reused across applications.
among the viable options. The most common form of reuse on
Presentation modeling aims at repre- the Web, as in hypermedia, is content
senting the visual elements of the appli- reuse, possibly facilitated by the pres-
cation interfaces in a way that abstracts ence of a structured repository, which
from the particular language and device enables the construction of different ap-
used in the delivery. Many different plications on top of the same informa-
techniques can be used, with a varying tion base. Reuse also occurs at the im-
degree of formality and rigor, ranging plementation level, where component-
from simple storyboard specification based libraries of self-contained
[Madsen and Aiken 1993] to the use of elements (e.g., JavaBeans or ActiveX
software tools [Myers 1995] and formal components) can be plugged into applica-
methods. The independent specification tion pages to provide predefined function-
of presentation, separate from structure alities (e.g., an electronic payment faci-
and navigation, is particularly relevant lity). Generation-based reuse focuses
Client Server
Application Logic
Database
instead on reusing transformation tech- of the information base and the applica-
niques from design frameworks or par- tion pages delivered to the client, which
tially instantiated implementations to can be static when pages are computed
full implementations (e.g., by generat- at application definition time and are
ing application pages from page skele- immutable during application usage; or
tons and database content). dynamic, when pages are created just-
in-time from fresh content. Dynamicity
2.4 Architecture has further nuances: it may involve only
content (navigation and presentation
Architecture is the subject of design and are static), or scale to presentation and
implementation and reflects the spatial navigation.
arrangement of application data and
the spatio-temporal distribution of com-
2.5 Usability
putation.
The minimal spatial configuration of From the customer’s perspective, us-
a Web application is the so-called two- ability is the most important quality of
tier architecture, shown in Figure 2, a Web application. Although a thorough
which closely resembles the traditional discussion of the emerging Web usabil-
client-server paradigm. This is different ity engineering field is outside the scope
from client-server, wherein the two-tier of this paper (we refer the reader to
solution clients (i.e., browsers) are thin, Nielsen [1996]), it is possible to identify
and are lightweight applications re- a set of general criteria to use in assess-
sponsible only for rendering the presen- ing Web usability:
tation. Application logic and data reside
on the server side. —Degree of visual quality indicates the
A more advanced configuration, called overall coherence of the presentation
three- or multitier architecture (Figure and navigation metaphors and the in-
3), separates the application logic from dividual quality of the graphic re-
data, introducing an additional distinc- sources.
tion of responsibilities at the back-end —Degree of customization measures the
side. The presence of one or more dis- facility of tailoring the application in-
tinct application tiers enables the im- terface to individual users or user
plementation of advanced architectures groups. At one end of the spectrum,
that integrate the traditional HTTP applications may have a fixed inter-
protocol and client-server application face; at the other end, content, pre-
distribution protocols for better perfor- sentation, and navigation may be in-
mance, scalability, reliability, and secu- dividually personalized.
rity.
An orthogonal architectural issue is —Degree of adaptivity is proportional to
the time of binding between the content the runtime flexibility of the inter-
Application Logic
Database
applications on top of large databases, Web site and supports functions like
although at the price of a substantial page upload, deletion, and renaming,
programming effort. Category 4 takes and broken link detection and repair.
quite a different, but still database-cen- Among the many products in this cate-
tric, approach to Web development by gory are Adobe SiteMill and PageMill,
addressing the migration of client/ NetObject Inc.’s Fusion, SoftQuad’s
server, form-based applications. These HotMetal, Claris Home Page, Macrome-
tools aim at augmenting the implemen- dia’s Backstage Designer, and Mi-
tor’s productivity in such tasks as form crosoft’s FrontPage.
editing, report writing, and event-based From a lifecycle perspective, these
programming; they also offer a higher products address the implementation
level of support with respect to Cate- and maintenance of Web sites; imple-
gory 3, but still concentrate only on the mentation is supported by content pro-
implementation phase. Category 5 con- duction functions and maintenance by
tains a number of tools whose common site-level management facilities. The
feature is the integration of different most advanced products (e.g., NetOb-
development approaches and technolo- ject’s Fusion and Microsoft FrontPage)
gies, drawn from the previous four tool also offer a rather rudimentary ap-
families. Finally, Category 6 includes proach to design, whereby it is possible
those products (actually two products) to separate the definition of the hierar-
that provide complete coverage of all chical structure of a site from the au-
the development activities, from concep- thoring of content.
tualization to implementation, by lever- Automation concentrates on content
aging state-of-the-art software engi- production by generating code from vi-
neering techniques. sual page designs. Support to code gen-
To complete the overview of Web ap- eration is particularly relevant in those
plication development, in Section 10 we tools (like Macromedia’s DreamWeaver,
include a mention to other classes of SofQuad’s HotMetal Pro 5.0, Allaire’s
products which are not directly con- HomeSite, and many more) that support
cerned with the specific focus of this the latest extensions of HTML, like Cas-
paper on the design and maintenance of cading Style Sheets (CSS) [World Wide
Web sites, but either cover fundamental Web Consortium 1998a] for content-in-
architectural issues like distribution, dependent presentation specification,
reliability, performance, and security, and the Document Object Model (DOM)
or provide specialized facilities to users [World Wide Web Consortium 1998b],
and site administrators, like advanced for the object-oriented representation of
search functions and collaborative work page elements and their manipulation
support. via a scripting language.
Some tools are able to generate part
4. VISUAL EDITORS AND SITE of the navigation logic by automatically
MANAGERS inserting navigation buttons into pages
based on their position in the layout of
This class includes authoring and site the site (Figure 4). Development ab-
management environments originally stractions are basically at the imple-
conceived to alleviate the complexity of mentation level and oriented towards
writing HTML code and of maintaining structure and navigation (pages and
the pages of a Web site in the file sys- links); some tools also provide presenta-
tem. In a typical configuration these tion abstractions in the form of page
products bundle a WYSIWYG editor, templates or “themes,” i.e., groups of
which lets the user design sophisticated graphic resources that can be applied to
HTML pages without programming, multiple pages to obtain visual consis-
and a visual site manager, which dis- tency (Figure 5).
plays in a graphical way the content of a Reuse happens mostly at the imple-
writes page templates, which inter- —DBPL extensions take the other way
mix declarative HTML tags and exe- around and add specialized functions
cutable code. Products in this cate- to an existing DBPL or to a general-
gory can be further distinguished purpose programming language with
based on the language paradigm used a database interface, to enable the
to extend HTML (imperative, object- output of HTML code as a result of
based, object-oriented). Page tem- program execution. Developers write
plates must be translated into pure database applications that construct
HTML; this task is normally executed HTML output from data retrieved
at runtime by an interpreter. The per- from the database. This approach re-
formance of the different products quires database programming skills,
vary, based on the process in which but may yield better performance
the interpreter is executed and on the when DBPL programs are executed
way the connection to the database is and optimized directly by the DBMS.
managed. Examples of HTML exten- Examples of DBPL extensions include
sions include Allaire Inc.’s Cold Fu- Oracle’s PL/SQL Web Toolkit, Sy-
sion Web Database Construction Kit; base’s PowerBuilder Web.PB class li-
Microsoft’s Active Server Pages (ASP) brary, and Borland’s Web interface
and Internet Database Connector for the Delphi Client Server Suite.
(IDC); Vignette Corporation’s Sto-
ryServer; HAHT Software’s HahtSite; —Java extensions add database connec-
and Informix AppPages. In general, tivity to Java. The best-known effort
HTML extensions have a broader ob- in this direction is the JDBC open
jective than the mere addition of da- standard, which offers an ODBC-like
tabase connectivity, and include prim- architecture for Java applications
itives for overcoming HTML’s well- that want to interact with a DBMS.
known limitations, like the absence of Unlike HTML extensions, connectivity
control flow instructions, modulariza- is added in the form of a library
tion mechanisms, and stateful inter- masking, under a uniform callable in-
action.3 terface, the details of interacting with
different proprietary DBMSs and
SQL dialects.
3
Stateful interaction is the capability of retaining
the application status between two consecutive Web-DBPL integrators are tools for the
client’s requests; this is not supported by HTPP/ programmer, who may use them to sim-
1.0. plify the task of gluing together Web
pages and database queries by hand, though these types are not elicited
they are different from visual HTML from the structural, navigational, and
editors and hypermedia authoring tools, presentation requirements of the ap-
which offer small-scale application de- plication, but stem from the design of
velopment functions to nonprogram- the underlying database;
mers. Due to their focus on implementa-
tion languages, these products lack —thanks to explicit object typing, the
high-level abstractions for describing uniformity and coherence of the pre-
applications, and thus do not assist the sentation are facilitated, because all
developer in identifying the structure, objects of the same type may be easily
navigation, and presentation of an ap- visualized in the same way. As a
plication, which is directly implemented counterpart, customization at the in-
by manually writing the necessary stance level must be explicitly pro-
HMTL page templates or DBPL pro- grammed by identifying exceptional
grams. cases and treating them in an ad hoc
Reuse may be achieved either through manner.
the native constructs of the program-
Being database-driven, applications
ming language, i.e., packages and mod-
built with Web-DBPL integrators may
ules, or through ad-hoc modularization
leverage the reactive capabilities of the
mechanisms such as inclusion between
underlying DBMS to achieve adaptivity
HTML page templates.
and proactivity, e.g., database triggers.
The target architecture is database-
For example, an Oracle trigger could
centered and three-tiered; the most so-
react to user-generated events and pro-
phisticated products also permit multi-
duce HTML pages adapted to the spe-
ple database tiers and distributed
cific situation.
queries.
In spite of the above positive side-
Not having any specific support for
effects, Web-DBPL integrators cannot
presentation and navigation modeling,
be considered development tools in
these products have no direct impact on
themselves, but are comparable to tra-
the usability and graphical quality of
ditional client/server 4GL because they
the user interface, which must be de-
provide a high-level programming inter-
signed separately.
face masking lower-level architectural
The major difference between Web-
details; as such they are often used to
DBPL integrators and visual HTML ed-
build more sophisticated products, like
itors and hypermedia authoring tools is
the ones reviewed next.
that the former introduce a clear sepa-
Table III summarizes the most impor-
ration between the final application
tant features of Web-DBPL integrators.
pages and the content repository, the
schema of which acts as an implicit
specification of the application struc- 7. WEB FORM EDITORS, REPORT
ture. WRITERS, AND DATABASE
This distinction has several conse- PUBLISHING WIZARDS
quences on the application-development
process: This category collects a large number of
products, all having the common char-
—it permits a more effective manipula- acteristic of leveraging traditional data-
tion of the information base because base design concepts and development
changes to content can be made with- tools, to rapidly deploy both new and
out affecting navigation and presenta- legacy data-intensive applications on
tion; the Web. A first classification can be
obtained by considering the functions
—it exposes the different object types offered by the tools, ordered by complex-
that constitute the application, al- ity and sophistication:
Table IV. Synopsis of Web Form Editors, Report Writers, and Database Publishing Wizards
Process: Lifecycle Coverage Implementation
Testing
Maintenance
Process: Automation Source code generation from RAD and wizard tools
Abstractions Implementation-level: forms, reports, controls
Reuse Plug-in components: client-side and server-side
Architecture Multitier, integration with application servers
Dynamic binding of content to pages
Usability Canned interfaces based on query/result display loop
Low customization, no adaptivity, no proactivity
These constitute the schema of the reached by a given module and intro-
future Web application. A few visual duce fictitious modules acting as hier-
features can be specified in the sche- archical indexes over other modules.
ma: for example, column definitions
can be supplemented with caption —User preferences are parameters that
text and display format (e.g., a pop-up can be set to govern the presentation
list). Moreover, some integrity con- of the generated application; they can
straints (e.g., valid ranges) can be at- be defined either globally, at the mod-
tached to columns and tables, and the ule, or at the component level. Exam-
Web generator can be instructed to ples of preferences are colors, headers
produce code for checking them on the and footers, background images, and
server via PL/SQL or on the client via help text.
JavaScript.
From these inputs, the WEB genera-
—The definition of applications and tor produces fixed-format Web pages;
modules: modules correspond to basic one set of related pages is generated for
application units; each module con- each module, and links between differ-
sists of a sequence of tables, linked by ent modules are turned into hyperlinks
foreign key relationships (Figure 8). between the HTML startup pages of
The order of tables in a module deter- modules.
mines the sequence of HTML pages Model-driven generators apply the
that will be produced for that module. fundamental principles of software en-
Navigation is established by drawing gineering to Web development; apart
links between modules: the designer from all other product categories, applica-
may define which modules can be tions are first modeled at the conceptual
Table VI. Synopsis of Model-Driven Generators (Oracle Designer 2000 and Hyperwave)
Designer 2000 Hyperwave
Process: Lifecycle Coverage Conceptualization (E/R) Conceptualization (collection
and link definition)
Design (relational model)
Implementation Implementation
Reverse engineering
Process: Automation Relational schema generation Relational metaschema
from ER generation
Generation of HTML from Navigation generation
design models and
presentation preferences
Presentation generation
Abstractions Conceptual-level: entity, Conceptual-level: collections,
relationships, attributes views, abstract links,
documents, virtual collections
Design-level: modules, tables,
columns, constraints
Implementation-level: pages, Implementation-level: pages,
links HTML links
Reuse Module reuse; Preferences Multiple views over the same
reuse document base
Architecture Multitier, dynamic binding Multitier, dynamic binding
Usability Low graphical control of Low graphical control of
generated pages generated pages
High coherence through use of High coherence through use of
presentation preferences presentation preferences
Low customization, no Programmable customization,
adaptivity, no proactivity no adaptivity, proactivity
through notification
which, although outside the focus of this However, in the tool market, several
paper, are critical for the delivery of vendors are also addressing multitiered
effective applications in performance, architectures by offering specific prod-
availability, scalability, security, infor- ucts, called application servers, which
mation retrieval, and support for collab- are middleware facilities either inte-
orative administration and usage. grated into HTTP servers, or working
These needs are served by ad hoc side by side to them. Examples of appli-
tools or by specialized functions inte- cation servers are NetDynamics, Lotus
grated into Web design products. In the Domino Server, Oracle 8i Java Server,
sequel, we briefly review the most im- Sybase’s Jaguar CTS, and Inprise’s
portant features of three categories of VisiBroker for Java.
products: application servers, search en- Application servers do not directly im-
gines, and groupware and collaborative pact the client-side design process, but
design tools. offer several extensions to the standard
functions of HTTP engines, which can
10.1 Middleware be used to support server-side develop-
ment:
Industrial strength data-intensive ap-
plications require not only proper de- —Efficient execution of server-side pro-
sign tools but also a solid architecture, grams that implement the business
good performance, availability, scalabil- logic of the Web application. Products
ity, and security. These goals have differ in the development languages
prompted the extension of the original supported, which commonly include
two-tier HTPP architecture to more so- C11, Java, and scripting languages
phisticated configurations, encompass- like Perl, Visual Basic, and JavaS-
ing three, and even multiple, tiers. The cript. Efficiency is improved by re-
key to multitiered applications is the placing the Common Gateway Inter-
capability to separate data, interfaces, face (CGI) between the Web server
and application logic, and to distribute and the application programs by
each aspect to distinct network nodes. means of optimized protocols and ar-
Such distribution leverages Internet-en- chitectures like FastCGI (http://www.
abled application protocols (like Corba fastcgi.com) and Java Servlets [Chang
Internet InterOrb Protocol (Corba IIOP 1998].
[Object Management Group 1996]) and —High-performance client-server com-
Microsoft’s Distributed Common Object munication. Such capability may be
Model, DCOM [Microsoft Corp. 1996]) based on a comprehensive architec-
and the native remote procedure call ture for application distribution, on
capabilities of network languages (nota- programming language features, or
bly, Java’s Remote Method Invocation, on proprietary remote procedure calls.
RMI [Sun Microsystems 1995]). Rather than using HTTP, enabled cli-
The in-depth presentation of the al- ents may bypass the Web server and
ternative architectural and technologi- directly connect to the application
cal options for multitiered applications server using either open protocols like
is outside the scope of this paper, and is Corba/IIOP and Java RMI, or propri-
thoroughly addresses by many authors etary protocols, like Microsoft’s
(see, for example, the special issue of DCOM, Domino’s Notes Remote Pro-
IEEE Internet Computing on Internet cedure Calls (NRPC), and Sybase’s
Architectures [Benda 1998] for a recent Jaguar CTS remote procedure calls.
review of the state of the art, and Byte’s
special report on networked components —Optimized and extensible connection
[Montgomery et al. 1997] for a compari- to multiple external data sources.
son of Corba and Microsoft architec- This function includes pooling connec-
tures). tions to a database across multiple
but with an inclination due to its origin solutions for overcoming some of the
from the database area.4 limitations currently experienced by
state-of-the-practice commercial tools:
12. RESEARCH PERSPECTIVES Araneus [Atzeni et al. 1997; Atzeni et
al. 1998 ; Atzeni et al. 1998]; Autoweb
Web application development has re- [Fraternali and Paolini 1998]; Strudel
cently gained much attention not only [Fernandez et al. 1998]; Web Architect
in the commercial field but also in the [Takahashi and Liang 1997]; and W3I3
research community, where several [Ceri et al. 1998].
projects address the extension of the The common denominator in such ef-
capabilities of site design tools in vari- forts is the goal of supporting the activ-
ous directions, and propose innovative ities of data-intensive Web design from
design processes and methodologies.
conceptualization to maintenance by
In this Section we briefly review a
properly distinguishing between the dif-
number of projects that have proposed
ferent dimensions of Web design, orga-
nizing the development activities into a
4
A similar phenomenon took place in the early structured process, and providing tools
days of object-orientation, when many proposals
were put forth to adapt structured analysis/struc-
for partially automating repetitive de-
tured design concepts to object-oriented imple- velopment tasks.
mentation. However, besides such commonalities,
each project has its own special focus, effectively deploy large Web sites, inte-
and addresses only some of the issues grate structured and semistructured
left open among the currently available data, reorganize legacy Web sites, and
commercial tools. Web-enable existing database applica-
In Table VIII we summarize the fea- tions.
tures of the various projects using the On the modeling side, Araneus
same categories as commercial tools stresses the distinction among data
(see Table VII), and in Table IX we structure, navigation, and presentation.
underline the special focus and strong In structure modeling, a further distinc-
points of each project. tion is made between database and hy-
For completeness, we conclude with pertext structure: the former is speci-
background research on Web develop- fied using the entity-relationship model,
ment, which has taken advantage of the latter using a notation that inte-
contributions from several fields, in grates structure and navigation specifi-
which hypermedia and databases are cation called the Navigation Conceptual
prominent. Model (NCM).
Conceptual modeling is followed by
13. RESEARCH PROJECTS IN DATA-
logical design, using the relational
INTENSIVE WEB DEVELOPMENT
model for the structural part, and the
Araneus Data Model (ADM) for naviga-
13.1 Araneus
tion and page composition. ADM offers
Araneus5 [Atzeni et al. 1997 ; Atzeni et the notion of page scheme, a language-
al. 1998 ; Atzeni et al. 1998] is a project independent page description notation
at Univ. di Roma Tre, which focuses on based on such elements as attributes,
the definition and prototype implemen- lists, link anchors, and forms. The use
tation of an environment for managing of ADM introduces page composition as
unstructured and structured Web con- an independent modeling task: the spec-
tent in an integrated way (called a Web ification of data and page structure is
Base Management System, WBMS). orthogonal, and therefore different page
The WBMS should allow designers to schemes can be built for the same data.
Presentation is specified orthogonally
5
The project Web site is http://www.dia.uniroma3.it/ to data definition and page composition,
Araneus. using an HTML template approach.
to Web modeling comes from research sign, the two tasks most particular to
on the representation and querying of hypermedia design.
semistructured data, i.e., data with par- OOHDM [Schwabe and Rossi 1995]
tial or missing schema. The proposed takes inspiration from object-oriented
data models, thoroughly reviewed in modeling and simplifies the RMM life-
Florescu et al. [1998], express Web con- cycle to only four steps: domain analy-
tent by means of relations, labeled sis, navigation design, abstract interface
graphs, hypertrees, and logic. Araneus design, and implementation. In domain
and Strudel are examples of Web con- design, classical object-oriented tech-
tent management systems based on niques are used, instead of the entity
semistructured data models and query relationship model. Navigation design
languages. adds specific classes (e.g., node, link,
index) to represent different forms of
navigation. The same is done for pre-
14.2 Processes sentation, which is described by means
of classes (e.g., button, text field) added
Web development processes evolved in during interface design. Implementa-
parallel with Web design notation, and tion then fleshes out the classes identi-
have the same hybrid origin from the fied during design with code in the im-
information system and hypermedia plementation language of choice.
fields. In the Web context, most methodolog-
In hypermedia, the evolution from the ical proposals concentrate on visual de-
creative definition of content to the con- sign and usability criteria [Sano 1996],
tent-independent organization of the much as the hypermedia field authoring
structure of a hypermedia application is guidelines were the first concern of de-
attributed to the work on HDM [Gar- velopment. The requirement of applica-
zotto et al. 1993], which stresses the tion scale-up drives the most recent con-
difference between authoring in the tributions, like Araneus, Autoweb, Web
large, i.e., designing general structure Architect, and W3I3, which organize the
and navigation, and authoring in the development process into activities
small, i.e., deciding the layout and syn- drawn both from the above mentioned
chronization aspects of specific compo- hypermedia methodologies and from
nent types. traditional object-oriented and database
HDM, however, did not prescribe a design methods.
formal development lifecycle, which was
first advocated by RMM [Isakowitz et 14.3 Other Design Tools
al. 1995], where the following seven ac-
tivities, i.e., entity relationship design, Besides the projects described in Sec-
slice design, navigation design, conver- tion 13, other research efforts have con-
sion protocol design, interface design, tributed to the development of proto-
behavior design, and implementation types of hypermedia and Web design
and testing are proposed. The first three tools.
activities provide a conceptualization of RMC [Diaz et al. 1995] gives CASE
the hypermedia application domain in support to the design and implementa-
terms of entities, substructured into tion phases of the RMM methodology. It
slices, and navigable relationships. Con- consists of a diagram editor, which as-
version protocol design is a technical sists the input of RMDM schemas, and
activity that defines the transforma- a code generator, which outputs HTML
tions to be used for mapping the concep- pages from data stored in an internal
tual schema into implementation struc- repository. Pages are produced offline in
tures. In addition to defining the a precompiled fashion. RMC is not
development lifecycle, RMM also gives based on a database architecture, and
guidelines for slice and navigation de- thus does not provide facilities for scal-
Table X. A Match Between Categories of Web Development Tools and Types of Applications
Web- Multi- Model-
Visual Hypermedia Form
DBPL paradigm driven
editors tools editors
integrators tools generators
Small-scale business to X X X
customer
Business to business X X X X
Large-scale business to X X
customer
Strudel: Experiences with a Web-site manage- Web Pages. John Wiley and Sons, Inc., New
ment system. SIGMOD Rec. 27, 2, 414 – 425. York, NY.
FLORESCU, D., LEVY, A., AND MENDELZON, HOVEN, I. V. 1997. Deploying Developer/2000
A. 1998. Database techniques for the applications on the Web, Oracle white paper.
World-Wide Web: A survey. SIGMOD Rec. Oracle Corp., Redwood City, CA.
27, 3, 59 –74. HYPERWAVE INFORMATION MANAGEMENT,
FRATERNALI, P. AND PAOLINI, P. 1998. A concep- 1998. Hyperwave User’s Guide, Version
tual model and a tool environment for devel- 4.0. Hyperwave Information Management.
oping more scalable and dynamic Web appli- ISAKOWITZ, T., STOHR, E. A., AND BALASUBRAMA-
cations. In Proceedings of the Sixth NIAN, P. 1995. RMM: a methodology for
International Conference on Extending Data- structured hypermedia design. Commun.
base Technology (Valencia, Spain, Mar.), ACM 38, 8 (Aug. 1995), 34 – 44.
H.-J. Schek, F. Saltor, I. Ramos, and G. JACOB, R. J. K. 1983. Using formal specifications
Alonso, Eds. 421– 435. in the design of a human-computer interface.
GARG, P. K. 1988. Abstraction mechanisms in Commun. ACM 26, 4 (Apr. 1983), 259 –
hypertext. Commun. ACM 31, 7 (July 1988), 264. http://www.eecs.tufts.edu/˜jacob/papers/
862– 870. cacm.txt; http://www.eecs.tufts.edu/˜jacob/papers/
GARZOTTO, F., MAINETTI, L., AND PAOLINI, cacm.ps.
P. 1995. Hypermedia design, analysis, and JACOBSON, I. 1992. Object-Oriented Software
evaluation issues. Commun. ACM 38, 8 Engineering. ACM Press, New York, NY.
(Aug. 1995), 74 – 86. KESSELER, M. 1995. A schema-based approach
GARZOTTO, F., MAINETTI, L., AND PAOLINI, to HTML authoring. In Proceedings of the
P. 1994. Adding multimedia collections to Fourth International Conference on The World
the Dexter model. In Proceedings of the 1994 Wide Web (Boston, MA),
ACM Conference on Hypermedia Technology LANGE, A. 1997. Sorting through search engines.
(ECHT’94, Edinburgh, Scotland, Sept. 18 –23), Web Tech. M. 2, 6 (June). http://www.web-
I. Ritchie and N. Guimarães, Eds. ACM review.com/97/06/13/webtech/index.html.
Press, New York, NY, 70 – 80. MADSEN, K. H. AND AIKEN, P. H. 1993.
Experiences using cooperative interactive sto-
GARZOTTO, F., PAOLINI, P., AND SCHWABE,
ryboard prototyping. Commun. ACM 36, 6
D. 1993. HDM—a model-based approach to
(June 1993), 57– 64.
hypertext application design. ACM Trans.
MICROSOFT CORPORATION 1996. The distributed
Inf. Syst. 11, 1 (Jan. 1993), 1–26.
common object model. Microsoft Corp., Red-
GARZOTTO, F. AND MAINETTI, L. 1993. HDM2:
mond, WA. http:/msdn.microsoft.com/work-
Extending the E-R approach to hypermedia
shop/components/contents.htm.
application design. In Proceedings of the
MILLER, J., SHETH, A., KOCHUT, K., AND
12th International Conference on Entity Rela- PALANISWAMI, D. 1997. The future of web-
tionship Approach (ER’93, Dallas, TX), R. El- based workflows. In Proceedings of the Inter-
masri, V. Kouramajian, and B. Thalheim, national Workshop on Research Directions in
Eds. 178 –189. Process Technology (Nancy, France).
GARZOTTO, F., PAOLINI, P., AND SCHWABE, MONTGOMERY, J. 1997. Distributing compo-
D. 1991. HDM—a model for the design of nents. BYTE 22, 4, 93–98.
hypertext applications. In Proceedings of the MYERS, B. A. 1995. User interface software
3rd Annual ACM Conference on Hypertext tools. ACM Trans. Comput. Hum. Interact.
(San Antonio, TX, Dec. 15–18), J. J. Leggett, 2, 1 (Mar. 1995), 64 –103.
Ed. ACM Press, New York, NY, 313–328. MYERS, B., HOLLAN, J., CRUZ, I., BRYSON, S., BUL-
GWYER, M. 1996. Oracle Designer/2000 Web- TERMAN, D., CATARCI, T., CITRIN, W., GLINERT,
Server generator (vers. 1.3.2). Oracle Corp., E., GRUDIN, J., AND IOANNIDIS, Y. 1996.
Redwood City, CA. Strategic directions in human-computer inter-
HALASZ, F. AND SCHWARTZ, M. 1994. The Dexter action. ACM Comput. Surv. 28, 4, 794 – 809.
hypertext reference model. Commun. ACM NANARD, J. AND NANARD, M. 1995. Hypertext
37, 2 (Feb. 1994), 30 –39. design environments and the hypertext de-
HALASZ, F. G. 1988. Reflections on NoteCards: sign process. Commun. ACM 38, 8 (Aug.
Seven issues for the next generation of hyper- 1995), 49 –56.
media systems. Commun. ACM 31, 7 (July NIELSEN, J. 1990. Hypertext and Hypermedia.
1988), 836 – 852. Academic Press Prof., Inc., San Diego, CA.
HARDMAN, L., BULTERMAN, D. C. A., AND VAN ROS- NIELSEN, J. 1996. Computer Science and Engi-
SUM, G. 1994. The Amsterdam hypermedia neering Handbook. CRC Press, Inc., Boca
model: Adding time and context to the Dexter Raton, FL.
model. Commun. ACM 37, 2 (Feb. 1994), 50 – OBJECT MANAGEMENT GROUP 1998. The common
62. object request broker: Architecture and specifica-
HORTON, W., TAYLOR, L., IGNACIO, A., AND HOFT, N. tion. Ver. 2.0. Tech. Rep. Object Management
L. 1996. The Web Page Design Cookbook: Group, Framingham, MA. http://www.omg.org/
All the Ingredients You Need to Create 5-Star corba/corbiiop.htm.
RUMBAUGH, J., BLAHA, M., PREMERLANI, W., EDDY, TAKAHASHI, K. AND LIANG, E. 1997. Analysis
F., LORENSEN, B., AND LORENSON, W. 1991. and design of Web-based informations sys-
Object Oriented Modeling and Design. Pren- tems. In Proceedings of the Sixth Interna-
tice-Hall, Englewood Cliffs, NJ. tional Conference on the World Wide Web
SANO, D. 1996. Designing Large-Scale Web (Santa Clara CA, Apr.),
Sites: A Visual Design Methodology. John WONG, W. 1998. Team-building on the fly.
Wiley and Sons, Inc., New York, NY. BYTE 23, 2 (Feb.). http://www.byte.com/art/
SCHWABE, D. AND ROSSI, G. 1995. The object- 9802/sec10/art1.htm.
oriented hypermedia design model. Com- WORLD WIDE WEB CONSORTIUM, 1998. Cascading
mun. ACM 38, 8 (Aug. 1995), 45– 46. style sheets: Level 2 specification. Tech.
SCHWABE, D., CALOINI, A., GARZOTTO, F., AND PA- Rep. World Wide Web Consortium. http://
OLINI, P. 1992. Hypertext development us- w3c.org/TR/REC-CSS2
ing a model-based approach. Softw. Pract. WORLD WIDE WEB CONSORTIUM, 1998. The docu-
Exper. 22, 11 (Nov. 1992), 937–962. ment object model (DOM): Level 1 specification.
STOTTS, P. D. AND FURUTA, R. 1989. Petri-net- Tech. Rep. World Wide Web Consortium.
based hypertext: Document structure with http://www.w3.org/TR/REC-DOM-Level-1/.
browsing semantics. ACM Trans. Inf. Syst. ZHENG, Y. AND PONG, M.-C. 1992. Using state-
7, 1 (Jan. 1989), 3–29. charts to model hypertext. In Proceedings of
SUN MICROSYSTEMS, 1995. Remote method in- the ACM Conference on Hypertext (ECHT ’92,
vocation specification. Tech. Rep. Sun Mi- Milan, Italy, Nov. 30 –Dec. 4), D. Lucarella, J.
crosystems, Inc., Mountain View, CA. http:// Nanard, M. Nanard, and P. Paolini, Eds.
java.sun.com/products/jdk/rmi/index.html. ACM Press, New York, NY, 242–250.