Computer Software Engineering Report
Computer Software Engineering Report
Computer Software Engineering Report
GROUP 9
We intend to use the iterative model in the creation of the system. The
choice of the model is as result of it flexibility in terms of visiting the earlier
made iterations and response to customer in each built.
ANALYSIS STAGE
Feasibility study
We will use this feasibility study to determine whether the project is
viable and possible for us to perform.
Looking at it from a technical standpoint, we can get the required
technology needed for the project as not much is needed. The software
can easily be compatible with the current hardware and software on
ground in the school
From an operational standpoint, the software depends on the company's
existing business processes. The system will have to contain the staff
names and their respective designations. The system should be user-
friendly and should not be tough for the staff to use. The system should
be able to generate accurate attendance reports.
From an economic standpoint, the project will have to be within our
budget range and be reasonably priced. It should not be something hard
for us to fund and recover the money as the project doesn't require much
resources.
From a Legal Standpoint, the system software should comply with the
country's legal framework. We should ensure that the software system
complies with labor laws, data privacy laws, and other relevant laws. The
system should be able to maintain the privacy and confidentiality of
employee data.
From this we can determine that the staff attendance software system will
be feasible. The software system can improve the accuracy of attendance
tracking, and improve productivity. The company should ensure that the
software system is technically feasible, operationally feasible,
economically feasible, and legally feasible.
REQUIREMENTS ENGINEERING
For this part, we will gather, analyze, specify, and validate the
software used to manage staff attendance.
For gathering requirements, we would need to gain information from
the employees, managers, IT staff and others for their expectations on
the project. Also we can review the existing attendance system for
more information on what is required.
We would then analyze them to determine their feasibility,
completeness, compatibility. We would need to find out which ones
are functional and non functional requirements.
We would then prioritize the most important and feasible
requirements, getting a system scope by identify boundaries and
determining what features will be used.
Make use cases for the software to see it used in different scenarios.
Make a document of the summary of the requirements and review ad
validate them.
DESIGN STAGE
ARCHITECTURAL DESIGN
For the system architecture, we can use a client-server architecture. It
has 2 main components: a client side application that runs on the
user's device and a server side application that runs on a remote
server.
It should also have a database that will store all the attendance data
received from the client-side application. The database can be
implemented using a relational database management system
(RDBMS) such as MySQL or PostgreSQL.
It should have a network that the client side and server side will
communicate over this can be internet or intranet or VPN.
It should be design in a way that is very secure to prevent
unauthorized personnel accessing the data. This can be achieved by
implementing authentication and authorization mechanisms such as
user accounts and access control lists.
For the user interface, there are several factors that need to be considered
to ensure that the system is intuitive, efficient, and effective.
It should be something simple to use with clear navigation, not too much
information and clean design. It should use easy to understand language
and interface should be intuitive using clear labeling and logical
workflows.
It should be able to provide feedback to users when they complete an
action, use visual cues to guide a user through the system.
Test the interface with real users and get feedback on what works and
what needs improvement.
DETAILED DESIGN
User front end developed with PHP admin code consisting of login screen,
staff attendance entry, reports, logout, etc.
Access control, authentication, authorization and data encryption.
Performed efficiently and handles a large number of user and transactions.
Back end architecture built with Node.js to support scalability, reliability,
security and performance.
Performance, maintainability and reliability are vital design
considerations.
IMPLEMENTATION STAGE
With the system design in place, the development team proceeded building the
system
The implementation stage involves;
Programming (coding): The online staff attendance system can be built
using various programming languages and frameworks. For this report, we
will use PHP and MySQL to build the system. PHP is a popular server-side
scripting language used for web development, while MySQL is an open-
source relational database management system.
The system can be broken down into the following components:
1. Login and Authentication System: The system has a secure login and
authentication system that enables only authorized users to access the
system.
2. File Transfer Protocol (FTP): FTP is a protocol used for transferring files
between systems. The attendance system can export attendance data in a format
that can be imported by other systems using FTP.
Types of Testing
PRODUCTION
How was the solution produced?
For the deployment and production of the online staff attendance system,
these were the steps taken.
1. Choose a web hosting provider: You will need a web hosting provider to
host the application on the internet. Look for a provider that meets the
requirements of the system, such as storage, bandwidth, and security.
3. Upload the system files: Once the server environment is set up, you can
upload the system files to the server using FTP or another file transfer
protocol.
4. Configure the system: Once the system files are uploaded, you will need to
configure the system for use. This may involve setting up the database,
configuring the web server, and updating any configuration files.
5. Test the system: Before making the system live, it is important to test it to
ensure that it functions correctly and meets the requirements. This may involve
testing the system on different devices, browsers, and operating systems, as
well as testing its performance, security, and user interface.
6. Launch the system: Once the system has been tested and any issues have been
resolved, it can be launched on the internet. This involves updating the DNS
settings to point to the server hosting the system.
7. Maintain and update the system: After the system is launched, it is important to
regularly maintain and update it to ensure that it continues to function correctly
and meet the needs of its users.
1. Access the system: To use the system, you will need to access it through
a web browser or mobile app. You will typically need to enter a
username and password to log in.
2. Mark attendance: Once you are logged in, you can mark your attendance
by clicking on a button or entering a code. The system may require you
to mark attendance at specific times or locations, depending on the
requirements of your organization.
3. View attendance records: The system will store your attendance records,
which you can view at any time. You may be able to view records for a
specific date range or filter records by location or other criteria.
MAINTENANCE
How will the software be maintained?
Regular monitoring of attendance data.
Promptly addressing attendance issues with employees helps in
accountability.
Analyzing employee attendance helps in productivity.
Providing continuous training to employees ensures that they understand
how to properly use the attendance system and follow attendance policies
and procedures.
PROJECT MANAGEMENT
Assigning roles and responsibilities: The project team was assigned roles
and responsibilities, including a project manager, developers, testers, and
other team members. And every team member had a clear understanding of
their responsibilities and expectations.
Developing a project plan: Once the project scope was defined, the project
plan was developed, outlining the timeline, budget, resources, and
deliverables. This plan was reviewed and approved by team members.
The project took about 2 weeks.
CONCLUSION
The user interface should be friendly so it can easily be used by anyone
which in turn saves time.
Accurate time tracking.
RECOMMENDATIONS
Implementation of an electronic attendance system to accurately track
employee attendance and reduce administrative burden.
Conduct regular monitoring and evaluation of the attendance to ensure that
it is effective and meets the needs of the organization.
Establishment of proper communication of the policies and procedures of
the attendance system.
LIMITATIONS
More expensive than manual methods.
Needs for updates and supports unlike manual methods.
Needs effective monitoring.
Equipment expense, difficult to repair, power supply required.