fingerprint attendance system

69
COMSATS Institute of Information Technology The Department of Computer Science (CIIT) Author: Haroon Munawar, Ahmed Jamal E-mail address: [email protected] 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

Upload: sahibzada-muhammad-amir-khan

Post on 17-Dec-2015

62 views

Category:

Documents


14 download

DESCRIPTION

this documet is about finger print.

TRANSCRIPT

COMSATS Institute of Information Technology The Department of Computer Science (CIIT) Author: Haroon Munawar, Ahmed JamalE-mail address: [email protected] Study programme: BS(CS), 134 credit hours Supervisor:Dr Aqeel Rehman, Dr Muntazim AbbasExaminer: Scope: 7619 words inclusive of appendices-/-/2015

BSCS. Thesis within Computer Science 6 Credit Hours

Fingerprint Attendance SystemCase Study of COMSATS Vehari

Haroon MunawarAhmad Jamal

AbstractThis project is aimed at developing fingerprint attendance system for the employee of Comsats Vehari Campus. This is a Desktop as well as 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).Development of Discussion ForumCase Study of COMSATS Vehari

Development of Discussion ForumCase Study of COMSATS Vehari

6

iii

AcknowledgementsAll 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

AbstractiiAcknowledgementsiiiTable of ContentsivIntroduction1History of Forum3Types of Forum The following are the types of forums. [2]3A Standard Discussion Forum3A Simple Discussion Forum4Each Person Post One Discussion4Q&A Discussion Forum4Standard Forum in a Blog-like Format4Case Study Problem Statement5Present System Study (XDA Developers)7Present System Components7Shortcomings9Proposed System10Proposed system10Proposed System Overview10Registration.10User login10User Profile10Forum categories10Topics11Posts11New Topic11Contact & Report11Latest Topics11Active Topics11News & Events11Forum Administrator11Forum Moderator11System Flow Diagrams12User Flow12Admin Flow Diagram13Moderator Flow Diagram143Software Requirement Specification153.1Use case Diagram15Use case scenario 116Use case scenario 217Use case scenario 318Use case scenario 419Use case scenario 520Use case scenario 621Use case scenario 722Use case scenario 823Use case scenario 924Use case scenario 1025Sequence Diagrams26Use case scenario 1 Sequence Diagram26Use case scenario 2 Sequence Diagram27Use case scenario 3 Sequence Diagram28Use case scenario 4 Sequence Diagram29Use case scenario 5 Sequence Diagram30Use case scenario 6 Sequence Diagram31Use case scenario 7 Sequence Diagram32Use case scenario 8 Sequence Diagram33Use case scenario 9 Sequence Diagram34Use case scenario 10 Sequence Diagram35Design ERD36Database37Table Name: Admin37Table Name: Categories38Table Name: Topics38Table Name: Posts39Table Name: Users39Table Name: Moderator40Table Name: News40Dataflow Diagram41Sitemap Diagram42User Interface43Registration (guest)43Login (user)44Topics (user)45Replies (user)46Categories (user)47Category Topics (user)48User Profile49New Topic (user)50Login (moderator)50Verify Topics (moderator)51Verify Replies (moderator)52Login (admin)53New topic (admin)53Editing Topics (admin)54Edit Replies (admin)55Edit Users (admin)55New category (admin)56Edit Categories (admin)56Topics (Guest)57Replies (Guest)57Reports58Admin Report58Moderator Report59Testing60The Testing Techniques60Registration Form Testing61New Topic Form Testing62Reply Form Testing62References63Bibliography64

vi

v

1 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 SystemTo automate the attendance process instead of taking attendance on papers.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. 16

17

1.1 History of Attendance SystemThe 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 SystemThe 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: Card can be lost. 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 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.

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 StatementDesigning 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.

Problem DefinitionAttendance is taken on paper which is expensive as well as difficult to manage paper which is a lot of time wastage. Case studyAn automatic attendance management system using fingerprints would provide the needed solution.

Research Technique

Proposed Solution

2 Proposed System2.1 Proposed systemFingerprint attendance system is a hybrid application. The product consists of two parts: Web Portal Desktop

2.2 Proposed Web Portal OverviewThe 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: Admin login Admin login through unique ID, password.2.2.1 RegistrationThe 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 roleAssign role to the employees predefined defined by HOD.Head of department (HOD) can perform following functionalities:LoginHOD can login on web portal through unique id, password. Through this portal he can monitor the all employee attendance progress.ProfileHOD can view information about himself such as name, department, role etc. he can also edit his profile. View profile information. Edit profile information.

