You are on page 1of 60

COMSATS Institute of Information Technology

The Department of Computer Science (CIIT)


Author: Haroon Munawar, Ahmed Jamal
E-mail address: haroonjamal@gmail.com
Study programme: BS(CS), 134 credit hours
Supervisor:Dr Aqeel Rehman, Dr Muntazim
Abbas
Examiner:
Scope: 7619 words inclusive of appendices
-/-/2015

BSCS. Thesis within Computer Science 6 Credit Hours

Fingerprint Attendance System


Case Study of COMSATS Vehari

Haroon Munawar
Ahmad Jamal

Development of Discussion Forum

Case Study of COMSATS Vehari

Abstract
This project is aimed at developing fingerprint attendance s ys tem for
the employee of Comsats Vehari Campus. This is a D es kt op as w el l a s
web-based application. Any registered faculty member can mark their
attendance through his/her fringprint. Facility to mark their attendance on
desktop application and can view his/her record on web portal. The head of
department also can view his departmental attendance record. This is very useful
for Comsats Vehari Campus.
Keywords: Dot Net Framework, Metro/html, SQL(2008).

Acknowledgements
All praise to Almighty Allah alone, the Omnipotent, the most compassionate.
His prophet MUHAMMAD (peace be upon him), the most perfect and
exalted among and of ever born on the surface of the earth, who is forever torch
of guideless and knowledge for humanity as a whole.
I express my sincere thanks to my project supervisor Sir, Aqeel Rehman
for his guidance, support and motivation. Im also thankful to Dr.Muntazim
Abbas for his guidance and all other respectable faculty members of
computer science department of COMSATS Institute of Information and
Technology Vehari Campus.

Table of Contents
Abstract.............................................................................................................. ii
Acknowledgements........................................................................................... iii
Table of Contents.............................................................................................. iv
1

1.2.1
1.2.2
1.2.3
1.2.4
1.2.5

Introduction..............................................................................................1
1.1 History of Forum............................................................................ 3
1.2 Types of Forum The following are the types of forums. [2]...........3
A Standard Discussion Forum............................................. 3
A Simple Discussion Forum................................................ 4
Each Person Post One Discussion........................................4
Q&A Discussion Forum...................................................... 4
Standard Forum in a Blog-like Format................................ 4
1.3 Case Study Problem Statement.....................................................5
1.4 Present System Study (XDA Developers)...................................... 7
1.5 Present System Components...........................................................7
1.6 Shortcomings.................................................................................. 9

Proposed System.................................................................................... 10
2.1 Proposed system........................................................................... 10
2.2 Proposed System Overview.......................................................... 10
2.2.1
Registration........................................................................10
2.2.2
User login...........................................................................10
2.2.3
User Profile........................................................................10
2.2.4
Forum categories................................................................10
2.2.5
Topics.................................................................................11
2.2.6
Posts...................................................................................11
2.2.7
New Topic..........................................................................11
2.2.8
Contact & Report...............................................................11
2.2.9
Latest Topics...................................................................... 11
2.2.10
Active Topics..................................................................... 11
2.2.11
News & Events.................................................................. 11
2.2.12
Forum Administrator......................................................... 11
2.2.13
Forum Moderator...............................................................11
2.3 System Flow Diagrams.................................................................12
2.3.1
User Flow...........................................................................12

2.3.2

Admin Flow Diagram........................................................ 13

2.3.3

Moderator Flow Diagram.................................................. 14

3
Software Requirement Specification....................................................15
3.1
Use case Diagram......................................................................... 15
3.2.1
Use case scenario 1............................................................ 16
3.2.2
Use case scenario 2............................................................ 17
3.2.3
Use case scenario 3............................................................ 18
3.2.4
Use case scenario 4............................................................ 19
3.2.5
Use case scenario 5............................................................ 20
3.2.6
Use case scenario 6............................................................ 21
3.2.7
Use case scenario 7............................................................ 22
3.2.8
Use case scenario 8............................................................ 23
3.2.9
Use case scenario 9............................................................ 24
3.2.10
Use case scenario 10.......................................................... 25
3.3 Sequence Diagrams.......................................................................26
3.3.1
Use case scenario 1 Sequence Diagram.............................26
3.3.2
Use case scenario 2 Sequence Diagram.............................27
3.3.3
Use case scenario 3 Sequence Diagram.............................28
3.3.4
Use case scenario 4 Sequence Diagram.............................29
3.3.5
Use case scenario 5 Sequence Diagram.............................30
3.3.6
Use case scenario 6 Sequence Diagram.............................31
3.3.7
Use case scenario 7 Sequence Diagram.............................32
3.3.8
Use case scenario 8 Sequence Diagram.............................33
3.3.9
Use case scenario 9 Sequence Diagram.............................34
3.3.10
Use case scenario 10 Sequence Diagram...........................35
3.4 Design ERD..................................................................................36
3.5 Database........................................................................................37
3.5.1
Table Name: Admin........................................................... 37
3.5.2
Table Name: Categories.....................................................38
3.5.3
Table Name: Topics........................................................... 38
3.5.4
Table Name: Posts............................................................. 39
3.5.5
Table Name: Users.............................................................39
3.5.6
Table Name: Moderator..................................................... 40
3.5.7
Table Name: News.............................................................40
3.6 Dataflow Diagram........................................................................ 41
3.7 Sitemap Diagram.......................................................................... 42
4

