Both the use cases and the user groups should be also textually described Below is another example of a use case diagram.
Use cases specify the functionality of the system, ie what the system can be used for. You can sketch out use cases with the help of examples. An example describes a typical instance of the use case, to name an example, 'registering for exercise group 3 of the course Information Systems' is an example of the use case 'registering for a course.' You may also present such examples in your document to illustrate the use cases. They may be presented in order of importance, alphabetical order or grouped by user. In the following example, some use cases of a flat renting system are described.
Example:
The connections between displays are usually described as charts. See Figure 2 for an example of such a chart.
(Figure 2)
The connections between use cases and user interface components may be explained textually. They may be described through matrixes if several use cases use the same user interface components, or if several user interface components are needed for a single use case.
MetaEdit will provide means for generating SQL-schema from a class diagram. The others are only graphical editors.
In addition to a diagram, you should include a textual explanation of each class in your diagram. The attributes must also be specified unless their meaning is evident from their names. If the attribute has coded values or a limited set of values, the values must also be explained. The association between classes must be specified. Below, is an example of a specification of one object class.
Example of object class specification
Class: conveniences
There may be several description of conveniences connected with each flat,
but only the most recent one is valid. The description is made when the
flat is assessed. The description is identified by the flat and the date of
compilation. The first description is based on the owner's statement. The
conveniences description describes the state and conveniences of the flat.
For the most common conveniences, there is an attribute with the value 'true'
if it is available, otherwise 'false'. The specific evaluation of the condition
of the flat is given in attribute 'miscellaneous' as a free text. The
attribute 'date made' gives the date of compilation.
Attribute Domain Description
refrigerator boolean obligatory
freezer boolean obligatory
dishwasher boolean obligatory
stove fan boolean obligatory
glassed-in balcony boolean obligatory
bathtub boolean obligatory
parquet floor boolean obligatory
sauna boolean obligatory
miscellaneous docu optional
date made date identifier
This part of the document may be done technically so that you include only the names of tables and short descriptions of the table in the document text. The Create table -clauses may be given as appendixes.
You may include a picture, showing the structure of the tables and their foreign keys.
If the user interface relies on frames, you have to describe what the interdependencies are inside each frame. To describe the general structure, you may use the technique described in Figure 3. This technique provides symbols for manual HTML pages, generated HTML pages and procedures.
The symbols are connected with arrows. An arrow indicates a link from one page to another, a procedure call, or production of the page in the procedure. You should attach each arrow a comment that explains the arrow. Figure 4 shows an example of a structure schema.
(Figure 4)
Each component is described separately, presenting the essential features needed to understand the component. The description is aimed at a person who might have to maintain the software some day.
The components can be presented grouped into HTML pages and procedures. Images, sound and other files can be listed on their own.
For each HTML page, present
For forms, list the fields and mentioning if there are any special requirements for their values. Hidden fields and their purpose should be presented. If the page is a concrete HTML file, mention where it can be found. If the page was generated, mention which procedure generated it.
Examples of page descriptions.
Entry page
Flat overview
Image files connected with page:
The page contains tables, divided according to location, showing the number of available flats of different sizes at that location.
For each procedure, present the following:
The purpose of these explanations is to help in reading the program code. You should include comments in the program code and use illustrative variable names. General data about the procedure may also be written as a header comment in the beginning of the procedure code.
The source code of the procedures are included appended to the document.
Examples of procedure descriptions
Cursor 'rooms,' is used for retrieving the number of available flats - divided into groups according to location (city), area and type from table 'flat'.
The procedure is activated from the page 'entry page' to process the form.
Parametrs:
Cursor 'cl' is used to retrieve information on the customer from table 'customer'. Cursor is parametrized (customer number and password)is found from the table 'client'. If customer's data is not found, the page 'invalid user' is generated. If the customer is found, the session is given a session number using the counter 'session_seq'. The session number will be transferred to the table 'customer' and added as parameter in all links that are generated.