Webber: A Website Construction Application


Informal Specifications


Requirements Definition

This program will provide an environment for the creation and display of text files containing Hyper-Text Mark-up Language (HTML). It will allow HTML files to be retrieved, displayed and updated without the need for an external editor or browser application. It will be able to retrieve files from a local file-system or across the Internet from remote systems. It will allow multiple files to be opened simultaneously for both viewing and editing, to aid in the construction of a multi-page website. The browser part of the application will support a subset of the standard HTML specification and the editor will be customized to the task of editing HTML text.


Design and Implementation

The Java Development Kit

Since this is an internet application, the implementation should be as portable and platform-independent as possible, to allow easy conversion for use on the different hardware platforms that are connected to the network. It has therefore been implemented in Java, using version 1.1 of the Sun Java Development Kit, as this platform was designed with the Internet in mind. The Java Development Kit (JDK) includes many features which assist in the construction of a GUI-based internet application like a web-browser.

Uniform Resource Locators

One particularly useful innovation contained within the JDK is the URL class, which encapsulates a Uniform Resource Locator (URL) specification. Given a URL specification, such as:

	http://www2.unl.ac.uk/~efm001/

the URL object allows you to retrieve the contents of the specified (or implied) file with a single method invocation without having to worry about the actual mechanics of the connection to the remote host, which involves dealing with ports and sockets and other such nastiness. The process of opening a remote file with a URL object is thus very similar to opening a local file, which greatly simplifies the implementation of an important aspect of this project; the retrieval of HTML files across the Internet.

HTML Display Component

The Abstract Windows Toolkit, which makes up a large part of the JDK, provides the windowing environment and a basic set of GUI components, such as labels, buttons and text-input areas. It does not currently provide any very specialized components, such as a built-in browser-component or even a component that simply displays HTML output. One of the tasks of this project will therefore be to implement a GUI component which processes a file of HTML text and displays the HTML output. The component is required to implement a subset of the standard HTML specification and should allow easy extension to include more of it. The object-oriented nature of the Java language will make this easier, since it encourages the design of re-usable and replaceable objects.

HTML Editor Component

The JDK does provide a GUI component called TextArea which allows the input of multi-line text. This component could be used to implement a very simple text-editor which would make the implementation of the HTML editor part of this project into a trivial task. Unfortunately, the internal operation of the TextArea component is kept strictly private, which means it cannot be specialized to do things like highlight HTML tags within the text. For this project it will therefore be necessary to implement a customized HTML text-editor component from scratch.


Go To: IM250: Industrial Project