User Interface.........................................................................................43
4.1 Registration (guest).......................................................................43
4.2 Login (user).................................................................................. 44
4.3 Topics (user)................................................................................. 45

4.4

Replies (user)................................................................................46

4.5
4.6
4.7
4.8
4.9
4.10
4.11
4.12
4.13
4.14
4.15
4.16
4.17
4.18
4.19
4.20

Categories (user)...........................................................................47
Category Topics (user)..................................................................48
User Profile...................................................................................49
New Topic (user).......................................................................... 50
Login (moderator).........................................................................50
Verify Topics (moderator).............................................................51
Verify Replies (moderator)........................................................... 52
Login (admin)............................................................................... 53
New topic (admin)........................................................................ 53
Editing Topics (admin)................................................................. 54
Edit Replies (admin).....................................................................55
Edit Users (admin)........................................................................55
New category (admin).................................................................. 56
Edit Categories (admin)................................................................56
Topics (Guest)...............................................................................57
Replies (Guest)............................................................................. 57

Reports....................................................................................................58
5.1 Admin Report............................................................................... 58
5.2 Moderator Report..........................................................................59

Testing.....................................................................................................60
6.1 The Testing Techniques................................................................ 60
6.1.1
Registration Form Testing..................................................61
6.1.2
New Topic Form Testing....................................................62
6.1.3
Reply Form Testing............................................................62
7

References...............................................................................................63

Bibliography..................................................................................................... 64

Introduction

Technology runs in the veins of society. It is the fuel that drives our lives. It is an integral
part of our daily life. It has definitely benefited society. It has luxury in the life of every
common man. Similarly Software is driving most technology today. The time frame in which
computers and software have developed has barely been more then 75 years. Yet their impact
on individual humans and on societies has been as important as the printing press, airplanes,
television, and automobiles.
In every institutions, and academic organizations, attendance is a very important criterion
which is used for various purposes. These purposes include record keeping, assessment of
students, and promotion of optimal and consistent attendance in class. Traditionally, students
attendance is taken manually by using attendance sheet given by instructor in class. Reading
out the names of each student, each hour destroys the precious time and requires paper sheets
and a lot of stationery material. Moreover, there are some chances that student can cheat by
calling their friends attendance. This occurs because the students just want to fulfill the 80%
of the attendance so that they can seat for the final examination at the end of the semester.
Instructor cant monitor for all students in the class and it is difficult for instructor to record
the attendance of students accurately and efficiently. Thus, there is a need for a system that
would eliminate all of these trouble spots and records the attendance of the students more
accurately without have to trace manually by instructor. A number of related works exist on
the application of different methods and principles to effectively monitor the attendance of
students.
In [1], an embedded computer based lecture attendance management
system was proposed. The system provides an improvised electronic card and card reader
serially interfaced to the digital computer system. Authors in [2], used a wireless attendance
management system that authenticates using the iris of the individual. The system uses an
off-line iris recognition management system that can finish all the process including
capturing the image of iris recognition, extracting minutiae, storing and matching.
Attendance Management has also been carried out using attendance software that uses
passwords for authentication. The authors in [3] designed and implemented a system that
authenticates the user based on passwords, this type of system allows for impersonation since
the password can be shared or tampered with. Passwords could also be forgotten at times
thereby preventing the user from accessing the system. Other attendance solutions are
RFID-based student attendance system and GSM-GPRS based student attendance system.
These are all device-based solutions. While GSM-GPRS based systems use position of class
for attendance marking which is not dynamic and if schedule or location of the class
changes, wrong attendance might be marked. Problem with RFID [7] based systems is that
students have to carry RFID cards and also the RFID detectors are needed to be installed [6].
An automatic attendance management system using fingerprints would provide the needed
solution. The fingerprint is unique to each individual and cannot be shared. It allows students
to register for lectures with ease and eliminate errors that are associated with attendance
reports because the system generates monthly reports of his progress.

Need of Fingerprint Attendance System


To automate the attendance process instead of taking attendance on papers.
1

Example: In Comsats Vehari Campus attendance take on paper. This paper put
in a file and this file sent to admin and then admin enter manually attendance
(present, absent, leave) one by one. There is a huge time wastage .So there is a
need to introduce a such type of automatic system which can take attendance
through fingerprint and update record on database automatically. We take
attendance base on fingerprint because fingerprint is more secure and avoid from
plagiarism.

1.1

History of Attendance System


The Industrial Revolution brought major changes to the economies of Europe
and the United States. New technological advances in the early 1800s ushered
in sweeping changes for both manufacturing and transportation. Traditional
family farms and small family run cottage industries produced goods in small
quantities with lots of manual labor. With the arrival of machine based
manufacturing, entire families began moving from their rural farm homes to the
cities to find work in the newly industrialized factories. Children often worked
right alongside their parents when the family needed extra income. The work
was often dangerous, unhealthy, and paid very little. Factory owners loved child
labor because it was cheap and unregulated. However, it wasn't long before the
government stepped in to help improve factory conditions and regulate how
many hours people were made to work, especially children. Factory owners
needed a way to keep track of worker hours. This gave rise to the first time and
attendance systems.

