CHAPTER THREE
METHODOLOGY
3.1 System Design and Model
System modelling is the process of developing an abstract representation of a
system, which helps understand the various components and interactions within a
system. The design and development of a Student Study Management System
(SSMS) is a complex and critical process, as it involves creating a comprehensive
software solution to support various aspects of educational institutions.
3.1.1 SSMS Model
Models help the analyst to understand the functionality of the system. Student
Study Management System (SSMS) is a web-based platform which is designed and
modelled with standard tools of software engineering. The model adopted for this
system is the Iterative model.
Fig 1. SSMS Model
3.1.2 Phases of SSMS Model
The Phases of the SSMS model are:
Requirements Phase: In this initial phase, a thorough understanding of the
requirements and goals of the SSMS is established. The requirements phase
includes:
Conducting interviews and surveys with students to gather user
requirements.
Document the features and functionalities expected from the system,
such as study material management, progress tracking, and any specific
requirements unique to the educational context.
Analysis & Design Phase: The system design phase translates the requirements
into a concrete plan based on the gathered requirements. It involves creating the
system architecture and specifying the components and modules of the SSMS. The
design phase includes:
Architectural design: Defining the system's structure, components,
and relationships.
Database design: Designing the database schema to store required
student-study related information.
User interface design: Creating an intuitive and user-friendly interface
for students.
Implementation Phase: The Implementation phase is where the actual
programming and coding of the SSMS take place. Skilled software developers and
programmers are responsible for creating a system according to the design
specifications. Key activities in the implementation phase include:
Writing code to implement the system's functionalities.
Developing the database management system.
Integrating security measures to protect student data.
Testing Phase: Before deploying the SSMS, rigorous testing is conducted to
ensure that it functions correctly and meets the defined requirements. The testing
phase includes:
Unit testing: Testing individual components and modules.
Integration testing: Ensuring that different parts of the system work
together as intended.
User acceptance testing: Letting end-users evaluate the system for
usability and functionality.
Evaluation Phase: Gather feedback from users to understand their experiences
with the system. The evaluation phase includes:
Conduct feedback sessions regarding usability, functionality, and any
potential issues.
Analyze the system’s performance in terms of responsiveness,
scalability, and reliability.
Evaluate the impact and efficiency of the system in facilitating
effective study management.
3.2 Use Case Diagram
A use case is described in terms of a sequence of interactions between some actors
and the system by which the system provides a service to the actors. Each use case
then captures a piece of functional requirements for some users. All the use case
together describes the overall functional requirements of the system. The first step
in requirement capture is to capture requirements as use cases. In the Student Study
Management System there are two (2) actors, which are;
Students
Admin
Fig 2. All Actors
Students
All students in the student study management system can;
Sign up
Log in
Interact with the system
Log out
Fig 3. Student Use Case Diagram
Admin
Admin can do the following tasks;
Log in
Modify the structure of webpages
Manage user access
Delete, add & modify database
Upload course materials & quizzes
Monitor system
Log out
Fig 4. Admin Use Case Diagram
3.3 Student Study Management System Workflow
Student study management system workflow refers to the sequence of steps or
processes that students follow to navigate and interact with the system throughout
their academic journey.
Fig 5. Student Study Management System Workflow
3.4 Database Design and Schema
Designing the database and schema for a Student Study Management System
(SSMS) involves structuring the database to efficiently store, manage, and retrieve
various types of student-related data. The database schema outlines the structure of
the database, including tables, relationships, and constraints. Below is an outline of
the database design for an SSMS:
3.4.1 Entities in the Database Schema:
Students: Contains personal information, contact details, enrollment
status, academic history, and associated data unique to each student.
Courses and Curriculum: Stores information related to courses,
curriculum details, class schedules, and course materials.
Fig 6. Database Schema for Course and Curriculum
Enrollment and Registration: Records related to student enrollment,
course registrations, academic advising, and academic progression.
Fig 7. Database Schema for Enrollment and Registration
3.4.2 Database Tables and Relationships:
Students Table: Includes fields like UserID (Primary Key), Name,
Email Address, Username, etc.
Courses Table: Contains CourseID (Primary Key), Course Name,
Schedule, and other related course details.
Enrollment Table: Establishes a relationship between Students and
Courses using foreign keys (UserID, CourseID) to represent which
students are enrolled in which courses.
3.4.3 Relationships Between Tables:
Students are related to Courses through the Enrollment table,
representing which students are enrolled in which courses.
3.4.4 Data Integrity and Constraints:
Primary Keys: Each table has a primary key (e.g., UserID, CourseID)
to uniquely identify records.
Foreign Keys: Used to establish relationships between tables. For
instance, the UserID in the Enrollment table references the Students
table.
Constraints: Implementing constraints like unique constraints, not-
null constraints, and data type constraints to ensure data accuracy and
consistency.
3.4.5 Normalization and Optimization:
The database schema is designed using normalization techniques to minimize
redundancy and optimize data storage. This involves breaking data into smaller,
related tables to eliminate data redundancy and improve efficiency.
3.5 Choice of Technology
In the development of a Student Study Management System, various technologies
are commonly used to create a dynamic, interactive, and data-driven web
application. The following development tools were chosen for this study.
1. Programming Languages: Hypertext Preprocessor (PHP) &
JavaScript
2. Database Management System: Structured Query Language (SQL)
3. Content Management System: WordPress
3.5.1 PHP Hypertext Preprocessor
The PHP Hypertext Preprocessor (PHP) is a recursive acronym for “PHP:
Hypertext Preprocessor”. It is a programming language that allows web developers
to create dynamic content that interacts with databases. PHP is a server-side
scripting language that is embedded in HTML. It is used to manage dynamic
content, databases, session tracking, and even build commerce sites. It is integrated
with several popular databases, including MySQL, Oracle, and Microsoft SQL
Server.
3.5.2 JavaScript
JavaScript is a versatile and widely- used programming language that primarily
runs in web browsers, enabling interactive and dynamic content on websites. It is a
key component of web development and plays a crucial role in enhancing the user
experience by adding interactivity, responsiveness, and dynamic behavior to web
pages.
3.5.3 Structured Query Language
Structured Query Language is a domain-specific language used in programming
and designed for managing and manipulating relational databases. SQL is used to
interact with relational database management systems (RDBMS) like MySQL,
Microsoft SQL Server, Oracle and others.
3.5.4 WordPress
WordPress is a popular and open-source content management system (CMS) that
empowers users to build and manage websites easily. It was created as a tool to
publish blogs but has evolved to support publishing other web content, including
more traditional websites, mailing lists and internet forum, media galleries,
membership sites, learning management system and online stores.
3.6 Features and Functionality of SSMS
1. Course Guidance: The SSMS provides personalized course
recommendations based on the student's academic program, year of study,
and individual progress. To achieve this, the system will incorporate a
database of all available courses and their associated program requirements.
Upon login, students will be required to input their program and year of
study. The system will then generate a list of courses that the student needs
to register for to fulfill their program requirements. The SSMS will also
track the student's progress and adjust the recommendations accordingly.
This feature ensures that students register for the right courses, plan their
studies effectively, and stay on track to graduate on time.
2. Past Questions Database: The SSMS provide a comprehensive database of
past examination questions for various courses. This feature enables students
to practice for exams effectively, gain familiarity with exam formats and
types of questions that may be asked, and identify areas of improvement.
3. Personalized Dashboard: The SSMS have a personalized dashboard for
each student, where they can view their course recommendations, progress,
and performance. The dashboard will also display upcoming assignments,
exams, and deadlines, ensuring that students stay on track with their studies.
This feature gives students a comprehensive overview of their academic
journey, enables them to plan effectively, and helps them stay organized and
motivated.
4. User Management: The SSMS have a user management feature that allows
administrators to manage user accounts, including creating new accounts,
deleting accounts, and modifying access rights. This feature ensures that
only authorized individuals have access to the platform, and that the system
is secure and well-maintained.
3.7 Security and Privacy Measures
Security and privacy are paramount in the development and operation of a Student
Study Management System (SSMS) to safeguard sensitive student information and
maintain user trust. Implementing robust security and privacy measures is
essential. Here are key considerations:
3.7.1 Data Encryption:
Data in Transit: Use secure communication protocols (e.g., HTTPS)
to encrypt data as it travels between the user's device and the server to
prevent eavesdropping.
Data at Rest: Encrypt stored data to protect it from unauthorized
access, especially sensitive information like student records.
3.7.2 Access Control:
Role-Based Access Control: Implement role-based access control
(RBAC) to ensure that users can only access the data and features
relevant to their roles (students, teachers, administrators, parents).
Strong Authentication: Enforce strong password policies, two-factor
authentication, and password reset procedures to secure user accounts.
3.7.3 Data Backups:
Regular Backups: Perform regular data backups and ensure disaster
recovery procedures are in place to prevent data loss.
3.7.4 Vulnerability Management:
Regular Scanning: Conduct regular vulnerability scans and patch
system vulnerabilities to reduce the attack surface.