Download as pdf or txt
Download as pdf or txt
You are on page 1of 70

ONLINE JOB TRACKING SYSTEM FOR

DEBREMARKOS TOWN ADMINISTRATION CIVIL


SERVICE OFFICE
Submitted by:

Name IDNO

AYANA GENET TER/4710/07

YEKOYE LAMESGN TER/4762/07

SOLOMON K/MARIAM TER/4753/07

GETACHEW TAKELE TER/4732/07

In partial fulfillment for the award of the Degree of

BACHELOR OF SCIENCE IN INFORMATION TECHNOLOGY


Under the guidance of
INSTRUCTOR LAMESGINEW ANDARGIE

----------------------------------------------

SIGNATURE

DEPARTMENT OF INFORMATION TECHNOLOGY

INSTITUTION OF TECHNOLOGY

DEBRE MARKOS UNIVERSITY


Debre Markos Jan 22 /2010 E.C
Abstract
Debre Markos town online job tracking System is a system that enables to reduce many
problems faced in tracking system. This project realizes the problems in existing system and tries
to give solution to these problems of the administrator civil service office. Now days, using
computers to simplify tedious manual work is significance. Because using computer gives many
benefits such as speed, accuracy, storage capacity, flexibility, cost reduction and minimizing
tedious manual work. The main objective of this project was to develop a web based job tracking
system where job applicants and employers use to make employment opportunities fair and
convenient while reducing cost and time. The paper includes three chapters or phases. The first
phase covers the introduction of the project, the second phase covers the system analysis and the
third phase covers system design.

i|Page
Acknowledgment
This project documentation is regarding to the development of an application which combines a
web application and a desktop application for the organization of “Debre Marksos town
administration civil service office”. We are greatly thankful to our Instructor Mr.
LAMASGENAWE ANDARGI who provided us the opportunity to learn from and work on a
project under his kind supervision in this semester. We are also grateful to all of our classmates
for their great guidance and support during our project documentation. We wish to extend our
regarding to all employees especially lecturers whose invaluable directions and advices had
enabled us to achieve our aims during our studies in all semesters. We are highly thankful to the
director of the organization Mr. Awoke for giving us the opportunity to work for their
organization, we also thank to our team leader Mr. Ayana G. For his valuable guidance’s, and
we are thankful to all our team members each Mr. Yekoye L. Mr. Solomon k and Mr. Getachew
T.We are thankful to our friends with whom we spent our time and learned a lot. And, at last, but
not least we are thankful to our parents and families who encourage us to study and support us
financially and who gave us the opportunity to spend our golden time in learning.

“Seek knowledge from cradle to grave.”

ii | P a g e
Contents
List of Figure............................................................................................................................................. v
List Of table ............................................................................................................................................. vi
Abbreviations and Acronyms .................................................................................................................. vii
CHAPTER ONE ........................................................................................................................................... 1
1. INTRODUCTION .................................................................................................................................... 1
1.1 Introduction ........................................................................................................................................ 1
1.2. Background of the project ................................................................................................................. 1
1.3. Statement of the problem ................................................................................................................. 1
1.4. Objectives of the project.................................................................................................................... 2
1.4.1 General objective ............................................................................................................................. 2
1.4.2. Specific Objectives ..................................................................................................................... 2
1.5. Scope of the project ........................................................................................................................... 3
1.6. Limitation of the Project .................................................................................................................... 3
1.7. Significance of the project ................................................................................................................. 3
1.8. System requirements .......................................................................................................................... 4
1.8.1. Hardware requirement..................................................................................................................... 4
1.8.2. Software requirement ...................................................................................................................... 4
1.8.3 Programming Language ............................................................................................................... 4
1.9. Requirement Gathering Methods ....................................................................................................... 5
1.10. Feasibility study ............................................................................................................................... 6
CHAPTER TWO .......................................................................................................................................... 8
System Analysis ............................................................................................................................................ 8
2.1. Overview of Existing System ............................................................................................................ 8
2.1.1. Users of the existing system............................................................................................................ 8
2.2. System Requirement Specification .................................................................................................... 8
2.2.1. Functional requirement ............................................................................................................... 8
2.2.2. Non -Functional Requirements ................................................................................................... 9
2.2.3. Business rules............................................................................................................................ 11
2.2.4. Constraints ................................................................................................................................ 11
2.3. System requirement analysis............................................................................................................ 11
2.3.1. Actor and Use Case Identification ............................................................................................ 12
iii | P a g e
2.3.2. Sequence Diagram .................................................................................................................. 17
2.3.3. Activity Diagrams ..................................................................................................................... 19
2.3.4. Analysis Class Diagram ............................................................................................................ 20
CHAPTER THREE .................................................................................................................................... 23
3. System Design ........................................................................................................................................ 23
3.1. Design Class Diagram...................................................................................................................... 23
3.1.1. Class Diagram Description ....................................................................................................... 24
3.2. Database design ............................................................................................................................... 25
3.3. User Interface flow diagram ............................................................................................................ 29
3.3.1. User Interface Design................................................................................................................ 30
3.4. System Architecture ......................................................................................................................... 32
3.4.1. Component Diagram ................................................................................................................. 32
3.4.2. Deployment Diagram ................................................................................................................ 33
CHAPTER 4 ............................................................................................................................................... 35
4. Implementation ....................................................................................................................................... 35
4.1.1. Algorithm design ........................................................................................................................ 35
4.1.1.1. Pseudo code ............................................................................................................................ 35
CHAPTER 5 ............................................................................................................................................... 58
5.1. Testing procedure................................................................................................................................. 58
5.1.1. Unit testing ........................................................................................................................................ 58
5.1.2. Integration testing ............................................................................................................................. 58
5.1.3. System testing ............................................................................................................................. 58
5.1.4. Performance Testing ................................................................................................................... 60
CHAPTER 6 ............................................................................................................................................... 61
6.Conclusion and Recommendations ......................................................................................................... 61
6.1. Conclusion ............................................................................................................................................ 61
6.2. Recommendation and Future Enhancement ................................................................................... 61
References ................................................................................................................................................... 62

iv | P a g e
List of Figure
FIGURE 1.USE CASE DIAGRAM .....................................................................................................................................14
FIGURE 2. LOGIN SEQUENCE DIAGRAM ........................................................................................................................17
FIGURE 3.UPDATE PROFILE SEQUENCE DIAGRAM ........................................................................................................18
FIGURE 4. POST JOB SEQUENCE DIAGRAM ...................................................................................................................19
FIGURE 5.ACTIVITY DIAGRAM FOR LOGIN ....................................................................................................................20
FIGURE 7. ANALYSIS CLASS DIAGRAM ........................................................................................................................22
FIGURE 8.DESIGN CLASS DIAGRAM .............................................................................................................................24
FIGURE 9. USER INTERFACE FLOW DIAGRAM...............................................................................................................30
FIGURE 10.HOME PAGE ................................................................................................................................................31
FIGURE 11.LOGIN PAGE ...............................................................................................................................................31
FIGURE 12. JOB APPLICANT REGISTRATION PAGE ........................................................................................................32
FIGURE 13.COMPONENT DIAGRAM ...............................................................................................................................33
FIGURE 14.DEPLOYMENT DIAGRAM .............................................................................................................................34

v|Page
List Of table
TABLE 1. USE CASE IDENTIFICATION. .............................................................................................................................12
TABLE 2.LOGIN USE CASE DESCRIPTION .........................................................................................................................15
TABLE 3.POST JOB VACANCY USE CASE DESCRIPTION ................................................................................................................15
TABLE 4.UPLOAD CV USE CASE DESCRIPTION ................................................................................................................16
TABLE 5: METHOD OF EMPLOYER ...................................................................................................................................25
TABLE 6:POST JOB TABLE ....................................................................................................................................................25
TABLE 7:APPLICANT TABLE .................................................................................................................................................27
TABLE 8:POST VACANCY .....................................................................................................................................................27
TABLE 9:EMPLOYEE ..........................................................................................................................................................28
TABLE 10.ACCOUNT TABLE ............................................................................................................................................29

vi | P a g e
Abbreviations and Acronyms

 CV………………………………………………….. …Curriculum Vitae


 MS……………………………………………………. Microsoft
 GB…………………………………………………….. Giga Byte
 RAM……………………………………………………Random Access Memory
 GHZ…………………………………………………….Giga Hertz
 UML…………………………………………………….Unified Modeling Language
 WAMP…………………………………………………..Windows Apache MySQL PHP
 PHP………………………………………………………Hyper Preprocessor Scripting