1.2

Present Attendance System


The following are the types of Attendance System.
An embedded computer based attendance management system:
The system provides an improvised electronic card and card reader serially
interfaced to the digital computer system.

Shortcoming:
o Card can be lost.
o Card can be shared.

Wireless attendance management system:

Authors in used a wireless attendance management system that authenticates


using the iris of the individual. The system uses an off-line iris recognition
management system that can finish all the process including capturing the image of
iris recognition, extracting minutiae, storing and matching.

Shortcoming:
Iris identification is very difficult to perform at a distance larger than a few
meters.
Optical readers are difficult to operate requiring advance training for
employees.
Obscured by eyelashes, lenses, reflection.
Expensive acquisition devices.
Highly susceptible for changes in weather or due to infection.

User Password based Attendance management system:


Attendance Management has also been carried out using attendance software that
uses passwords for authentication.

Shortcoming:
Password can be shared.
Can be forgotten.

RFID and GSM-GPRS based attendance system:


Other attendance solutions are RFID-based student attendance system and GSMGPRS based student attendance system. These are all device-based solutions. While
GSM-GPRS based systems use position of class for attendance marking which is
not dynamic and if schedule or location of the class changes, wrong attendance
might be marked.

Shortcoming:

Problem with RFID based systems is that students have to carry RFID cards.
The RFID detectors are needed to be installed.
Can be shared.
Loss of card.

Fingerprint base attendance system:


An automatic attendance management system using fingerprints would provide the
needed solution. The fingerprint is unique to each individual and cannot be shared.
Moreover
Searching
is
fast
as
well
as
secure.

Case Study
Problem Statement
Designing a student attendance management system based on fingerprint verification and
faster from one to much identification that mange records for attendance in institution like
CIIT vehari.

Proposed Solution
There is a need of an automatic fingerprint attendance system. The

system will start with enrollment process of the employees. First of all there is a admin which
register the employees. He takes all the necessary information (name, department, fingerprints
etc). Our application starts and closes automatically at the professional time of the opening
and closing campus. Employee enrolls their fingerprints at two times. First when he enter the
campus and second when he leave the campus. Employee put his/her finger on a fingerprint
reader. The finger recognition unit compares the fingerprint features with those stored in the
database. . The output of the comparison is a score. If the score falls within a range defined as
acceptable, the user is authenticated and verifiedattendance will be marked. The presence of
each Employee will be updated in a database and the data will be passed to the server through
LAN. After this portal close no one can mark attendance. . If a Employee is absent, an
ALEART will be sent automatically on his/her Cell phone. If a employee is absent
continuously for more than three days a message sent automatically to his cell phone that to
meet the HOD. On the other side HOD receive notification on webportal about employees
attendance progress. So everything here gets automated. Also a unique username and
password for staff members are given in a website we create and the website can display the
Employees details, their attendance percentage which makes the work simple.
The following diagram illustrates the proposed solution.

Attendance is taken on paper which is expensive as well as difficult to manage paper which is a lot
Problem Definition

Research Technique

Case study

An automatic attendance management system using fingerprints would provide the needed

Proposed Solution

Proposed System

2.1

Proposed system
Fingerprint attendance system is a hybrid application.
The product consists of two parts:
Web Portal

2.2

Desktop

Proposed Web Portal Overview


The complete web portal overview is provided via its functionality.
Web portal consist of following interfaces:

Admin Panel

Head of department

Direct

Employee

Admin can perform following functionalities:

2.2.1

Admin login
Admin login through unique ID, password.
Registration
The employee is registered by the admin and send the id, password to the employee
through e-mail. The employee can login on web portal through this id, password.

2.2.2

Add department
Admin can add new department.

2.2.3

Assign designation
Admin assign designation to the employees predefined by campus or DIRECTORS.
Assign role
Assign role to the employees predefined defined by HOD.
Head of department (HOD) can perform following functionalities:
Login
HOD can login on web portal through unique id, password. Through this portal he
can monitor the all employee attendance progress.
Profile

HOD can view information about himself such as name, department, role etc. he can
also edit his profile.

View profile information.

Edit profile information.

Attendance
HOD can view all employees attendance summery in this portion.
Check In/Out
In Check In/Out HOD can view general sheet of employees. In this sheet the current
day status of employees in present.
For example: employee name, date, incoming time, outgoing time, status endosse
description.
Attendance sheet
In this sheet HOD can view the previous day final report of employees.
For example: date, name, status (present, absent), leave etc.
HOD can view the record of all employees as well as specific employee.
Manually edit attendance
HOD can manually edit attendance. HOD can edit attendance due to some
emergency due to some reasons of employees.
Leave Management
HOD can manage leave portion.
Assign leave
HOD can assign leave according to the request of the employees.
Leave sheet
HOD can view the leave chart of the employees. In this sheet all employee leaves
detail mention.
Notifications
HOD receive notifications o about late incoming and early outgoing employees. Its
a short way of view such type of faculty members
View Reports
Director can perform following functionalities:
Login
Directors login through unique id, password on web portal. By login he can view all
attendance record of all departments in categorized way. Directories have all the
authorities of this application.
View Attendance

