CHAPTER FOUR
SYSTEM DESIGN
4.0 INTRODUCTION
System Design is the process of describing the components, interfaces and
architecture of a system that meet or satisfy the required specifications. It defines how
the system operates and interacts with external users with the intention of describing
how the system is in nature and what it does which in general captures the system’s
behavior.
System design is the process of designing the elements of a system such as the
architecture, modules and components, the different interfaces of those components
and the data that goes through that system.
4.1 DESIGN GOALS
The purpose of system design is to have a better understanding of the organization’s
needs and the requirements and to create a documented set of specifications to enable
the implementation be consistent with architectural entities as defined in models and
views of the system architecture.
The goal of the system design is to produce a model or representation of a system,
which can be used later to build that system. The produced model is called the design
of the system. The design of a system is essentially a blueprint or a plan for a solution
for the system.
Three important design goals are:
4.1.1 User-friendly
Customer will use the forms for their various transactions i.e. for adding new routes,
viewing the routes details. Also the Customer wants the reports to view the various
transactions based on the constraints. These forms and reports are generated as user-
friendly to the Client.
4.1.2 Reliability
The package wills pick-up current transactions on line. Regarding the old
transactions, User will enter them in to the system.
1
4.1.3 Maintainability
The system called the ELMS uses the 2-tier architecture. The 1st tier is the GUI,
which is said to be front-end and the 2nd tier is the database, which uses My-Sql,
which is the back-end.
The front-end can be run on different systems (clients). The database will be running
at the server. Users access these forms by using the user-ids and the passwords.
4.2 DATABASE DESIGN
The relational database model was used in the design of the database for the EMS
application. According to Lit win P., “The basic idea behind the relational model is
that a database consists of a series of un-ordered tables (or relations) that can be
manipulated using non – procedural operations that return tables”. The benefits of a
database that has been designed according to the relational model are:
1. Data entry, updates and deletions will be efficient.
2. Data retrieval, summarization and reporting will also be efficient.
3. Since the database follows a well – formulated model, it behaves predictably.
4. Since much of the information is stored in the database rather than in the
application, the database is somewhat self-documenting.
5. Changes to the database schema are easy to make.
4.3 ENTITY RELATIONSHIP DIAGRAM (ERD)
The relation upon the system is structure through a conceptual ER diagram which not
only specifics the existential entities but also the standard relation through which the
system exists and the cardinalities that are necessary for the system state to continue.
The entity relationship diagram depicts the relationship between the data objects. The
entity relationship is the notation that is used to conduct the data modeling activity the
attribute of each data object noted is the ERD can be described resign a data object
description.
2
FIGURE
3.3 ENTITY RELATIONSHIP DIAGRAM (ERD)
FIGURE 4.1 Data Flow Diagram (DFD)
3
4.3.1 DE-NORMALIZATION OF ENTITY RELATIONAL DIAGRAM
Demoralization is the process of taking a normalized database and modifying
table structures to allow controlled redundancy for increased database
performance.
A Database is a collection of interrelated data stored with a minimum of redundancy
to serve many applications. The database design is used to group data into a number
of tables and minimizes the artificiality embedded in using separate files. The tables
are organized to:
Reduced duplication of data.
Simplify functions like adding, deleting, modifying data etc..,
Retrieving data
Clarity and ease of use
More information at low cost
4.3.2. NORMALIZATION
Database designed based on the E-R model may have some amount of inconsistency,
ambiguity and redundancy. To resolve these issues we have to do some amount of
refinement is required. This refinement process is called as Normalization.
Normalization is built around the concept of normal forms. A relation is said to be in
a particular normal form if it satisfies a certain specified set of constraints on the kind
of functional dependencies that could be associated with the relation. The normal
forms are used to ensure that various types of anomalies and inconsistencies are not
introduced into the database.
As mentioned previously, normalization technique is based on strong mathematical
foundation. Basically in software industry four normal forms are used to design the
database. Before getting to know the normalization techniques in detail, let us define a
few building blocks which are used to define normal forms.
Objectives of Normalization
The objectives of normalization process are:
To make it feasible to represent any relation in the database.
To free relations from undesirable insertion, update and deletion
anomalies.
4
4.4 THE DATA DICTIONARY
A data dictionary is a collection of descriptions of the data objects or items in a data
model for the benefit of programmers and others who need to refer to them.
A data dictionary can be consulted to understand where a data item fits in the
structure, what values it may contain, and basically what the data item means in real-
world terms .it contains information about tables, fields, the table contained data type,
primary key, index, the join which have been established, between those tables
referential integrity cascades update, cascades delete, data dictionary also called
“meta data”.
Admin
Field Type Null Key Default
Id int(11) NO PRI (NULL)
Username varchar(100) NO (NULL)
Password varchar(100) NO (NULL)
updationDate Timestamp NO 0000-00-00
00:00:00
Table 4.1: Admin
Departments
Field Type Null Key Default
Id int(11) NO PRI (NULL)
Department Name varchar(150) YES (NULL)
DepartmentShortNa varchar(100) NO (NULL)
me
Department Code varchar(50) YES (NULL)
Creation Date Timestamp YES CURRENT_TIMES
TAMP
Table 4.2: Departments
5
Employees
Field Type Null Key Default
Id int(11) NO PRI (NULL)
EmpId varchar(100) NO (NULL)
First Name varchar(150) NO (NULL)
Last Name varchar(150) NO (NULL)
Email ID varchar(200) NO (NULL)
Password varchar(180) NO (NULL)
Gender varchar(100) NO (NULL)
Dob varchar(100) NO (NULL)
Department varchar(255) NO (NULL)
Address varchar(255) NO (NULL)
City varchar(200) NO (NULL)
Country varchar(150) NO (NULL)
Phone number char(11) NO (NULL)
Status int(1) NO (NULL)
RegDate timestamp NO CURRENT_TIMESTAMP
Table 4.3: Employees
6
Leaves
Field Type Null Key Default
Id int(11) NO PRI (NULL)
Leave Type varchar(110 NO (NULL)
)
To Date varchar(120 NO (NULL)
)
From Date varchar(120 NO (NULL)
)
Description medium text NO (NULL)
Posting Date timestamp NO CURRENT_TIMESTAM
P
AdminRemark medium text YES (NULL)
AdminRemarkDat varchar(120 YES (NULL)
e )
Status int(1) NO (NULL)
IsRead int(1) NO (NULL)
Emp id int(11) YES MUL (NULL)
Table 4.4: Leaves
Leave type
Field Type Null Key Default
Id int(11) NO PRI (NULL)
Leave Type varchar(200) YES (NULL)
Description medium text YES (NULL)
Creation Date timestamp NO CURRENT_TIMESTAMP
7
Table 4.5: Leave type
4.5 FORM DESIGN
Form design is where the developer of the system is deeply explains this system and
how forms of the system are working together by observing the sequential flows, In
the design we will talk the main pages and the operator will use these forms, including
textboxes , labels , and dropdown.
The form design will be consist of the following forms:
Home page For Employee Leave Management System
DESCRIPTION: This is the home page for employee management system, form
where employee, admin and manager can login.
Output for Home page:
Figure 4.4: Homepage
Login Page for Employee
DESCRIPTION: This is an employee login page from where any employee can
login to the website by entering the correct username and password.
Output for Employee Login:
8
Figure 4.5: login
Employee Dashboard
DESCRIPTION: This employee dashboard from where employee can view their
details. By clicking on “Employee Details” any employee can view their personal
details. By clicking on “Salary Details” they can view the details of their salary. By
clicking on a “Leave Details” one employee can view all the leave details of other
employee as well because, the leave history of other employee will help them to
decide for their leave, Overtime (OT) work etc. By Clicking on “Leave Request” an
employee can request for their leave. And if you click logout, it will redirect you to
homepage of employee management system.
Coding For Employee Dashboard
Figure 4.6: Employee Dashboard
Employee View Salary Details
DESCRIPTION: From here employee can see their salary details, like their basic
pay, dearness allowance (DA), house rent allowance (HRA), and their total pay.
Employee can also print their salary details records.
Output for View Salary Details
9
Figure 4.7: View Salary
Employee Master
DESCRIPTION: Employee Master allows a manager to add an employee, salary,
leave status, to view any employee details, their salary and the notification.
Output For Add Employee
Figure 4.8: Employee Master
Figure 4.8: Add employee
Employee Leave Request
DESCRIPTION: Manager can view the leave that has been send by an employee,
manager can also perform the operation like, and manager can either approve or reject
the leave and provide the reason.
Output for View Leave Request
10
Figure 4.9: Leave request
4.6 REPORT DESIGN
In this scope of Report design is we shall deeply explains the decision making
support system tasks and how table and forms of the system are working together by
observing the sequential flow.
Although many organizations strive to reduce the flow of paper
and printed reports and even necessary reports, like other
elements of the user-computer, interface, should be attractive and
must include the information that user needs.
From a user’s point of view, a report with too little information is off
no value. The essential goal is to much the report to user’s specific
information needs.
11