Hrms PDF
Hrms PDF
Contents
5. Prototype development ............................................................................................................................ 3
5.2 objective of prototype development ................................................................................................. 4
5.3 design specification ............................................................................................................................. 5
5.3.1 system architecture design ....................................................................................................... 12
5.3.2 subsystem decomposition.......................................................................................................... 14
5.3.4 user interface functionality flow ................................................................................................ 15
6.system implementation and testing ........................................................................................................ 17
6.1 introduction ...................................................................................................................................... 17
6.2 implementation and coding ............................................................................................................. 17
6.2.1 programming language selection............................................................................................... 17
6.3 testing and experimentation ............................................................................................................. 22
6.3.1-unit testing ................................................................................................................................. 23
6.3.2 integrated testing ....................................................................................................................... 26
6.3.3 system testing ............................................................................................................................ 26
7. conclusion and recommendation ........................................................................................................... 27
7.1 conclusion ......................................................................................................................................... 27
7.2 recommendation............................................................................................................................... 27
Tables
Table 1 implementation tool ....................................................................................................................... 17
Table 2 unit test for login ............................................................................................................................ 24
Table 3 unit test for register ........................................................................................................................ 25
Table 4 unit test for ui ................................................................................................................................. 26
Figures
Figure 2 system layer................................................................................................................................... 13
Figure 3 sub system decomposition ............................................................................................................ 14
Figure 4 user interface ................................................................................................................................ 16
2
Chapter Five
5. Prototype development
Prototype development can be defined that it is the sample code of the project. It is a process in
the design and creation of a new product where a preliminary model, or prototype, is built to test
and validate concepts, functionalities, and design choices before final production. It is a crucial
step in product development that serves various purposes, including idea exploration, design
refinement, user testing, and stakeholder communication. So these are some of the sample code
that we have done it .
3
This form used to register the employee
Prototype development plays a pivotal role in product development, achieving multiple strategic
objectives:
4
5.3 design specification
Design specifications, also referred to as design requirements or criteria, are precise and
comprehensive descriptions outlining how a product, system, or component should be designed
to fulfill user and stakeholder requirements. These specifications are crafted early in the
development cycle to provide clear guidelines for engineers, designers, and developers. They
serve as a roadmap, ensuring that the design process remains focused on meeting functional,
performance, and usability expectations effectively and efficiently.
<head>
<!-- Title Page-->
<title>Add Employee | WCUhrms</title>
<script>
function validateForm() {
var firstName = document.forms["registrationForm"]["firstName"].value;
var lastName = document.forms["registrationForm"]["lastName"].value;
5
var email = document.forms["registrationForm"]["email"].value;
var birthday = document.forms["registrationForm"]["birthday"].value;
var gender = document.forms["registrationForm"]["gender"].value;
var contact = document.forms["registrationForm"]["contact"].value;
var address = document.forms["registrationForm"]["address"].value;
var dept = document.forms["registrationForm"]["dept"].value;
var degree = document.forms["registrationForm"]["degree"].value;
var roles = document.forms["registrationForm"]["roles"].value;
var gpa = document.forms["registrationForm"]["gpa"].value;
var workedYears = document.forms["registrationForm"]["worked_years"].value;
// Basic Validation
if (firstName == "" lastName == "" email == "" birthday == "" gender == "" contact ==
"" address == "" dept == "" degree == "" roles == "" gpa == "" workedYears == "") {
alert("All fields must be filled out");
return false;
}
return true;
}
</script>
</head>
<body>
7
<header>
<nav>
<h1>WCUhrms.</h1>
<ul id="navli">
<li><a class="homeblack" href="aloginwel.php">HOME</a></li>
<li><a class="homeblack" href="viewemp.php">View Employee</a></li>
<li><a class="homeblack" href="searchempA.php">searchA employee</a></li>
<li><a class="homeblack" href="post_newss.html">Post News</a></li>
<li><a class="homeblack" href="addemp.php">Add Employee</a></li>
<li><a class="homeblack" href="updateinfo.php">update info</a></li>
<li><a class="homeblack" href="elogin.php">Log Out</a></li>
</ul>
</nav>
</header>
<div class="divider"></div>
<div class="input-group">
<input class="input--style-1" type="email" placeholder="Email" name="email"
required="required">
</div>
<p>Birthday</p>
<div class="row row-space">
<div class="col-2">
<div class="input-group">
<input class="input--style-1" type="date" placeholder="BIRTHDATE"
name="birthday" required="required">
</div>
</div>
<div class="col-2">
<div class="input-group">
<div class="rs-select2 js-select-simple select--no-search">
<select name="gender">
9
<option disabled="disabled" selected="selected"
required="required>GENDER</option>
<option value="Male">Male</option>
<option value="Female">Female</option>
</select>
<div class="select-dropdown"></div>
</div>
</div>
</div>
</div>
<div class="input-group">
<input class="input--style-1" type="number" placeholder="Contact Number"
name="contact" required="required">
</div>
<div class="input-group">
<input class="input--style-1" type="text" placeholder="Address"
name="address" required="required">
</div>
<div class="input-group">
<input class="input--style-1" type="text" placeholder="Department"
name="dept" required="required">
</div>
<div class="input-group">
<input class="input--style-1" type="text" placeholder="Degree"
name="degree" required="required">
10
</div>
<div class="input-group">
<input class="input--style-1" type="text" placeholder="roles" name="roles"
required="required">
</div>
<div class="input-group">
<input class="input--style-1" type="number" placeholder="Salary"
name="salary">
</div>
<div class="input-group">
<input class="input--style-1" type="number" placeholder="GPA" name="gpa"
step="0.01" min="0" max="4" required="required">
</div>
<div class="input-group">
<input class="input--style-1" type="number" placeholder="Worked Years"
name="worked_years" min="0" required="required">
</div>
<div class="input-group">
<input class="input--style-1" type="file" placeholder="file" name="file">
</div>
11
</div>
</div>
</div>
</div>
</body>
</html>
5.3.1 system architecture design
Class type architecture is a strategy for layering software applications that are used in our system .the
common types of layers used include the following user interface layer, process layer ,domain layer and
persistence layer or system layer
12
Figure 1 system layer
Description
1. User interface layer /App : a critical component of software architecture, responsible for the
interaction between the user and the application. This layer focuses on presenting information
to the user and interpreting user inputs.
2. Process layer: often referred to as the business logic layer or service layer, is a crucial component
in software architecture that handles the core functionality and business rules of an application.
This layer sits between the user interface layer and the data access layer, orchestrating the flow
of data and applying business rules.
13
3. Domain layer : also known as the domain model or domain logic layer, is a critical component of
software architecture that encapsulates the business rules and logic specific to the domain of
the application. It represents the core business concepts, their relationships, and the rules
governing their behavior. This layer is highly focused on the business requirements and is central
to the website functionality.
4. Persistence layer : also known as the data access layer (DAL) or data layer, is a crucial component
of software architecture that manages the storage and retrieval of data from databases and
other data sources. This layer provides a bridge between the domain layer and the physical data
store, abstracting the complexities of data access and ensuring a consistent way to interact with
the data.
Deployment modeling
It is the run time architecture of the system.
a crucial aspect of software architecture that focuses on how software systems are physically deployed
across hardware and network environments. It involves planning and defining the deployment
architecture, including the arrangement of hardware nodes, software components, and communication
pathways. Effective deployment modeling ensures that the software operates efficiently, reliably, and
securely in its intended environment.
14
5.3.4 user interface functionality flow
User interface design focuses on what the user needs to do ensuring that the interface has the
elements that are easy to access
15
The goal of the user interface (UI) is to facilitate effective, efficient, and enjoyable interaction
between the user and the application or device.
16
Chapter six
6.system implementation and testing
6.1 introduction
The implementation and testing phase marks the culmination of the project, where the final
product is deployed for user interaction and rigorously tested to ensure it meets the project's
scope and functional requirements. This phase is crucial for validating the system's performance
and verifying that it behaves as expected.
During this phase, the system undergoes various testing strategies to identify discrepancies
between the specified behaviors outlined in the system models and the actual observed behaviors
of the system. These testing strategies help ensure that all functionalities work as intended,
providing a reliable and user-friendly product.
Implementation and testing is the final phase for the project where the projects final product
would be implemented via users and tested for overall functionality of the system .the system is
tested based on the scope of the project and the functionality requirements that have been
implemented with in the system .it is the process of finding difference between the expected
behavior specified by system models and observed behavior of the system .in this section ,
developer used different types of testing strategies to check functionality of the system.
The authors utilized the following technologies and software to develop this web-based system,
choosing them for their open-source nature and free availability:
activities tool
Front end Html, CSS, JavaScript
Database server MySQL
Web server Apache
Back end php
Editors Notepad++,VS code
Table 1 implementation tool
<html>
<head>
<title>Login Form</title>
17
</head>
<style>
.box
width:100%;
max-width:600px;
background-color:#f9f9f9;
border-radius:5px;
padding:16px;
margin:0 auto;
input.parsley-success,
select.parsley-success,
textarea.parsley-success {
color: #468847;
background-color: #DFF0D8;
input.parsley-error,
select.parsley-error,
18
textarea.parsley-error {
color: #B94A48;
background-color: #F2DEDE;
.parsley-errors-list {
padding: 0;
list-style-type: none;
font-size: 0.9em;
line-height: 0.9em;
opacity: 0;
.parsley-errors-list.filled {
opacity: 1;
19
.parsley-type, .parsley-required, .parsley-equalto{
color:#ff0000;
.error
color: red;
font-weight: 700;
</style>
<?php
require_once ('process/dbh.php');
session_start();
if(isset($_REQUEST['login']))
$email = $_REQUEST['email'];
$pwd = md5($_REQUEST['pwd']);
$res = mysqli_num_rows($select_query);
if($res>0)
$data = mysqli_fetch_array($select_query);
$name = $data['name'];
20
$_SESSION['name'] = $name;
header('location:dashboard.php');
else
?>
<body>
<div class="container">
<div class="table-responsive">
<div class="box">
<div class="form-group">
<label for="email">Email</label>
data-parsley-type="email" data-parsley-trigg
er="keyup" class="form-control"/>
</div>
<div class="form-group">
21
<label for="password">Password</label>
</div>
<div class="form-group">
</div>
</form>
</div>
</div>
</div>
</body>
</html>
The final phase of implementation is testing. This crucial step demonstrates the program's
correctness and ensures that the system functions as intended. Testing involves thoroughly
verifying the system's functionality to uncover and eliminate errors, ensuring a reliable and error-
free application.
During this phase, the development team rigorously tests the entire system, including all forms,
code, and modules. They validate every functionality within the system to confirm that it
operates seamlessly and meets the specified requirements. By doing so, they aim to deliver a
robust, fully functional product ready for deployment.
22
6.3.1-unit testing
Before handing the system over to the testing team, developers perform unit testing. Each
module of the system is tested individually using a selection mechanism to ensure
comprehensive coverage. This approach allows the team to isolate and verify the functionality of
each module. If an error is discovered, it is corrected without impacting other modules, ensuring
the system remains stable and reliable throughout the development process.
Empty email and click And valid data for other fields “Email Is required”
login button
23
Enter valid email and All fields fulfill with valid data “Login to the page”
password and click login
button
department ,degree, roles, salary, gpa, worked year [empty, invalid , valid ]
Steps to be executed data Expected result
Enter empty data on first And valid data for other fields “First name Is required”
name field and click
login button
Enter invalid data on And valid data for other fields “Please match required format”
first name and click
login button Fields=Ali
24
Enter empty data on last And valid data for other fields “Please match required format”
name and click login
button
Enter invalid data on last And valid data for other fields “Please match required format”
name and click login
button Fields=Ali and 34566
Enter invalid data on And valid data for other fields “Please fill the required format
phone number and email for phone number and email ”
fields click login button Fields=Ali and Ali @.com
Enter empty data on And valid data for other fields “Please fill the required format
birthday ,department, ”
role ,salary ,degree,
worked year, gpa and
gender and click login
button
Enter valid format for all All fields fulfill with valid data “User registered successfully ”
fields and click submit
button
Empty email and click And valid data for other fields “Email Is required”
login button
25
Enter invalid Email and Email = not required “Invalid email or password”
click login button
Doesn’t exist in user account
table
Enter valid email, empty Email = not required “password Is required”
password and click the
login button Any valid data for the other
fields
Enter email that is not in email= not required “Email doesn’t exist”
database and click login
button Password= not required
Enter valid email and All fields fulfill with valid data “Login to the page”
password and click login
button
The process of integrating all modules that comprise a program for testing purposes is known as
integration testing. This critical phase ensures that individual modules work together as expected
and that the interactions between them function correctly. Integration testing validates the
seamless integration of various components, identifying and resolving any issues that may arise
from their interactions. This ensures the overall coherence and functionality of the entire
program before it progresses to broader testing phases.
System testing ensures that the entire integrated software system meets its specified
requirements. It rigorously tests the system configuration to verify that it consistently produces
expected and predictable outcomes. System testing relies on detailed process descriptions and
flows to systematically validate the functionality and behavior of the entire software application,
ensuring it meets user expectations and performs reliably under various conditions.
26
Chapter seven
7. conclusion and recommendation
7.1 conclusion
Implementation utilized a robust technology stack: HTML, CSS, and JavaScript for the front
end, PHP for the backend logic, and MySQL for data storage, all managed within the VS Code
environment. This setup enabled a seamless integration of front-end usability with back-end
functionality.
The primary goal of the system was to mitigate workload inefficiencies and enhance accuracy in
managing employee data and processes. By streamlining operations, the project anticipated
significant improvements in HR management practices at Wachemo University. The envisioned
outcomes include heightened efficiency, improved transparency, and strengthened
communication channels between staff and administration. This initiative represents a pivotal
shift towards modernized HR practices, poised to elevate organizational effectiveness and
employee satisfaction.
7.2 recommendation
the web-based HR management system can evolve into a more robust, efficient, and user-centric
platform that supports the university's HR operations effectively. Continuous refinement and adaptation
to user needs and technological advancements will further enhance its utility and contribute to
organizational success.
➢ Daily Attendance Tracking
➢ Payroll Management
27