Download as pdf or txt
Download as pdf or txt
You are on page 1of 9

Chapter 3: System Design and Software Development Methodology

The architecture of our web app system is divided into three main components: the front-end,
back-end, and database. The front-end was developed using HTML, CSS, and Bootstrap, while
the back-end was developed using Node.js. Iused MongoDB as our database system, which
provides a flexible and scalable platform for storing and retrieving data. The system includes two
dashboards for universities and employers. The universities dashboard enables the addition of
student certificates, names, and ID numbers to the database, while the employers dashboard
allows for the verification of applicant certificate information using their name and ID number.
To ensure that our software development process was structured and efficient, Ifollowed the
Software Development Life Cycle (SDLC) methodology. This methodology consists of six
phases: requirements gathering and analysis, design, implementation, testing, deployment, and
maintenance.
During the requirements gathering and analysis phase, Iidentified the needs and requirements of
our stakeholders, including universities and employers. This involved conducting research and
analyzing the current systems and processes used for certificate validation. Ialso identified
potential risks and constraints, such as data security and privacy concerns.
In the design phase, Ideveloped the system architecture and design, as well as the user interface
and database schema. Ifocused on creating a user-friendly and intuitive interface that would
make it easy for universities and employers to use the system.
The implementation phase involved coding the system using the selected programming
languages, frameworks, and libraries. Ialso implemented security features to ensure that the
system data was stored securely and could not be easily tampered with.
During the testing phase, Iconducted various tests to ensure that the system met its requirements
and was functioning correctly. Iused techniques such as unit testing and integration testing to test
the different components of the system. Ialso conducted user acceptance testing with a group of
potential users to evaluate the system's ease of use, functionality, and overall user experience.
After the testing phase, Ideployed the system to a production environment, making it available
for universities and employers to use. Ialso developed documentation to support the system,
including a user manual, technical manual, and developer guide.
Finally, the maintenance phase involves ongoing support and maintenance of the system to
ensure that it continues to meet the needs of our users. Iplan to continue improving and
expanding the system's features and functionality to meet the evolving needs of our stakeholders.
Chapter 4: Implementation
Implementation, Iused a combination of programming languages, frameworks, and libraries to build the
system. HTML, CSS, and Bootstrap were used to create the user interface, while Node.js was used to
handle the server-side logic. MongoDB and the Mongoose library were utilized to develop the database
schema, and the custom library was used to encrypt and store user passwords securely. To ensure that
sensitive data was securely stored and not easily tampered with, Iimplemented several security features.

4.1 Development Environment Setup


Before you start developing your Node.js application, you will need to set up your development
environment. This chapter will guide you through the process of installing the necessary tools and
configuring your environment.

4.2 Configuration
Once the required software and development tools are installed, Ineed to configure the development
environment. This includes setting up the database, configuring the server, and connecting to external
APIs.

4.3 Coding

To provide an example of the implementation process, Ihave included code snippets from some of the
functions used in the system:

First, Ihave the addgrad function, which is responsible for adding new graduation information to the
database. The function encrypts the student's name and ID number using a custom encryption key
before saving it to the database.

//adding encrypted graduates info

Next, Ihave the unilogin function, which handles the authentication of university administrators. The
function searches for a user with the matching email and compares the provided password with the
password in the database

//institution login code


Finally, Ihave the addins function, which handles the authentication of university administrators. The
function searches for a user with the matching email and compares the provided password with the
password in the database

//organanisation login

In addition to the programming languages, frameworks, and libraries, Ialso used various tools and
software during implementation. For example, Iused Visual Studio Code as our code editor and Git for
version control. Ialso used Postman to test our API endpoints and ensure that they were functioning
correctly.

One important aspect of our implementation was ensuring that the user interface was intuitive and user-
friendly. To achieve this, Iconducted user testing and incorporated feedback from our testers into the
design. Ialso made sure that the interface was responsive and could be accessed from different devices
and screen sizes.

Overall, the implementation phase was challenging but rewarding. By using a combination of
programming languages, frameworks, and tools, Iwere able to create a functional and user-friendly
system that met the requirements of our project.

Frontend User Interface

The frontend user interface of the system is built using HTML, CSS, and JavaScript. The interface provides
an easy-to-use platform for users to interact with the system and perform various tasks.

Technologies Used

• HTML: Used for the structure and content of the web pages.

• CSS: Used for the presentation and styling of the web pages.

• JavaScript: Used for the dynamic functionality and interactivity of the web pages.

User Interface Components

The user interface consists of the following components:

• Login page: Allows users to log in to the system.

• Dashboard page: Provides an overview of the user's account and access to various system
features.

• Profile page: Allows users to view and edit their account information.

• Search page: Allows users to search for specific credentials of an applicant

• University’s graduates display page: Displays detailed information about a university’s graduates.

User Interface Design

The user interface is designed to be simple, intuitive, and user-friendly. The color scheme and layout are
consistent throughout the application to provide a cohesive and professional look and feel.

Navigation

The navigation bar at the top of the page provides quick access to all the main sections of the
application, including the dashboard, search, cart, and checkout pages. The navigation bar also includes
links to the user's profile and logout functionality.

Responsive Design
The user interface is designed to be responsive and adaptable to various screen sizes and devices. This
ensures that the application is accessible and usable for users on desktop computers, laptops, tablets,
and mobile devices.

Login page