Language
 CSS…………………………………………………….. .Cascading Style Sheet.
 HTML……………………………………………………Hyper Text Markup Language
 BR……………………………………………………….Business Rule
 UC……………………………………………………….Use Case.
 DBMS …………………………………………………...Database Management Systems
 PW………………………………………………………. Password
 UN……………………………………………………….User name
 MySQL………………………………………………….My Structured Query Language.
 macOS…………………………………………………..Macintosh Operating System
 OOD……………………………………………………Object Oriented Design
 OOA……………………………………………………Object Oriented Analysis.
 SRS…………………………………………………….System Requirement
Specification.
 APP……………………………………………………..Applicant.
 ID………………………………………………………..Identification.
 Jaid………………………………………………………Job Applicant Identification.
 JaPjid……………………………………………………Job Applicant, Post job
Identification.
 Adid……………………………………………………Admin Identification.
 Eid………………………………………………………Employer Identification.

vii | P a g e
CHAPTER ONE

1. INTRODUCTION
1.1 Introduction
In today’s life everybody can communicate each other in everywhere. They share technology and
knowledge. More recently it is the use of the computers and information technology (IT) to
improve the efficiency and competitiveness of businesses that has led to technological change.
Since technology is so rapid, there are important implications for businesses. Websites are one of
the ways of flows of information. People can get service by visiting this websites. Web based job
tracking system is also called online job tracking system. This document is proposed all features
and procedures to develop the system for job applicant, employer, officer, head of civil service
and administrator in Debre Markos town administration civil service office. In previous time to
hire an employee it has tedious processes from both sides of the job applicant and the
administration civil service office. So this project is one contribution to the administration civil
service office that is useful in hiring employee and announcing of different jobs.

1.2. Background of the project


This job tracking system is very useful (helpful) since user can find job and apply for it online.
Currently in Debre Markos town administration civil service office their employee selects
manually by posting paper on the board and there may be limitation of finding talented
employee, since there is limitation in that job applicants not get the notice of the job. On the
whole the objective of the project is to enable job applicants to upload their CV and
administration of civil service office to publish their vacancies. It enables job applicants to
register profile, view vacancy, view job details, apply for job and upload CV. Apart from this
there is an admin can change to the database content.

1.3. Statement of the problem


The problem of the current job tracking system is difficult to find jobs and get experienced
(talented) employee. This is because of the weakness of the existing system which includes over
reliance on paper based work. Paper files consume a lot of the office space, slow recording,
processing and retrieval of employee’s detail. Due to this job applicants and Debre Markos town
administration civil service office members face different problems. In this case the

1|Page
administration civil service office loss money and consume time. Problems in the current system
includes: -

 There is a high cost to buy a copy machine, printers and papers for hard copy.
 Lack of information: the job applicants may not see and may not know where and when
the job posted.
 Time consuming: the employer consumes time in posting jobs at the notice board and
register profile of the applicant’s on paper and the job applicants consume their time for
view the posted jobs.
 Less security: the paper that the applicants register profile and their CV can lost(i.e.
stolen, burn)
 High cost of transport for job applicants.

These problems will be solved by online job tracking system for Debre Markos town
administration of civil service office. The project team will change manual job tracking system
into web based or online job tracking system.

1.4. Objectives of the project

1.4.1 General objective


The general objective of this system is to develop automated web based system for Debre
Markos town administration civil service office.

1.4.2. Specific Objectives


These activities that are performed in order to achieve the general objective. The specific
objectives of this proposed system are listed as follow:
 Study of the existing system and create a system that can solve out the problem.
 Identify functional and non-functional requirements for the new systems.
 Design and build the particular model of the proposed system.
 Make backup of the system and restore it when necessary.
 Implement standard security that can keep the confidentiality of data.
 Transfer employees from one organization into another.

2|Page
1.5. Scope of the project
 The project focuses on the web based job tracking system for Debre Markos town
administration civil service office on each and every day activity in the
announcement of the vacancy and registration.

1.6. Limitation of the Project


 This project will not include online-testing.
 Web site promotion: Promotions about other activity will not be performed. This
project concern about only the system of Job tracking.
 Training: the system not gives any guidelines or help about the website how it
works or how to use the system.
 The biggest limitation of this project is impossible to control garbage data that
everyone uploaded.

1.7. Significance of the project


After the successful completion of this project the system will provide the following application
(services):

For Debre Markos town administration civil service office:

 Automated data inserting, updating, retrieving on the database more organized and faster.

 It increases the income of the administration civil service office: the system satisfies the
job applicants by finding job on time and quickly.

 Reduce the work load because the paper based system replaced by the computerized one.

 Data will not lose because it is more secured.

 For employers it is very easy to post their jobs in particular category along with
description and to select experienced and knowledgeable person for their administration
civil service office.

For the job applicants:

 Online registration and reservation of vacancy for the person who want jobs.

3|Page
 The job applicants can easily find jobs online using the website.
 It reduces transport cost and time.

1.8. System requirements

1.8.1. Hardware requirement


Personal computer:
 Processor: Intel core-i3/i5 - to do any activities by using computer processor must be
used.
 Random access memory: 2 GB and above - used to processing the activities.
 Printer: used to print the softcopy what we do in our project.

1.8.2. Software requirement


The tools that the project team uses in this project are:

 WAMP Server: manage servers setting. The reason of selecting WAMP server
is secure means that are not easily attack by virus when we compare to other
servers.
 MS word 2013: It used to preparing documentation. Because it is mostly
adaptable to us.
 Notepad++: is a basic text editor that you can use to create simple documents.
Notepad++ a simple tool for creating web pages. Then the project team will use
it for writing the code.
 Firefox Browser: gives users a cleaner interface.
It works on all common operating systems, such as windows, macOS and Linux
operating systems.
 Microsoft Visio: used to create simple or complicated diagrams. It offers a wide
variety of built-in shapes and objects to work with.so the team will use it for
drawing the use case diagrams, activity diagram and so many related diagrams.
1.8.3 Programming Language
 Front _end: (PHP)
 Easy to understand: when compared with other scripting languages, PHP can be
understood easily because it has simple techniques and features.

4|Page
 Increased efficiency & usability: PHP provides incomparable efficiency and
usability when it is used for the development of websites.
 Data processing: a website that has been developed using the PHP functions has
fast features of data processing.
 Cost advantages: PHP based websites are affordable to develop, design, modify
and customize.
 We are familiar with PHP language, so we select it to develop the proposed
system.
 Back_end: MYSQL latest version
 Because: MYSQL is a relational database management system which is an open
source database.
 Because of its unique storage engine architecture MYSQL performance is very
high.
 Supports large number of embedded applications which makes MYSQL very
flexible.
HTML:

 HTML is a client side programming language:-for developing the client side or


the user interface. The reason why we use it is editing and running code is fast to
allow the addition of dynamic and interactive activities to web pages, minimum
programming knowledge or experience required.
CSS:

 CSS (cascading style sheet): Styles how to display HTML elements.

Bootstrap:

 Is a framework used to build responsive, mobile-first projects on the web with the
world's most popular front-end component library.

1.9. Requirement Gathering Methods


Understands more about the current job tracking system that used to find requirement of the
project is the primary task. So the project team gathered different information from Debre
Markos town administration civil service office. Some techniques of gathering data as follow:
5|Page
 Interview: during interview the project team gets the necessary information from the
employer of Debre Markos town administration civil service office and we interviewed
the job applicants we have meet at the notice board.

 Give real information by contacting the persons.

 Observation: the project team observed most job applicant’s view posted job in the notice
board and check the available jobs at the Debre Markos town administration civil service
office and reading different newspapers, job announcements posts on everywhere.
Generally online job tracking remove all this problem of the job applicants and
employers.
Secondary source data
 Internet: Internet helps us to see the available samples and to download different types of
tutorials which help us in developing the system.

1.10. Feasibility study


Depending on the results of the initial investigation the review is now expanded to a more
detailed feasibility study. Feasibility study is a test of system proposal according to its
workability, impact of the Debre Markos town administration civil service office ability to meet
needs and effective use of the resources. It focuses on these major questions:

 What are the user’s demonstrable needs and how does a proposed system meet
them?
 What resources will be available in the proposed system?

Operational feasibility
The system is operationally feasible as it very easy for the end users to operate it. Operational
feasibility covers two aspects. One is the technical performance aspect and other is the
acceptance within the organization. The online job tracking system that the project team will
develop user friendly. Even job applicants with little knowledge can find jobs and register profile
online very easily.