AttendanceHOD can view all employees attendance summery in this portion. Check In/OutIn 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 sheetIn 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 attendanceHOD can manually edit attendance. HOD can edit attendance due to some emergency due to some reasons of employees. Leave ManagementHOD can manage leave portion.Assign leaveHOD can assign leave according to the request of the employees.Leave sheetHOD 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 membersView 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 AttendanceView Report

Employee can perform following functionalities:LoginEmployee can login on web portal through specific id, password for view his attendance status.ProfileEmployee 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/OutView attendance.Employee can view his attendance progress here.View leaves. Employee can view his leaves record here.

2.3 System Flow DiagramsThere are three main actors of the system; flow diagram of each is given below.

2.3.1 User Flow DiagramAs 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 DiagramThe 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 DiagramThe 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

3 Software Requirement Specification

Functions (Functional requirements)

Employee Perspective

No Requirements

1Mark attendance through fingerprint

2Login on web portal.

3View attendance status on web portal.

4Update login password.

5Recover forgot password.

6Receives warning alerts.

HEAD of Department (HOD) perspective

No Requirements

7Login on web portal.

8View employees attendance status.

9Review check In/ Check out.

10Receive late comers notifications.

11View reports.

12Mark attendance through fingerprint.

13View attendance status on web portal.

14Update login password.

15Recover forgot password.

16Receives warning alerts.

HR Perspective No Requirements

17Login on web portal.

18Review check In/ Check out.

19Mark attendance through fingerprint.

20View attendance status on web portal.

21Update login password.

22Recover forgot password.

23Receives warning alerts.

24View reports.

System Administrative perspective

No Requirements

25 Login

26 Add departments

27 Add faculty members

28Deactivate faculty member

29 Set time for attendance

30Mark attendance through fingerprint.

31View his/her attendance status on web portal.

32Update faulty information.

33Update his/her account information.

34Recover his/her forgot password.

35Receives warning alerts.

36Admin can manage academic calendar.

Use Cases:

Use case Description

Employee mark attendance through finger print(Use Case 1)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.

Login(Use Case 2)Employee can login with those id and password which send by the admin in confirmation E-mail.

view attendance Status on web portal(Use Case 3)After login Employee can view his/her attendance progress.

Update his password(Use Case 4)Employee can update his/her login password on web portal.

Recover forgot password.(Use Case 5)Employee can recover his/her forgot password.

Receive warning alerts(Use Case 6)If employees absents exceed more than three days then he/she receive warning alerts from the system.

Log in web portal(Use case7 )HOD can login with those id and password which send by the admin in confirmation E-mail.

View employees attendance status.(Use Case 8)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).

Review Check In/ Check out(Use Case 9)HOD can review check In / Check Out status. 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 can perform the change on that status. He/she can search through (Name, Status, Start date, End date,).

Receive latecomers notifications(Use Case 10)HOD can receive notification about latecomers employees.

View Reports(Use Case 11)HOD can view monthly reports.

Mark attendance through FP(Use Case 12)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.

View attendance status on web portal.(Use Case 13)After login Employee can view his/her attendance progress.

Update password(Use Case 14)HOD can update his/her login password on web portal.

Recover forgot password(Use Case 15 )HOD can recover his/her forgot password.

Receive warning alerts(Use Case 16)If HOD absents exceed more than three days then he/she receive warning alerts from the system.

Login(Use Case 17)HR can login with those id and password which send by the admin in confirmation E-mail.

Review Check In/ Check out(Use Case 18 )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).

Mark attendance through FP(Use Case 19 )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.

View attendance status on web portal.(Use Case 20)After login Employee can view his/her attendance progress.

Update password(Use Case 21)HR can update his/her login password on web portal.

Recover forgot password(Use Case 22)HR can recover his/her forgot password.

Receive warning alerts(Use Case 23)If HR absents exceed more than three days then he/she receive warning alerts from the system.

View reports(Use Case )HR can view reports. He/she can view reports as department wise.

Login on web portal.(Use Case 24)Admin can login with unique (ID, Password).

Add Departments(Use Case 25)Admin can add new department.I.e. Chemical Engraining.

Add faculty member(Use Case 26)Admin can register new faculty members.

