61
Requirement Engineering and Process model CHAPTER ONE Introduction Human Resource Management System of University is a large database system which can be used for managing the regular activities of a University. Human Resource Management System of University allows users to store almost all the University Employee information electronically. 1.1 Motivation We have chosen database as our project area because of our well understanding of database and programming rather than other fields like Networking, Image Processing, Graphics etc. We have decided to develop a University management database because University Management System is a crucial area from service delivery perspective and people have started realizing the importance of process automation in University’s sand it’s IT application that is used to empower Universities in managing their activities. University Management System is configurable and can be configured to meet most individual University’s needs. It makes University staff's life easier than ever. Using University Management System, finding university’s employee information is just a few seconds away which might have cost hours, or even days, manually. Now a day, in our country most of the Universities are running all their managerial activities manually and the problem of a manual system is that it very time consuming, inefficient and error prone. That’s 1

Project final doc (leon)3

Embed Size (px)

DESCRIPTION

 

Citation preview

Page 1: Project final doc (leon)3

Requirement Engineering and Process model

CHAPTER ONE

Introduction

Human Resource Management System of University is a large database system which can be used

for managing the regular activities of a University. Human Resource Management System of

University allows users to store almost all the University Employee information electronically.

1.1 Motivation

We have chosen database as our project area because of our well understanding of database and

programming rather than other fields like Networking, Image Processing, Graphics etc. We have

decided to develop a University management database because University Management System is

a crucial area from service delivery perspective and people have started realizing the importance of

process automation in University’s sand it’s IT application that is used to empower Universities in

managing their activities. University Management System is configurable and can be configured to

meet most individual University’s needs. It makes University staff's life easier than ever. Using

University Management System, finding university’s employee information is just a few seconds

away which might have cost hours, or even days, manually. Now a day, in our country most of the

Universities are running all their managerial activities manually and the problem of a manual

system is that it very time consuming, inefficient and error prone. That’s why we have chosen the

automation of University Management System as our project topics.

1.2 Overview

School Management System is imagined by first truly scalable, windows-based school management

package with the power to revolutionize the way that schools are run. School management

software is more than just a technology solution - it is an educational system that will improve the

way school is managed.

The School Management System basically divided into 4 modules such as Office Management,

Academic Management, Library Management and Finance & Accounts Management. The functions

of these modules are given below.

1

Page 2: Project final doc (leon)3

1.2.1 Office Management

This module starts functioning once an employee gets a job into the university. The module

“employee information” the complete profile of an employee in a very systematic way from

personal information to alumni information. The module helps the human resource staff to save

much of their time in data entry and record maintenance.

Some functions of office management module are given below:

New Recruitment process.

Maintaining employer’s data.

Issuing Leave, Transfer to the employees.

Providing information like category wise list of employees, full time as well as part time.

1.3 Objective

The main objective of this project is to develop an automation system for managing university

activities by applying software engineering principles, tools and techniques in an efficient way. We

have chosen a reputed private University named “Eastern University” (EU) as our study case.

1.4 Outline

Chapter 1 will discuss a general overview of the nature and purpose of the software.

Chapter 2 will discuss the Requirement Engineering & Process Model.

Chapter 3 will discuss the Existing System Analysis & Proposed Database System for School

Management.

Chapter 4 will discuss the Project Estimation.

Chapter 5 will discuss the System Design & Tools required for this project.

Chapter 6 will discuss the Implementation & Testing procedure of this project.

Chapter 7 will discuss the Conclusion & Future Scope of this project. CHAPTER TWO

Requirement Engineering & Process Model

Introduction

2

Page 3: Project final doc (leon)3

Requirement engineering helps software engineers to better understand the problem they will

work to solve. It encompasses the set of tasks that lead to on understanding of what the business

impact of the software will be, what the customer wants, and how end-users will interact with the

system. Requirement engineering must be adapted to the needs of the process, the project, the

product and the people doing the work. From a software process perspective requirement

engineering is a software engineering action that begins during the communication activity and

continues into the modeling activity.

2.1 Requirement Engineering

Requirement engineering is the primary major activity following the completion of a statement of

need ensuing from the predevelopment process in a software process. Requirement engineering is

defined in terms of its major activities –

Perceptive problems

Solution resolve

Specification of a solution that is testable, understandable, maintainable and that satisfies

project quality strategy.

The principle of a reasonable requirement engineering process is software requirements

specification. Requirement engineering process initiates with requirements of problem analysis.

Requirements engineering process is accomplished through the execution of seven distinct

functions: inception, elicitation, elaboration, negotiation, specification, validation and management

are given below.

2.1.1 Inception

At project inception, software engineers ask a set of context-free question to the customer. The

intent is to establish a basic understanding of the problem, the people who want a solution, the

nature of the solution that is desired and the effectiveness of preliminary communication and

collaboration between the customer and the developer [1].

2.1.2 Elicitation

3

Page 4: Project final doc (leon)3

It certainly seems simple enough-ask the customer, the users, and others what objectives for the

system or product are, what is to be accomplished, how the system or product fits into the needs

of the business, and finally how the system or product is to be used on a day-to-day basis.

2.1.3 Elaboration

The information obtained from the customer during inception and elicitation is expanded and

refined during elaboration. The end result of elaboration is an analysis model that defines the

informational, functional and behavioral domain of the problem.

2.1.4 Negotiation

The requirement engineer must reconcile these conflicts through a process of negotiation.

