Thesis / report · 2004
A Software Development Metaphor for Developing Semi-dynamic Web Sites through Declarative Specifications
Diomidis Spinellis, Vassilios Karakoidas, Damianos Chatziantoniou
A way to build a mid-sized website that is neither hand-authored pages nor a database application: specify every element of the site declaratively, and treat the site as a software project — XML sources, transformations, version control and a build.
- Published in
- Eltrun Working Paper Series, WP 2004-007, 2004
- Citations
- Not indexed by Google Scholar.
- Cite as
- SKC04
The idea
Hand-authored sites drift in structure and presentation, duplicate their content, and funnel every change through one person. A database-driven site fixes that, but brings a front-end to render the data, a back-end for stakeholders to edit it, access permissions to administer, and an authentication story — for many sites, complexity that joins the problem rather than the solution. The proposal is a third option: declare the site's elements, and manage them with the tools software development already has.
Contributions
- A methodology for middle-sized semi-dynamic websites, built on the distributed software development model, in which content is declaratively specified rather than authored or queried.
- A technological basis of well-known, open technologies — XML for the data hierarchy, XSD for validation, XSLT for transformation, a version control system for concurrent authoring — chosen over the custom notations and proprietary models of comparable frameworks, and open source tools chosen to satisfy an explicit openness requirement.
- A prototype framework implementing the methodology, with an account of how it was received in use.
The paper positions itself against the research frameworks of the period — Araneus, AutoWeb, Strudel and their query languages — whose common feature is a bespoke language or model; and against offline programmatic generation, from which it differs by being declarative rather than imperative.
Written from the paper itself — the PDF linked above, which this site hosts.