072243A程序讲解 、辅导 Java语言编程
Primary School Management System (PSMS)
Java Course Semester Project, CUEB, SDS, Spring-2024.
Course ID: 072243A,
The following diagram illustrate typical stages of Software Development Cycle(SDC).
Fig. 1: Software Development Cycle(SDC).
1.Developing Prototype Model
Identify the basic requirements including the input, output information and security.
Develop initial prototype: The initial prototype is shall includes only user interfaces.
Review: The end-users, examine the prototype and provide feedback on additions or changes.
Revise and enhancing the prototype: Using the feedback, both the specifications and the prototype can be improved.
1.1 User description
There are four main users for the proposed system; these are Admin, student, teacher and the parent. Each user can perform several different functions during the use of the system. These functions are determined according to the design of the proposed system and a user-friendly functions to make the system more effective and efficient.
Admin: sign in, create new teacher/student/class, involve parent in registration process, generate time table (student, teacher).
Create, edit and delete student account.
Create, edit and delete teacher account.
Create, edit and delete parent account.
Store, edit, delete, calculate and student's grade.
Add Classes and Subject to the teachers.
Create, edit, delete and timetable.
Student: Sign in, view personal info, view time table, view exam’s marks, contact with school and teacher, apply for a leave
View their marks per subject.
View their timetable
Apply for leave
Change their account's information
Teacher: sign in, add student marks, add student attendance, contact with parent about their child, view teacher time table.
Add Student's marks per Subject.
Add Student's attendance per Subject.
Approve student leave application
Parent: Sign in, view report about his/child
View the marks of their children.
View the attendance of their children.
Change their account's information
1.2 System Requirement
Before creating the system, it is necessary to visualize the layout, design all features intended to be incorporated. In addition, how users will interact with each page and icon and how the System should perform. Once the requirements are set, developers can initiate the other technical work including system design, development, testing, implementation, and operation.
Functional requirements: “visible” features such as generate report, login, and signup.
Nonfunctional requirements: security, reliability and maintainability
2.System Analysis
Analyze the functional and non-functional requirements using use-case diagrams, and use-cases details. In addition, the interactive behavior of the activities is analyzed using sequence diagrams and activity diagrams.
3.Design Phase
During the design phase, the relationships between classes were designed and analyzed using the class diagram(UML). After that, Class Diagram are used to illustrate the relationships and source code dependencies among classes. The class defines the methods and variables in an object, which is a specific entity in a program.
4.Implementation Phase
Through this phase, several activities and techniques will be used to develop the system. The development of the system starts with designing the system structure. Then the style of the system will be designed using swing and awt.
5.Testing and Evaluation
5.1 Testing
Two types of testing will be performed to test the system. These tests were mainly performance testing and functionality testing.
Performance Testing
Functionality Testing
All functions in the application, forms used to enter data for submission, editing, getting or deleting information from users will be tested.
Security Testing
6.Evaluation
Since the system has four users whose opinion about the system is very important, a sample of student, teacher, parent, and school manager were consulted to evaluate the System.
6.1 Usability Evaluation
To evaluate the system based on the users (student, teacher, parent, admin).
Note:
1.Use Proper Comments in the code, follow the Java rules for defining class, package, variables and functions names.
2.Use balsamiq for design of GUI before implementation (https://balsamiq.com/wireframes/desktop/)
3.Use UML for classes and objects diagrams
4.Every group need to submit a report and code
5.This document is subject to minor changes before the project submission