Professional Documents
Culture Documents
Amir 2 SDD IUB PDF
Amir 2 SDD IUB PDF
for
By
Muhammad Amir Abbas
F21BDOCS1M08012
Session Fall 2021 – 2023
Supervisor
Mr. Omer Ajmal
Supervised by
Mr. Omer Ajmal
Signature
1 Introduction
Employee management system is web based system, to manage employee details easily.
Employee Management System is a system that developed to maintain the details of
employees working in organization. It maintains the information about the personal details of
their employees. An online management system is a web-based management that automates
every step of the employee management process without compromising functionality. Unlike
onsite leave management tools, an online leave management system gives employees the
freedom to request, approve, reject and manage vacation requests from anywhere, at any time
and from any device.
1.1 Purpose
The purpose of this system is to save and manage the data of employees. This is the easy way
to manage the large amount of data with the help of a system. A leave management system is
software that simplified the time off requests for employees. An automated leave
management system makes it easy to track, approve, or deny employee leave requests. In
most of the colleges the leave related information’s are maintained through the letter or paper
work which is very difficult task because as the time passed the information will be lost. The
administrator can view the information of a particular employees’ that for how many days he
was on leave so that he can have the information about the remaining leave period of an
employee.
1.2 Scope
An employee can view and maintain personal data easily. With the help of this system the
large amount of data can be manage easily. This system have a module of leave. This system
can manage the leave module easily. A leave management system helps in recording,
Managing, and tracking employee’ time off requests. Its main objective is to handle
employees’ absence from work doesn’t adversely impact the business.
2 Design Methodology And Software Process Model
2.1 Software Development Life Cycle
The systems development life cycle (SDLC), also referred to as the application development
life cycle, is a term used in systems engineering, information systems and software
engineering to describe a process for planning, creating, testing, and deploying an
information system. The systems development life-cycle concept applies to a range of
hardware and software configurations, as a system can be composed of hardware only,
software only, or a combination of both.
The software development models are the various processes or methodologies that are
being selected for the development of the project depending on the project’s aims and
goals. Many development life cycle models have been developed in order to achieve
different required objectives. The models specify the various stages of the process and the
order in which they are carried out.
The selection of model has very high impact on the testing that is carried out. It will define
the what, where and when of our planned testing, influence regression testing and largely
determines which test techniques to use.
There are various Software development models or methodologies. They are as follows:
1. Waterfall model
2. V model
3. Incremental model
4. RAD model
5. Agile model
6. Iterative model
7. Spiral model
8. Prototype model
Choosing right model for developing of the software product or application is very
important. Based on the model the development and testing processes are carried out.
2.21 Scrutinizing Our Project Model
Selecting accurate model for developing of the software invention or request is very
significant. Founded on the model the expansion and testing processes are accepted out.
As Waterfall model is more traditional and easy to gather requirements and analyzing
system, so we choose the model according to complete the project. This technique
works well for big projects that may take numerous to progress
3 System Overview
The identification of the external entities is based on the information contained in the above
abstract. The Identification of External entities is done in two phases
1) Admin side
2) Employee side
4.1 Refined Entities
After refining the entities, we found the following entities to fit our Business
Logic.
1) Admin side
2) Employee side
4.2 Summary of Requirements (Initial Requirements)
Our purposed system must fulfill the requirements as follow
1) Register
2) Login
3) Logout
4) Manage personal data
5) Request for leave
6) Response on leave
7) Search Module
5 Design Models
The applicable models may include:
• Class Diagram
• Sequence Diagram
• State Transition Diagram
• Data Flow Diagram
5.1 Class Diagram
Class diagram is used to represent the relationship between different classes. In UML class
diagram is represented by a rectangular box having three sections. At the top section we write
the class name, in second section we write the attributes of the class and the last section
contains the operations/methods of the class.
user
type_id
username
password
email
CNIC
dept_id
dept_name
employee
user_type
employee_code department
first_name type_id
last_name department_id description
address department_name
contact
picture
employee_leave
leave_type leave_id
emp_id
type_id leave_type_id
description start_date
end_date
user_id
status
remark
1:Login
2:CheckUser()
3:Execute NonQuery()
4:Execute NonQuery()
5:Response to Execute
6: Get Respons() NonQuery()
7: ShowResult()
A state machine is any device that stores the status of an object at a given time and can
change status or cause other actions based on the input it receives. States refer to the different
combinations of information that an object can hold, not how the object behaves. In order to
understand the different states of an object, you might want to visualize all of the possible
states and show how an object gets to each state, and you can do so with a UML state
diagram.
Each state diagram typically begins with a dark circle that indicates the initial state and ends
with a bordered circle that denotes the final state. However, despite having clear start and end
points, state diagrams are not necessarily the best tool for capturing an overall progression of
events. Rather, they illustrate specific kinds of behavior—in particular, shifts from one state
to another.
Leave Management System
Sign Up
Failed
Take
Apply Leave
Readiness Test
Passed
Select Leave
Categories
Alerts
Successful Application
Review, Select
Feedback
And apply
Level 0 DFDs, also known as context diagrams, are the most basic data flow diagrams.
They provide a broad view that is easily digestible but offers little detail. Level 0 data flow
diagrams show a single process node and its connections to external entities.
Level 1 DFD
Level 1 DFDs are still a general overview, but they go into more detail than a context
diagram. In a level 1 data flow diagram, the single process node from the context diagram is
broken down into sub processes. As these processes are added, the diagram will need
additional data flows and data stores to link them together.
Leave Management
Leave
Management
System User
Salary Management
Login
Zero Level
Generate Employee
Employee Management Report
Generate Notification
Notification Report
Management
Forward
ID System Functional Requirements
Traceability
S1 Login Page Should be Display U1
User is accepted by the System when all the relative
S2 U1
information corrects
8.1 Interfaces
Our application has two interfaces
1) User Side
2) Admin Side
8.2 Hardware Interfaces
1) Dual Core
2) Ram 512 mb
3) Hard 160gb
11 Conclusion
Electronic recruitment is one of the most important developments in today's labor market.
Ignoring the traditional recruiting process, online recruiting has revolutionized the world of
interviewing and recruiting. Although the app aims to provide users with a simple yet logical user-
friendly experience, it has been successful in its completion. This is also specializes in
entrepreneurship with the latest technology used in today's industries. Test results show that is
scalable and can handle heavy loads. This is also geographically limited as anyone from anywhere
in the world can register on this and find or select module about his needs. By developing this
project with the main goal of learning new technologies, I gained extensive experience in
understanding technologies like Node JS not only at the implementation level but also in the
context of these technologies. Similarly, Angular JS learned and saw how a front-end tool can
make your life much easier with front-end development. Some of the biggest challenges in this is
understanding and implementing the callback/promise concepts. I found many advanced
technologies to debug, test and run applications. It has always added to my practical knowledge a
wide range of techniques that would be beneficial to the industry after graduation.
12 Benefits
• The project is determined by the system functions offered to the user. The benefits of this
project are as follows: -
• This project allows the user to enter data through simple and interactive forms. This is
very convenient for the customer to enter the required information very easily.
• The user is primarily concerned about the correctness of the data, whatever is entered.
There are checks at all stages of any new creation, data entry or update process so that the
user cannot enter invalid data, which could lead toproblems at a later date.
• Sometimes in the later stages of using the project, the user may find that he needs to
update some information that he previously entered. There are options to update the
records. In addition, there are limitations that the primary data field cannot be changed.
This keeps the data valid for longer.
• The user is given the opportunity to check the records he has previously entered. He can see
the records he wants with the variety of options he offers.
• The user gets links from each part of the project through frames, so that he can move from
one option in the project to another according to the requirements. No doubt this is simple
and very easy to use. This means that we can say that the project is user-friendly, and it is one
of the mainconcerns of any good project.
• Storing and retrieving data becomes faster and easier to maintain because data is stored
systematically and in one database.
• Preparing inspection results becomes much faster because the user can simultaneously view
records.
• Easier and faster data transfer thanks to the latest computer and communication technologie