Customers, users and other stakeholders are asked to rank requirements and then discuss conflicts

in priority.

2.1.5 Specification

The specification is the final work product produced by the requirements engineer. It serves as the

foundation for subsequent software engineering activities and describes the function and

performance of a computer-based system and the constraints that will govern its development.

2.1.6 Validation

Requirement validation examines the specification to ensure that all software requirements have

been stated unambiguously that inconsistencies, omissions and errors have been detected and

corrected and that work products conform to the standards established for the process, the

project and the product.

2.1.7 Requirement Management

The requirement management is a set of activities that help the project team to identify, control

and track requirements and changes to requirements at any time as the project proceeds.

Requirement management begins with identification and each requirement is assigned a unique

identifier.

2.2 Risk Analysis

4

Page 5: Project final doc (leon)3

Risk is the chance that outcomes will not turn out as planned and risk analysis are a series of steps

that help a software team to understand and manage uncertainty [1].

2.2.1 Software Risk

Risk always involves two characteristics

Uncertainty – the risk may or may not be happen that is, there are no 100% probable risks.

Loss – if the risk becomes a reality, unwanted consequence or losses will occur.

When risks are analyzed, it is important to quantify the level of uncertainty and the degree of loss

associated with each risk. To accomplish this, different categories of risks are considered.

Projects risk threatens the project plan. That is, if projects risk become real it is likely that

project schedule will slip and that cost will increase. Projects risk identifies potential

budgetary, schedule, personnel (staffing and organization), resource, stakeholder, and

requirements problem and their impact on a software project.

Technical risks threaten the quality and timeliness of the software to be produced. If a

technical risk becomes a reality, implementation may become difficult or impossible.

Business risks threaten the viability of the software to be built.

2.2.2 Risk Identification

Risk identification is a systematic attempt to specify threats to the project plan (Estimates,

schedule, resource loading etc). One method for identifying risk is to create a risk item checklist

that can be used for risk identification and focuses on some subset of known and predictable risks

in following generic subcategories [1].

Product size – risk associated with the overall size of the software to be built.

Business impact – risks associated with constraints imposed by management or the

marketplace.

Customer’s characteristics – risk associated with the sophistication of the customer and

the developer’s ability to communicate with the customer in a timely manner.

Process definition – risk associated with the degree to which the software process has

been defined and is followed by the development organization.

Development environment – risk associated with the availability and quality of the tools to

be used to build the product.

5

Page 6: Project final doc (leon)3

Staff size and experienced – risks associated with the overall technical and project

experienced of the software engineers who will do this work.

2.2.3 Risk Mitigation, Monitoring and Management

All the risk analysis activities presented to this point have a single goal – to assist the project team

in developing a strategy for dealing with risk. An effective strategy must consider three issues: Risk

avoidance, Risk monitoring and Risk management contingency planning.

To mitigate the risk, project management must develop a strategy for reducing turnover. Among

the possible steps to be taken are-

Meet with current staff to determine causes for turnover.

Mitigate those causes that are under our control before the project start.

Once the project commences, assume turnover will occur and develop technique to ensure

continuity when people leave.

Organize project team so that information about each development activity is widely

dispersed.

Define documentation standard and establish mechanisms to ensure that documentations

are developed in a timely manner.

Conduct peer reviews of all work.

Assign a backup staff member for every critical technology.

The project manager monitors factors that may provide an indicator of whether the risk is

becoming more or less likely. The following factors can be monitored:

General attributes of team members based on the project pressures.

The degree to which the team has jelled.

Interpersonal relationships among team members.

Potential problems with compensation and benefits.

6

Page 7: Project final doc (leon)3

The flowchart of risk analysis is given in Figure 2.1.

Figure 2.1: Flowchart of Risk Analysis

Here, Fig 2.1 shows the step by step functions of risk analysis. In step-1 risks are identified, step-2

analyzes those risks, step-3 prioritizes those risks according to some criteria, step-4 designs plan for

those risks, and step-5 monitors risk and mitigation the plan. If any new risk occurs then again step-

2 is executed and same procedures (discussed above) are followed. If there is no risk occurs then

all risks are solved.

2.3 Software Process Models

A structured set of activities are required to develop a software system. A software process model

is an abstract representation of a software process. Each process model represents a process from

a particular perspective that only provides partial information about the process.

There are several popular process models such as

Waterfall Model

Incremental Model

7

Page 8: Project final doc (leon)3

Rapid Application Development

Prototyping Model

Spiral Model

Extreme Programming (XP)

2.3.1 Waterfall Model

Among these, the Waterfall Model [2] is followed in this project. It is a sequential software

development model (a process for the creation of software) in which development is seen as

flowing steadily downwards (like a waterfall) through the phases of Requirements Analysis and

Definition, System and Software Design, Implementation and Unit Testing, Integration and System

Testing and Operation and Maintenance.

The phases are described in next page:

a) Requirements Analysis and Definition: The system’s services, constraints and goals are

established by consultation with system users. They are then defined in detail and serve as

a system specification.

b) System and Software Design: The system’s design process partitions the requirements to

either hardware or software systems. It establishes overall system architecture. Software

design involves identifying and describing the fundamental software system abstractions

and their relationships.

c) Implementation and Unit Testing: During this stage, the software Design is realized

as a set of programs or program units. Unit testing involves verifying that each unit

meets its specification.

d) Integration and System Testing: The individual program units or programs are integrated

