Assignment 2
Assignment 2
Supervisor(s)
In partial fulfillment of the requirements for the degree of
Bachelor of Science in Computer Science
FALL 2023
2
1. Project objectives:
1.1 Problem Statement
The problem of • Time-Consuming Processes:
• Manual processes are often time-consuming, from handling
paperwork to data entry and filing. This can result in delays and a
slower response to HR-related issues.
Human Errors:
• Manual data entry is prone to human errors, such as typos,
miscalculations, and data inconsistencies. These errors can lead
to payroll mistakes, compliance issues, and other problems.
Limited Accessibility:
• Physical files and paperwork are less accessible than digital
systems. Retrieving information or documents can be
cumbersome, especially if they are stored in different locations.
Inefficiency in Recruitment:
• Manual recruitment processes, including resume screening and
interview scheduling, can be inefficient and may result in
overlooking qualified candidates.
• Lack of Data Analysis:
• Manual systems make it challenging to analyze HR data
comprehensively. This can hinder strategic decision-making and
workforce planning.
Affects HR Professionals:
• Workload and Efficiency: Manual processes can significantly
increase the workload of HR
Employees:
• Delayed Processes: Manual HR processes can lead to delays in
various employee-related activities, such as leave requests,
performance reviews, and access to information.
Managers:
• Recruitment Challenges: Manual recruitment processes can
make it difficult for managers to identify and hire qualified
candidates promptly, impacting team productivity.
The impact of this Reduced Efficiency:
is • Manual processes are inherently slower, leading to delays in HR-
related tasks such as payroll processing, leave approvals, and
employee onboarding.
Increased Error Rates:
• Manual data entry is prone to human errors, such as typos and
miscalculations, which can lead to inaccuracies in employee
records, payroll, and compliance reporting.
1.4 Objectives
1. Enhance Employee Experience: Elevate the overall
experience of our employees by implementing intelligent
solutions that cater to their individual preferences and work
styles.
2. Boost Productivity: Leverage automation and AI to streamline
workflows reduce manual tasks, and enhance overall
productivity
3. Facilitate Seamless Collaboration: Implement advanced
collaboration tools to ensure seamless communication and
collaboration, whether employees are working in the office or
remotely.
4. Adaptability and Future-Readiness: Build a workplace
infrastructure that is adaptable to future changes and
technological advancements, ensuring a sustainable and future-
ready environment.
4
2. Development process:
Developing an HR automation system involves several key steps in the software
development process. Below is a general outline of the development process for HR
automation:
1. Define Requirements:
• Identify and document the specific requirements of the HR automation
system. This includes understanding the needs of HR processes,
employee management, payroll, recruitment, and other relevant
functionalities.
2. System Design:
• Create a system design that outlines the overall architecture, database
schema, and user interface design. Consider the modules or components
required for HR functions, such as employee management, leave
tracking, performance evaluation, etc.
3. Database Design:
• Design the database schema to store and manage HR-related data.
Define tables for employees, departments, job listings, payroll, etc.
Establish relationships between different entities.
4. User Interface Design:
• Design the user interface (UI) for the HR system. Consider the ease of
use and accessibility for HR professionals and employees. Create
wireframes or mockups to visualize the UI design.
5. Development:
• Implement the HR automation system according to the design
specifications. This involves coding the backend logic, frontend
interfaces, and integrating with the database. Use appropriate
programming languages and frameworks.
6. Testing:
5
9. Data Migration:
• If applicable, migrate existing HR data to the new system. Ensure a
smooth transition from any legacy systems to the new automation
solution.
10. Monitoring and Maintenance:
• Implement monitoring tools to track system performance and user
activities. Provide ongoing maintenance and support to address any
issues, update features, and ensure the system remains effective.
11. User Feedback and Iteration:
• Gather feedback from users regarding the system's usability and
performance. Use this feedback to make iterative improvements and
updates to enhance the overall user experience.
12. Documentation:
• Create comprehensive documentation for the HR automation system,
including user manuals, technical documentation, and any other relevant
guides.
3. Customer/users:
6
For an HR automation system, the primary customers or users can be categorized into
different roles based on their interactions with the system. Here are some key stakeholders
and their roles in an HR automation system:
1. HR Professionals:
• HR Managers: Responsible for overall HR functions, including employee
management, performance reviews, and compliance.
• HR Administrators: Handle administrative tasks related to HR processes, data
entry, and system configurations.
• Recruitment Specialists: Use the system for posting job listings, managing
applications, and conducting recruitment processes.
2. Employees:
• Individual Employees: Access the system for self-service tasks, such as
updating personal information, applying for leave, viewing payslips, and
accessing performance reviews.
3. Management:
• Department Managers: Use the system to review and manage their team's
performance, leave requests, and other HR-related activities.
4. Applicants:
• Job Applicants: Interact with the system to submit job applications, track
application status, and participate in the recruitment process.
5. IT Support:
• IT Administrators: Responsible for the technical aspects of system
maintenance, security, and troubleshooting.
6. Executives:
• Executive Leadership: Access HR reports and analytics for strategic decision-
making.
7. Legal and Compliance:
• Legal and Compliance Officers: Utilize the system to ensure HR processes
adhere to legal and regulatory requirements.
8. Training and Development:
7
4. Project deliverables:
4.1 Phase I - Alpha Prototype
• Requirement gathering
• Scope locking
• Budget estimate
• Ui design
• Application finalization
• Testing
• User manual
5. Cost/schedule:
6. Project constraints:
Project constraints for an HR automation system refer to limitations or restrictions that may
impact the development, implementation, or operation of the system. Here are some common
project constraints for HR automation:
1. Budget Constraints:
• The project must operate within a predefined budget, limiting the financial
resources available for development, implementation, and maintenance.
2. Time Constraints:
• The project must adhere to a specific timeline, which may be influenced by
deadlines for system deployment, regulatory requirements, or organizational
priorities.
3. Resource Constraints:
• Limited availability of human resources, skilled personnel, or expertise in HR and
technology may pose constraints on project development.
4. Technological Constraints:
• The HR automation system must operate within the technological infrastructure
of the organization, considering compatibility issues with existing software,
hardware, or network configurations.
5. Data Privacy and Security Regulations:
• Compliance with data protection laws and regulations (e.g., GDPR) imposes
constraints on how employee data is collected, stored, processed, and secured.
6. Integration Constraints:
• The system may need to integrate with existing HR software, enterprise systems,
or third-party applications, posing challenges related to data synchronization and
interoperability.
7. User Adoption:
• Constraints related to user acceptance and adoption may arise if employees, HR
professionals, or other stakeholders resist using the new system.
8. Scalability Constraints:
• The system must be designed to accommodate future growth in terms of the
number of employees, job listings, and data volume, ensuring scalability over
time.
9. Regulatory Compliance:
• Adherence to industry-specific regulations and compliance standards may
constrain certain features or processes within the HR automation system.
10
8. Legal/industry issues:
Legal and industry issues play a significant role in the development and implementation of HR
automation systems. Understanding and addressing these issues are crucial to ensuring
compliance, protecting employee rights, and maintaining ethical standards. Here are some key
legal and industry issues related to HR automation:
1. Data Privacy and Protection:
• Compliance with data protection laws such as GDPR (General Data Protection
Regulation), HIPAA (Health Insurance Portability and Accountability Act), or other
regional data protection regulations.
• Safeguarding employee data from unauthorized access, ensuring secure
storage, and implementing measures to prevent data breaches.
2. Consent and Transparency:
• Obtaining informed consent from employees before collecting and using their
personal data for HR automation purposes.
• Providing transparent information about the use of automated systems and
algorithms in HR decision-making.
3. Labor Law Compliance:
• Adherence to labor laws and regulations related to working hours, overtime,
leave policies, and other employment-related matters.
4. Accuracy and Fairness:
• Ensuring that automated processes, including algorithms used in hiring or
performance evaluation, are accurate, fair, and transparent.
5. Employee Rights:
• Respecting employees' rights to privacy, fair treatment, and freedom from
unwarranted surveillance.
• Providing mechanisms for employees to access and correct their personal data
stored in HR systems.
6. Security Measures:
• Implementing robust cybersecurity measures to protect HR systems from cyber
threats and unauthorized access.
• Regularly updating security protocols to address emerging risks.
7. Compliance with Local Regulations:
• Understanding and adhering to specific HR and labor regulations in the regions
where the organization operates.
13
9. Implementation technology:
The implementation technology for an HR automation system involves the selection of tools,
platforms, and frameworks that support the development, deployment, and maintenance of the
system. Here are key considerations and technologies typically involved in implementing HR
automation:
1. Programming Languages:
• Depending on the system architecture, a mix of programming languages may be
used. Common choices include:
• Backend Development: Python, Java, PHP, Ruby on Rails, Node.js
• Frontend Development: HTML, CSS, JavaScript (React, Angular,
Vue.js)
• Database Development: SQL (e.g., MySQL, PostgreSQL) or NoSQL
(e.g., MongoDB) databases.
14
Website reference
Gartner. “Gartner HR.”. Gartner | Delivering Actionable, Objective Insight to Executives
and Their Teams
18
Risk/Test document:
For HR automation, the selection of major quality attributes is crucial for the success of the
project. Here are the selected Test/Risk factors based on the product requirements, design,
domain, and profiling document:
1. Reliability:
• Test: Verify that the HR system consistently and accurately processes employee
data without errors.
• Risk: System failures or inaccuracies in HR data may lead to compliance issues
or incorrect decision-making.
2. Authorization:
• Test: Ensure that only authorized personnel have access to sensitive HR
information and functionalities.
• Risk: Unauthorized access can result in data breaches, privacy violations, or
misuse of HR data.
3. File Integrity:
• Test: Confirm that employee records and HR files remain intact and unaltered
over time.
• Risk: Data corruption or tampering could lead to incorrect employee information
or legal implications.
4. Audit Trail:
• Test: Validate the system's ability to log and track changes to HR data for
auditing purposes.
• Risk: Lack of an audit trail may hinder the ability to trace and investigate
unauthorized actions.
5. Continuity of Processing:
• Test: Assess the system's resilience to ensure uninterrupted HR processes
during peak usage or system failures.
• Risk: Downtime or interruptions in HR processes can impact productivity and
employee services.
6. Service Level:
• Test: Measure and validate the system's performance against predefined service
level agreements (SLAs).
• Risk: Failure to meet SLAs may result in poor user experience and
dissatisfaction.
21
7. Access Control:
• Test: Evaluate the effectiveness of access controls in regulating user
permissions within the HR system.
• Risk: Inadequate access controls may lead to data leaks, privacy issues, or
unauthorized actions.
8. Methodology:
• Test: Ensure that the HR automation project follows established development
and testing methodologies.
• Risk: Deviations from best practices or methodologies may result in inefficient
development processes.
9. Correctness:
• Test: Validate that the HR system produces accurate and reliable results in HR
processes and calculations.
• Risk: Incorrect HR data or calculations can lead to legal and compliance issues.
10. Ease of Use:
• Test: Assess the user interface for intuitiveness and user-friendliness in
managing HR tasks.
• Risk: Complexity and difficulty in system use may lead to resistance and low
adoption rates.
11. Maintainability:
• Test: Evaluate the ease with which the HR system can be updated or modified to
accommodate changes.
• Risk: Lack of maintainability may result in difficulties adapting to evolving HR
processes or regulations.
12. Portable:
• Test: Verify the system's ability to be deployed across different environments or
platforms.
• Risk: Lack of portability may limit the system's scalability or adaptability to
diverse HR environments.
13. Coupling:
• Test: Assess the degree of interdependence between HR system components.
• Risk: Tight coupling may result in challenges during system updates or
modifications.
22
14. Performance:
• Test: Measure and optimize the system's responsiveness and efficiency in HR
data processing.
• Risk: Poor performance can lead to delays in HR processes and dissatisfaction
among users.
15. Ease of Operation:
• Test: Evaluate the simplicity of operating and managing the HR system.
• Risk: Complex operations may hinder efficient HR management and user
satisfaction.
Testcase:
Considering the selected test factors for HR automation, both functional and structural testing
techniques are important to ensure comprehensive coverage. Here's a breakdown of testing
techniques for the identified factors:
I. Structural System Testing Techniques:
1. Stress Testing:
• Technique: Subject the HR system to high loads or stressful conditions to
evaluate its stability and responsiveness under extreme situations.
2. Execution Testing:
• Technique: Verify the correctness of HR system execution paths, ensuring that
all parts of the system are exercised during testing.
3. Recovery Testing:
• Technique: Assess the HR system's ability to recover from failures or crashes,
ensuring data integrity and system availability after unexpected events.
4. Operations Testing:
• Technique: Evaluate the overall operations of the HR system, including routine
tasks, to ensure seamless functionality.
5. Compliance Testing:
• Technique: Validate that the HR system complies with industry regulations, legal
requirements, and internal policies.
6. Security Testing:
• Technique: Identify and address potential vulnerabilities in the HR system,
ensuring that sensitive employee data is protected from unauthorized access.
II. Functional System Testing Techniques:
23
1. Requirements Testing:
• Technique: Verify that the HR system meets specified requirements, ensuring
that functionalities align with predefined expectations.
2. Regression Testing:
• Technique: Ensure that new updates or changes to the HR system do not
negatively impact existing functionalities, preventing regression issues.
3. Error-handling Testing:
• Technique: Evaluate how the HR system handles errors, ensuring that
appropriate error messages are displayed, and the system gracefully recovers
from faults.
4. Manual-support Testing:
• Technique: Assess the usability and effectiveness of manual support features
within the HR system, such as help documentation or user guides.
5. Intersystem Testing:
• Technique: Verify interactions between the HR system and other interconnected
systems to ensure seamless data exchange and interoperability.
6. Control Testing:
• Technique: Evaluate the system's control mechanisms, including user
permissions and access controls, to ensure proper governance of HR data.
7. Parallel Testing:
• Technique: Run the HR system in parallel with existing systems or previous
versions to validate the accuracy and consistency of results.