SRMS – School Record Management System
SRMS was one of my first projects in Java. It was a school project that I took way beyond my syllabus. This project started in June 2015 and is now open-source and source code is available on my Github (link given below).
Although this project is still incomplete and there are a lot of bugs in it, this still was a great achievement for me as I added some really nice features in it.
First of all, it stores all the data in an SQL Database. I made a separate table for each section. I made separate tables to manage all the sections, list of teachers, list of students, subjects list and stream list. Here in India, we mainly have 3 Streams for studies, namely Science, Commerce and Humanities. Subjects for each stream are different. In this Record Management System, each teacher will have access only to the records of sections taught by him/her. The teacher can then modify data of the sections he teaches.
When the program starts, it displays the login/signup screen. You can login as a teacher or a student. Students don’t have the write access. They can only read records that too, only of their own section. A teacher can view, modify, add or delete records to the sections he teaches. He has no access to other section’s data. A new user can signup by clicking new user checkbox. A drop down would show up requiring additional details for signup. An option to show password is added to check if password is typed correctly. One of the notable feature is that all the passwords saved in the database are MD5 Encrypted.
Once the person logs in successfully, the Main Window is displayed. All controls are provided in this single window. There are 4 tabs, to add a record, to modify record, to delete record and to analyse the result (this one is still incomplete). For each tab, you fill in the details and save or delete or modify the record. For obvious reasons, the delete tab will provide records in read only format. The result analysis tab is still incomplete. It should have all the data displayed at once in tabular form.
That was the functioning of the Management System. Now to make the UI nice, I’ve added some features. Firstly, you don’t have a different window for each job like modifying records or adding records. All of them are given in a neat and clean one windowed UI. Secondly, there’s an option to change the theme. The idea of theme for The Diary Project came from here. The theme option gives you a set of different colors to choose from and the theme is set accordingly. Note that there are lighter shades of the theme color when mouse is just hovered over (like the mouse is on Delete Record button in the above image. The selected buttons have darker shades of the selected color. Moreover, the software remembers the choice of theme color when the user exits or logs out. The software remembers the theme for each user and is set on the same theme by default when he logs in next time.
This was a pretty complex and huge project for me at that time. It is not a finished project as I left it midway, because it was meant to be the school project and I went way out of syllabus, so my teacher told me to submit a simpler version of this. Also there are a lot of bugs in this project. I would love if someone comes up to complete this project.
Comment, Share, Follow.