Technical feasibility
Technical feasibility is the measure of practicality of the specific technical solution and the
availability of technical resources and skill. The proposed system can be easily maintained and
6|Page
repaired without requiring high specialists or technical assistants. The project is develop with
modern programming language and the user interface is user friendly as well as the system can
lead them how technically interact with the system.

This evaluation determines whether the technology needed for the proposed system is available
or not.

 If new technology is needed then what can be developed?


 Can the work for the project be done with current equipment existing software
technology & available personal?

Economic Feasibility
Debre Markos town administration civil service office may not use any media advertisements
because it asks more budgets. This project is economically feasible because it makes all
information online and every one can get the information from the site and everyone can
advertise to his/her friend in simple way. This system is targeted to be in accordance with the
above-mentioned issues.

 This feasibility checks whether the system can be developed with the available
funds. The online job tracking system does not require huge amount of money to be
developed. This can be done economically, so it is economically feasible.

Legal Feasibility
Legally the proposed system is fully feasible because it never contradicts with legal and criminal
laws of the country. If the system has contradicted with the governmental rules and regulations
automatically rejected. But this system has not contradicted with the governmental rule and
regulations. Therefore the system is legally feasible.

7|Page
CHAPTER TWO

System Analysis
2.1. Overview of Existing System
Currently most of job applicants view available jobs reading in different newspapers, job
announcements and posted jobs on the notice board and check the available jobs at the Debre
Markos town administration civil service office. In this way of finding job consumes time and
finance of job applicant and employers. And also it is difficult to get qualified applicant for the
Debre Markos town administration civil service office.

2.1.1. Users of the existing system


The Current system encompasses different players (actors) to carry out the whole activities.
 Employer: is a person who has the right to post jobs, update, and register profile job
applicants at Debre Markos town administration civil service office.
 Job applicants: a person who needs a job.
 Officer: is the person or organization that wants employee.
 Head of civil service: this is the person who hires the selected applicants.

2.2. System Requirement Specification


System requirement specification (SRS) is a description of a system to be developed, laying out
functional and non-functional requirements, and may include a set of use cases that describe
interactions of users with the system. The system requirement specification is necessary
requirements that are required for the project development. To derive the requirements we need
to have clear and thorough understanding of the products to be developed or being developed.
This is achieved and refined with detailed and continuous communications with the project team
and customer until the completion of the software.
2.2.1. Functional requirement
 Functional requirements are those that refer to the functionality of the system, i.e. what
services it will provide to the user. The system should provide how the system should
react to particular inputs and perform in particular situations. The new system should
provide the following functional requirements:

8|Page
 The system allows the job applicants to see the posted job and login to the system using
their user name and password.

 The system enables job applicants and employer to register to the system.

 The system able to display the vacancy announcement for the job applicants.

 The system allows the admin to view and manage any data in the database.

2.2.2. Non -Functional Requirements


Nonfunctional (supplementary) requirements relevant to other information needed to
produce the correct system and detailed separately. This requirement is related with how the
system does.
 User friendly interface: The system should have easily understandable interface (users
can interact with the system through the user interface easily).
 The system has two groups of users: the admin and limited users (job applicants,
officers, head of civil service and employers). The admin user has full privilege to
perform on the system whereas limited users in the system can only perform limited
operations based on the privilege given by the administrator.
 Accuracy: The system should give only valid result. If no data is found with the specified
criteria the system should response only error message.
 Maintainability: The system will develop using object oriented software development
technique that makes the software highly maintainable. If there are any additional
requirements the system is flexible to change.
 Security: Security becomes crucial (key) issue in the proposed system. A user must login
to the system with user name and password. The system should allow login to only
authorized users. That means users that have previously created account through user
name and password.
 And also we have use encryption algorithm like SHA1.
SHA1 cryptographic hash functions with different support of bit rate. SHA stands for
“Secure Hash Algorithm”, and especially SHA-1 is widely used in a number of
applications.

9|Page
While SHA algorithms are not used to secure data, they have gained big success in
ensuring that data remains unchanged. It is said that nobody has been able to “break”
SHA-1 yet even though it is merely a consistency check.
 Easy accessibility: The system is easily accessible for job applicants to important and
searching details easily in their hand wherever they have with consistent existence of
network connection and network accessible device.
 Performance: our system is going to use efficient way for each task which will make it
fast and require less storage. The proposed system will have:
 Short response time for a given work.
 High rate of processing.
 High bandwidth / short data transmission time.

 Authorization and Authentication: The proposed system authenticates the user and
provides authorization facilities by asking username and password and determining
whether a user is authorized to access a resource or to perform an operation or both
respectively.
 Availability: The system is available at any time in the presence of internet connection.
So, the users of system can access the system successfully.
 Automatic Backups: In addition to authorizing access to users, the system could have
problems in such areas of data crime, disaster, and human errors. For this purpose,
incremental backup copies (copies of only the challenge to files) and full backup copies
(copies of all files) will be made and stored in a secured location.
2.2.2.1. Technical requirements
Technical requirement concerns or pertains to the technical aspects that our system must fulfill.
Technical requirements are the technical issues that must be considered to successfully complete
a project. These are features such as performance, reliability, and availability that our project
must be meet in order to precede the system.
The followings are technical requirement of the project:
 The system should have good user interface for users for simplicity and easy to
use.
 The system should be attractive.
 The system should be plat form independent.
10 | P a g e
 The system should be available 24 hours per7 week.
 The interface should display error message if it detects invalid input.
 The system should deny unauthorized accesses to the system domain.

2.2.3. Business rules


Business rules are statements about the initiative way of doing business. They reflect business
polices. Debre Markos town administration civil service office has policies in order to:

 Satisfy the business objectives.


 Satisfy the visitor.
 Able to use good resource.
Some of the business rules are:

BR1. One vacancy is available on our site for 7 consecutive working days only.

BR3. Applicants must come in physically and take exam.

BR4. Employer should have to check if the Applicants document fulfills the minimum
requirements of the posted job, then approve applicants and reject if not.

BR5. After exam applicants should score 45% to pass into interview.

BR6. Only for girls there is 3 point is given for incentive and if they score the same result with
boys then the girl must prioritize.

2.2.4. Constraints
The following constraints may face at the time of developing the system

 Time: since the team is conducting the project in parallel with other activities this will
have much more impact on the project.
 Resource: availability of materials such as software, computer etc.

2.3. System requirement analysis


The new system that we are proposing is not entirely new to the automated job tracking system
but it will the working environment flexible the main objective of this system is to announce the
people about automated job tracking system and to make comfortable working environment.
System requirements are a descriptive feature or condition that a user applicant to have

11 | P a g e
implemented in a system. The software that is going to be developed by the team will automate
the operations in the system. It will be used to manage and process data according to the rule &
regulations of the organization.

2.3.1. Actor and Use Case Identification


 Actors: An actor represents a type of users of the system that the system interacts with.
An actor is a user of the system playing a particular role
 The project team identified the following actors:
 Admin: is a person who directs or performs all activities related to maintaining a
successful database environment.
 Employer: is a person who has the right to post jobs, View report at Debre
Markos town administration civil service office.
 Job applicant: is a person who needs a job.
 Officer: is the person who sends request for employer to get employee.
 Head of civil service: is the person that has privilege to approve the selected
applicants to be hired.
 Use case is a list of actions or event steps typically defining the interactions between a
role and a system to achieve a goal.
 The project team identified the following use case:
Table 1. Use case identification.

Use case name Use case ID Includes/use


Login UC-1 ………
Post Vacancy UC-2 Login
Register Applicant Result UC-3 Login
Approve Employee UC-4 Login
View Applicant Result UC-5 Login
View Comment UC-6 Login
View Vacancy UC-7 ………
Apply Vacancy UC-8 ………
View hired Employees UC-9 Login
View Job Description UC-10 Login

12 | P a g e
Send Comment UC-11 …….
Register Applicant UC-12 Login
Take Backup UC-13 Login
Request Applicant UC-14 Login
Create Account UC-15 Login
Update Account UC-16 Login
Approve Request UC-17 Login
View Requested Applicant UC-18 Login
Register Job Description UC-19 Login
Register Organization UC-20 Login
Register Level Type UC-21 Login
View approved Applicant UC-22 Login
Select applicant UC-23 Login
Assign Employee UC-24 Login

View Report UC-25 Login


Restore UC-26 Login
Approve and Reject UC-27 Login
Applicant document
Logout UC-28 ----

Use Case Diagram