and tested as a complete system to ensure that the software requirements have been met.

After testing, the software system is delivered to the customer.

e) Operation and Maintenance: Normally (although not necessarily) this is the longest life-

cycle phase. The system is installed and put into practical use. Maintenance involves

correcting errors which were not discovered in earlier stages of the life cycle and improving

8

Page 9: Project final doc (leon)3

the implementation of system units and enhancing the system’s services as new

requirements are discovered.

The flowchart of the Waterfall Model is given in Figure 2.2.

Figure 2.2: Flowchart of Waterfall Model

Some major advantages and disadvantages of Waterfall Model are given below.

Advantages:

Having fewer errors.

System requirements are identified before programming starts.

Changes are minimized to the requirements as the project proceeds.

Disadvantages:

Most time consuming process model.

Huge amount of paperwork is necessary.

Does not allow going next stage before finishing the previous stage.

2.4 Summary

9

Page 10: Project final doc (leon)3

This chapter is presented to provide the readers a clear view of the SDM. When developing the

software a software developing model has to be chosen. For this software the Waterfall Model has

been chosen. Risk analysis and management are a series of steps that help a software team to

understand and manage uncertainty.

CHAPTER THREE

Existing System Analysis & Proposed System

Introduction:

Requirement analysis is a software engineering task that bridges the gap between system

engineering and software design. It allows the software engineer to refine the software allocation

and builds the models of the data, functional and behavioral domains that will be treated by

software. Among the entire software process models that have been discussed in the chapter 2,

the Waterfall process model has been chosen for this particular project because of its relatively

simple structure. Another feature of this model is that it is easy to follow.

3.1 Existing System Analysis

As we told in chapter-1 that we have chosen a university named Eastern University as our study

case. It is situated at Dhanmondi in Dhaka and was established in 2002. The human resource

management system of eastern university manage the recruitment, training, promotion, transfer,

retirement etc of an employee.

The existing system analysis is the first step for requirement analysis. Currently the existing system

is running manually.

3.1.1 Some Major Functionalities of the Existing System

Keep record of all the previous and current employees’ information.

Search a particular employee.

Update the status of employees.

Add, delete and modify the information of employee.

Keep record of all the salary of employee.

Add or modify the salary sheet.

10

Page 11: Project final doc (leon)3

3.1.2 Drawbacks of the Existing System

The manual system is very slow considering the growth of data and its vast management

specification of the system required.

The amount of the data is increasing day-by-day. But the system needs more manpower to

get the whole management intact, though still it remains very slow.

Any required information needed by authority need to wait a long delay of time and linked

information searching is a cumbersome and tedious work to do.

Updating any information is cost incuses because it requires checking of multiple files.

The updating becomes unreliable due to mistakes sometimes.

3.2 The Proposed System

The Proposed system means a new system that should have the ability to overcome the problems

of existing one. After analyzing the problem of existing system, the following modules for the

proposed system have been established.

3.2.1 Some Major Advantage of the Proposed System

Manage your own Security. The system will be user friendly with the informative graphical user interface. The system can give current and updated information to its user group. This system will save the time and work load to the management. The system will provide security facility to restrict unauthorized access. The system will provide the option to view and print all the necessary reports. The system will give the option to search necessary information.

3.2.2 User Groups of the Proposed System

Two types of user groups have been proposed for this project. These are Administrative user and

Normal user.

Administrative user

o Add new user and give authority to a normal user.

o Add, modify and delete a employee and all of their relevant information.

11

Page 12: Project final doc (leon)3

o Generate all kinds of report.

o Check all kinds of information.

Normal User

o Add employee information.

o Generate authorized report.

o Generate cash transaction.

o Add, modify, delete and search authorized information.

3.3 Summary

This chapter has discussed about the Existing System Analysis and Proposed System. Next chapter

will discuss about the Project Estimation.

CHAPTER FOUR

Project Estimation

Introduction

Before starting the project the project manager and software team must estimate the works to be

done, the resources that will be required and finally the time that will be elapsed from start to

finish.

4.1 Methodology

When the software process model had selected, the common process framework had been

adapted to it. A Common Process Framework is established by defining a small number of

framework activities that are applicable to all software projects regardless of their size or

complexity. Common Process Framework consists of several software engineering activities [1]:

Customer Communication

Planning

Risk Analysis

Analysis and Design

Engineering:

a) Coding

b) Testing

Deployment

12

Page 13: Project final doc (leon)3

Customer communication is required to perform requirements engineering activities. To engineer

the requirements of software the following customer communication activities have been

performed:

Reviewed the customer request.

Conducted several informal and formal meeting with the authority.

Developed a statement of scope and prepared the list of features of DST.

4.2 Task Scheduling

Software project scheduling is an activity that distributes estimated effort across the planned

project duration by allocating the effort to specific software engineering task or activities.

There ware four managerial charts we had to consider for our project and the project manager was

responsible for observing all. The managerial chats are:

1. Activity Chart

2. Human Resource Requirement Chart

3. Physical Facility Requirement Chart

4. Finance Management Chart

4.2.1 Activity Chart

Activity chart shows which task has to do when and how much time will be allocated for each

activity. As we told in chapter 3 that we have chosen waterfall process model for our project and

first we collected the requirements from the DST authority. Then we planned & gathered risk for all

of those requirements and after analyzing all requirements the design part started. The coding and

testing part has been completed one after another.

