Visualising Relationships Between Web Templates: Using HTML::Mason

By Hamish Carpenter.

Published by The Open Source Developers' Conference Papers

Format Price
Article: Electronic Free Download

Target Audience: developers, architects.
Secondary audience: testers, business analysts.

Benefits:
Enhance understanding and maintenance of template based web applications by visually displaying the relationships between template components.
Reduce costs, of maintenance and training of new staff, by automated documentation generation that will save time and ensure it is up-to-date and reflecting the actual system.
Reduce the barriers for documentation by automating an aspect that can take considerable time.
Identify areas of duplication and redundancy.
Aid people who learn best visually.

How:
This tool will scan selected source files looking for template component calls and building an in-memory data structure representing the hierarchy of components called. The aim, for example, is to gather all components that call a common footer component, this will enable accurate evaluation of the impact that changing the footer will have on the entire application.
Once the data structure has been built it needs to be transformed into a visual output format. The library used for display output will ultimately affect the visualisation capabilities. Its complexity needs to be balanced against its features. Options include ASCII art, Graphviz or a DIA format.

Keywords: Perl, Web application, HTML::Mason, Templating, web components, modelling, diagram generation, graphviz

Article: Electronic (PDF File; 537.266KB). Published by The Open Source Developers' Conference Papers.

Hamish Carpenter

Developing web applications with perl and HTML::Mason for three years now. With Catalyst IT in Wellington, New Zealand and now in Melbourne, Australia