Updated g7
Updated g7
BURIE CAMPUS
A PROJECT REPORT
Submitted by:
-------------------------------------
ADVISOR SIGNATURE
This document proposes a Class scheduling system which is a web-based application that
manages all daily activities of Debremarkos University, Burie campus of registrar office. The
system can keep track of registrar office adding, editing, searching, viewing and 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 own individual task and is responsible
for his tasks.
Acknowledgements
First of all, we would like to thank our God. Then, we would like to thank and appreciate our
advisor instructor Yeshimebet B.
Table of Contents
Acknowledgements.................................................................................................................................3
CHAPTER ONE............................................................................................................................................10
1. Introduction...........................................................................................................................................10
1.1 Introduction.....................................................................................................................................10
1.2 Background of the Project.............................................................................................................10
1.3 Problem Statement..........................................................................................................................10
1.4 Objectives of the project.................................................................................................................11
1.4.1 General Objective.....................................................................................................................11
1.4.2 Specific Objectives....................................................................................................................11
1.5 Scope of the project........................................................................................................................11
1.6 Significance of the Project...............................................................................................................11
1.7 System requirement........................................................................................................................12
1.7.1 Software Tools..........................................................................................................................12
1.7.2 Hardware Tools.........................................................................................................................12
1.7.3 Programming language.............................................................................................................12
1.8 Methodology of the project.............................................................................................................12
1.8.1 Data Sources.............................................................................................................................12
1.8.2 Fact finding technique..............................................................................................................12
1.8.3 System Analysis and Design Methodology................................................................................13
1.8.4 Development Methodology......................................................................................................13
1.9 Feasibility Studies............................................................................................................................13
1.9.1 Technical Feasibility..................................................................................................................13
1.9.2 Operational Feasibility..............................................................................................................13
1.9.3 Political Feasibility....................................................................................................................14
1.9.4 Economic Feasibility.................................................................................................................14
CHAPTER TWO...........................................................................................................................................15
2. System Analysis.....................................................................................................................................15
2.1 Overview of the Existing System......................................................................................................15
2.1.1 User of the Existing System.......................................................................................................15
2.2 System Requirement Specification..................................................................................................16
2.2.1 Functional Requirement............................................................................................................16
2.2.2 Non-Functional Requirement...................................................................................................18
2.2.3 Business Rule............................................................................................................................19
2.2.4 Change Cases............................................................................................................................20
2.3 System Requirement Analysis..........................................................................................................20
2.3.1 Actor and Use Case Identification.............................................................................................20
2.3.2 Sequence Diagram....................................................................................................................34
2.3.3 Activity Diagram........................................................................................................................38
2.3.4 Analysis Class Diagram..............................................................................................................45
CHAPTER THREE........................................................................................................................................46
3. System Design.......................................................................................................................................46
3.1 Design Class Diagram.......................................................................................................................46
3.2 Database Design/ Physical Data Model...........................................................................................48
3.3 User Interface Design......................................................................................................................48
3.4 System architecture (Deployment diagram)....................................................................................51
CHAPTER FOUR..........................................................................................................................................52
4. Implementation.....................................................................................................................................52
4.1. Over View of Programming Language Used...................................................................................52
4.2. Algorithms Overview Used.............................................................................................................52
4.2.1. Pseudo code............................................................................................................................52
4.2.2. Sample code............................................................................................................................52
CHAPTER FIVE............................................................................................................................................60
5. Testing...................................................................................................................................................60
5.1 Sample testing.................................................................................................................................60
5.1.1 Unit testing...............................................................................................................................60
5.1.2. Integrating testing...................................................................................................................62
5.1.3. System testing.........................................................................................................................62
CHAPTER SIX..............................................................................................................................................64
6. Conclusion and Recommendation.........................................................................................................64
6.1 Conclusion.......................................................................................................................................64
6.2. Recommendation and Future Enhancement..................................................................................64
References.................................................................................................................................................65
List of Tables:
Table 1: software tools…………………………………………………………………12
Table 11: Use case documentation for Add Student (year and section) Information...29
Instructor Teacher
1. Introduction
1.1 Introduction
In today's schools and colleges, scheduling classes efficiently is really important. But using
traditional methods often leads to problems like scheduling conflicts and wasted resources. To
solve these issues, we propose creating a new web-based system for scheduling classes.
This system will use modern web technology to make scheduling easier and more accessible. It
will help manage class schedules, rooms, and resources in real-time. By moving to a web-based
system, we can update schedules instantly and let everyone involved in scheduling collaborate
better.
This proposal aims to show how we improve and manage schedules at our institution. It will
make scheduling smoother and more organized, helping students, teachers, and administrators
alike. The following sections will explain the goals, scope, how we plan to do it, and what we
expect from this new system.
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 labour is required. The loss of manpower (employees), wastage of time to prepare
manually class scheduling system.
Hence, the development of this project is critically important to address the problems listed
above.
Platform Windows10
Editors VS code
Modelling Gliffy
Platform independent with all client and servers side coding it allows all
2. System Analysis
2.1 Overview of the Existing System
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 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.
Requirement id: - 01
Department head Requirement: -The system shall allow the department head to: -
put information about department, year and section, building, room, academic year
information to the system.
Requirement priority: - High.
Requirement id: -02
Requirement: -The system shall allow the admin to: -delete: system users.
.
Requirement priority: - High.
Requirement id: -03
Requirement: -The system shall allow the department head to edit:- department year
and section, building, room, academic year information to the system.
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 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 id: 06
Requirement: The system will be available to its users with internet connection 24 hours
a day.
Requirement priority: High
The guidelines or the rule that the system uses to achieve its objective, the following
are rules that govern the system to complete each task.
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 and
Department 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.
Actor Admin
Pre-condition Admin already login into the system and load the user Account page
Post Condition User profile changed in the data base.
Basic Course Of Action (BCA)
This use case starts when the user access the system feature that enable update system user
1. Admin is able to update and delete information for each user in the system by
clicking on The edit 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 Admin changes the users profile
2.2 The system Update the information changed to the user profile or
3. If the Admin Press Delete Button
3.1 The system will Delete the user account from the system.
Alternate Flows
Title Description
2.1 User inserts 1. The system prompts invalid user account
Invalid
2. System prompts user to reenter valid account information.
Account Information
when editing
Table 5: use case documentation for Manage system user
Alternate Flows
Title Description
4.1Entered Faculty 1. system prompts error message
Alternate Flows
Title Description
Alternate Flows
Title Description
4.1 Entered 1. The system Display the already exist message
Building
2. The use case end
information already exists
4.2Required information is 1. The system Display the required information is missing
Missing 2. The use case continue with use BCA2
Table 8: Use case documentation for Add Building Information
Actor Admin
Pre-condition Admin 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 admin has to enter the Room information.
3. The system validates the entry.
4. The system will save the information to the database.
Alternate Flows
Title Description
4.1 Entered Room 1. The system Display the already exist message
information
2. The use case end
already exists
4.2Required information is 1. The system Display the required information is missing
missing 2. The use case continue with use BCA 2
Alternate Flows
Title Description
4.1 Entered Instructor 1. The system Display the already exist message
Alternate Flows
Title Description
4.1 Entered year and 1. The system Display the already exist message
section
2. The use case end
information already exists
4.2 User inserts Invalid 3. The system Display the required information is missing
year and section 4. The use case continue with use BCA 2
information
Table 11: Use case documentation for Add year and section
Information
Alternate Flows
Title Description
4.1Entered Course 1. The system Display the already exist message
information
2. The use case end
already exists
4.2 User inserts Invalid 1. The system Display the required information is missing
Course
2. The use case continue with use BCA 2
Information
Table 12: Use case documentation for Add Course information
Actor Admin
Pre-condition Admin already login into the system and delete the Course
Post Condition Course Information updated
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 admin click on Delete button.
3. The system will delete the course information entry from the database.
Alternate Flows
Title Description
4.1 When the Scheduler 1. The system Return back to the course page
select
2. The use case end
No Button,
Table 13: Use case documentation for Delete course information
1. The use case starts when the department head load class schedule page.
2. The system prompts the department head to select departments that he or she wishes to
Add Class schedules.
3. The department head fills all the required information by selecting and by writing.
4. The system validates the entry.
5. The system will Save the Class Schedule to the database
Alternate Flows
Title Description
5.1If year and sections 1. The system Display a message This year and semester
have a class on that time student have schedule on this day and time
2. The use case continue with use BCA 3
5.2 If Instructor have class 1. The system Display a message This Instructor have schedule
on that time for other on this day and time for this Year and semester students.
year and 2. The use case continue with use BCA 3
section student
5.3 If the Room 1. The system Display a message This Room is Reserved by
already reserved by Instructor name for the year and section student with the course
other year and 2. The use case continue with use BCA 3
section student
5.4 User inserts 1. The system Display the required information is missing
Invalid
2. The use case continue with use BCA 3
Schedule information
Table 14: Use case documentation to Add Class Schedule
Edit Schedule
The department head for the Class and Year students must
2.
exist.
Post Condition The changes on the schedule saved to the database.
Basic Course Of Action (BCA)
1. The use case starts when the department head assign new course to the instructor
on Class schedule page for the selected schedule
2. The system displays assign course and assign instructor Form that have all
information about the courses and instructors that the system have
Alternate Flows
Title Description
4.1If year and sections 1. The system Display a message This year and section student
have a class on that time have schedule on this day and time
2. The use case continue with use BCA 3
4.2 If Instructor have 1. The system Display a message This Instructor have schedule
class on that time for on this day and time for this Year and section students.
other year and 2. The use case continue with use BCA 3
section student
4.3 If the Room 1. The system Display a message This Room is Reserved by
already
reserved by other year Instructor name for the year and section student with the course
and section student 2. The use case continue with use BCA 3
4.4User inserts 1. The system Display the required information is missing
Invalid
2. The use case continue with use BCA 3
Schedule information
Table 15: Use case documentation to Edit Schedule
Alternate Flows
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.
3. System Design
Systems design is the process of defining the architecture, components, modules, interfaces, and
data for a system to satisfy specified requirements. The purpose of design is to determine how
the system is going to build and to obtain the information needed to drive the actual
implementation of the system. It focuses on understanding the model how the software will be
built. System design is the detail investigation of system elements from logical view.
their attributes
operations (or methods)
And the relationships among the classes.
A class diagram is an illustration of the relationships and source code dependencies
among classes in the Unified Modelling Language (UML).
Figure 17: Design Class Diagram Figure
3.2 Database Design/ Physical Data Model
Database design is the organization of data according to a database model.
The designer determines what data must be stored and how the data elements
interrelate. With this information, they can begin to fit the data to the database
model. Database management system manages the data accordingly.
Physical data model represents how the model built in the database. A physical database
model Shows all table structures, including column name, column data
type, a n d column constraints.
This interface describes login page user interface where unauthorized user cannot login into the
system but only authorized user that can register into the database can login into the system by
entering user name and password that perform their activity.so security can be perform.
In the department head user interface of the class scheduling system, where the department head
performs various activities.
Figure 21: User Interface for Student user
CHAPTER FOUR
4. Implementation
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 objects designed model and a complete set of source
code file that can be compiled together and the objective of systems implementation phase is to
convert the final physical system specifications into working and reliable system, document the
work that has been done, and provide help for current and future users and caretakers of the
system.
namespace Web_Based_Class_Scheduling_System
{
public partial class LoginF : System.Web.UI.Page
{
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data.SqlClient;
using System.Configuration;
using System.Net.Mail;
using System.Net;
namespace Web_Based_Class_Scheduling_System
{
public partial class DepartmentHead : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if(IsPostBack)
{
SqlConnection con = new
SqlConnection(ConfigurationManager.ConnectionStrings["ScheduleConnectionString"].Connect
ionString);
}}
void clear()
{
txtshdlId.Text = "";
txtAcdyr.Text = "";
txtCRS.Text = "";
txtinstctr.Text = "";
txtroom.Text = "";
txttmstr.Text = "";
txttmend.Text = "";
}
protected void btncrt_Click(object sender, EventArgs e)
{
if(txtshdlId.Text !=" " && txtAcdyr.Text !="" && txtCRS.Text !="" && txtinstctr.Text !
="" && txtroom.Text !="" && txttmstr.Text !="" && txttmend.Text !="")
{
try
{
SqlConnection con = new
SqlConnection(ConfigurationManager.ConnectionStrings["ScheduleConnectionString"].Connect
ionString);
con.Open();
CHAPTER FIVE
5. Testing
Individual units of source code are fit for use. The automated web based class schedule
By using this testing we have tested the entire modules of the system separately.
Sample unit testing that we have tested by this testing for login:
Test Case1:
Valid user name and The system Successfully The system Successfully Pass
password combination accept the user and display accept the user and display the
the profile page user profile page
Valid user name and Please check your Please check your User fail
invalid Password User Name, Name, Password and select
Password and select your your account
Incorrect user Please check your User Please check your User Name, fail
name and Name, Password and select Password and select your
valid Password your account type and try account type and try again!!!
again!!!
Incorrect user name Please check your User Please check your User Name, fail
and Incorrect Name, Password and select Password and select your
Password your account type and try account type and try again!!!
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
5.1.2. Integrating testing
Combining modules and testing them is called integration testing. Integration testing is
gradual. First we test the highest level, or coordinating module, and only one of its
subordinate modules. After unit testing, the automated web based class schedule management
system is also tested whether every unit is integrated to each other. This section presents the
integration testing where the units are tested together to see that they interact correctly. And
the linkage between the modules occurs through the usage of the database and the interface
subsystem.
Empty type semester, Any invalid data for “Please fill the out this filed”
Academic year, year section, the other fields
and click submit button
Empty type semester, Any invalid data for “Please fill the out this filed”
Academic year, year section, the other fields
and click submit button
Empty type semester, All fields Full fills “the requested schedule is
Academic year, year section, with valid data displayed”
and click submit button
Web based class schedule management system is functionally tested based on the use
References
Book
Web
https://www.google.com.et/#q=classroom+scheduling+system+documentation
http://www.w3schools.com
http://www.agilemodeling.com/artifacts/useCaseDiagram.htm
http://guide.agilealliance.org/guide/acceptance.html
http://en.wikipedia.org/wiki/Class_diagram
http://www.mitre.org/publications/systems-engineering-guide/
http://en.wikipedia.org/wiki/Systems_analysis
http://en.wikipedia.org/wiki/Activity_diagram
http://searchsoftwarequality.techtarget.com/definition/3-tier-application
http://www.planet-source-code.com/vb/default.asp?lngWId=