View Report
Employee can perform following functionalities:
Login
Employee can login on web portal through specific id, password for view his
attendance status.
Profile
Employee can view information about himself such as name, department, role etc.
He can also edit his profile.

View profile information.

Edit profile information.

Check-in/Out
View attendance.
Employee can view his attendance progress here.
View leaves.
Employee can view his leaves record here.

2.3

System Flow Diagrams


There are three main actors of the system; flow diagram of each is given below.

2.3.1

User Flow Diagram


As shown in fig 2.0 the users will login into the system by providing their
username and password, the system will verify login details, if they are valid the
user is redirected to the user panel. If the login is invalid then they login details
are incorrect or they are not registered, then user is redirected to registration,
while they can view topics and replies without being registered.

Fig 2.0: User Flow diagram

2.3.2

Admin Flow Diagram


The administrator of the system logins into the admin panel by providing the
admin name and password. If login details are valid then admin is redirected to
admin panel else if the login details are invalid then admin is redirected to login
as shown in fig 2.1.

Fig 2.1: Admin Flow diagram

2.3.3

Moderator Flow Diagram


The moderator of the system logins into the moderator panel by providing the
moderator name and password. If login details are valid then moderator is
redirected to moderator panel else if the login details are invalid then moderator
is redirected to login. The moderator validates the active and inactive discussion
as shown by the fig 2.2.

Fig 2.2: Moderator Flow diagram

Software Requirement Specification

Functions (Functional requirements)


Employee Perspective
No
1
2
3
4
5
6

Requirements
Mark attendance through fingerprint
Login on web portal.
View attendance status on web portal.
Update login password.
Recover forgot password.
Receives warning alerts.
HEAD of Department (HOD) perspective

No
7
8
9
10
11
12
13
14
15
16

Requirements
Login on web portal.
View employees attendance status.
Review check In/ Check out.
Receive late comers notifications.
View reports.
Mark attendance through fingerprint.
View attendance status on web portal.
Update login password.
Recover forgot password.
Receives warning alerts.

No
17
18
19
20
21
22
23
24

HR Perspective
Requirements
Login on web portal.
Review check In/ Check out.
Mark attendance through fingerprint.
View attendance status on web portal.
Update login password.
Recover forgot password.
Receives warning alerts.
View reports.

System Administrative perspective


No
25
26
27
28
29
30
31
32
33
34
35
36

Requirements
Login
Add departments
Add faculty members
Deactivate faculty member
Set time for attendance
Mark attendance through fingerprint.
View his/her attendance status on web portal.
Update faulty information.
Update his/her account information.
Recover his/her forgot password.
Receives warning alerts.
Admin can manage academic calendar.

Use Cases:

Use case
Employee mark
attendance
through finger
print
(Use Case 1)
Login
(Use Case 2)
view
attendance
Status on web
portal
(Use Case 3)
Update his
password
(Use Case 4)
Recover forgot
password.
(Use Case 5)
Receive
warning alerts
(Use Case 6)
Log in web
portal
(Use case7 )
View
employees
attendance
status.
(Use Case 8)
Review
Check In/

Description
Employee can mark attendance through finger print scanner.
He/she mark attendance two times. First when he/she enter in
campus.
Second when he/she leave the campus.
Employee can login with those id and password which send by
the admin in confirmation E-mail.
After login Employee can view his/her attendance progress.

Employee can update his/her login password on web portal.


Employee can recover his/her forgot password.
If employees absents exceed more than three days then
he/she receive warning alerts from the system.
HOD can login with those id and password which send by the
admin in confirmation E-mail.
HOD can view all employees attendance status. He/she can
check previous day attendance. He/she can also research
through (name, ID, start date,
End date, Status).
HOD can review check In / Check Out status. In this HOD can
check the employee entering and leaving time of the current

Check out
(Use Case 9)
Receive
latecomers
notifications
(Use Case 10)
View Reports
(Use Case 11)
Mark
attendance
through FP
(Use Case 12)
View
attendance
status on web
portal.
(Use Case 13)
Update
password
(Use Case 14)
Recover forgot
password
(Use Case 15 )
Receive
warning alerts
(Use Case 16)
Login
(Use Case 17)
Review
Check In/
Check out
(Use Case 18 )
Mark
attendance
through FP
(Use Case 19 )
View
attendance
status on web
portal.
(Use Case 20)
Update
password
(Use Case 21)
Recover forgot
password
(Use Case 22)
Receive
warning alerts
(Use Case 23)

day. He/she can update status. More he/she can review the
history but can perform the change on that status. He/she can
search through (Name, Status, Start date, End date,).
HOD can receive notification about latecomers employees.

HOD can view monthly reports.


HOD also can mark attendance through finger print scanner.
He/she mark attendance two time.one when he enter in
campus.
Second when he/she leave the campus.
After login Employee can view his/her attendance progress.

HOD can update his/her login password on web portal.