Admin deactivate faculty member(Use Case 27)Those faculty members which no longer become part of institution then admin can deactivate them.

Admin set time table for attendance(Use Case 28)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.

Mark attendance through FP (Use Case 29)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.

View attendance status on web portal. (Use Case 30)After login admin can view his/her attendance progress.

Update faculty Information(Use Case 31)Admin can update faculty information.i.e. (pic, phn, etc.)

Update his/her information (Use Case 32)Admin can update his/her account information.

Recover forgot password (Use Case 33)Admin can recover his/her forgot password.

Receive warning alerts(Use Case 34 )If admin absents exceed more than three days then he/she receive warning alerts from the system.

Manage academic calendar(Use Case)Admin can manage academic calendar. Admin can set predefined or defined vacations on calendar.

3.1 Use case DiagramThe 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 casesUse cases scenarios of the system are discussed in detail, the following are the use cases.3.2.1 Use case scenario 1The guests are required to get registered to become the users of forum.

Use Case IDUC-1

Use Case Name:Mark Attendance through FP

Created By:Haroon MunawarLast Updated By:Haroon Munawar

Date Created:Last Updated : Ahmed Jamal

Actors:Employee

Description: Employee can mark attendance through finger print scanner. He/she mark attendance two time. First when he/she enter in campus.Second when he/she leave the campus.

Preconditions:1. System On2. Application Run3. 4.

Post conditions:1. Verifying Fingerprint.2. Note Time.

Normal Flow:1. First employee mark attendance when he/she enter in campus.2. Second employee mark attendance when he/she leave the campus.

Alternative Flow:1. Wrong Input.2. Status Pending.

Exceptions:1. If the employee gives wrong input then system prompts the employee, to enter the valid details.2. If the employee miss one time marking then system automatically mark absent of that employee.

Priority:High

Frequency of use:Approximately 40-50 employee, with average of 25 mark attendance per day.

Special Requirements:Employee must be marking two time in a day.

Assumptions:Daily basis marking.

Notes and Issues:None.

3.2.2 Use case scenario 2 Employee login

Use Case IDUC-2

Use Case Name:Employee Login

Created By:Haroon MunawarLast Updated By:Haroon Munawar

Date Created:Last Updated : Munawar Ali

Actors:Employee

Description:To Access web portal contents the employee have to login first through provided Id& password.

Preconditions:1. Employee must visit ????.com.2. The Employee must be registered.

Postconditions:After login Employee can logout.

Normal Flow:After registered employee login he/she get access to web portal.

Alternative Flow: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.

Exceptions: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.

Priority:High

Frequency of use:Approximately 40-50 daily logins.

Special Requirements:Employee must be registered.

Assumptions:1. The employee will login to get access to web content to view attendance status.2. Update password.

Notes and Issues:None

3.2.3 Use case scenario 3Accessing forum

Use Case IDUC-3

Use Case Name:Accessing Forum

Created By:Waheed HassanLast Updated By:Waheed Hassan

Date Created:Last Updated :

Actors:Users, Guest, Admin and Moderator

Description:When the Users, Admin and Moderator logins then they can view the contents of the forum.comsatsvehari.com.

Preconditions:Users, Admin and Moderator must login first.

Postconditions:1. Users login into user panel.2. Admin login into admin panel.3. Moderator login into moderator panel.4. Guest views user panel.

Normal Flow: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.

Exceptions:The users might not be able to view all the contents every time he/she logins.

Includes:Login

Priority:Medium

Frequency of use:1. Approximately every registered user logins for view- ing contents of the website.2. Moderator and admin logins on regular basis.

Special Requirements: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.

Assumptions:The user will access contents of the website as they login.

Use Case IDUC-4

Use Case Name:Viewing A Thread

Created By:Waheed HassanLast Updated By:Waheed Hassan

Date Created:Last Updated :

Actors:Users, Guest

Description:User can view discussion posts after accessing the Forums.

Preconditions:1. Users must access Forum.

Postconditions:1. User can view links of categories of threads.2. User can view replies on a selected thread.

Normal Flow: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 associated replies.

Alternative Flow:1. Logs out.

Includes:Accessing Forum

Priority:Medium

Frequency of use:1. All registered users will view threads on daily ba- sis.

Assumptions:2. User will view threads by category, to select the desired thread and to view associated replies.