Use case diagram is used to capture the functional requirement of the intended behavior of the
system from the user point of view and it shows a set of use case, actors and their relationship.
Use Case diagrams show the various activities the users can perform on the system.

13 | P a g e
ONLINE JOB TRACKING SYSTEM FOR DM TOWN ADMINISTRATION CIVIL SERVICE
OFFICE

Register job
Description
Update Account

View Requsted
applicant

Approve Employee
Post job details

Register Applicant
View Report

«uses»
Download CV
«uses»
View Comment «uses»
Head
«uses» «uses» Approve & Reject
Applicant Document
«uses»
«uses»

View Vacancy «uses» Register APP result Employer


«uses»
«uses» «uses»

Apply Vacancy «uses» «uses»


Select Employee
«uses»
«uses»

View Result «uses» «uses»


View Approved
Employee
«uses» Login «uses»

Send Comment
«uses» Assign Employee
«uses»
«uses»
Job Applicant
View Job «extends» «uses»
«uses»
description
«uses»

«uses» Register
«uses» Organization & level
Request Applicants

Register Employee &


Create Account
View Activities Logout

Take Backup

Veiw hiered
employees
Officer
Restore Admin

Figure 1.Use Case Diagram

Use Case Description


Use case description is documents that contain brief information about use case .use case
description contain the components like use case name, use case ID, participate actor,
description, basic course of action, alternative course of action, pre-condition and post-condition
of one use case how to perform by the give actors.
14 | P a g e
Table 2.Login use case description

Use case name Login


Use case ID UC-1
Actors Admin, employer ,head of civil service and officers
Description Describes how the system users login into the system.
pre-condition Users must have user name and password.
post-condition Login to the system successfully and gets access to the
system according to their predefined system privileges.

basic course of action 1. Open web site


2. User enters username and password
3. Click login button
4. System checks username and Password.
5. If username and password is valid
6. User authenticated and gets access to the system.
7. End of use case
alternative course of action 2. User is not authenticated and is denied access to the
system.
2.1. System displays an incorrect username and password
message.
2.3 System enables user to try again.
2.4 Use case returns to step 2 to fill or enter the correct
username and password.

Table 3.Post job vacancy use case description


Use Case Name Post Vacancy
Use Case Id UC-2
Actor Employer
Description Allow the employer to post Vacancy
Pre-condition The employer must be login to post Vacancy
Post condition The Vacancy is posted to the Job tracking site

15 | P a g e
Basic course of action 1. The employer must be login into the system
2. The employer fill the form
3. The Vacancy is post to the Job tracking site and visible to
the job applicants
4. End of use case
Alternative course of action 4.if the information is entered is not valid
4.1: fill the form correctly
4.2: the Vacancy is posted
4.3:logout
Table 4.Upload CV use case description

Use Case Name Upload CV


Use Case Id UC-4
Actor Job applicants
Description It allows the job applicants to upload their CV with detail
information
Pre-condition The job applicants has CV
Post-condition The CV is uploaded to the database and can be downloaded
by the employer
Basic course of action 1. The job applicants login into the system
2. The job applicants fill the form that enable to upload CV
3. The CV is uploaded to the database.
4. End of use case
Alternative course of action 4: If the information entered is invalid the system display
error message
4.1: the job applicants fill the form again
4.2: the CV is sent to the database and downloaded by
employer
4.3: logout

16 | P a g e
2.3.2. Sequence Diagram
Sequence diagrams are usually created to show the flow of message among objects and
actors in the system. Sequence diagrams answer questions about how the system will
work. Once we have created the sequence diagram, you next need to determine which
actors and objects to place on it. One method is to drag all actors involved in the use case
to the sequence diagram, then walk through the functionality, adding objects to facilitate
that functionality as needed. through this the project team tried to show the sequence of
interactions among objects and to represent or model the flow of messages, events and
actions between the objects or actors of Job Tracking System using sequence diagram. As
sequence Diagrams are used primarily to design, document and validate the architecture and
interfaces of the system by describing the sequence of actions that need to be performed to
complete a task.

Home page Login page User page Database

System User open()


Login()
Validate() If Valid()

Go to User page()

Enter correct UN and Pw


Else()
Enter UN & PW

When the password


and user name
is incorrect,error
message will be
dispelyed

Figure 2. Login Sequence Diagram

17 | P a g e
Home Page Login Update page Database
Open()
Login()
Job applicant Validate

Error msseage If not valid

enter UN & PW
Go to update page If valid

When the password


and user name Fill information()
is incorrect,error
message will be
dispelyed Add the profile If not valid

If valid

Successfuly updated

Figure 3.Update Profile Sequence Diagram

18 | P a g e
Home page Login page Job post page Database
open()
Login()
Validate()

error message If not valid()


Employer
enter correct UN &PW
Go to post page valid()

When the password


Fill job details
and user name
is incorrect,error
message will be
dispelyed

Succeessfuly posted Job

Figure 4. Post Job Sequence Diagram


2.3.3. Activity Diagrams
An activity diagram usually presents a series of actions or flow of control in a system similar to
a flowchart or a data flow diagram.

 Activity diagram are graphical representation of work flows of stepwise architecture and
action with support for choice iteration and concurrency.
 Activity diagram can be used to describe the business and operational step by step work
flows of the system.
 An activity diagram shows the overall flow of control.

19 | P a g e
Users Open The System Home Page

Enter UN&PW

Invalid

Valid

System Open Main Page

Main Page display

Figure 5.Activity diagram for Login


2.3.4. Analysis Class Diagram
A class diagram is used to show a sub set of the class, interfaces, packages of classes and
relationships in the system. A typical system will have many different class diagrams. A class
diagram gives an over view of a system by showing its classes and the relationships among
them. Class diagrams are static they display what interacts but not what happen when they do
20 | P a g e
interact. Class diagram contain class name, attribute and method of the given class. The
attribute also contain user name, password and requirement contain sex, phone, photo,
education level, experience and age for job applicant and requirement contain organization
name, deadline, posted date and the same as for account, admin, officer, head of civil service
and employer has their attribute. The following points should be remembered while drawing a
class diagram:

 The name of the class diagram should be meaningful to describe the aspect of the
system.

 Each element and their relationships should be identified in advance.

 Responsibility (attributes and methods) of each class should be clearly identified

 For each class, minimum number of properties should be specified, as unnecessary


properties will make the diagram complicated.

 Use notes whenever required to describe some aspect of the diagram. At the end of the
drawing it should be understandable to the developer/coder.

 Finally, before making the final version, the diagram should be drawn on plain paper and
reworked as many times as possible to make it correct.

21 | P a g e
Admin
1
Head of civil service
+create account()
+take backup()
Employee +view comment() Attempt
+Restore() Approve
+Register Employee() -eid varchar(25) +view hierd applicant() -atid
-efirstname varchar(25) +Approve Hired Employee() *
+Register Organization & Level()
+Update Account() -elastname varchar(25)
-esex varchar(25) 1
Create account
regester regester regester
1
* 1* -phone_number varchar(25)
-email varchar(25) 1 1 *
Organization Level -role varchar(25)
-oid -level_id varchar(25) -username varchar(25) account Applicant_Result
-oname -level_type varchar(25) -password varchar(25) -uid -aid varchar(15)
-Registration Date -user name -afullname varchar(25)
-password -asex varchar(10)
-role -organization_name varchar(25)
1 -status -vacancy_title varchar(25)
Officer +create account() -for_girls varchar(25)
+view account() -test varchar(25)
1 -interview varchar(25)
+request applicant() *
regester -total_grade varchar(25)
1 +view job descraption()
+view selected applicant()
1 view -result varchar(25)
-selected_by varchar(25)
-date varchar(25)
Employer
regester -
view
+post vacancy()
1 +regester Applicant Result()
+regester job descraption() 1 Register
+regester applicant()
request +Assign Hired Employee() *
* * 1 +Approve Applicant Document()
Comment
Job_descrption view 1 -Comment-id
-jobid varchar(25)
-job_title varchar(25)
-comment-author Send
-comment-author-email *
-level_type varchar(25) post
-comment-author-phone
-Permissible Quantity varchar(25)
-comment-content
-Organaization_id varchar(25)
-comment-date *
-registration Date varchar(25) 1
*
Applicant
* -aid varchar(25)
Post_vacancy
-fullname varchar(25)
-Vid varchar(25) -sex varchar(10)
Request
-jobid varchar(25) -phone number int(15)
* -rid varchar(25) -jobtitle varchar(25)
-job_id varchar(25) -CV varchar(25)
-leveltype varchar(25) -work_experience varchar(25)
-job_title varchar(25) -organzation_name varchar(25)
-level_type varchar(25)
Apply -educational_background varchar(25)
-work_process varchar(25) -Educational Level varchar(25)
-organzation_name varchar(25) -work_description varchar(25) 1 -organization_id varchar(25)
-work_process varchar(25) -posted_date varchar(25) *
-description varchar(25) -Jobtitle_id varchar(25)
-registration_date varchar(25) -Level_id varchar(25)
-work_starting_date varchar(25) -dead_line varchar(25)
-requested_by varchar(25) -registration date varchar(25)
-test_will_beond varchar(25) -Employer_id varchar(25)
-budget_availablity_checked_by varchar(25) -posted_by varchar(25)
-status varchar(25) -Approved_or_not varchar(25)

