Project Title: Contacts Management App
Project Description: The Contacts Management App is a web application designed by Ram Agrawal to help users manage their contacts efficiently. It allows users to perform CRUD (Create, Read, Update, Delete) operations on their contacts, authenticate themselves securely, and access their contacts from any device with an internet connection.
Software Development Life Cycle (SDLC) Model: Agile
-
Requirement Analysis:
- Description: Discussed project requirements with mentors to understand the scope and objectives of the Contacts Management App.
- Dividing Requirements: Segmented requirements into distinct categories including technical, backend, and frontend aspects to streamline the development process.
-
Design:
-
Implementation:
- Frontend Development: Developed the frontend using React.js, incorporating Bootstrap for styling and responsiveness.
- Backend Development: Built RESTful API endpoints using Node.js and Express.js to handle CRUD operations on contacts.
- Database Setup: Implemented MongoDB database to store contact information securely.
-
Testing:
- Manual Testing: Conducted manual testing by trying different scenarios and functionalities to verify the application's behavior.
- User Acceptance Testing (UAT): Personally tested the application to ensure it meets the desired functionality and user experience.
-
Deployment:
- Version Control: Utilized Git and GitHub for version control, regularly committing code changes and pushing them to the repository.
- Code Review: Engaged in code reviews with mentors and peers to receive feedback and improve code quality.
- Deployment Planning: Prepared for deployment by ensuring all necessary components and configurations are in place.
Deliverable 1: Frontend UI/UX Design
- Designed and implemented user-friendly UI components using React.js and Bootstrap.
Deliverable 2: Backend API Development
- Developed RESTful API endpoints for CRUD operations on contacts using Node.js and Express.js.
Deliverable 3: Authentication Implementation
- Implemented user authentication and authorization using JWT (JSON Web Tokens) for secure access to user-specific data.
Deliverable 4: Database Management
- Designed and implemented MongoDB database schema for storing user contacts.
Technology Stack:
- Frontend: React.js, Bootstrap
- Backend: Node.js, Express.js
- Database: MongoDB
- State Management: Redux
Overview: The Contacts Management App is implemented as a Single Page Application (SPA) using the MERN (MongoDB, Express.js, React.js, Node.js) stack. It follows a modular architecture to ensure scalability and maintainability.
Key Features:
- User Registration and Authentication
- Create, Read, Update, Delete (CRUD) Operations on Contacts
- Responsive and User-friendly UI/UX
- Real-time Data Synchronization
The Contacts Management App is a robust and user-friendly solution for managing contacts efficiently. It provides users with a seamless experience for organizing and accessing their contacts securely. By following the Agile SDLC model and leveraging modern technologies, Ram Agrawal was able to deliver a high-quality product that meets the needs of users.
