OSMIS Technical Specification

1. Preamble

1.1 Introduction

Purpose of the Document

This document presents the technical architecture design for the OSSMS (Open Source School Management System) project. This document follows from the requirements specification document, compiled by the CSIR, that analyses the requirements for the system and presents detailed use cases.

The purpose of this document is to present a technical architecture for the system that will meet its requirements -- both functional and non-functional. From this document, it should be possible for the developers to develop a working system -- with minimal ambiguity.


This document covers the technical architecture of the system. This includes the implementation framework, technical specification, coding conventions and development procedures. The specification consists of a database definition, class design, and user interface design. Since the development methodology is iterative by nature, this document will evolve and grow with the project. Thus it should be considered a document in progress, and will be updated regularly.

1.2 Intended Audience

This document is intended for the development team of the OSSMS project (at Kgatelopele Technologies) for the development of the system. Since this project will use Open Source development methodologies, it is expected that members of the Open Source educational community will also read and this document and peer-review it. These community members could be potential developers, or project stakeholders.

It is assumed that the reader has some knowledge in the following areas:

  • Object oriented concepts, including classes, inheritance and interfaces
  • The Java programming language
  • The MVC (Model View Controller) paradigm
  • Entity-relational databases
  • 1.3 Outline of Document

    The document is structured as follows. Section 2 presents an overview of the system and presents information regarding general concepts used in the specification. It also covers some important issues regarding security and internationalisation. Section 3 then presents the database design and specification, after which Section 4 presents the Java class design. The GUI specification is then given in Section 5. Finally, some general information is given regarding coding policies and reporting procedures in Sections 6 and 7 respectively.

    1.4 Revision History

    Version Date Amended By Comments
    1.0 25/04/2003 Adi Attar Document creation
    1.1 02/05/2003 Adi Attar Database definition document modified. See revision history section 1.5 in document for details

      << Previous Up
    Next >>