Figure 6. Analysis Class Diagram

22 | P a g e
CHAPTER THREE

3. System Design
The project team can develop the above system analysis diagram in the Object Oriented Analysis
way and system design diagram is develop in the form of Object Oriented Design. Object-
Oriented Design is the process of planning a system of interacting objects for the purpose of
solving a software problem. It is one approach to software design. During object-oriented design
(OOD), a developer applies implementation constraints to the conceptual model produced in
object-oriented analysis. Such constraints could include not only constraints imposed by the
chosen architecture but also any non-functional technological or environmental constraints, such
as transaction throughput, response time, run-time platform, development environment, or those
inherent in the programming language. Concepts in the analysis model are mapped onto
implementation classes and interfaces resulting in a model of the solution domain, i.e., a detailed
description of how the system is to be built. First differentiate the OOA (Object Oriented
Analysis and OOD (Object Oriented Design) is shown on the figure below used to develop
different system design diagram.

3.1. Design Class Diagram


The design class diagram is a validation of class diagram the class diagram shows a set of class
and their relationships during analysis, since it is a discovery process in objects oriented
programming the attributes of class have visibility character state denote whether other classes
can access that attribute. Each attribute also has a type definition, such as character or numeric
during design it is important to elaborate these items as well as to define parameters that are
passed to methods return values from methods and the internal logic of each method. Thus the
class diagram for design is very similar to the class diagrams for analysis, but it is just more
detailed. We complete the design class diagram by integration information from state charts and
interaction diagrams in to the classes of the design class diagram.

23 | P a g e
Admin
1
Head of civil service
+create account()
+take backup()
Employee +view comment() Attempt
+Restore() Approve
+Register Employee() -eid varchar(25) +view hierd applicant() -atid
-efirstname varchar(25) +Approve Hired Employee() *
+Register Organization & Level()
+Update Account() -elastname varchar(25)
-esex varchar(25) 1
Create account
regester regester regester
1
* 1* -phone_number varchar(25)
-email varchar(25) 1 1 *
Organization Level -role varchar(25)
-oid -level_id varchar(25) -username varchar(25) account Applicant_Result
-oname -level_type varchar(25) -password varchar(25) -uid -aid varchar(15)
-Registration Date -user name -afullname varchar(25)
-password -asex varchar(10)
-role -organization_name varchar(25)
1 -status -vacancy_title varchar(25)
Officer +create account() -for_girls varchar(25)
+view account() -test varchar(25)
1 -interview varchar(25)
+request applicant() *
regester -total_grade varchar(25)
1 +view job descraption()
+view selected applicant()
1 view -result varchar(25)
-selected_by varchar(25)
-date varchar(25)
Employer
regester -
view
+post vacancy()
1 +regester Applicant Result()
+regester job descraption() 1 Register
+regester applicant()
request +Assign Hired Employee() *
* * 1 +Approve Applicant Document()
Comment
Job_descrption view 1 -Comment-id
-jobid varchar(25)
-job_title varchar(25)
-comment-author Send
-comment-author-email *
-level_type varchar(25) post
-comment-author-phone
-Permissible Quantity varchar(25)
-comment-content
-Organaization_id varchar(25)
-comment-date *
-registration Date varchar(25) 1
*
Applicant
* -aid varchar(25)
Post_vacancy
-fullname varchar(25)
-Vid varchar(25) -sex varchar(10)
Request
-jobid varchar(25) -phone number int(15)
* -rid varchar(25) -jobtitle varchar(25)
-job_id varchar(25) -CV varchar(25)
-leveltype varchar(25) -work_experience varchar(25)
-job_title varchar(25) -organzation_name varchar(25)
-level_type varchar(25)
Apply -educational_background varchar(25)
-work_process varchar(25) -Educational Level varchar(25)
-organzation_name varchar(25) -work_description varchar(25) 1 -organization_id varchar(25)
-work_process varchar(25) -posted_date varchar(25) *
-description varchar(25) -Jobtitle_id varchar(25)
-registration_date varchar(25) -Level_id varchar(25)
-work_starting_date varchar(25) -dead_line varchar(25)
-requested_by varchar(25) -registration date varchar(25)
-test_will_beond varchar(25) -Employer_id varchar(25)
-budget_availablity_checked_by varchar(25) -posted_by varchar(25)
-status varchar(25) -Approved_or_not varchar(25)

Figure 7.Design Class Diagram


3.1.1. Class Diagram Description

24 | P a g e
Table 5: Method of employer

Method Description
Post job To post job and select job applicants
Download CV To download the CV uploaded by job applicant
Table 6.Job applicant table

Attribute Purpose Data Type


Id Uniquely identify the job applicant Int()
Email Used to login to the system Varchar()
Password The secret code to login to the system Varchar()
Sex Identify whether he is male or female Varchar()
Career Level How much time the job applicant work
before this time
Experience How much time the job applicant work Varchar()
before this time
Table 6:post job table

Attribute Purpose Data Type


Id Uniquely identify the job Int()
Title Work division that the employer work Varchar()
Location Which company post the job Varchar()
Post date Specify in which date the job is post Varchar()
Deadline In which date the job is closed Varchar()
Salary how much the company pay for the post job Varchar()

3.2. Database design


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, primary key, foreign key,
and relationships between tables. This data model is represented based on three way of
relationship. This are One-to-One, One-to-Many (many-to-One) and Many-to-Many:

25 | P a g e
 One-to-one relationship: a key will appear only once in a related table. An example of a
one-to-one relationship is :
 Admin create account for employer
 Admin create account for head of civil service.
 Job applicant has account.
 One-to-many: A one-to-many relationship allows a single record in one table to be related
to multiple records in another table. An example of one to many relationship is:
 Employer can download many job applicants CV.
 Head of civil service can view many reports.
 Many officers can send request to employer.
 Admin create account for many officers.
 Employer can post many jobs.
 Many-to-many: This is a complex relationship in which many records in a table can link to
many records in another table. An example of many to many relationship is:
 Many job applicants can view many posted jobs.
 Many officers can send many reports.

26 | P a g e
Table 7:Applicant table

Table 8:post vacancy

27 | P a g e
Table 9:Employee

28 | P a g e
Table 10.Account table

3.3. User Interface flow diagram


User interface flow diagram shows the relationships between the major user interface elements
(Home Page, Login page, and Registration form) that compose our application. User interface
flow diagrams are typically used for one of two purposes. First, they are used to model the
interactions that users have with our software, as defined in a single use case. Second, they
enable us to gain a high level overview of the user interface for our application.

29 | P a g e
User Interface Flow Diagram
Home
Page

Login

Admin page Employer page Job Applicant page Officer page

Create Account update account

Request Applicant View Employee

Download CV View Reports Post job

Upload CV View Job Detailes Create Account

Head of civil service

View Reports Approve employee

Logout

Figure 8. User Interface Flow Diagram


3.3.1. User Interface Design
User interface design is the design of computers, 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 simple and efficient as possible, in
terms of accomplishing user goals.

30 | P a g e
Figure 9.Home Page

Figure 10.Login Page

31 | P a g e
Figure 11. Job Applicant Registration Page

3.4. System Architecture


The term system architecture is used to describe the overall design and structure of a computer
network or system. A method is required to organize and connect these items together in a
cohesive manner. The term is also used to describe complex computer_ software tools. System
Architecture is a generic discipline to handle objects (existing or to be created).the project team
develop the system architecture based on different diagram as follows:

3.4.1. Component Diagram


The component diagram shows the relationship between software components, their
dependencies, communication, location and other conditions. The main purpose of the
component diagram is to know the structural relationship between the components of the system.
Developers find the component diagram useful because it provides them with a high level
architectural view of the system that they will be building .which helps developers being
32 | P a g e
formalizing a road map for the implementation and make decision about task assignments and
needed skill enhancement.

Component Diagram

Upload CV
Job Applicant
View Job Details

Create Account
Adminstrater Security
Download CV

Post Job
Employer

View hired employee Officer


Database
Request Applicant
Head of civil service
Approve employee

Figure 12.Component diagram

3.4.2. Deployment Diagram


The deployment diagram depicts a static view of the run-time configuration of processing nodes and the
components that run on those nodes. In other words, deployment diagrams show the hardware for your
system, the software that is installed on that hardware. [3]

33 | P a g e
Deployment Diagram
Client
Application Server Data Base Server

Create Account

Adminstrater Take Backup Security

View Notifcation
Job Applicant
View Job Details

Employer Upload CV Data Base

Post Job
Officer
View hired employee

Head of civil service Request Applicant

Approve employee

Figure 13.Deployment Diagram

34 | P a g e
CHAPTER 4

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.

4.1.1. Algorithm design


4.1.1.1. Pseudo code

Pseudo code is compact and informal high-level description of a computer programming


algorithm that uses the structural conventions of a programming language but is intended for
human reading rather than machine reading. Pseudo code typically omits details that are not
essential for human understanding of the algorithm, such as variable declaration, system-specific
code and subroutine. The programming language is augmented with natural language
descriptions of the details, where convenient, or with compact mathematical notation. The
purpose of using pseudo code is that it is easier for humans to understand than conventional
programming language code, and that it is a compact and environment-independent description
of the key principles of an algorithm.

4.1.1.2 Sample Codes


Admincreateaccount.php

<!DOCTYPE html>

<html lang="">

<head>

<meta charset="utf-8">

<meta http-equiv="X-UA-Compatible" content="IE=edge">

<meta name="viewport" content="width=device-width, initial-scale=1">

<title>Admin Create Account</title>

<!-- Bootstrap CSS -->

35 | P a g e
<link rel="stylesheet" href="font-awesome-4.7.0/css/font-awesome.min.css">

<link href="css/bootstrap.min.css" rel="stylesheet">

<link rel="stylesheet" type="text/css" href="css/default.css">

<link rel="stylesheet" href="css/style.css">

</head>

<body>

<div class="container-fluid display-table">

<div class="row display-table-row">

<!--side menu-->

<div class="col-md-2 col-sm-1 hidden-xs display-table-cell " id="side-menu">

<h1 class="hidden-xs hidden-sm">Job Tracking</h1>

<ul>

<li class="link">

<a href="dashboard.php">

<span class="glyphicon glyphicon-th" aria-hidden></span>

<span class="hidden-sm hidden-xs">Dashboard</span>

</a>

</li>

<li class="link active">

<a href="index.html">

<span class="glyphicon glyphicon-th" aria-hidden></span>

<span class="hidden-sm hidden-xs">Create Account</span>

</a>

</li>

<li class="link">

36 | P a g e
<a href="#collapse-post" data-toggle="collapse" aria-controls="collapse-post">

<span class="glyphicon glyphicon-list-alt" aria-hidden="true"></span>

<span class="hidden-sm hidden-xs">Article</span>

<span class="label label-success pull-right hidden-sm hidden-xs" >20</span>

</a>

<ul class="collapse collapseable" id="collapse-post">

<li><a href="new-article.html">Create New</a></li>

<li><a href="articles.html">View Article</a></li>

</ul>

</li>

<li class="link">

<a href="#collapse-comments" data-toggle="collapse" aria-controls="collapse-comments">

<span class="glyphicon glyphicon-pencil" aria-hidden="true"></span>

<span class="hidden-sm hidden-xs">Comments</span>

</a>

<ul class="collapse collapseable" id="collapse-comments">

<li><a href="approved.html">Approved</a></li>

<span class="label label-success pull-right hidden-sm hidden-xs" >10</span>

<li><a href="unapproved.html">Unapproved</a></li>

<span class="label label-warning pull-right hidden-sm hidden-xs" >20</span>

</ul>

</li>

<li class="link">

<a href="commenters.html">

<span class="glyphicon glyphicon-user" aria-hidden></span>

<span class="hidden-sm hidden-xs">Commenters</span>

37 | P a g e
</a>

</li>

<li class="link">

<a href="tags.html">

<span class="glyphicon glyphicon-tags" aria-hidden></span>

<span class="hidden-sm hidden-xs">Tags</span>

</a>

</li>

</li>

<li class="link settings-btn">

<a href="settings.html">

<span class="glyphicon glyphicon-cog" aria-hidden></span>

<span class="hidden-sm hidden-xs">Settings</span>

</a>

</li>

</ul>

</div>

<!--Main content Area-->

<div class="col-md-10 col-sm-11 display-table-cell valign-top">

<div class="row">

<header id="nav-header" class="clearfix">

<div class="col-md-5">

<nav class="navbar-default pull-left">

<button type="button" class="navbar-toggle collapsed" data-toggle="offcanvas" data-target="#side-


manu">

<span class="sr-only"></span>

<span class="icon-bar"></span>

38 | P a g e
<span class="icon-bar"></span>

<span class="icon-bar"></span>

</button>

</nav>

<input type="text" class="hidden-sm hidden-xs"id="header-search-field" placeholder="search for


someting...">

</div>

<div class="col-md-7">

<ul class="pull-right">

<li id="wellcome" class="hidden-xs">welcome to your Admin page</li>

<li>

<a href="#" class="logout">

<span class="glyphicon glyphicon-log-out" aria-hidden="true"></span>

Logout

</a>

</li>

</ul>

</div>

<!-- -->

</header>

</div>

<div class="container">

<form action="Admincreateacount.php" method="post" enctype="multipart/form-data">

<div class="row">

<h4>Register Employees</h4>

<div class="input-group input-group-icon" style="width:417px; margin-left:42px;">

<input type="text" name="firstname" placeholder="First Name"/ required>

39 | P a g e
<div class="input-icon"><i class="fa fa-user"></i></div>

</div>

<div class="input-group input-group-icon" style="width:417px; margin-left:42px;">

<input type="text" name="lastname"placeholder="Last Name"/>

<div class="input-icon"><i class="fa fa-envelope"></i></div>

</div>

<div class="input-group input-group-icon" style="width:417px; margin-left:42px;">

<input type="text" name="sex" placeholder="Sex"/>

<div class="input-icon"><i class="fa fa-key"></i></div>

</div>

<div class="input-group input-group-icon" style="width:417px; margin-left:42px;">

<input type="text" name="phone" placeholder="Phone"/>

<div class="input-icon"><i class="fa fa-user"></i></div>

</div>

<div class="input-group input-group-icon" style="width:417px; margin-left:42px;">

<input type="email" name="email" placeholder="Email"/>

<div class="input-icon"><i class="fa fa-envelope"></i></div>

</div>

<div class="input-group input-group-icon" style="width:417px; margin-left:42px;">

<input type="text" name="username" placeholder="Username"/>

<div class="input-icon"><i class="fa fa-key"></i></div>

</div>

<div class="input-group input-group-icon" style="width:417px; margin-left:42px;">

<input type="password" name="password" placeholder="Password"/>

<div class="input-icon"><i class="fa fa-user"></i></div>

</div>

40 | P a g e
<div class="form-group">

<div class="input-group input-group-icon" style="width:417px; margin-left:42px;">

<div class="input-group"><span class="input-group-addon"><i class="fa fa-key"></i></span>

<select name="role">

<option value="">Select role</option>

<option>Administrator</option>

<option>Head Of Civil Service</option>

<option>Employer</option>

<option>Officer</option>

</select>

</div>

</div>

</div>

<div class="input-group " style="width:417px; margin-left:42px;">

<input type="submit" name="submit" class="btn btn-primary" value="Register"/>

<div class="input-icon"></div>

</div>

</div>

</form>

</div>

<br>

<?php

$con=mysqli_connect("localhost","root","","job");

if(isset($_POST["submit"]))

$firstname=$_POST["firstname"];

41 | P a g e
$lastname=$_POST["lastname"];

$sex=$_POST["sex"];

$phone=$_POST["phone"];

$email=$_POST["email"];

$username=$_POST["username"];

$role=$_POST["role"];

$password=$_POST["password"];

if($con)

$sql="select * from employee where username='$username'";

$userexist=mysqli_query($con,$sql);

$c=mysqli_num_rows($userexist);

if($c>='1')

echo "Username already exist please change your username and try again!";

else{

$sql="insert into employee values('


','$firstname','$lastname','$sex','$phone','$email','$username','$role','$password')";

$inserted=mysqli_query($con,$sql);

if($inserted)

echo "User registered successfully!";

else

echo "Unable to register the user";

}else

echo "Connection Failed";

?>

42 | P a g e
<div class="row">

<footer id="admin-footer" class="clearfix">

<div class="pull-left"><b>Copyright</b> &copy; 2018</div>

<div class="pull-right">admin system</div>

</footer>

</div>

</div>

</div>

</div>

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>

<script src="js/bootstrap.min.js"></script>

<script src="js/default.js"></script>

</body>

</html>

Login.php
<?php

session_start();

include("includes/dbcon.php");

?>

<!DOCTYPE html>

<html lang="en">

<head>

<meta charset="utf-8">

<meta http-equiv="X-UA-compatible" content="IE=edge">

<meta name="viewport" content="width=device-width, initial-scale=1">

<title>Apply Job</title>

43 | P a g e
<link rel="stylesheet" href="css/bootstrap.min.css">

<link rel="stylesheet" href="font-awesome-4.7.0/css/font-awesome.min.css">

<link rel="stylesheet" href="css/login.css">

<link href="css/clean-blog.min.css" rel="stylesheet">

</head>

<body>

<!--NAVIGATION-->

<div id="myNavbar" class="navbar navbar-default navbar-fixed-top" role="navigation">

<div class="container">

<a class="navbar-brand" href="index.php">JOB TRACKING</a>

<div class="navbar-header">

<button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">

<span class="icon-bar"></span>

<span class="icon-bar"></span>

<span class="icon-bar"></span>

</button>

</div>

<div class="navbar-collapse collapse">

<ul class="nav navbar-nav navbar-right">

<li><a href="index.php">Home</a></li>

<li><a href="post.php">Jobs</a></li>

<li><a href="appviewresult.php">View Result</a></li>

<li><a href="contact.php">Contact</a></li>

<li><a href="login.php">Login</a></li>

</ul>

</div>

44 | P a g e
</div>

</div>

<!--END NAVIGATION-->

<div class="container con">

<form class="form-signin" action="login.php" method="post" enctype="multipart/form-data">

<h1 class="text-center">Log in</h1>

<p>

<label class="sr-only">User Name:</label>

<input type="text" name="username" placeholder="Username" class="form-control" required


autofocus>

</p>

<p>

<label class="sr-only">Password:</label>

<input type="password" name="password" placeholder="password" class="form-control"


required>

</p>

<p class="checkbox"><label><input type="checkbox">Remember me</label></p>

<button type="submit" name="login" class="btn btn-primary btn-block">Sign in</button></br>

<a href=""><p><label>Forgot Password?</label></p></a>

<?php

if(isset($_POST['login']))

$username=$_POST['username'];

$password=$_POST['password'];

$password=sha1($_POST['password']);

if($con)

45 | P a g e
//account

$sql="select * from account where username='$username' and password='$password'";

$matchfound=mysqli_query($con,$sql);

if($row=mysqli_fetch_assoc($matchfound))

$id=$row["uid"];

$un=$row["username"];

$pw=$row["password"];

$role=$row["role"];

$status=$row["status"];

//employee

$sqll="select * from employee where eid='$id'";

$matchfound1=mysqli_query($con,$sqll);

if($row=mysqli_fetch_assoc($matchfound1))

$eid=$row["eid"];

$fullname=$row["fullname"];

$sex=$row["sex"];

$phone=$row["phone"];

$workplace=$row["workplace"];

$position=$row["position"];

$photo=$row["photo"];

//session

$_SESSION['eid']=$eid;

$_SESSION['fullname']=$fullname;

46 | P a g e
$_SESSION['sex']=$sex;

$_SESSION['phone']=$phone;

$_SESSION['email']=$email;

$_SESSION['workplace']=$workplace;

$_SESSION['position']=$position;

$_SESSION['sun']=$un;

$_SESSION['spw']=$pw;

$_SESSION['srole']=$role;

$_SESSION['sphoto']=$photo;

if($role=="Administrator" && $status=="Active")

header("location:dashboard.php");

else if($role=="Employer" && $status=="Active")

header("location:registerjobdescription.php");

else if($role=="Officer" && $status=="Active")

header("location:viewjobdesc.php");

else if($role=="Head Of Civil Service" && $status=="Active")

header("location:head.php");

else

if($status=="inactive")

echo"Sorry Your Account Is Bolcked!!!";

else

echo "Invalid username/password";

header("location:Admin/login.php");

47 | P a g e
}