The activity chart of our project is given in Fig 4.1.

13

Page 14: Project final doc (leon)3

Fig 4.1: Activity Chart

4.2.2 Human Resource Requirement

May people can be involved in a single software project, in our project Md. Mahfuzul Islam and

Siddika Mustafiz ware responsible for completing the project. To develop the project we had acted

as system analyst, database administrator, programmer as well as tester but two messengers had

to hire. First the customer communicator person had collected the requirement then the analyst

analyzes current system and related risk. After analyzing the current system, a new system had

proposed and deigned. The programmer implements the software by completing the code. For any

software project, the most important and difficult part is to finding errors. The tester was

responsible to do so. The most important role was the project menagerie and this person involved

to the whole project duration. In case of a real life situation, the following chart depicts the human

resource requirement for this project and the time duration for each of the resource personnel

required.

Fig 4.2: Human Resource Chart

Duration:

1. Project Manager – 211.25 days

2. Customer Communication Personnel – 28.25 days

14

Page 15: Project final doc (leon)3

3. Planning & Scheduling Personnel – 34.25 days

4. Risk Analysis Personnel – 29.75 days

5. Analysis & Design Personnel – 59.25 days

6. Coder – 25.50 days

7. Tester – 31.25 days

8. Deployment Personnel – 3 days

9. Messenger – 211.25 days

4.2.3 Physical Facility Requirement

The physical facility requirement chart shows the physical facilities needed during the development

of the project and also for how long each resource is required.

Hardware Requirements:

# Personal Computer: 2

Processor : Pentium dual core 2.5GHz

RAM : 3GB

Hard Disk : 320GB

# Personal Printer: 1

Software Requirements:

Microsoft Widows XP

Microsoft Access 2007 (for developing back end)

C#.Net (for developing front end)

Crystal Report 10.0 (for reporting)

Microsoft Word 2007 (used as editor)

Microsoft Visio 2007( for drawing charts)

The physical facility chart of our project is given in Fig 4.3 in next page.

15

Page 16: Project final doc (leon)3

Fig 4.3: Physical Resources Chat

4.3 Software Cost Estimation

For the estimation of the total cost of software, several categories of cost should be considered.

After calculating the total cost estimation of our project, a cost benefit analysis had been

performed to observe whether our project is feasible or not.

The software development cost for this project includes –

Human Recourse Cost

Physical Facilities includes:

o Computer/Printer Cost, Software Cost, Building Rent, Furniture, Decoration/

Others

4.3.1 Human Recourses Cost Estimation

Monthwise Expenditure Ledger:

Table 4.1: Human Resources Cost Estimation

Name of

Required

People

No. of

Required

People

Salary Tk.

( Per

Month)

1st

Month

2nd

Month

3rd

Month

4th

Month

5th

Month

6th

Mont

h

7th

Month

Project Manager

1 15000 15000 15000 15000 15000 15000 15000 15000

Customer CommunicationPersonnel

1 5000 4708

(28.25)

days

- - - - - -

Planning 1 8000 466 8000 666 - - - -

16

Page 17: Project final doc (leon)3

& Scheduling Personnel

(1.75)

Days

(2.5)

days

Risk Analysis Personnel

1 8000 - - 7333

(27.5)d

ays

600

(2.25)d

ays

- - -

Analysis & Design Personnel

1 12000 - - - 11100

(27.75)

days

12000 600

(1.5)d

ays

-

Coder 1 8000 - - - - - 6666

(25)da

ys

-

Tester 1 8000 - - - - - 933

(3.5)d

ays

7400

(27.75)

days

Deployment Personnel

1 5000 - - - - - - 500

(3)day

s

Messenger 2 1000 1000 1000 1000 1000 1000 1000 1000

Total 21174 24000 23999 27750 28000 24199 23900

4.3.2 Physical Facilities Cost Estimation

1. Building rent per month = 10000 Tk

House usage = 7 month

Approximate House rent = (10000* 7) = 70000 Tk

2. Decoration / Others (electric, gas, water, news paper & others)

For 7 month per month cost is =1000 Tk

Approximate cost (1000* 7) = 7000 Tk

3. Furnishers cost (sofa set, chair-Tables, air cooler etc) =15000 Tk

Usage = 7 months

Furnishers lifetime = 5 years

Approximate Furnishers cost = (15000/60) * 7 = 1750 Tk

4. Desk top PC & Printer

17

Page 18: Project final doc (leon)3

Computer & printer cost = 31620 Tk

Required number 2 computer, 1 Pinter

Total life time=4 years

Usage = 7 months

Approximate cost = (31620/48)*7*2*1= 9222 Tk

Software1. WinXP Operating System = $299 = 20930 Tk (Includes MS Word 2003)

Software usage = 7 month

Software lifetime = 5 years

Approximate Software cost = (19435/60) * 7 = 2267 Tk

2. MS Access 2007= $217 = 15190 Tk

Software usage = 2 month

Software lifetime = 5 years

Approximate Software cost = (11700/60) * 2 = 390 Tk

3. C#.net $109 = 7630 Tk

Software usage = 2 month

Software lifetime = 5 years

Approximate Software cost = (7,085/60) *2 = 236 Tk

4. Microsoft Visio 2007= $206 = 14420TkSoftware usage = 2 monthSoftware lifetime = 5 yearsApproximate Software cost = (21,385/60) *2= 712 Tk