Development of Discussion ForumCase Study of COMSATS Vehari3.2.5Use case scenario 5Creating a thread

Development of Discussion ForumCase Study of COMSATS Vehari3.2.4Use case scenario 4Viewing a thread

Use Case IDUC-5

Use Case Name:Creating A Thread

Created By:Waheed HassanLast Updated By:Waheed Hassan

Date Created:Last Updated :

Actors:Users, Administrator

Description:User can create a new thread under a specific category.

Preconditions:Users must access Forum.

Normal Flow: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 created.

Alternative Flow:View threads.

Exceptions:1. Empty title and message body.2. Invalid characters.

Includes:Accessing Forum

Priority:Medium

Frequency of use:All registered users will create threads on daily basis.

Special Requirements:1. Prompts user if he/she gives invalid input da- ta.2. Smart navigation between categories and threads pages.

Assumptions:User will create threads with valid input data.

Notes and Issues:If the user gives empty or invalid data then it shouldntbe inserted to database.

Use Case IDUC-6

Use Case Name:Posting/Reply On A Thread

Created By:Waheed HassanLast Updated By:Waheed Hassan

Date Created:Last Updated :

Actors:Users

Description:After viewing a thread, a user will be able to post an additional message or reply to the thread.

Preconditions:Users must view a thread.

Postconditions:Submit post.

Normal Flow: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.

Alternative Flow:1. View threads.2. Create thread.

Exceptions:1. Empty message body.2. Invalid characters.

Includes:Viewing A Thread

Priority:Medium

Frequency of use:All threads will have posts/replies on daily basis.

Special Requirements:1. Prompts user if he/she gives invalid input da- ta.2. Smart navigation between categories and threads.

Assumptions:User will post replies on threads.

Notes and Issues:If the user gives empty or invalid data then it shouldntbe inserted to database.

Development of Discussion ForumCase Study of COMSATS Vehari3.2.7Use case scenario 7Adding a thread category

Development of Discussion ForumCase Study of COMSATS Vehari3.2.6Use case scenario 6Posting reply on a thread

Use Case IDUC-7

Use Case Name:Adding A New Thread Category

Created By:Waheed HassanLast Updated By:Waheed Hassan

Date Created:Last Updated :

Actors:Administrator

Description:Administrator can create a new category for threads.

Preconditions:Login to admin panel.

Postconditions:Logout.

Normal Flow: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.

Alternative Flow:Delete A Thread Category.

Exceptions:1. Empty category title or description.2. Input invalid characters.

Includes:Accessing Forum Admin Panel.

Priority:High

Frequency of use:Admin will create threads on weekly basis.

Special Requirements:Admin will have the option of selecting moderators for that specific Category.

Assumptions:Admin will create categories of threads.

Notes and Issues:If the admin gives empty or invalid data then itshouldnt be inserted to database.

Use Case IDUC-8

Use Case Name:Deleting A Thread Category

Created By:Waheed HassanLast Updated By:Waheed Hassan

Date Created:Last Updated :

Actors:Administrator

Description:Administrator can choose to delete an entire Thread Category and all threads under the category.

Preconditions:Login to admin panel.

Postconditions:Logout

Normal Flow: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.

Alternative Flow:Update A Thread Category.

Exceptions:Deletion errors.

Includes:Accessing Forum Admin Panel.

Priority:High

Frequency of use:Admin will delete inactive threads on weekly basis.

Assumptions:Admin will delete categories of inactive threads.

Notes and Issues:Database connectivity errors.

Development of Discussion ForumCase Study of COMSATS Vehari

Development of Discussion ForumCase Study of COMSATS Vehari3.2.8Use case scenario 8Deleting a thread category

3.2.9 Use case scenario 9Delete a thread

Use Case IDUC-9

Use Case Name:Delete A Thread

Created By:Waheed HassanLast Updated By:Waheed Hassan

Date Created:Last Updated :

Actors:Moderator, Administrator

Description:Moderator can choose to delete threads from any category that they have access to.

Preconditions:Login as user with moderator rights.

Postconditions:Logout.

Normal Flow: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.

Exceptions:Deletion errors.

Includes:Follow Viewing A Thread use case.

Priority:High

Frequency of use:1. Moderator will delete inactive threads on weekly basis.2. Moderator will delete all reported threads.

Notes and Issues:Database connectivity errors.

3.2.10 Use case scenario 10Delete a post

