Summary
During my second year of studying Information Technology, we were assigned the healthcare industry as our topic, so I chose to create an application designed to help the elderly manage their doctors and diagnoses with minimal assistance. The project involved working with databases and data structures like arrays, using SQL for reading, writing, processing, and manipulating records, as well as handling file operations—such as reading, writing, and deleting files—and implementing thorough data validation. Looking back at the project now, I see aspects that could be improved, which have become clearer as my skills have grown.
Takeaways
1. Pop up messages:
- Help buttons are crucial for any application. In my project, I used pop-up dialogue boxes to display help messages. But, some of these messages were quite lengthy, and it would be frustrating for users to have to go through multiple pop-ups one after another. Instead, I should have created a single tab where all help messages were grouped. When the help button is clicked, users could be redirected to this tab, similar to the FAQ pages we see today.
2. Impractical "forget password":
- The "Forgot Password" function I implemented was quite basic. When a user clicked the button, a small box appeared, asking them to enter their first name, last name, and user ID number. If the entered information matched the records, the application would display the forgotten password directly.
- While my goal was to provide a straightforward solution, this method lacked proper security measures. At the time, we hadn't learned about more secure methods, such as sending a password reset email.
- Instead, I used text file manipulation and using algorithms to search for matches based on the provided information. If the first name, last name, and ID number matched, the validation was "successful", and the password was displayed.
- Although this method worked with the limited knowledge I had, it was impractical and not secure.
3. "Forgot Password" Group Box Not Disappearing:
- When users clicked the "Forgot Password" or "Click Me" button, a box would appear as previously mentioned. However, once the user found their password, the box did not close or hide. This blunder meant that if a new user attempted to log in on the same computer, the group box would still be visible, even after the previous user had logged off.
- I realize now that I should have implemented a feature to close or hide the box once the password was displayed. This would ensure a cleaner user experience and prevent any confusion for other users.
4. Not validating whether a user is already registered:
- I missed a crucial aspect of the application: validating whether a user was already registered. As a result, the application allowed the same person to sign up multiple times, even if they had already created an account. I did not implement any validation techniques in the password text file or the database to prevent users from signing up with the same credentials.
- This lack of validation would create confusion and also cause potential security risks.
Working on this project was one of the best experiences I’ve had, and it taught me a great deal. I gained hands-on experience with various aspects, including databases and SQL, which significantly enhanced my technical skills. Despite the mistakes I made, I now recognize the importance of proper validation, intuitive interfaces, and incorporating user feedback into future projects.