5. Cristal Report 10.0 $100 = 7000TkSoftware usage = 2 monthSoftware lifetime = 5 yearsApproximate Software cost = (6500/60) *2= 216 Tk

4.4 Cost Benefits Analysis

We assume that our project life time is about 5 years and we have estimated that our project need

about 1,88,790 Taka to complete the software. So according to cost benefit analysis we had to

check our project is feasible or not.

Feasibility Calculations:

Initial investment, F0 = -1,88,790 and IRR (Internal Rate of Return) i = 15%

PV1, Present value for F1 = = = 43,478.26

18

Page 19: Project final doc (leon)3

PV2, Present value for F2 = = = 90,737.24

PV3, Present value for F3 = = = 98,627.44

PV4, Present value for F4 = = = 68,610.39

PV5, Present value for F5 = = = 39,774.14

NPV (Net Present Value) = F0 + PV1 + PV2 + PV3 + PV4 + PV5

= -1, 88,790+ 43,478.26+ 90,737.24+ 98,627.44+ 68,610.39+ 39,774.14

= - 1, 88,790 +3, 41,227.47

= 1,52,437 > 0

Our calculated NPV is getter than zero so, we can say that our project is economically feasible.

4.5 Summary

This chapter has discussed about the Project Estimation and cost benefit analysis. Next chapter will

discuss about the System Design and Tools of the project.

CHAPTER FIVE

System Design &Tools

Introduction

System Design is the most creative and challenging phase in software development. System Design

describes the final system and the process by which it is developed. It refers to the technical

specifications that can be applied to implement the new system.

5.1 Analysis Modeling

To accomplish analysis model objectives we had to consider some basic schema such as – Data

Flow Diagram (DFD), Entity Relationship Diagram (ERD) and Normalized Schema (NS).

19

Page 20: Project final doc (leon)3

5.1.1 Data Flow Diagram (DFD)

Data Flow Diagram is a picture of the movement of data between external entities and the process

and data stores within a system [2]. DFD helps the analyst to understand the entire system and

helps in preparing the coding phase. There are two standards for drawing DFD:

The DeMarco & Yourdan Symbol set

Gane & Sarson DFD Symbol set

The Gane & Sarson Symbol set have been used to draw the DFD for our project.

In our project four symbols ware used for drawing the DFD. These are:

Source / Sink: The origin and / or destination of data, sometimes refers to as external entities.

Process: The work of the actions performed on so that they are transformed, stored, or

distributed.

Data store: Data at rest, which may take the form of many different physical representation.

Data Flow: Indicate from where to where data is flowing.

Figuer: DFD Symbol

The preparation of DFDs can go upto several levels deep. In each level the breakdown of a process of the previous level is shown in details.

5.1.1.1 The Context DFD of Automated Human Resource Management System:

20

Page 21: Project final doc (leon)3

5.1.1.2 The Level 2 DFD (File Management Processing System):

21

Page 22: Project final doc (leon)3

5.1.1.3 The FDD of Automated Human Resource Management System :

5.1.1.4 The Level 3 DFD (Department):

22

Page 23: Project final doc (leon)3

5.1.1.5 The Level 3 DFD (Faculty):

5.1.1.6 The Level 3 DFD (Designation):

23

Page 24: Project final doc (leon)3

5.1.1.7 The Level 3 DFD (Leave):

5.1.1.8 The Level 3 DFD (Promotion):

24

Page 25: Project final doc (leon)3

5.1.1.9 The Level 3 DFD (Transfer):

5.1.1.10 The Level 3 DFD (Training):

25

Page 26: Project final doc (leon)3

5.1.1.11 The Level 3 DFD ( Retirement):

5.1.1.12 The Level 3 DFD (Termination):

26

Page 27: Project final doc (leon)3

5.1.2 System Flow Chart of Human Resource Management System:

By this System Flow chart a user will able to work on with the Human Resource Management

System easily. Here in this system flow chart show every points and fields of this software.

5.1.2.1 System flow chart of HRM System Main

Figure 5.13: System flow chart of HRM System

5.1.2.2 System Flow Chart of File Maintenance

27

Page 28: Project final doc (leon)3

Figure 5.14: System Flow Chart of File Maintenance

28

Page 29: Project final doc (leon)3

5.1.2.3 System Flow Chart of Processing

Figure 5.15: System Flow Chart of Processing

29

Page 30: Project final doc (leon)3

5.1.2.4 System Flow Chart of Report (Output)

Figure 5.16: System Flow Chart of Report

5.1.2.5 System Flow Chart of Query

Figure 5.17: System Flow Chart of Search

5.1.3 Entity Relationship Diagram (ERD)

A detailed, logical representation of the entities, associations, and elements for an organization or

a business area is known as E-R model and the graphical representation of E-R model known as

Entity Relationship Diagram [2]. It will be use for designing the database. It will make a clear

understanding of the database for the system.

Some of the basic component we have used in ERD are given below:

Entity:

An entity is designated by a rectangle.

30

Page 31: Project final doc (leon)3

Relationship:

A relationship is designated by a diamond.

Attribute:

Attributes are the piece of information describing a particular entity.

Fig 5.18: ERD Symbol

Cardinality:

The number of instances of one entity that can be associated with each instances of other entity.

The cardinality ratios are:

1 One to One: ( | …. | )

2 One to Many: ( | …. < )

3 Many to Many: ( > ….. < )

Primary Key (PK)

A primary key is an attribute or a collection of attributes that allow us to identify an entity