Use Case IDUC-10

Use Case Name:Delete A Post/reply

Created By:Waheed HassanLast Updated By:Waheed Hassan

Date Created:Last Updated :

Actors:Moderator, Administrator

Description:Moderator can choose to delete posts from any thread in a thread category they have moderator access to.

Preconditions:Login as user with moderator rights.

Postconditions:Logout.

Normal Flow: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.

Exceptions:Deletion errors.

Includes:Follow Viewing A Thread use case.

Priority:High

Frequency of use:Moderator will delete all reported posts on weekly basis.

Notes and Issues:Database connectivity errors.

Development of Discussion ForumCase Study of COMSATS Vehari

Development of Discussion ForumCase Study of COMSATS Vehari

3.3Sequence DiagramsThe sequence diagrams of each use case scenario are given below.

3.3.1Use case scenario 1 Sequence DiagramFig: 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

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 diagramDevelopment of Discussion ForumCase Study of COMSATS Vehari3.3.2Use case scenario 2 Sequence Diagram

Development of Discussion ForumCase Study of COMSATS Vehari

3.3.3Use case scenario 3 Sequence DiagramFig: 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

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 diagramDevelopment of Discussion ForumCase Study of COMSATS Vehari3.3.4Use case scenario 4 Sequence Diagram

Development of Discussion ForumCase Study of COMSATS Vehari3.3.5Use case scenario 5 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

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 diagramDevelopment of Discussion ForumCase Study of COMSATS Vehari3.3.6Use case scenario 6 Sequence Diagram

Development of Discussion ForumCase Study of COMSATS Vehari3.3.7Use case scenario 7 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

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 diagramDevelopment of Discussion ForumCase Study of COMSATS Vehari3.3.8Use case scenario 8 Sequence Diagram

Development of Discussion ForumCase Study of COMSATS Vehari

3.3.9 Use case scenario 9 Sequence DiagramAs 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

3.3.10 Use case scenario 10 Sequence DiagramAs 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 diagramDevelopment of Discussion ForumCase Study of COMSATS Vehari

Development of Discussion ForumCase Study of COMSATS Vehari

3.4 Design ERDThe entities of the system are categories, topics, posts, admin, user and modera- tor, their attributes and their relationship with each other is shown in fig 3.4.

Fig 3.4: ER diagram

3.5 DatabaseFig 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 NameData TypeData DescriptionKeyReference

admin_idInt(8)Admin idPKNone

admin_nameVarchar(25)Admin Name

Admin_pwdVarchar(25)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 NameData TypeData DescriptionKeyReference

cat_idInt(8)Category idPKNone

cat_nameVarchar(255)Category Name

cat_discriptionVarchar(255)Category Description

cat_byInt(8)Category byFKAdmin

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 NameData TypeData DescriptionKeyReference

topic_idInt(8)Topic idPK

topic_subjVarchar(255)Topic Subject

topic_datedateTopic Date

topic_catInt(8)Topic CategoryFKCategories

topic_byInt(8)Topic ByFKUsers

topic_pinInt(1)Topic Pin status

topic_flagInt(1)Topic flag value

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 NameData TypeData DescriptionKeyReference

post_idInt(8)Reply idPK

post_contVarchar(255)Reply Content

post_datedateReply Date

post_topicInt(8)Reply TopicFKTopics

post_byInt(8)Reply ByFKUsers

post_flagInt(1)Post flag value

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 NameData TypeData DescriptionKeyReference

user_idInt(8)User idPKNone

user_regVarchar(25)User Registration ID

user_nameVarchar(25)User Name

User_lastVarchar(25)User Last Name

user_emailVarchar(25)User Email

user_pwdVarchar(30)User Password

user_genVarchar(10)User Gender

user_picVarchar(30)User Profile Picture

user_programVarchar(10)User Program

user_datedateUser Joined Date

user_statusInt(1)User status value

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 NameData TypeData DescriptionKeyReference

mod_idInt(8)Moderator idPKNone

mod_nameVarchar(25)Moderator Name

mod_pwdVarchar(25)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 NameData TypeData DescriptionKeyReference

news_idInt(8)Moderator idPKNone

news_contVarchar(25)Moderator Name

news_datedateModerator Password

news_byInt(8)News byFK

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

3.6 Dataflow DiagramThe 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 DiagramThe 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

4 User Interface4.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