Team Members
@mimlowe - Michael Lowe, User Profiles & Authentication
@iivaishnavii - Vaishnavi Ramesh, Add Cards
@KavyaChennoju97 - Kavya Chennoju, Manage Orders
@psnehas - Sneha Sneha, Make Payments
.post(/user)
Creates a new user
.get(/user/:email)
Finds an existing user profile by email
.delete(/user)
Deletes an existing user profile
.post(/user/authenticate)
Sets authenticated flag true
on user profile if email and pin match
.post(/user/logout)
Sets authenticated flag false
in user profile
.post(/addCard)
Allows for card creation and adding cards to user profiles
.post(/orders)
Allows for the creation of orders
.get(/orders)
Displays a list of user's active orders
.post(/makePayment)
Contains logic for making payments. Completes user's orders, checks and adjusts card balance.
Full documentation is available through Postman Documenter
1. Communication:
All of us worked jointly in developing the APIs. All decisions were made unanimously - right from creating schema for the project to deploying the project. This resulted in rapid feature development and deployment.
We had status calls for 10 minutes, the entire week, to sync up on our status.
We used Github scrum boards to create issues and this helped us in tracking open issues and helped us to complete the project successfully.
2. Simplicity:
The code implemented is simple, easy to understand and well-documented. In the future, if we plan to modify certain functionalities, the task would be simple, as the components are modular and well documented.
3. Feedback:
During the one week of development, each team member developed their API and got feedback from other members of the team. Everyone not only tested their API but also tested the APIs of other team members and tested all corner cases. The outcome of this effort was the creation of a set of robust APIs.
4. Respect:
Each team member completed the task assigned to them , on time and contributed towards the common goal.
5. Courage:
During the feedback phase, each team member was open to criticism and handled the feedback in a positive manner.
One activity of deploying services to AWS in an Auto Scaled EC2 Cluster with Load Balancer and deploying to AWS as Docker Containers in Amazon Containers is a perfect example of our team following the XP values. No one had prior experience in deploying services to scalable servers/dockers. Hence , we decided to tackle the problem together. We read articles and figured out a way to deploy the services successfully.This activity marks all the checkboxes of XP core values - communication, feedback, respect, courage and simplicity.
Available through GitHub Projects
Available through Google Sheets