4th Year

Online Forum for Tutoring
Basic Requirements Analysis for Final Year Project

Online Forum for Tutoring

Module : Advanced Web Technology
Assignment Type : Individual

According to the instructions, first assignment was to design the system. It included stakeholders, requirements, Class diagram, Sequence diagram for one of the flows, database structure and moke-ups.

Following features were implemented in the system. Although the guidelines were given for basic features, after a research the stakeholders were identified and the complete list  of functional requirements was created at design phase.

There are four type of users.

P – Public user                                       T – Tutor (Already registered)

S – Student (Already registered)               A – Admin

Functional Requirement Priority P S T A
Register to the system

New members should be able to register to the system. There are no special limitation (i.e. age, education level) for students and tutors to register. Admin users are predefined and users cannot be registered as admins. Before successfully registered, system will validate email and check whether user already exists.

Log in

Registered users can log into the system using their email address and password. Login fields are available in public interface. After logging in, users will be directed to the interface where they have the privileges to access certain options of the site.

Log out

Once a user successfully logs in to the system, it is possible to log out anytime. After that, user will be directed to public interface

Search questions

It is possible to search and browse using categories or tags. Also it should be available to sort the search results. The system will recommend questions based on terms in search query.

Ask questions

User can ask questions on any desired topic. When asking a question user has to provide a title for the question, described questions, related category(s) and tag(s). There is no limit for the number of questions that can be asked by single user

Critical  ✓
Categorize/ tag questions

Questions should be categorized according to predefined categories and tags. The categories are Extrasensory Perception (ESP), Psychokinesis (PK), Out-of-Body Experiences (OBEs), Near Death Experiences (NDEs) and Dreams.

Answer questions

There are no limitations for number of answers that a user can give. Also single question may have multiple answers.

Vote answers/ questions

Users can vote up or down for the questions and the answers. Each positive vote is given +1 and a negative vote is given -1 mark.

Acquire reputation points

Calculating the marks for votes of each user gained for their questions/ answers, reputation points will be displayed as a numeric value.

Remove users

A student/ a tutor can be removed. When removing all the personal information and logins should be removed. But the questions and answers may remain.

Remove questions/ answers

Admin can remove any question/ answer and when removing a question its answers also should be removed from the system.
A logged in student can remove a question posted by himself only if it is unanswered and not voted.

A logged in tutor can remove an answer only if it is not voted.

Edit questions/ answers

A logged in user can remove a question posted by himself only if it is unanswered and not voted.

A logged in tutor can edit an answer given by himself only if it is not voted.

Edit Account

A user should be able to edit the personal details entered at the registration. But the email cannot be edited.

Close account

A user should be able to close the account. After that, the personal details should be removed from the system; but the questions and answers may remain.


Moke-ups were created as follows.

Next the system was implemented and several enhancements were done to the previous design. CodeIgniter framework was used for MVC architecture.

Basic Requirements Analysis for Final Year Project

Module : Requirements Engineering
Assignment Type : Individual

A report was created defining the problem, solution, stakeholders and functional requirements. Also it contained the use case diagram and class diagram of the system.

It helped to determine how to gather the requirements, analyze and prioritize.

So.. What do you think?

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s