HOD can recover his/her forgot password.
If HOD absents exceed more than three days then he/she
receive warning alerts from the system.
HR can login with those id and password which send by the
admin in confirmation E-mail.
HR can review check In / Check Out status as department wise.
In this HOD can check the employee entering and leaving time
of the current day. He/she can update status. More he/she can
review the history but cannot perform the change on that
status. He/she can search through (Name, Status, Start date,
End date and department).
HR also can mark attendance through finger print scanner.
He/she mark attendance two time.one when he enter in
campus.
Second when he/she leave the campus.
After login Employee can view his/her attendance progress.

HR can update his/her login password on web portal.


HR can recover his/her forgot password.
If HR absents exceed more than three days then he/she receive
warning alerts from the system.

View reports
(Use Case )
Login on web
portal.
(Use Case 24)
Add
Departments
(Use Case 25)
Add faculty
member
(Use Case 26)
Admin
deactivate
faculty member
(Use Case 27)
Admin set time
table for
attendance
(Use Case 28)
Mark
attendance
through FP
(Use Case 29)
View
attendance
status on web
portal. (Use
Case 30)
Update faculty
Information
(Use Case 31)
Update his/her
information
(Use Case 32)
Recover forgot
password
(Use Case 33)
Receive
warning alerts
(Use Case 34 )
Manage
academic
calendar
(Use Case)

3.1

HR can view reports. He/she can view reports as department


wise.
Admin can login with unique (ID, Password).
Admin can add new department.
I.e. Chemical Engraining.
Admin can register new faculty members.
Those faculty members which no longer become part of
institution then admin can deactivate them.
Admin first set the starting and ending time of the attendance.
So teacher mark attendance with in this time. After the time
exceed application automatically closed.
Admin also can mark attendance through finger print scanner.
He/she mark attendance two time.one when he enter in
campus.
Second when he/she leave the campus.
After login admin can view his/her attendance progress.

Admin can update faculty information.


i.e. (pic, phn, etc.)
Admin can update his/her account information.
Admin can recover his/her forgot password.
If admin absents exceed more than three days then he/she
receive warning alerts from the system.
Admin can manage academic calendar. Admin can set
predefined or defined vacations on calendar.

Use case Diagram


The administrator, HOD, HR, and the Employee are the primary actors of the
system. The respected role in the system is shown in this diagram.

Fig 3.1: Use case diagram

3.2

Use cases
Use cases scenarios of the system are discussed in detail, the following are the
use cases.

3.2.1

Use case scenario 1


The guests are required to get registered to become the users of forum.
Use Case ID
Use Case Name:
Created By:
Date Created:
Actors:
Description:
Preconditions:
Post conditions:
Normal Flow:

UC-1
Mark Attendance through FP
Haroon Munawar
Last Updated By:
Last Updated :
Employee

Exceptions:

2.
3.
1.
2.
1.

1.
2.
1.
2.

Priority:
Frequency of use:
Special
Requiremen
ts:
Assumptions:
Notes and Issues:

Ahmed Jamal

Employee can mark attendance through finger print


scanner.
He/she mark attendance two time. First when he/she
enter in1.campus.
System On

2.
Alternative Flow:

Haroon Munawar

Application Run
Verifying Fingerprint.
Note Time.
First employee mark attendance when he/she enter
in campus.
Second employee mark attendance when he/she
leave the campus.
Wrong Input.
Status Pending.
If the employee gives wrong input then system
prompts the employee, to enter the valid
details.
If the employee miss one time marking then system
automatically mark absent of that employee.

High
Approximately 40-50 employee, with average of 25 mark
attendance per day.
Employee must be marking two time in a day.
Daily basis marking.
None.

3.2.2

Use case scenario 2


Employee login
Use Case ID
Use Case Name:
Created By:
Date Created:
Actors:
Description:
Preconditions:
Postconditions:
Normal Flow:
Alternative Flow:

Exceptions:
Priority:
Frequency of use:
Special
Requirement
s:
Assumptions:

Notes and Issues:

UC-2
Employee Login
Haroon Munawar

Last Updated By:


Last Updated :

Haroon Munawar
Munawar Ali

Employee
To Access web portal contents the employee have to login
first through provided Id& password.
1. Employee must visit ????.com.
2. The Employee must be registered.
After login Employee can logout.
After registered employee login he/she get access to web
portal.
1. If the user forgets login id or password then they
can request for reset password through click on
forgot password.
2. Password send on his/her registered E-Mail.
If the employee gives invalid login id or password then the
system informs the employee that your id or password is
incorrect please try again.
High
Approximately 40-50 daily logins.
Employee must be registered.
1. The employee will login to get access to web
content to view attendance status.
2. Update password.
None

3.2.3

Use case scenario 3


Accessing forum
Use Case ID
Use Case Name:
Created By:
Date Created:
Actors:
Description:
Preconditions:
Postconditions:

Normal Flow:

Exceptions:
Includes:
Priority:
Frequency of use:
Special
Requiremen
ts:

Assumptions:

UC-3
Accessing Forum
Waheed Hassan

Last Updated By:


Waheed Hassan
Last Updated :
Users, Guest, Admin and Moderator
When the Users, Admin and Moderator logins then they
can view the contents of the forum.comsatsvehari.com.
Users, Admin and Moderator must login first.
1. Users login into user panel.
2. Admin login into admin panel.
3. Moderator login into moderator panel.
4. Guest views user panel.
1. Users can access forum contents.
2. Moderator verifies topics and posts.
3. Admin manages all the contents of the website.
4. Guest can view forum content only.
The users might not be able to view all the contents every
time he/she logins.
Login
Medium
1. Approximately every registered user logins for
view- ing contents of the website.
2. Moderator and admin logins on regular basis.
1. Latest news & updates would be provided to give
the users upto date information regarding
upcoming events.
2. Ongoing active threads.
3. Online students.
4. Latest threads.
The user will access contents of the website as they login.

Development of Discussion Forum

3.2.4

Case Study of COMSATS Vehari

Use case scenario 4


Viewing a thread
Use Case ID
Use Case Name:
Created By:
Date Created:
Actors:
Description:
Preconditions:
Postconditions:
Normal Flow:

Alternative
Flow:
Includes:
Priority:
Frequency of
use:
Assumptions:

UC-4
Viewing A Thread
Waheed Hassan
Last Updated
Waheed Hassan
By: Updated :
Last
Users, Guest
User can view discussion posts after accessing
the Forums.
1. Users must access Forum.
1. User can view links of categories of threads.
2. User can view replies on a selected thread.
1. User will select the link for the discussion
category they wish to view.
2. User is presented with a page displaying all
thread titles related to the selected topic
(subject).
3. User selects the link of the thread title they wish
to view.
4. Selected thread is displayed with any
1. associated
Logs out. replies.
Accessing Forum
Medium
1. All registered users will view threads on daily
ba- sis.
2. User will view threads by category, to select
the desired thread and to view associated
replies.

Use Case ID
Use Case Name:
Created By:
Date Created:
Actors:
Description:

UC-5
Creating A Thread
Waheed Hassan
Last Updated
Waheed Hassan
By: Updated :
Last
Users, Administrator
User can create a new thread under a specific category.

Preconditions:
Normal Flow:

Users must access Forum.


1. User will select the link for the
discussion category they wish to view.
2. From the thread listing page, the user will
se- lect a Create New Thread link.
3. The user will be presented with a page that
al- lows them to input thread data. From
here the user will be required to enter a
thread title and message into the body of
the post.
4. After user completes inputting, they will
click a Submit link and the thread will be
View threads.
1. Empty title and message body.
2. Invalid characters.
Accessing Forum
Medium
All registered users will create threads on daily basis.

Alternative
Flow:
Exceptions:
Includes:
Priority:
Frequency
of use:
Special
Requiremen
ts:
Assumptions:
Notes and
Issues:

1. Prompts user if he/she gives invalid input


da- ta.
2. Smart navigation between categories
and threads pages.
User will create threads with valid input data.
If the user gives empty or invalid data then it shouldnt
be inserted to database.

Development of Discussion Forum

3.2.6

Case Study of COMSATS Vehari

Use case scenario 6


Posting reply on a thread
Use Case ID
Use Case
Name:
Created By:
Date Created:
Actors:
Description:
Preconditions:
Postconditions:
Normal Flow:

Alternati
ve Flow:
Exceptions:
Includes:
Priority:
Frequency
of use:
Special
Requiremen
ts:
Assumptions:
Notes
and
Issues:

UC-6
Posting/Reply On A Thread
Waheed Hassan
Last
Waheed Hassan
Updated
By: Updated :
Last
Users
After viewing a thread, a user will be able to post
an additional message or reply to the thread.
Users must view a thread.
Submit post.
1. User will scroll to the bottom of the page,
where they will enter the new message to
be added to the thread.
2. After message is complete, user will
click Submit link.
1. View threads.
2. Create thread.
1. Empty message body.
2. Invalid characters.
Viewing A Thread
Medium
All threads will have posts/replies on daily basis.
1. Prompts user if he/she gives invalid input
da- ta.
2. Smart navigation between categories
and threads.
User will post replies on threads.
If the user gives empty or invalid data then it shouldnt
be inserted to database.

Use Case ID
Use Case
Name:
Created By:
Date Created:
Actors:
Description:
Preconditions:
Postconditions:
Normal Flow:

Alternati
ve Flow:
Exceptions:
Includes:
Priority:
Frequency
of use:
Special
Requiremen
ts:
Assumptions:
Notes
and
Issues:

UC-7
Adding A New Thread Category
Waheed Hassan Last
Waheed Hassan
Updated
By: Updated :
Last
Administrator
Administrator can create a new category for threads.
Login to admin panel.
Logout.
1. If user viewing forum has administrator
rights, an administrator toolbar will be
dis- played at left. Admin will select
New Thread Category link from toolbar
under thread category.
2. Admin will be required to enter a Title
and description for the category.
3. Admin clicks Submit link and a new
cate- gory is formed.
Delete A Thread Category.
1. Empty category title or description.
2. Input invalid characters.
Accessing Forum Admin Panel.
High
Admin will create threads on weekly basis.
Admin will have the option of selecting moderators
for that specific Category.
Admin will create categories of threads.
If the admin gives empty or invalid data then it
shouldnt be inserted to database.

Development of Discussion Forum

3.2.8

Case Study of COMSATS Vehari

Use case scenario 8