uniquely.

Foreign Key (FK)

A foreign key is an attribute of a relation which refers to an exciting attribute of another relation.

Fig 5.19 shows the partial ERD of the HRM system.

31

Page 32: Project final doc (leon)3

Fig 5.19: Partial ERD of HRM System

32

Page 33: Project final doc (leon)3

5.1.4 Data Dictionary

Table 5.1: Tb_empaddress

Name Data Type Length Null

emp_id Text 10 Yes

emp_pre_add Text 60 Yes

emp_pre_div Text 50 Yes

emp_pre_dist Text 50 Yes

emp_pre_thana Text 50 Yes

emp_pre_pcod Text 4 Yes

emp_pre_pnam Text 50 Yes

emp_par_add Text 60 Yes

emp_par_div Text 50 Yes

emp_par_dist Text 50 Yes

emp_par_thana Text 50 Yes

emp_par_pcod Text 4 Yes

emp_par_pnam Text 50 Yes

Table 5.2: tb_empexper

Name Data Type Length Null

emp_id Text 10 Yes

exper_level Text 1 Yes

exper_pos Text 50 Yes

exper_org Text 60 Yes

exper_type Text 20 Yes

exper_res Text 100 Yes

33

Page 34: Project final doc (leon)3

exper_start Date/Time Yes

exper_end Date/Time Yes

Table 5.3: tb_employee

Name Data Type Length Null

emp_id Text 10 No

emp_name Text 60 Yes

emp_sts Text 50 Yes

emp_type Text 50 Yes

emp_desi Text 50 Yes

emp_fac Text 50 Yes

emp_dept Text 50 Yes

emp_work Text 50 Yes

emp_joindate Date/Time Yes

emp_photo OLE Object Yes

Table 5.4: tb_emppersonal

Name Data Type Length Null

emp_id Text 10 Yes

emp_dob Date/Time Yes

emp_faname Text 60 Yes

emp_moname Text 60 Yes

emp_husname Text 60 Yes

emp_marital Text 15 Yes

emp_gender Text 10 Yes

emp_religion Text 20 Yes

34

Page 35: Project final doc (leon)3

emp_nationl Text 20 Yes

emp_bloodgrp Text 10 Yes

emp_nationnalid Text 25 Yes

emp_mobno Text 15 Yes

emp_phno Text 15 Yes

emp_email1 Text 40 Yes

emp_email2 Text 40 Yes

emp_photo OLE Object Yes

Table 5.5: tb_leave.

Name Data Type Length Null

leave_cod Text 15 No

emp_id Text 10 Yes

lev_name Text 50 Yes

Remainday Number Integer Yes

Start Date/Time Yes

lve_end Date/Time Yes

Total Number Integer Yes

description Text 255 Yes

Table 5.6: tb_empedu

Name Data Type Length Null

emp_id Text 10 Yes

exam_level Text 1 Yes

exam_name Text 40 Yes

exam_sub Text 40 Yes

35

Page 36: Project final doc (leon)3

exam_class Text 20 Yes

exam_marksper Text 4 Yes

exam_lettergra Text 4 Yes

exam_gpa Text 6 Yes

exam_outgpa Text 4 Yes

exam_institu Text 50 Yes

exam_passyear Text 255 Yes

exam_resdate Date/Time Yes

Table 5.7: fac_info

Name Data Type Length Null

fac_cod Text 3 No

fac_nam Text 50 Yes

fac_estd Date/Time Yes

fac_add Text 100 Yes

Table 5.8: tb_dept_info

Name Data Type Length Null

dept_cod Text 3 No

dept_name Text 50 Yes

dept_estd Date/Time Yes

fac_cod Text 3 Yes

Table 5.9: tb_leave_info

Name Data Type Length Null

lev_cod Text 3 No

lev_nam Text 50 Yes

36

Page 37: Project final doc (leon)3

Table 5.10: tb_promotion

Name Data Type Length Null

promotion_cod Text 3 No

emp_id Text 10 Yes

pro_desifrom Text 50 Yes

pro_desito Text 50 Yes

effect_date Date/Time Yes

assign_date Date/Time Yes

Table 5.11: tb_retirment

Name Data Type Length Null

emp_id Text 10 No

effect_date Date/Time Yes

assign_date Date/Time Yes

cause Text 50 Yes

Table 5.12: tb_terminate

Name Data Type Length Null

emp_id Text 10 No

effect_date Date/Time Yes

assign_date Date/Time Yes

Cause Text 50 Yes

Description Text 100 Yes

37

Page 38: Project final doc (leon)3

Table 5.13: tb_transfer.

Name Data Type Length Null

transfer_cod Text 3 No

emp_id Text 10 Yes

trns_facfrom Text 50 Yes

trns_facto Text 50 Yes

trns_deptfrom Text 50 Yes

trns_deptto Text 50 Yes

trns_workfrom Text 50 Yes

trns_workto Text 50 Yes

effect_date Date/Time Yes

assign_date Date/Time Yes

Table 5.14: tb_User

Name Data Type Length Null

UserID Number Integer No

UserName Text 50 Yes

UserPassword Text 10 Yes

Employee Number Integer Yes

Services Number Integer Yes

Maintainence Number Integer Yes

Report Number Integer Yes

UserSetting Number Integer Yes

Table 5.15: tb_workplace

Name Data Type Length Null

38

Page 39: Project final doc (leon)3

workplc_cod Text 3 No

