Professional Documents
Culture Documents
DEPARTMENT OF COMPUTER SCIENCE Project o
DEPARTMENT OF COMPUTER SCIENCE Project o
Final project II
ADIGRAT, ETHIOPIA
May, 2017
WEB BASED CLASS SCHEDULING SYSTEM FOR ADIGRAT UNIVERSITY
Declaration
The Project is our own and has not been presented for a degree in any other university and all
the sources of material used for the project have been duly acknowledged.
ZerueTlahun
------------------------------------- ---------------------------------------------
Name Signature
Wegenea Maru
---------------------------------- ---------------------------------------------
Name Signature
Tsige Demowez
------------------------------------- ---------------------------------------------
Name
---------------------------------- ---------------------------------------------
Name
YebahrineshTajebe Signature
------------------------------------- ---------------------------------------------
Name
------------------------------------- ---------------------------------------------
Approval Sheet
College: College of Engineering and Technology
We certify that this project satisfies all the requirements as a project for the degree of
Bachelor of Science.
TewhasomAregay
------------------------------------- ---------------------------------------------
This is to certify that we have read this project and that in my opinion it is fully adequate, in
scope and quality, as a thesis for the degree of Bachelor of Science.
Filmawit Mekonen
------------------------------------- ---------------------------------------------
It is approved that this project has been written in compliance with the formatting rules laid
down by the college of the university
Acknowledgements
First of all, we would like to thank our God. Then, we would like to really thank and
appreciate our advisor instructor Filmawit M. for her remarkable comments, suggestions and
over all advice for us from starting day of project up to the enter life cycle of the project
without any tiredness. Finally, we thank the chief of Class Scheduling System Mr. Zelealem
T. of Adigrat University who helped us by providing important information during data
gathering for our project
List 0f Figures
Figure 1 : Final Class Scheduling Form................................................................................................ 14
Figure 2: Course offering Form which sends from department to registrar.......................................... 15
Figure 3: Use case diagrams of Scheduler, system user use and department. ...................................... 22
Figure 4: Sequence Diagram for Login................................................................................................. 37
Figure 5: Sequence Diagram for Adding Information .......................................................................... 38
Figure 6: Sequence Diagram for updating Information ........................................................................ 39
Figure 7: Sequence Diagram for Delete Information ............................................................................ 39
Figure 8: Sequence Diagram for Adding Account................................................................................ 40
Figure 9: Sequence Diagram for Add Schedule.................................................................................... 40
Figure 10: Sequence Diagram for Search Schedule .............................................................................. 41
Figure 11: Activity Diagram for login .................................................................................................. 42
Figure 12: Activity Diagram for Adding Information .......................................................................... 43
Figure 13: Activity Diagram for Updating Information ....................................................................... 44
Figure 14: Activity Diagram for Deleting Information......................................................................... 45
Figure 15: Activity Diagram for Adding User Account ....................................................................... 46
Figure 16: Activity Diagram for Adding Class Schedule ..................................................................... 47
Figure 17: Activity Diagram for Searching Schedule ........................................................................... 48
Figure 18: User Interface prototyping ................................................................................................... 49
Figure 19: System architecture model .................................................................................................. 52
Figure 20: class diagram of ADU class scheduling system .................................................................. 53
Figure 21: State Chart modeling for login ............................................................................................ 54
Figure 22: State Chart Modeling for Adding Information .................................................................... 55
Figure 23: State Chart modeling for search .......................................................................................... 56
Figure 24: deployment diagram architecture model ............................................................................. 57
Figure 25: mapping object. ................................................................................................................... 60
Figure 26: Access Control and Security. .............................................................................................. 61
Figure 27: Home Page .......................................................................................................................... 62
Figure 29: Add course offering ............................................................................................................. 62
Figure 32: Add Entry College, block etc. ............................................................................................. 63
Figure 33: Add schedule ....................................................................................................................... 63
List of Tables
Table 1: software tools ............................................................................................................................ 7
Table 2: hardware cost ............................................................................................................................ 9
Table 3: software cost ............................................................................................................................. 9
Table 4: schedule .................................................................................................................................. 10
Table 5: team composition .................................................................................................................... 11
Table 6: use case documentation for login............................................................................................ 23
Table 7: use case documentation for create account ............................................................................. 24
Table 8:use case documentation for Manage system user .................................................................... 25
Table 9: Use case documentation for Add Faculty Information ........................................................... 26
Table 10: Use case documentation for Add Department Information .................................................. 27
Table 11: Use case documentation for Add Building Information ....................................................... 27
Table 12: Use case documentation for Add Room Information ........................................................... 28
Table 13: Use case documentation for Add Instructor Information...................................................... 29
Table 14: Use case documentation for Add Student (year and section) Information ........................... 30
Table 15: Use case documentation for Add Course information .......................................................... 30
Table 16: Use case documentation for Delete course information ....................................................... 31
Table 17: Use case documentation to Add Class Schedule .................................................................. 32
Table 18: Use case documentation to Add Class Schedule .................................................................. 33
Table 19: Use case documentation to Delete Class Schedule ............................................................... 34
Table 20: Use case documentation to Search Schedule ........................................................................ 35
Table 21: Use case documentation to Search Schedule ........................................................................ 36
Abstract
This document proposes a Class scheduling system which is a web-based application that
manages all daily activities of Adigrat University of registrar office. The system can keep
track of registrar office adding, editing, searching, viewingand deleting of Class scheduling
system. The process of data collection will use to develop this proposal via interview and
observation and other methodology. The existing system is manual based system. We want to
change the existing manual system by new automated system. In this project we will use
object oriented system development methodology (OOSD) using php programming language
and html language from an effective design and MYSQL to database application. The project
aims at developing newly automated system that provides fast and reliable service for the
registrar office, departments, lectures and students by minimizing time and resource wastage.
Our project tries to identify the weakness of the existing system by highly investigating the
problems of the existing system and providing clear and concise solutions for those problems.
Before directly deploying this system we will perform different types of testing procedures
for its functionality. Our project specifies hardware and software requirements. The project
will be done by all the group members and each member has his/her own individual task and
is responsible for his/her tasks.
Operational Definitions
Automation: Is the use or introduction of automatic equipment in a manufacturing or other
process or facility.
Integrity: Is the quality of being honest and having strong moral principles.
Usability: Is the ease of use and learns ability of a human made object.
Add Class scheduling: Preparing classrooms for student and instructor in a course of
teaching in a particular subject in a list of times of departures and arrivals.
CHAPTER ONE
1. Introduction
1.1 Background of the university
Adigrat University (ADU) is one of the Ethiopian public universities established in 2004 E.C
with the intention of producing highly qualified graduates. ADU is established in the beautiful
town of Adigrat which is located approximately 900km far from Addis Ababa the capital city of
Ethiopia. The town also owns the Addis pharmatical factory which gives for almost service for
almost the whole Africa countries. Adigrat is the center of the corridor between Mekelle and
Axum.
In July 2004E.C the university started its duties with 4 collages and 13 departments’ by
enrolling 960 students. ADU has formally commenced the teaching learning process on
December 5/2004E.C. From then onwards, the university is registering a very fast and
remarkable growth in almost all areas as higher education institution.
The existing Class Scheduling System at ADU is susceptible to different labor and time
problems. The main problems of the current Class Scheduling System are as follows.
Repetition of work:if there are any changes to be made during scheduling class
manually the data will have to be entered again. At times the worker would forget to
make the changes or forget that they had already altered it and might redo it again,
it’s again time consuming.
Time conflict:during scheduling class one class can have more than one course at the
same time. And class duplication is also based on the time conflict.
Inconsistency of data: there will be unavailability for future use, since data might get
misplaced during manual scheduled class .so data won’t be preserved properly for
future use.
Slow retrieval of data: the information of instructors list, students list, building list,
course list, lecture classroom list stored in a paper it takes a long time to retrieve the
data (information).
Too much paper work:since everything and every detail like instructors list, students
list, building list, course list, lecture classroom list and so on in the current class
schedule are written down manually in paper there will be too much paper work.
Scheduling all classrooms take lot of time.
Besides, it is highly error prone because it is done by human not by computer and a
number of human labor is required.
The loss of manpower (employee power), wastage of time to prepare manually class
scheduling system.
Hence, the development of this project is critically important to address the problems listed
above.
Identify the user requirements using interviews, questionnaires and document analysis
Design the system for implementation with detailed UML specifications.
Develop a system that can replace the manual class scheduling system based on the UML design
specifications.
Test the system for any defects using different white and black box test mechanisms
Integrate help facilities with respect to the use of the application
This project focuses on the current work flow of class scheduling system of ADU. The scope of
this project is hence bounded to replacing the manual class scheduling system activities that are
currently undertaken at ADU by a more convenient web-based system that removes the obstacles
stated in the statement of problem. Generally the scope of the new proposed system includes:-
Class scheduling
View class scheduled
The new system is going to perform storing data for:-
Offered courses of each department.
Assigned instructors of each offered courses.
Assigned class rooms.
Allocated time (period) of each course.
After implementing this automated system it is very easy to schedule class. This system solves
the previous time consuming and tiresome system it saves a lot of time and money, scheduling is
very fast and delays can be avoided and it helps the university in reducing costs such as labor and
stationary. And it avoids wastage of time in teaching and learning process.
The main purpose of our project which is Web Based Class Scheduling System is to justify the
problems which are found on the existing class scheduling system that we describe above.
Because of the existence of the new system it changes the use of manually system application
forms to the computerized system. This System can be improved quality or increased
predictability of quality and improved robustness (consistency), of processes or product. This
project is centered on the design and implementation of computer software’s that handle class
scheduling system for ADU. It aims at providing applications that will make the processing of
ADU very easy and reliable.
1. For Scheduler:
The system will save the time to schedule time table.
it also enable the scheduler to easily manage records
Reduce errors and overlapping of time table.
2. For Student: The student gets quickly service (i.e. view their class schedule) due to Web
Based Class Scheduling System.
3. For Instructor: The instructor gets quickly service (i.e. view their class schedule) due to
Web Based Class Scheduling System.
We have used interview to collect relevant workflow, the tasks performed in the class scheduling
system, and anything that the team can’t find from the document analysis.
Questionnaires:-
We have understood the work flow of the class scheduling system by preparing some
questionnaires.
Observation:
We have observed to see functions of the employers of class scheduling system, and to extract
any workflow or activity missed from conducting the interview and document analysis. It also
helps to deeply understand the detail tasks involved in the –class scheduling process and the
source and nature of errors.
Documentation:
We have collected and referred different documents and reviewed all necessary documents,
books that support this project.
Hence, we have applied the concepts of object oriented system development methodology
throughout the project, because it manages and assemble objects that are implement in our
system, and the composition of objects and interaction between objects on the system. This
categorized in to two phases. These phases are:-
During this phase we have looked at the problem domain, and with the aim of producing a
conceptual model of the information that exists in the area which have been analyzed. And this
Model the functions of the system (use case modeling), identifying the business objects, organize
the objects and also the relationship between them.
During this phase Model object interactions and behaviors that support the use case scenario, and
finally update object model to reflect the implementation environment. And also transforms the
conceptual model produced in object-oriented analysis to take account of the constraints imposed
to our system format, so that we used this phase to refine the use case model to reflect the
implementation environment.
Activities Tools/Programs
Server computer: CPU 4.00 GHZ, 500GB HDD and 4GB RAM is required for the
system server.
External hard disk: for Back up data.
achieve a creeping commitment from the user and to continually assess the current status of the
project.
Hardware cost
Software cost
of the inner design of the code or logic. Series of reliability and functionality tests designed to find
software engineering errors.
Alpha Testing: Testing using correct input and sees for any failures. If failure occurs find and correct
the bug.
Beta Testing: In this testing method, team forced the system to be tested for incorrect data input. The
System tested by the customer. If any failures occurred while testing the system in all the above testing
methods, the team took immediate correction.
We have conducted our study in a team of six students, each of which is responsible for the
project to accomplish. We have met twice in a week for two weeks, and we stayed on to observe
our work for about 16 hours during the two weeks.
Activities Month
3 proposal 19
4 Design phase 1
5 Coding 1 28
6 Implementation & 30 30
testing
7 Project close-up 25
Table 4: schedule
Data collector
Data collector
Data collector
Data collector
Date 2017G.C
Advisor FilmawitM.
CHAPTER TWO
As we know manual system is quite tedious and since the existing scheduling system is manual,
it has to process everything manually from course offering to the final schedule. The tasks that
are performed currently in the registrar and departments regarding the scheduling are scheduling
class rooms, scheduling laboratory classes and scheduling laboratory hours for the instructors
and for the students. All of the tasks that we visited during the study are performed manually and
it is tedious needs a lot of time, needs a great commitment and previous skill. For the better
accomplishments of those tasks computerized system is the best and interactive as it reduce
efforts, costs and wastage of time.
An existing system compromises different players to carry out its job. Among those different
actors (players), the most common are -
Student: - view the posted schedule.
Instructor: - can be professor, assistance professor, lecturer or assistance lecturer and is a
user who gets any information regarding the schedule.
Registrar personnel: - a user who manages the scheduling process.
Department head: - perform course offering process and then sends the offered courses to
the scheduler.
I. Class Scheduling
The department head prepares list of offered courses based on the curriculum with respective
instructors. Then send the courses to registrar. The registrar personnel prepare the timeline. And
it distributes scheduled paper for all colleges and sends the schedule for department heads under
the college. Then the department head posts the schedule for the students as well as for the
instructors. But sometimes one copy of the schedule is given to the representative student of each
class. Most of the time since overlapping of periods happens, the department head reviews the
schedule and arranges it according to the requirement of the department.
No two courses can be scheduled for the same room at the same time.
An instructor cannot teach two courses at the same time.
The manual Class Scheduling system is laying face down to various problems. These problems
can be seen from the following perspectives like performance, security, efficiency, budget,
human power and services given by the existing system to the users.
2.5.1 Performance
Prone to error
When the scheduler performs the scheduling process overlapping (clashing) of periods
may happen.
Time Consuming
More timetables will be processed every semester, the process to arrange the schedule
is very complicated since the scheduler need to consider many criteria.
Preparing the schedules for each department in every semester takes long time.
If the scheduler made an error when scheduling the time table, recovering error will
take another time to regard.
2.5.2 Security and controls
The existing Class Scheduling system records are stored in plain text and they are not encrypted.
For files that are stored as paper files can be lost, burnet or damaged by moisture or can be eaten
by rats and termites. So, it is difficult to control and secure these manual records, since it doesn’t
have any authentication and authorization system.
2.5.3 Efficiency
Due to the manual operation most of the activities are prone to wastage of resources like papers,
man power, time etc. to produce the corresponding outputs. This makes the current system
inefficient while utilizing resources. There should be a mechanism that reduce wastage of
resources and that make the system to be efficient.
2.5.4 Input and output
In the existing of Adigrat University Class Scheduling system the input of information is
redundant, inaccurate, not well organized and hard and also these inputs may leads to create
confusion and work load on employees and produce inaccurate output since the information is
written by pen and on paper.
Even if the existing system is manual system as it has weakness it also has some strong side that
we need to be preserved are: -
The governing rule and regulation.
During our observation and interview of users we observed certain problems from their manual
based system. Because of this we proposed to solve the problem of the existing scheduling
system by developing automated web based system. This means our proposed system will
minimize the current problem and weakness of existing system. The proposed system will also
have some other features like:
Department
Requirement id: - 12
Requirement: -The system shall allow the department to: -to view feedback from
scheduler and to send feedbacks to the scheduler by insert username and email.
Requirement priority: High
Department Requirement id: - 13
Requirement: -The system shall allow the department to: -submit sleep by insert:-
department, course code, course title, year, semester, lab hour, lecture hour, credit hour,
mode of delivery, instructor, note to the scheduler.
Requirement priority: - High.
Requirement id: - 14
Requirement: -The system shall allow the department to view announcement post.
Requirement priority: - High.
Requirement id: 01
Requirement: the system should provide a simple, responsive user interface. By
designing user friendly interface, the end users are able to communicate within few
response times.
Requirement priority: High
Requirement id: 02
Requirement: The system should support concurrent users.
Requirement priority: High
Requirement Id: 03
Requirement: The system should minimize errors and error messages should be
displayed that guide user to handle it.
Requirement priority: High
Requirement id: 04
Requirement: The system does not allow any user to access other user’s information
except the authorized user
Requirement id: 05
Requirement: The external security should be provided by giving the login
authentication.
CHAPTER THREE
In this project, the team use an object oriented system development methodology which
incorporates two principal phases. These principal phases are Object-Oriented Analysis and
Object-oriented Design. This chapter discusses the first phase of the methodology: object
oriented analysis (OOA). During Object Oriented Analysis the following major activities are
performed. System Requirement Specifications (SRS), Use case modeling and documentation
(for each use case identified), and the development of sequence and activity diagrams and user
interface prototyping.
UC1.Login
UC2. Add System User
UC3.ManageSystem user
UC4.Add Faculty Information
UC5.Add Department Information
UC6.Add Building Information
UC7.Add Room Information
UC8.Add Instructor Information
UC9.Add Student (year and section) Information
UC10.Add course information
UC11.Delete course information
UC12.Add Class Schedule
UC13.Edit Schedule
UC14.Delete Schedule
UC15. Search Schedule
UC16.View Schedule
Figure 3: Use case diagrams of Scheduler, system user use and department.
Login
This use case starts when the Scheduler accesses the system feature that enables him/her to create an account by
entering information that is saved in the User’s account.
1. The system displays user Account Form.
2. Scheduler enters the required user account information on the form.
3. The system verifies values entered are valid.
4. System saves the new account in the database after Scheduler Click the save button.
5. The system notifies success message.
6. The use case is end when Scheduler clicks the ok button.
Alternate Flows
Title Description
3.1 User inserts Invalid User 1. The system prompts invalid user account
Account Information 2. system prompts user to re enter valid account
3. use case continues with BCA 2
3.2 user inserts existed 1. system prompts error message
account 2. System display message that the account is already exist.
3. use case ends
Table 7: use case documentation for create account
This use case starts when the user access the system feature that enable Edit system user
1. Scheduler is able to edit, update and delete information for each user in the system by clicking on
The edit/Save or Delete Buttons on the form for each system users.
2. If he press Edit button the system Display change profile form
2.1 The Scheduler changes the users profile
2.2 The Scheduler clicks on save
2.3 The system Update the information changed to the user profile or
3. If the Admin Press Delete Button
3.1 The system will prompt that he is really want to delete the account?
3.1 The system will Delete the user account from the system.
4. The system shows success acknowledgement
5. The use case is end when Scheduler clicks the ok button.
Alternate Flows
Title Description
2.1 User inserts Invalid 1. The system prompts invalid user account
Account Information when 2. System prompts user to re enter valid account information.
editing
Table 8:use case documentation for Manage system user
Actor Scheduler
Pre-condition Scheduler already login into the system and load the Add Room form
Post Condition Entered Room information is saving.
Basic Course Of Action (BCA)
1. The use case starts before scheduling is done.
2. The Scheduler has to enter the Room information.
3. When the Scheduler click on the save button.
4. The system validates the entry.
5. The system will save the information to the database.
6. The system shows success acknowledgement message.
7. The use case is end when Scheduler clicks the ok button.
Alternate Flows
Title Description
4.1 Entered Room information 1.The system Display the already exist message
already exists 2. The use case end
4.2Required information is 1. The system Display the required information is missing
missing 2. The use case continue with use BCA 2
4.2 User inserts Invalid year 3. The system Display the required information is missing
and section information 4. The use case continue with use BCA 2
Table 14: Use case documentation for Add Student (year and section) Information
Pre-condition Scheduler already login into the system and load the Course form
Post Condition Course Information Saved
Basic Course Of Action (BCA)
1. The use case starts when the Schedulers select the particular Course ID that needs to be deleted
2. The Scheduler click on Delete button.
3. The system will prompt that he really want to delete the course.
4. When the Scheduler select Yes Button,
5. The system will delete the course information entry from the database..
6. The system shows success acknowledgement message.
7. The use case is end when Scheduler clicks the ok button.
Alternate Flows
Title Description
4.1 When the Scheduler select 1.The system Return back to the course page
No Button, 2. The use case end
Table 16: Use case documentation for Delete course information
1. The use case starts when the scheduler load class schedule page.
2. The system prompts the scheduler to select departments that he or she wishes to Add Class schedules.
3. The system display Add schedule form.
4. The Scheduler fills all the Required information by selecting and by writing.
5. When the scheduler click on the save button.
6. The system validates the entry.
7. The system will Save the Class Schedule to the database
8. The system shows success acknowledgement message.
8. The use case is end when Scheduler clicks the ok button.
Alternate Flows
Title Description
5.1If year and sections have a 1. The system Display a message This year and section student have
class on that time schedule on this day and time
2. The use case continue with use BCA 3
5.2 If Instructor have class on 1. The system Display a message This Instructor have schedule on this day
that time for other year and and time for this Year and section students.
section student 2. The use case continue with use BCA 3
5.3 If the Room already 1. The system Display a messageThis Room is Reserved by Instructor name
reserved by other year and for the year and section student with the course
section student 2. The use case continue with use BCA 3
5.4 User inserts Invalid 1. The system Display the required information is missing
Schedule information 2. The use case continue with use BCA 3
Table 17: Use case documentation to Add Class Schedule
Edit Schedule
1. The use case starts when the scheduler Click Edit Button on Class schedule page for the
selected schedule by using Schedule ID
2. The system displays Edit Schedule Form that have all information about the previous schedule
and prompts the Scheduler to edit the Schedule details
3. The Scheduler makes the modifications and clicks on Save.
4. The system validates the entry. Al
5. The system will Save the Class Schedule to the database.
6. The system shows success acknowledgement message.
7. The use case is end when Scheduler clicks the ok button
Alternate Flows
Title Description
4.1If year and sections have a 1. The system Display a message This year and section student have schedule
class on that time on this day and time
2. The use case continue with use BCA 3
4.2 If Instructor have class on 1. The system Display a message This Instructor have schedule on this day
that time for other year and and time for this Year and section students.
section student 2. The use case continue with use BCA 3
4.3 If the Room already 1. The system Display a message This Room is Reserved by Instructor name
reserved by other year and for the year and section student with the course
section student 2. The use case continue with use BCA 3
4.4User inserts Invalid 1. The system Display the required information is missing
Schedule information 2. The use case continue with use BCA 3
Table 18: Use case documentation to Add Class Schedule
Delete Schedule
1. The Use case Begin when the Scheduler Click DELETE button on class schedule page for the
selected schedule by using scheduling Id
2. The system will Prompt the scheduler that he Really want to Delete the Selected schedule
3. When the Scheduler select Yes Button, Al
4. The system Delete the class Schedule information entry from the database.
5. The system shows success acknowledgement message.
6. The use case is end when Scheduler clicks the ok button.
Alternate Flows
Title Description
3.1 When the Scheduler select 1.The system Return back to the Schedule page
No Button, 2. The use case end
Table 19: Use case documentation to Delete Class Schedule
Search Schedule
2.1: User Select Instructor 1. The user select search schedule for Instructor
schedule search 2. The system displays a search Form to select Instructor Name, Semester and
Academic year.
3. use case continue with BCA 4
2.2: user select Room 1. The user select search schedule for Room
schedule search 2. The system displays a search Form to select Room Name, Semester and
Academic year.
3. use case continue with BCA 4
8.1. If the user may have no 1. The user selects "Microsoft XPS Document Writer" and click on Print.
printer 2. The system prompts to select place and Name for Report to save as File.
3. The system Save the schedule.
4. use case continue with BCA 10
Title Description
3.1 When the scheduler wants 1. The Scheduler can search:
to search specifically By Instructor Name
By Year And Section
By Room Name
By Academic year
By Semester
By Department
By Day
BY Course
By Time start
By Time end
2. use case continue with BCA 4
Sequence diagrams are used to model the logic of usage scenarios or the description of the
potential way the system used. Sequence diagrams are a great way to validate and flesh out the
logic of use case scenarios and to document the design of the system.
Adigrat University Online Classroom Scheduling System has the following sequence diagrams.
Login ( )
Validate ( )
Transfer Request ( )
Edit ( ) Update ( )
Validate ( )
Click Add
Account Button
Transfer Request ( )
Validate ( )
Click Add
Class Schedule Button
Transfer Request ( )
Click Search
Class Schedule Button
Transfer Request ( )
Validate ( )
Activity diagram is used to document the logic of a single operation/method, a single use case or
the flow of logic of a business process. It is equivalent to flowchart and data flow diagram from s
structured development.
Index
Click On Login
Invalid
Valid
Index
Click On Login
Invalid
Valid
Click on Save
Invalid
Valid
Index
Click On Login
Invalid
Valid
Click on Save
Invalid
Valid
Index
Click On Login
Invalid
Valid
Conformation
No
Yes
Index
Click On Login
Invalid
Valid
Admin Home
Click on Save
Invalid
Valid
Index
Click On Login
Invalid
Valid
Select Department
Click On Save
Invalid
Valid
Index
Valid
User interface prototyping is an iterative development technique in which users are actively
involved in the mocking-
BR1: Authorize to the System: Users must have a valid user name and password for their
respective privilege, the Users Name should be unique and each users should enter their user
name& password to get access to the system.
BR2: Validate users Information: if the user registered correctly then the system will validates
the user information and then authorized to use the system.
BR3: The Scheduler should administer the system and give accesses (views) to those system
users by creating account as per their priority to the system and update their password.
BR4: Uniqueness: A student (year and section), Instructor, Room, Faculty andDepartment must
have unique ID.
BR6: The system must get input the list of Course, Instructors, Room and Year section (student)
for Scheduling
BR8: The Report generates all static information regarding students, instructors and Room
schedule.
BR9: System should provide various reports in accordance with requested information i.e. (about
Students, Instructor, and Room schedule (weekly or for the semester).
CHAPTER FOUR
4 System design
4.1 Introduction
This chapter mainly concerned with the design part of Class Scheduling System. In order to
make the implementation easy the design is very important. In this chapter we are introduce
Design Goal, system Architecture, Deployment Diagram, Persistence Data Management, Access
Control and Security and User Interface Design deepened on the class scheduling system.
Generally this chapter is describes how the project is designed, what tasks done under this
project
The major design goals of the proposed class scheduling system are Good response time,
portability, low cost, accessibility, minimize error, flexibility, and handle redundancy.
Good response time: this class scheduling system will be implemented by PHP programming
language, which is in general ease to readable for all browsers. The interfaces will design such
that information can be transmitting efficiently. It’s avoided a user waiting time on wherever
possible. It minimizes a lot of time for registrar office and department heads for doing all
activates in class scheduling.
Portability: The class scheduling system is platform independent, so it’s run at any windows.
Low cost: This proposed system will minimize cost, which is the cost, spent to the papers and
other materials which is used by the current manually system.
Minimize error: If registrar office and department heads are using manual system for schedule
class, error will be occurring. But our proposed system will minimize error occurring.
The proposed subsystem will be implemented using PHP programming language .the below
diagram describes the PHP system architecture model in 3-tier architecture those are database
server, personal desktop and web server.
Class Diagram is used to describe the structure of a system by showing the system’s classes,
their attributes and the relationship between the classes. In addition to that it shows the static
relationship between the classes.
Classes that identified form scheduling system are specified by adding the possible methods an
attributes for each classes. The Class during this phase is detailed to help the developer to start
developing the source code.
Instructor
instructor bulding
-instructor_id: int (PK time_start -bulding_id: int (PK)
faculity
-instructor_name: varchar -bulding_name: varchar (U)
-time_start_id:int (PK)
-acadamic_rank:varchar -faculity_id: int (PK) -no_of_room:int
-person_incharge:varchar time_start +add()
-faculity_name: varchar (U) +add()
-distination:varchar -person_incharge:varchar +edit()
-department:varcar +edit() +delete()
-address:varcar +delete()
+add () +add() +search()
+edit () +search()
+edit()
+delete () +delete() bulding
+search () +search()
Depfacu
schedule
time_e room
year_section -schedule_id: int (PK)
-room_id: int (PK)
year_section dep -department:varchar
department -acadamic_year: varchar -bulding_name: varchar
-year_section_id: int (PK -semester: varchar -room_name: varcar (U)
dep -department_id: int (PK) -description: varchar
-year_section: varcar (U) -year_section: varchar
-department:varchar -faculity_name:varchar -course:varchar -max_capacity:int
-no_of_student:int -department_name: varcar (U) -instructor:varchar +add()
+add() -person_incharge:varchar -day:varchar
room +edit()
+edit() -address:varcar -time_start:varchar +delete()
+delete() +add () -time_end:varchar +search()
+search() +edit () -room:varchar
+delete () +add () Add
+search () Acadamic +edit () edit
delete
course -memberName +delete ()
+search () user
search
-course_id: int (PK)
-department:varchar -user_id: int (PK)
-course_code: varchar (U) course -first_name:varchar
-course_title: varchar time_S -last_name:varchar
-course_catagory: varchar -user_name: varchar (U)
-year:varchar -password:varchar
-semester:varchar -email:varchar
-lab_hours:varchar acadamic_year time_end -faculity:varchar
-lecture_hours:varchar -department:varchar
-total_chr:varchar -acadamic_year_id (PK)
-time_end_id:int (PK) -user_type:varchar
-mod_of_delivery:varchar -acadamic-year:varchar -security_q:varchar
time_end
+add () +add() -security_a:varchar
+add()
+edit () +edit() +add ()
+edit()
+delete () +delete() +edit ()
+delete()
+search () +search() +delete ()
+search()
+search ()
State chart diagram is used for modeling the dynamic aspects of systems if focuses on
identifying the behavior within our system, behavior specified to the instances of a single class.It
is similar to activity diagram. Both activity and state chart diagrams are useful in modeling the
lifetime of an object. However, activity diagram shows flow of control from activity to activity;
whereas state chart diagram shows flow of control from state to state.
Home page
login
Invalid
Valid
User Account Type
Home
Home Page
Login
Invalid
Valid
Admin/ Scheduler/ User Home
Click on Save
Invalid
Valid
Index
Invalid
Valid
A deployment diagram is used to depict the relationship among run-time components and
hardware nodes. A web server, for example, is a component that provides services to Web
browsers. A component is a physical unit of implementation with well-defined interfaces that is
intended to be used as a replaceable part of a system.
As you can see from the above diagram a user uses a web server and gain accesses to the
schedule system through the web application server. The web server passes information and
request between user’s web server and a single schedule server.
As it is discussed in the previous sections, the ADU class schedule system consists of a number
of systems, these are: instructor Registration system, course Registration system, classroom
Registration system, Update Registration system, Delete Registration system, Edit Registration
system, Display Registration system are web based systems that run only over a WAN, and the
persistent data of these systems will be stored in an MySQL database.
Mapping:-
In order to store information persistently we map objects into tables and the attributes into fields
to the specific table based on the objects found on the system. Therefore, we identified the major
tables that will be implemented on the selected DBMS.
time_end time_start
time_end<<Table>> time_start <<Table>>
-time_end_id:int (PK) -time_start_id:int (PK)
time_end -time_end_id:int (PK) -time_start_id:int (PK)
time_start
+add() time_end +add() time_start
+edit() +edit()
+delete() +delete()
+search() +search()
forms, but credentials that can't be transferred provide the most security.
Function Actors
Add entry
View course
Add schedule
View schedule
Manage schedule
Submit sleep
Print
Login
User interface design or user interface engineering is the design of computers, appliances,
machines, mobile communication devices, software applications, and websites with the focus on the
user's experience and interaction. The goal of user interface design is to make the user's interaction
as simple and efficient as possible, in terms of accomplishing user goals what is often called user-
centered design
CHAPTER FIVE
Implementation in the system includes implementing the attributes and methods of each object
and integrating all the objects in the system, to function as a single system. The implementation
activity spans the gap between the detailed object design model and a complete set of source
code files that can be compiled together.
In this chapter we mainly focuses on the implementation part, implementation concerned with the type of
material (Hardware and Software required), techniques to develop the system, algorithm for the system,
code samples of the system, data preparation, how to install the system, some testing techniques, start up
strategy for the new installed system and some others are briefly described.
sampleCode for authentication / seassion creation/ error message and history log
following code is used when the user enter his user name and password the system accept the
name and password and cheek its validity and if it is valid take the user to his privilege page, by
using the
<?php
if (isset($_POST['Login']))
{
function clean($str) {
$str = @trim($str);
if (get_magic_quotes_gpc())
{
$str = stripslashes($str);
}
returnmysql_real_escape_string($str);
}
$user_name=clean($_POST['user_name']);
$password=clean($_POST['password']);
$user_type=clean($_POST['user_type']);
$row=mysql_fetch_array($login_query);
$row1=mysql_fetch_array($login_query1);
$f=$row['first_name'];
$l=$row['last_name'];
$user_type=$row['user_type'];
if ($count == 1)
{
$logout_query=mysql_query("select * from users where user_id='".$row['user_id']."'");
$row=mysql_fetch_array($logout_query);
$f=$row['first_name'];
$l=$row['last_name'];
$user_type=$row['user_type'];
session_start();
session_regenerate_id();
$_SESSION['id']=$row['user_id'];
header('location:home.php');
session_write_close();
exit();
}
else if ($count1 == 1)
{session_start();
$_SESSION['id']=$row2['user_id'];
exit();
}
// the following message will be displayed when the user submit an invalid informaion
else{
?>
<div class="alert alert-error">
<button class="close" data-dismiss="alert">×</button>
Please check your User Name,Password and select ur account type
and try again!!!
</div>
<?php }
}
?>
Sample code for checking whether the field takes only Numbers or not
if(isset($_POST['submit']))
{
$user_name=$_POST["user_name"];
$password=$_POST["password"];
$user_type=$_POST["user_type "];
Testing is the process of running a system with the intention of finding errors. Testing
enhances the integrity of a system by detecting deviations in design and errors in the
system. Testing aims at detecting error-prone areas. This helps in the prevention of errors
in a system. Testing also adds value to the product by conforming to the user
requirements.
In this phase the entire software system is tested. The reference document for this process is the
requirements document, and the goal is to see whether the software meets the requirements.
Test Case1:
Valid user name and The system Successfully The system Successfully accept Pass
password combination accept the user and display the user and display the user
the profile page profile page
Valid user name and Please check your User Please check your User Name, fail
invalid Password Name, Password and select ur Password and select ur account
Incorrect user name Please check your User Please check your User Name, fail
and valid Password Name, Password and select ur Password and select your
account type and try again!!! account type and try again!!!
Incorrect user name Please check your User Please check your User Name, fail
and Incorrect Name, Password and select ur Password and select ur account
Password account type and try again!!! type and try again!!!
Null user name and "Pleas fill out this filed" by "Pleas fill out this filed" by fail
Password pointing the empty field pointing the empty field
User name and null "Pleas fill out this filed" by "Pleas fill out this filed" by fail
Password pointing the empty field pointing the empty field
In essence system testing is not about checking the individual parts of design, but about checking
the system as a whole. In effect it is one giant component.
System testing insures the following have been met correctly. They are:
Functional requirements
Non Functional requirements such as
Performance:-Are the performance criteria met?
If our computer performance is high then the system test will show you that the
performance requirement satisfied.
Volume:-Can large volumes of information are handled?
Large volume of information can be handled in our system.
Documentation:-Is the documentation usable for the system?
The documentation can be used as a guide for the user of the system.
Robustness:-Does the system remain stable under adverse circumstances?
Is a system able to hold different obstacles?
5.3.3 Test Implementation (Validation testing)
Password checking:
When unauthorized users are try to access to the system displays an alert message “please check
user name, password and select ur account type and try again”.
Data type validations:
Accepts only validate data .If you insert invalidate data the system display alert message “please
insert validate data “.
Null input:
Allows the system to accept the needed data rather than null. Else display an error message box.
For the project implementation, the following hardware and Software’s are used.
Hardware:-
Printer: For printing Documentation
Computers
Flash Disk(8 GB)
RG 45 cable
Software:-
Operating system:- Window 7 and Windows 8
Modeling Software: - Microsoft Visio2013.
Programming language:-
In order to access the system, first of all every user i.e. department head must have an
account or permission from scheduler/admin. So scheduler has the right to create an account
for every user like department head and for him/her. Users should enter into the system parts
by using their User Name and Password in order to access the system. These User Name and
Password are created by the scheduler.
CSS is a web based system as a result there is no need to install it on a particular machine rather
it will be hosted on a server then a system user can access via local area connection.
Once the system has been deployed, the system users in our case there is some authorized users for
example department head. System user enters to authorized page by entering the correct user
name (ID) and password.
CHAPTER SIX
The objective of this project was to build a web based program for property Adigrat University
office of registrar In order to facilitate their work and make computerize. The system developed
is able to meet all the basic requirements. It will provide the facility to the end-user, the Adigrat
University office of registrar scheduling staff will be also benefited by the proposed system, as it
will automate the whole procedure, which will reduce the workload. The security of the system
is also one of the prime concerns finally the important thing is that the system should be flexible
enough for future modifications and to maintain. Every effort has been made to cover all user
requirements and make it user friendly.
6.2 Recommendations
Nowadays, the world is highly becoming a competitive world. Organizations have to divert their
attention on using the recent technology to be on the first line and competitive. This can be real if
they are able to use computerized system to successfully achieve their objective. Adigrat
University is the Government institution that includes many offices in fulfilling its function. As we
describe in this document, almost all activities of the organization is done on manual basis. The
project team wants to recommend some ideas considering the project .This project is developed
based on the current problems of scheduling staff of Adigrat University registrar office so we
think that this project is the best solution for the problems raised based on the manual system of
the office. And help the office to save time, money and man power whenever the project is small
scale.
From the various facts that constitute the project, the following points can be recommended:
Attention should be given to the existing practice in the design, development and
utilization of the new system.
Serious consideration should be given for the introduction of the new system.
Behavioral change of the users of the system to adapt the new system.
There should be a network infrastructure in order to connect the different computers and
access the system.
We advise that the site be hosted on a secure server and that the administration of the
website is give to a person or entity that has experience in managing a website.
We also fell for ease of access an accompanying application is developed for the system
for Smartphone implementing the Android and IOS operating systems.
Finally the project teams concluded that the department should give a special consideration for
the computer lab, internet connection and last semester studying credit hours specially for
graduating student, because during the development of the project the group members faced
some problems because of this.
References
Book
Webliography
1. https://www.google.com.et/#q=classroom+scheduling+system+documentation
2. http://www.w3schools.com
3. http:// www.uml diagram.org
4. http://www.agilemodeling.com/artifacts/useCaseDiagram.htm
5. http://guide.agilealliance.org/guide/acceptance.html
6. http://en.wikipedia.org/wiki/Class_diagram
7. http://www.mitre.org/publications/systems-engineering-guide/
8. http://en.wikipedia.org/wiki/Systems_analysis
9. http://en.wikipedia.org/wiki/Activity_diagram
10. http://searchsoftwarequality.techtarget.com/definition/3-tier-application
11. http://www.planet-source-code.com/vb/default.asp?lngWId=8
Appendix
Interview questions