MORE: A Case Study in Reengineering a Database Application for the Web
University of Houston-Clear Lake
2700 Bay Area Blvd.
Houston, TX 77058
713-283-3875 (voice)
713-283-3869 (fax)
eichmann@rbse.jsc.nasa.gov
Abstract
The World-Wide Web offers unprecedented information access to the
Internet community. With support for HTML forms increasingly common,
issues of how to adapt existing application systems to this new
infrastructure are becoming increasingly important. The RBSE research
and development group, as part of NASA's work in software engineering
and reuse, has reengineered its monolithic, X-Windows-based repository
into a new repository -
MORE,
the Multimedia Oriented Repository Environment.
MORE
was designed as a set of application programs (more specifically a set of
CGI executables) that operate in conjunction with a stock httpd server to
provide access to a relational database of meta-data. The entire MORE
interface, client browsing and search, repository definition, data entry
and other administrative functions, is provided through stock Web clients.
(We currently use Mosaic for most of our
interaction.) MORE provides separate hierarchies of meta-classes and
collections and support for controlled access to proprietary collections
through the definition of user groups. With the single exception of the
system front page, the entire user interface is accomplished as dynamically
generated HTML.
The paper describes the experiences of the development team in
designing and implementing a complex database-oriented system in the
Web environment. In particular, it details:
- general system architecture issues;
- our separation of interface and application (particularly
database) semantics;
- maintaining application state in the stateless environment of the Web;
- our approach to blending public and priviledged access to
executables; and
- lessons learned dealing with HTML and HTTP, what's easy, what's not.