workplc_nam Text 50 Yes

5.1.5 Normalized Schema (NS)

Normalization is a step-by-step decomposition of complex record into simple record. Normalization

reduces redundancy using the principles of non-loss decomposition. Non-loss decomposition is the

reduction of a table to smaller tables without loss of information [2].

Redundancy is the unnecessary repetition of data. It causes problems with storage and retrieval of

data. Redundancy can lead to,

Inconsistencies, because errors are more likely to occur when data are repeated

Update anomalies because of inserting, modifying and deleting data may cause

inconsistencies

A fully normalized record consists of

a primary key that identifies an entity

a set of attributes that describe the entity

There are few rules for database normalization. Each rule is called normalization. If the first rule is

observed, the database is said to be first normal form (1NF). Similarly, if the second rule is

observed, the database is said to be second normal form (2NF) and if the third rule is observed, the

database is said to be third normal form (3NF).

First Normal Form (1NF)

The purpose of the first normal (1NF) form is to eliminate repeating group of attributes of an

entity. Remedy is to create a new relation for each repeating group and create primary key for new

relation [2].

Second Normal Form (2NF)

The purpose of the second normal form (2NF) is to eliminate partial key dependencies for relations

where primary key composed of more than one attributes, no non-key attributes should be

39

Page 40: Project final doc (leon)3

functionally dependent on a part of the primary key. Remedy is to create a new relation for

attributes which are not dependent on the whole key, copy the part of the primary key into the

new relation that has link with the new attributes and create primary key for new relation [2].

Third Normal Form (3NF)

The purpose of the third normal form (3NF) is to eliminate interdependencies between non-key

attributes. Relations should not have a non-key attribute functionally determined by another non

key attribute [2].

5.2 Design Tools

The system is expected to serve all the purpose that it has been developed for. The design tools are

used for designing the front end and back end interface and also generating the relevant report.

We use the following tools for develop our project.

Microsoft’s Visual Studio C#.NET 2005 (for front end design)

MS Access 2003 ( for back end database design)

Crystal Reports 10.0 (for generating report)

5.2.1 Microsoft’s Visual Studio .NET 2008

Visual studio C#.NET is Microsoft’s integrated development environment (IDE) for creating,

documenting, running and debugging problems written in a variety of .NET programming

languages. Visual studio .NET also offers editing tools for manipulating several types of files. Visual

studio .NET is also a powerful and sophisticated tool for creating business-critical and mission-

critical application [3].

Advantages of Microsoft’s Visual studio .NET

1. It is simple language. Things that may be difficult to program with other language, can be

done in visual studio .NET very easily.

2. Because Visual studio .NET is so popular, there are many good resources (Books, Web sites,

News groups and more) that can help one to learn about the language. You can find the

40

Page 41: Project final doc (leon)3

answers to your programming problems much more easily than other programming

languages.

3. You can find many tools (Sharewares and Freeware) on the internet that will spare you

some programming time. For example, if you want to ping a user over the internet in your

program, Instead of writing the ping function yourself.

5.2.2 Microsoft Access 2007

[1] Microsoft Access, is a relational database management system from Microsoft that

combines the relational Microsoft Jet Database Engine with a graphical user interface and

software development tools [8].

.

Advantage of MS Access 2007

Easy to use

Familiar to the user

5.2.3 Crystal Reports 10.0

[2] Crystal Reports 10.0 is the world standard in high-performance reporting software. Deliver

rich, interactive content from virtually any data source with crystal reports. Developer can

create reports in multiple languages because crystal reports now fully support Unicode

data types.

Advantage of Crystal Reports 10.0

The reports that are created can be viewed in many file formats.

Possible to convert a report to Microsoft Word, Adobe Portable Document Format (PDF),

Hyper Text Markup Language (HTML).

Allows developer to control how reports are cached on servers setting timeouts,

restrictions etc.

5.3 Summary

This chapter has discussed about the System Design & tools. Next chapter will discuss the

Implementation & Testing.

CHAPTER SIX

41

Page 42: Project final doc (leon)3

Screen Shot & Verification

Introduction:

Software Testing is the process of executing program or system with the intent of finding errors.

Or, it involves any activity aimed at evaluating an attribute or capability of a program or system a

determining that it meets its required results.5 Software testing is intended to show that a system

conforms to its specification and the system meets the expectation of the customer buying the

system. It involves the checking process, such as inspection and reviews, at each stage of the

process from user requirements definition to program development.

6.1 Tasting:

Tasting is the process of exercising a program with the specific intent errors prior to delivery to the

end user. This area is concerned with verifying that a correct solution to the problem, embodied in

the statement of the requirements, has been developed. Testing is a multi-stage process that

consists of activities for validating the software product, from the most primitive elements up to

the fully integrated system. This area includes activities such as unit testing, integration testing,

system testing, performance testing, acceptance testing. [5]

Unit testing

Integration testing

System testing

Performance testing

Acceptance testing

42

Page 43: Project final doc (leon)3

Installation testing

Test document

6.1.1 Unit testing:

The unit testing is concerned with knowledge about testing a peogram unit, typically developed by

a single individual, to determine that it is free of data, logic or standards error. This unit includes

knowledge of dynamic analysis (equivalent partitioning, boundary value analysis, logic-based

tasting, random testing, and syntax testing) and static analysis (complete path testing, decision

testing, condition testing, and data-flow testing).

In the case of this project each of the modules were tested individually.