Deleting a thread category
Use Case ID
Use Case Name:
Created By:
Date Created:
Actors:
Description:
Preconditions:
Postconditions:
Normal Flow:

Alternative
Flow:
Exceptions:
Includes:
Priority:
Frequency of
use:
Assumptions:
Notes and
Issues:

UC-8
Deleting A Thread Category
Waheed Hassan
Last Updated
Waheed Hassan
By: Updated :
Last
Administrator
Administrator can choose to delete an entire
Thread Category and all threads under the
category.
Login
to admin panel.
Logout
1.) Admin will select View link from admin panel
left toolbar under Thread Category.
2.) A page will be loaded with a list box of all
created thread categories. The admin will select
which category they wish to delete.
3.) The admin will select the Delete link.
4.) They will be prompted with a message asking
for confirmation to delete Thread category and
all re- lated threads.
5.) User selects OK to continue deletion.
Update A Thread Category.
Deletion errors.
Accessing Forum Admin Panel.
High
Admin will delete inactive threads on weekly basis.
Admin will delete categories of inactive threads.
Database connectivity errors.

3.2.9

Use case scenario 9


Delete a thread
Use Case ID
Use Case Name:
Created By:
Date Created:
Actors:
Description:
Preconditions:
Postconditions:
Normal Flow:

Exceptions:
Includes:
Priority:
Frequency of
use:
Notes and
Issues:

UC-9
Delete A Thread
Waheed Hassan

Last Updated
Waheed Hassan
By: Updated :
Last
Moderator, Administrator
Moderator can choose to delete threads from any
category that they have access to.
Login as user with moderator rights.
Logout.
1. If the user has moderator/administrator
access right to the category they are in, a
delete link will appear next to each
thread. To delete that thread, the user will
click the link next to the thread title they
wish to delete.
2. User will be prompted for confirmation to
de- lete thread. User must click OK to
continue with thread deletion.
Deletion errors.
Follow Viewing A Thread use case.
High
1. Moderator will delete inactive threads on
weekly basis.
2. Moderator will delete all reported threads.
Database connectivity errors.

Development of Discussion Forum

3.2.10

Case Study of COMSATS Vehari

Use case scenario 10


Delete a post
Use Case ID
Use
Case
Name: By:
Created
Date Created:
Actors:
Description:
Preconditions:
Postcondition
s:
Normal Flow:

Exceptions:
Includes:
Priority:
Frequency
of use:
Notes
and
Issues:

UC-10
Delete A Post/reply
Waheed Hassan

Last Updated By:


Waheed Hassan
Last Updated :
Moderator, Administrator
Moderator can choose to delete posts from any thread
in a thread category they have moderator access to.
Login as user with moderator rights.
Logout.
1. User will select the thread title containing the
post they wish to delete.
2. If the user has moderator/administrator access
right to the thread category they are in, a
delete link will appear next to each post on
the thread page. To delete that post, the user
will click the link next to the post they wish
to delete.
3. User will be prompted for confirmation to
delete post. User must click OK to continue
with dele- tion.
Deletion errors.
Follow Viewing A Thread use case.
High
Moderator will delete all reported posts on weekly basis.
Database connectivity errors.

3.3

Sequence Diagrams
The sequence diagrams of each use case scenario are given below.

3.3.1

Use case scenario 1 Sequence Diagram


Fig: 3.1 show the guest is required to enter his/her registration information, if
the guest is already registered then he/she will be notified else their registration
record will be saved.

Fig 3.1: Registration sequence diagram

Development of Discussion Forum

3.3.2

Case Study of COMSATS Vehari

Use case scenario 2 Sequence Diagram


Fig: 3.2 shows that the user, admin and moderator is required to enter their
login information, if the login information is valid then they are redirected to
their respected GUIS. Else they are notified about invalid login details.

Fig 3.2: Login sequence diagram

3.3.3

Use case scenario 3 Sequence Diagram


Fig: 3.3 shows that the user, admin and moderator is required to enter their
login information, if the login information is valid then they are given access to
the forum.

Fig 3.3: Forum Access sequence diagram

Development of Discussion Forum

3.3.4

Case Study of COMSATS Vehari

Use case scenario 4 Sequence Diagram


Fig: 3.3 show that the user, admin and moderator can view the topics if they
have form access. If the topic exists then they are shown else a notification is
shown that no topic exists.

Fig 3.4: View Topic sequence diagram

The user and the admin can create new topics if they have access to the forum.
If the topic with same contents exists then user is notifies else the topic is saved
to the database as shown in the fig: 3.5.

Fig 3.5: New Topic sequence diagram

Development of Discussion Forum

3.3.6

Case Study of COMSATS Vehari

Use case scenario 6 Sequence Diagram


The user can post and view replies on a topic if the topic exists as shown in the
fig: 3.6.

Fig 3.6: Posting on a Topic sequence diagram

As shown in the fig: 3.7 the admin can create new categories, if the same
category contents are already stored in the database then the admin is notified
by the system.

Fig 3.7: New Category sequence diagram

Development of Discussion Forum

3.3.8

Case Study of COMSATS Vehari

Use case scenario 8 Sequence Diagram


As shown in the fig: 3.8 the admin can delete category, if the category exists in
the database, then a confirmation message is shown by the system.