?>

</form>

</div><hr>

<!-- Footer -->

<footer>

<div class="footer">

<div class="row">

<div class="col-lg-8 col-md-10 mx-auto">

<ul class="list-inline text-center">

<li class="list-inline-item">

<a href="#">

<span class="fa-stack fa-lg">

<i class="fa fa-circle fa-stack-2x"></i>

<i class="fa fa-twitter fa-stack-1x fa-inverse"></i>

</span>

</a>

</li>

<li class="list-inline-item">

<a href="#">

<span class="fa-stack fa-lg">

<i class="fa fa-circle fa-stack-2x"></i>

<i class="fa fa-facebook fa-stack-1x fa-inverse"></i>

</span>

</a>

48 | P a g e
</li>

<li class="list-inline-item">

<a href="#">

<span class="fa-stack fa-lg">

<i class="fa fa-circle fa-stack-2x"></i>

<i class="fa fa-youtube fa-stack-1x fa-inverse"></i>

</span>

</a>

</li>

</ul>

<p class="copyright text-muted">Copyright &copy; Debremarkos Civil Service Office 2018</p>

</div>

</div>

</div>

</footer>

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>

<script src="js/bootstrap.min.js"></script>

</body>

</html>

Postvacancy.php
<?php

session_start();

include("includes/dbcon.php");