Gradates display page


Edit graduates info page

Use Cases and Database Relationships


In this chapter, Iwill discuss the various use cases of our web app system and the corresponding database
relationships. Understanding these use cases and relationships is essential for ensuring the efficient and
effective functioning of the system.

Here is an overview of the use cases and their corresponding database relationships:

• Use Case 1: Adding a new university record

• Use Case 2: Adding a new student record

• Use Case 3: Adding a new employer record

• Use Case 4: Verifying a student's certificate

• Use Case 5: Updating a university record

• Use Case 6: Updating a student record

• Use Case 7: Updating an employer record

• Use Case 8: Deleting a university record

• Use Case 9: Deleting a student record

• Use Case 10: Deleting an employer record

For each of these use cases, Iwill discuss the corresponding database relationships, including the tables
and fields involved. By the end of this chapter, you should have a clear understanding of how the
different use cases are implemented in our database and how they relate to each other.

Update profile

institutions login employers

add grad

update grad

verify cred
Chapter 5: Testing and Evaluation
To ensure that the system met its requirements and was functioning correctly, Iconducted a
series of tests and evaluations. Iused various testing techniques, including unit testing and
integration testing, to test the different components of the system. Ialso conducted user
acceptance testing with a group of potential users to evaluate the system's ease of use,
functionality, and overall user experience. Based on the results of our testing and evaluation,
Iwere able to identify areas for improvement and make necessary adjustments to the system.

Chapter 6: Documentation
Our web app system is designed to validate job applicant certificates and credentials. The system has
two dashboards, one for universities and one for employers. Universities can add student certificates and
personal information such as name and ID. Employers can then use the system to check if the job
applicant's certificates are legitimate by inputting the applicant's name and ID number. The system stores
all data in an encrypted format to ensure the security and integrity of the data.

Backend:

The backend of our system is developed using Node.js, a popular and powerful server-side programming
language. Node.js is well-suited for building scalable and high-performance web applications. Iused
Node.js to handle the server-side processing of data and to interact with the database.

Database:

Our system uses MongoDB as the database, a popular NoSQL database that is flexible, scalable and easy
to use. Ichose MongoDB because it allows us to store data in a flexible document-based format, making
it easier to handle complex and dynamic data.

Frontend:

The frontend of our system is developed using HTML, CSS and Bootstrap. HTML provides the structure of
the web pages, CSS provides the styling, and Bootstrap provides pre-built user interface components and
styles that make it easy to create a responsive and visually appealing user interface.

Security:

Our system is designed with security in mind. All data is encrypted using industry-standard encryption
algorithms, and Iuse secure communication protocols to ensure that data is transmitted securely
between the client and server. Ialso implemented access control measures to restrict access to sensitive
data to authorized users only.

Conclusion:

Our web app system is a powerful and secure tool for validating job applicant certificates and
credentials. With its user-friendly dashboards and advanced security features, the system is ideal for
universities and employers who need to verify the legitimacy of applicant credentials. By using Node.js,
MongoDB, HTML, CSS and Bootstrap, Iwere able to create a robust and flexible system that can handle
complex data and provide a smooth user experience.
Chapter 7: Conclusion
Overall, the development of our web app system was a challenging but rewarding experience. By
leveraging the strengths of different technologies and tools, Iwere able to create a functional and user-
friendly system that addresses the needs of both universities and employers. Our choice of Node.js as
the backend technology allowed for easy scalability and flexibility, while the use of MongoDB as the
database management system ensured efficient data storage and retrieval. The frontend of the web app
was built using HTML, CSS, and Bootstrap, which provided a clean and modern user interface.

To ensure the accuracy and validity of the data stored in the system, Iimplemented a secure and
encrypted data storage format. This ensures that only authorized personnel have access to
sensitive information and maintains the integrity of the system. The web app system has two
dashboards, one for universities and one for employers. Universities can add student certificates,
names, and IDs, while employers can check the legitimacy of an applicant's certificate by
inputting their name and ID number.
In conclusion, the development of this web app system required a great deal of effort and
collaboration between our team members. Going forward, Iplan to continue improving and
expanding the system's features and functionality to meet the evolving needs of our users.
References:
1. Aggarwal, S., & Bansal, P. (2020). Blockchain for certificate verification: a systematic
review. Journal of Ambient Intelligence and Humanized Computing, 11(6), 2539-2559.
2. Kumar, N., Sharma, A., & Bansal, R. (2020). Blockchain Based Verification and
Traceability for Education and Employment Certificates. In Proceedings of the 11th
International Conference on Computing, Communication and Networking Technologies
(ICCCNT) (pp. 1-7).
3. Alshammari, G., Alsulaiman, A., & Alkhudair, A. (2020). Blockchain-Based Certificate
Verification and Authentication System: A Systematic Review. Journal of Information
Systems Engineering & Management, 5(4), 21.
4. Dagher, G. G., Mohler, J., Milojkovic, M., Marella, P. B., & Samaniego, M. (2018).
Ancile: Privacy-preserving framework for access control and interoperability of
electronic health records using blockchain technology. Sustainable Cities and Society, 39,
283-297.
5. Marques, D. D., Esteves, J. B., & Velez, R. M. (2021). Blockchain technology for e-
government: A systematic literature review. Journal of Ambient Intelligence and
Humanized Computing, 12(3), 3119-3142.

You might also like