Fig 3.8: Delete Category sequence diagram

3.3.9

Use case scenario 9 Sequence Diagram


As shown in the fig: 3.9 the admin and moderator can delete topic, if the topic
exists in the database, then a confirmation message is shown by the system.

Fig 3.9: Delete Topic sequence diagram

Development of Discussion Forum

3.3.10

Case Study of COMSATS Vehari

Use case scenario 10 Sequence Diagram


As shown in the fig: 3.10 the admin and moderator can delete post/reply, if the
post exists in the database, then a confirmation message is shown by the system.

Fig 3.9: Delete Post sequence diagram

3.4

Design ERD
The entities of the system are categories, topics, posts, admin, user and moderator, their attributes and their relationship with each other is shown in fig 3.4.

Fig 3.4: ER diagram

3.5

Database
Fig 3.3 shows the logical database of the discussion forum. The primary key and
foreign key relationship is shown for each table with its attributes.

3.5.1

Table Name: Admin


Field
Data Type
Name
admin_id
Int(8)
admin_nam
e
Admin_pw
d

Varchar(25
)
Varchar(25
)

Data
Description
Admin id

Ke
y
PK

Reference
None

Admin Name
Admin
Password

In this table admin id is set as primary key. This table is usually used to
maintain the record of admin.

3.5.2

Table Name: Categories


Field Name
Data Type

Data Description

cat_id

Int(8)

Category id

cat_name

Varchar(255
)
Varchar(255
)
Int(8)

Category Name

cat_discriptio
n
cat_by

Category
Description
Category by

Ke
y
PK

Referenc
e
None

FK

Admin

In this table category id is set as primary key. This table is usually used to
maintain the record of categories and their description.
3.5.3

Table Name: Topics


Field
Name
topic_id

Data Type

Ke
y
PK

Reference

topic_subj
topic_date

Varchar(255
)
date

Topic Date

topic_cat

Int(8)

Topic Category

FK

Categories

topic_by

Int(8)

Topic By

FK

Users

topic_pin

Int(1)

Topic Pin status

topic_flag

Int(1)

Topic flag value

Int(8)

Data
Description
Topic id
Topic Subject

In this table topic id is set as primary key. This table is usually used to maintain
the record of topics. The topic category is foreign key; topics can be only
created if there is a category created. The topic by is the foreign key, which
holds the information of the user who created the topic. Topic flag value is used
by the moderator for verification.

3.5.4

Table Name: Posts


Field
Name
post_id

Data Type

Ke
y
PK

Reference

post_cont
post_date

Varchar(255
)
date

Reply Date

post_topic

Int(8)

Reply Topic

FK

Topics

post_by

Int(8)

Reply By

FK

Users

post_flag

Int(1)

Post flag value

Int(8)

Data
Description
Reply id
Reply Content

In this table reply id is set as primary key. This table is usually used to maintain
the record of replies. The reply topic is foreign key; the replies can be only
created if there is a topic created. The reply by is the foreign key, which holds
the information of the user who created the reply. Post flag value is used by the
moderator for verification.
3.5.5

Table Name: Users


Field Name

Data Type

Data Description

user_id

Int(8)

User id

user_reg

User Registration
ID
User Name

user_progra
m
user_date

Varchar(25
)
Varchar(25
)
Varchar(25
)
Varchar(25
)
Varchar(30
)
Varchar(10
)
Varchar(30
)
Varchar(10
)
date

user_status

Int(1)

User status value

user_name
User_last
user_email
user_pwd
user_gen
user_pic

User Last Name


User Email
User Password
User Gender
User Profile Picture
User Program
User Joined Date

Ke
y
PK

Reference
None

In this table user id is set as primary key. This table is usually used to maintain
the record of users. The user id is foreign key in topics and replies table. Admin
uses status value to verify users.
3.5.6

Table Name: Moderator


Field
Data Type
Name
mod_id
Int(8)

Data Description

mod_name

Moderator Name

mod_pwd

Varchar(25
)
Varchar(25
)

Moderator id

Ke
y
PK

Reference
None

Moderator
Password

In this table mod id is set as primary key. This table is usually used to maintain
the record of moderator.
3.5.7

Table Name: News


Field
Data Type
Name
news_id
Int(8)

Data Description

news_cont

Moderator Name

news_date

Varchar(25
)
date

news_by

Int(8)

Moderator id

Moderator
Password
News by

Ke
y
PK

Reference
None

FK

In this table news id is set as primary key. This table is usually used to maintain
the record of news.

3.6

Dataflow Diagram
The dataflow diagram of the system. The inflow of data represents the input
given to the system and the outflow represents the output generated by the
system after processing the input as shown in fig 3.5.

Fig 3.5: DF diagram

3.7

Sitemap Diagram
The sitemap diagram of the user panel. The user panel has four main pages i.e.
home, forum, profile and contact with their subpages are shown in fig 3.6.

Fig 3.6: site map diagram

User Interface

4.1

Registration (guest)
the user will provide valid details required to get registered to the system.

Fig 4.1: User Registration Interface

4.2

Login (user)
the user will provide valid email and password to successfully login into the
system.

Fig 4.2: User Login Interface

You might also like