?>

<!DOCTYPE html>

<html lang="">

49 | P a g e
<head>

<meta charset="utf-8">

<meta http-equiv="X-UA-Compatible" content="IE=edge">

<meta name="viewport" content="width=device-width, initial-scale=1">

<title>Post Vacancy</title>

<!-- Bootstrap CSS -->

<link rel="stylesheet" href="font-awesome-4.7.0/css/font-awesome.min.css">

<link href="css/bootstrap.min.css" rel="stylesheet">

<link rel="stylesheet" type="text/css" href="css/default.css">

<link rel="stylesheet" href="css/style.css">

</head>

<body>

<?php

if(isset($_SESSION['sun'])&&isset($_SESSION['spw']))

$eid=$_SESSION['eid'];

$name=$_SESSION['fullname'];

?>

<div class="container-fluid display-table">

<div class="row display-table-row">

<!--side menu-->

<div class="col-md-2 col-sm-1 hidden-xs display-table-cell " id="side-menu">

<h1 class="hidden-xs hidden-sm">Job Tracking</h1>

<?php include("sidemenu.php") ?>

</div>

50 | P a g e
<!--Main content Area-->

<div class="col-md-10 col-sm-11 display-table-cell valign-top ">

<div class="row">

<header id="nav-header" class="clearfix">

<div class="col-md-5">

<nav class="navbar-default pull-left">

<button type="button" class="navbar-toggle collapsed" data-toggle="offcanvas" data-


target="#side-manu">

<span class="sr-only"></span>

<span class="icon-bar"></span>

<span class="icon-bar"></span>

<span class="icon-bar"></span>

</button>

</nav>

<input type="text" class="hidden-sm hidden-xs"id="header-search-field"


placeholder="search for someting...">

</div>

<div class="col-md-7">

<ul class="pull-right">

<li id="wellcome" class="hidden-xs">welcome to your Employer page</li>

<li>

<a href="logout.php" class="logout">

<span class="glyphicon glyphicon-log-out" aria-hidden="true"></span>

Logout

</a>

</li>

</ul>

51 | P a g e
</div>

</header>

</div>

<div class="container">

<form action="postvacancy.php" method="post" enctype="multipart/form-data">

<div class="row">

<?php

if (isset($_GET["postid"]))

$pid=$_GET["postid"];

$_SESSION['pid']=$pid;

$get_job = "SELECT * FROM request where rid='$pid' ";

$run_job = mysqli_query($con, $get_job);

while ($row_job=mysqli_fetch_array($run_job))

$rid=$row_job['rid'];

$jid=$row_job['job_id'];

$jobtitle=$row_job['jobtitle'];

$joblevel=$row_job['leveltype'];

$organname=$row_job['organaization_name'];

$workprocess=$row_job['work_process'];

$requestedno=$row_job['requestedno'];