6.1.2 Integration testing:

The integration testing is concerned with knowledge about validating that software components,

which have been unit tested separately, interact correctly when they are put together to perform a

higher order function. This unit also includes knowledge about dependency checking for calls, data,

and processes. And about interface checking in terms of range, type compatibility, representation,

number and order of parameters and method of transfer, after the unit testing has been done, the

units have been integrated and the module was tested. After successful results from the module

testing, the modules were integrated and Integration testing was performed to check the stability

and consistency of the entire software.

6.1.3 System testing:

System testing is concerned with knowledge about validating specified functional requirements of

a system. This unit includes knowledge about techniques to design and enact an independent

43

Page 44: Project final doc (leon)3

testing process of all of the system’s functions described in the software requirements

specification.

6.1.4 Performance testing:

Performance testing is concerned with knowledge about validating the performance requirements

of a system. This unit includes knowledge about techniques to instrument performance measures

like losing, events counts, event duration, and sampling. It also includes knowledge about methods

for tuning a system for optimum saturation, load, and throughput threshold. In this project,

performance testing was tested at one level. At the first phase of the performance testing the back

end of the software or the MS Access (2007) Database performance in respect to this application

was tested. Among the test related to the database tasting was

Data add testing

Data deletion testing

Data edit testing

Data exit testing

Stored procedure executing testing

6.1.5 Acceptance testing:

Acceptance testing Performance testing is concerned with knowledge about validating the

functional and non- functional requirements of a purchased or acquired system.

Functional requirements:

Statements of service the system should provide how the system should react to particular

inputs and how the system should behave in particular situations. [7]

44

Page 45: Project final doc (leon)3

Non- functional requirements:

Constraints on the service or functions offered by the system such as timing constraints,

constraints on the development process, standards, etc. [5]

This unit includes knowledge about techniques for using the statement of work, the software

requirements specification, and the request for proposal to ensure that the delivered system

meets all of the requirements.

6.2 Test Case

Each scenario will be described in a test case. The format of the testing case will be description of

the test case, expected results, test action/input, test output and compare Result and expectation.

Here five test cases have been discussed. Other cases will be tested in the same manner.

TEST CASE 1

Description Test the login module of the system. Each time user will enter the

username and password the system will check them with the

database. This test is based on exploratory techniques. The first

test will be with an invalid username and password.

Expected result For each unsuccessful attempt, there will be a warning message

and the number of attempts will decrease by one

Test Data/input Username: admin

Password: admin

Test Output Invalid username/password. Please try again.

Warning you have only 2 attempts

45

Page 46: Project final doc (leon)3

Result and expectation Success

The username and the password were not in the database. So, the

system denied to login.

TEST CASE 2

Description Test the login module of the system with valid user name and

password.

Expected result After successful attempt, the system will go to the main system

interface.

Test Data/input Username: admin

Password: admin

Test Output The attempt was successful. The system is now on the main

interface.

Result and expectation Success

The user successfully login to the system.

TEST CASE 3

Description Test the Employee module. Add new employee into the database

using add button from Employee details windows.

Expected result There will be a message: Information Added. The Employee name

46

Page 47: Project final doc (leon)3

will appear in their details windows.

Test action/input Fill in individual form and clicks save.

Test Output There is a message: Information is added.

The record if showing on employee’ details windows.

Result and expectation Success The Employee’s record is now added in to the database.

TEST CASE 4

Description Modify an existing record from employee record by updating

some require field.

Expected result Message: information updated.

The system will keep the changes.

Test action/input Modify city from the register individual form and click save.

Test Output Message: Information Updated.

Result and expectation Success

The system keeps the changes made by the user.

47

Page 48: Project final doc (leon)3

CHAPTER SEVEN

Conclusion and Future Scope

7.1 Conclusion

This project’s aim was to develop an automated system for HRMS, case study “Eastern University

(EU)”. It provides users with a friendly interface and easy access to the database. It saves time and

makes record easier to manage. Security is a big issue when there is question of record. This

system provides user authentication facility, which makes this system more reliable to the

organization. It also records the user login information, which may help monitor the system user.

Overall the system has adequate functionality to run any school management system internals.

7.2 Discussion

Problem 1 : Inserting image in database.

Solution : Solution was found from internet.

Problem 2 : Designing security module.

Solution : Consulted with senior (former) student of EU.

48

Page 49: Project final doc (leon)3

Problem 3: Managing employee educational information.

Solution : Set together and solved.

Problem 4: Designing Salary system.

Solution : Some complexities were eliminated.

7.3 Limitation

Like other applications, proposed system has some restriction and limitations. One of the

important limitations for this system is portability. The system will run on Microsoft platform. It is

not compatible with other platform such as UNIX and Linux. As this is a client/server base system,

all the client computer will be needed an addition software to run the developed system. Security

and usability are other issues to consider for the system.

The constraint of time is another limitation. After applying the software engineering procedures, it

is very difficult to develop the software in a complete standard within the duration of the time. If

we had enough time, we would have expanded it more and make it more standard.

7.4 Future Scope

While developing this system, the technology was chosen carefully in terms of further

modification. The system was developed by C#. According to the research, both of these are very

reliable language tool. Modification is rather easy than other languages. The project has focused on

a small scale management system for the hospital management. However; more functionality can

be added to improve the system likes

Student Management

Total Accounting

Inventory Management

Payroll

Budget and Planning.

Web version

49