Requirements for the subsystem "General Project"


The term "Project" here means a collections of members and shared documents which collaborate to achieve some goal. The term "General" means exists in an abstract or reusable form as a template from which concrete specific instances can be created which will inherit common behaviour from the general class or template. "General Project" is a "Project" which will contain behaviour common to all projects. Other components may inherit this behaviour and customize or extend the behaviour.

Vision and Purpose

It is intended that projects can be created and customized in a completely automated way by the prospective members of each project. One such instance of a project is the CyTerm project itself. The project permits a collaborative infra-structure which helps project members to achieve a goal. Projects are dynamically created, grown and closed. Minimal administrative overheads are imposed yet abuses are prevented by using security controls and rules.

Decision-making Authority

Chris Turner


Not consulted.



The non-member can apply for membership, view project goals and rules, agree to terms and conditions, list the projects with which he is associated. Application for membership includes identification details, security details, requested roles, acceptance of rules.


Members do anything that non-members can do. Also may receive messages and event notifications from the project. Members may (depending on roles) send messages, download/upload documents, create sub-projects. Messages may be to the administrator or to role holders or to individuals.


Administrators can do anything members can do and additionally, censor messages, expel members, admit new members, change roles.

Use cases

Create new Project

Apply for membership

Settle Account

Post a message

Contribute a file

Manage a file

Checkout a file

Get a file

Checkin a file

History of file

History of project