$description=$row_job['description'];

$date=$row_job['work_starting_date'];

52 | P a g e
?>

<h4>Post Job</h4>

<div class="input-group input-group-icon" style="width:417px; margin-left:42px;">

<input type="text" name="jobid" readonly value="<?php echo "$jid"; ?>" placeholder="job


Id"/>

<div class="input-icon"><i class="fa fa-user"></i></div>

</div>

<div class="input-group input-group-icon" style="width:417px; margin-left:42px;">

<input type="text" name="jobtitle" readonly value="<?php echo "$jobtitle"; ?>"


placeholder="job Name"/>

<div class="input-icon"><i class="fa fa-user"></i></div>

</div>

<div class="input-group input-group-icon" style="width:417px; margin-left:42px;">

<input type="text" name="leveltype" readonly value="<?php echo "$joblevel"; ?>"


placeholder="job Name"/>

<div class="input-icon"><i class="fa fa-user"></i></div>

</div>

<div class="input-group input-group-icon" style="width:417px; margin-left:42px;">

<input type="text" name="organname" readonly value="<?php echo "$organname"; ?>"


placeholder="Organaization Name"/>

<div class="input-icon"><i class="fa fa-user"></i></div>

</div>

<div class="input-group input-group-icon" style="width:417px; margin-left:42px;">

<input type="text" name="workprocess" readonly value="<?php echo "$workprocess"; ?>"


placeholder="Work Process"/>

<div class="input-icon"><i class="fa fa-user"></i></div>

</div>

<div class="input-group input-group-icon" style="width:417px; margin-left:42px;">

<input type="text" name="requestedno" readonly value="<?php echo "$requestedno"; ?>"/>


53 | P a g e
<div class="input-icon"><i class="fa fa-user"></i></div>

</div>

<div class="input-group input-group-icon" style="width:417px; margin-left:42px;">

<label class="sr-only">Work Description</label>

<textarea class="form-control " name="workdescription"><?php echo "$description";


?></textarea>

</div>

<?php } ?>

<label style="margin-left:42px;">* Job Posted Date</label>

<div class="input-group input-group-icon" style="width:417px; margin-left:42px;">

<input type="date" name="posteddate" value="<?php echo date("Y-m-d"); ?>" readonly/>

<div class="input-icon"><i class="fa fa-user"></i></div>

</div>

<label style="margin-left:42px;">* Applicant Registration Date</label>

<div class="input-group input-group-icon" style="width:417px; margin-left:42px;">

<input type="date" name="date1" value="" placeholder="Registration Date"/>

<div class="input-icon"><i class="fa fa-user"></i></div>

</div>

<label style="margin-left:42px;">* Deadline</label>

<div class="input-group input-group-icon" style="width:417px; margin-left:42px;">

<input type="date" name="date2" value="" placeholder="Deadline"/>

<div class="input-icon"><i class="fa fa-envelope"></i></div>

</div>

<label style="margin-left:42px;">* Test Will Be On Date</label>

<div class="input-group input-group-icon" style="width:417px; margin-left:42px;">

54 | P a g e
<input type="date" name="date3" value="" placeholder="Test Will Be On"/>

<div class="input-icon"><i class="fa fa-key"></i></div>

</div>

<div class="input-group input-group-icon" style="width:417px; margin-left:42px;">

<input type="text" name="postedby" value="<?php echo $name; ?>" placeholder="Posted


By"/>

<div class="input-icon"><i class="fa fa-user"></i></div>

</div>

<div class="input-group " style="width:417px; margin-left:42px;">

<input type="submit" name="submit" class="btn btn-primary" value="Post Now!"/>

<div class="input-icon"></div>

</div>

</div>

</form>

<?php

if(isset($_POST["submit"]))

$jobid=$_POST["jobid"];

$jobtitle=$_POST["jobtitle"];

$leveltype=$_POST["leveltype"];

$organname=$_POST["organname"];

$workprocess=$_POST["workprocess"];

$workdescription=$_POST["workdescription"];

$posteddate=$_POST["posteddate"];

$date1=$_POST["date1"];

$date2=$_POST["date2"];

$date3=$_POST["date3"];

55 | P a g e
$postedby=$_POST["postedby"];

$requestedno=$_POST["requestedno"];

$rid=$_SESSION['pid'];

if($con)

$sql="INSERT INTO postvacany VALUES('


','$jobid','$jobtitle','$leveltype','$organname','$workprocess',

'$workdescription','$posteddate','$date1','$date2','$date3','$postedby','$requestedno',' ','$eid')";

$inserted=mysqli_query($con, $sql);

if($inserted)

$sql1="UPDATE request SET status='Posted' WHERE rid='$rid'";

$updated1=mysqli_query($con,$sql1);

echo "<script> alert('Job Posted successfully!') </script>";

echo "<script> window.open('viewrequestedapplicant.php','_self') </script>";

else

echo "<script> alert('Job not Posted successfully!') </script>".mysqli_error($con);

}}

?>

</div>

<div class="row">

<footer id="admin-footer" class="clearfix">

<div class="pull-left"><b>Copyright</b> &copy; 2018</div>

<div class="pull-right">admin system</div>

</footer>

</div>

56 | P a g e
</div>

</div>

</div>

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>

<script src="js/bootstrap.min.js"></script>

<script src="js/default.js"></script>

<?php

else

header("location:admin/index.php");

?>

</body>

</html>

Logout.php

<?php

session_start();

unset($_SESSION['fullname']);

unset($_SESSION['sun']);

unset($_SESSION['spw']);

unset($_SESSION['srole']);

if( !isset($_SESSION['sun']) ||
!isset($_SESSION['spw'])||!isset($_SESSION['fullname'])||!isset($_SESSION['srole']))

header("location:login.php");

?>

57 | P a g e
CHAPTER 5
5.1. Testing procedure

Testing is a process of analyzing a system or system component to detect the deference between
specified (required) and observed behavior. The procedures that the project team used are
described below.

5.1.1. Unit testing

Unit testing is a software verification and validation method in which a programmer tests if
individual units of source code are fit for use. The online job tracking system units are tested one
by one.

5.1.2. Integration 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 online job tracking system is also tested whether every unit is integrated to
each other.

5.1.3. System testing

System testing of software or hardware is testing conducted on a complete, integrated system to


evaluate the system’s compliance with its specified requirements. It is a testing process in which
the aim is to ensure that the overall system works as defined by the requirements.

 Is a testing process in which the aim is to ensure that the overall system works as defined
by the requirements.
 The online job tracking system is functionally tested based on the use case model
developed during the analysis phase.
 The online job tracking system also operationally tested based on requirements.

58 | P a g e
59 | P a g e
5.1.4. Performance Testing

Determines how the system performs on the range of possible environments in which it may be
used. Often the goal is to have the system perform with similar response time and other
performance measures in each environment

The implementation of the online job tracking system is done by decomposing the system into
different subunits that handle different tasks. Each components of the system is tested
independently with the intention that it should meet the functionalities expected.

60 | P a g e
CHAPTER 6

6.Conclusion and Recommendations

6.1. Conclusion
Generally the project team developed a good, simple, interactive and time saving
system. Before this time we thought that developing projects in different programming
languages is a very match difficult work. But at this time the project team ensures or
understand that developing one project for a specific or general use is as simple work as
other simple and usual work. Even if project team has developed a system what I was
proposed to do in some extent there may be limitations on the system.

6.2. Recommendation and Future Enhancement

The project team Recommend for all the programmers who can develop using any
programming language to develop more interactive and best system by correcting
limitations of our system and to develop more good system than us.

In addition to these the project team would like to recommend all the programmers of
information technology professionals that developing projects specially online based
applications is a very hopeful and satisfactory work in the field of programming and all
the people who knows programming languages in some extent should work hard as
possible as you can to do.

61 | P a g e
References
1. Jeffery A. Hoffer & Joey.F.George (Mar 2 2007) Modern System Analysis and Design
Prentice Hall Press Upper Saddle River, NJ, USA ©2007.
2. Jeffery l. Whitten and Lonnie D. Bentley (2007) System Analysis and Design Methods
New York, McGraw-Hill, Inc. NY, USA ©2007.
3. Kenneth E. Kendall & Julie E. Kendall(2002) System Analysis and Design(5th Edition)
4. https://www.visual-paradigm.com/VPGallery/diagrams/Deployment.html
5. https://www.lucidchart.com/pages/uml/component-diagram m
6. https://www.tutorialspoint.com/uml/uml_use_case_diagram.htm

62 | P a g e

You might also like