In Assignment 2, our task was to enhance an e-commerce website, focusing on user personalization and security. The core requirement was to enable user registration and login, ensuring that personalization features, like greeting users by name and personalizing invoices, were implemented. This assignment built upon our previous work in Assignment 1 but introduced new complexities such as handling user data and implementing security measures to protect this data. Read more about Assignment 2 here.
This assignment was a deep dive into web application development, especially in user data management and security. I learned how to securely handle user registration and login processes, ensuring data persistence and security. Managing user sessions without relying on cookies or session management tools was particularly challenging and educational.
I did not work with a partner on this assignment, so it was 100% my work.
Whenever I encountered challenges, especially with front-end design and form validation, I sought help through online forums and documentation. For complex issues, I consulted the past notes and screencasts from this course. This approach was instrumental in overcoming obstacles related to responsive design and user input validation.
Unlike Assignment 1, which was more about laying the foundation of a web application, Assignment 2 required a more advanced approach. It demanded an understanding of user authentication, data storage, and creating a personalized user experience. The emphasis on security and data handling was a significant step up from the basic web design of the first assignment.
My project’s strength ended up being in its user interface design, which is intuitive and user-friendly. However, a challenge I faced was ensuring security without the use of sessions or cookies, which required innovative thinking and alternative approaches.
If I could redo the assignment, I would spend more time on understanding and implementing advanced security measures. Additionally, I’d invest in learning more about responsive web design to enhance user experience on different devices.