Name of the Project – Airline Reservation Application.
Objectives/Vision
Develop an airline booking web application. Users can search for flights based on their travel plans.
Various flight operators can add their flight information to this application.
Functional Requirements
-
Application should have a home page having information on flights and offers available for travelers.
-
Complete registration process: We need to develop user registration, login, and forgotten passwords. Reset password and forgot password should implement with the registered email id of the user.
-
Once the user provides the correct login credential, the user will lend into the user dashboard. The dashboard should have all necessary features available to the specific user.
-
Here we have the application owner. The application owner can add, and delete routes.
Application owners can disable specific listings from airline operators.
-
Admin: Here airline owner registers as admin and adds their airline routes and fares with timings.
-
User Dashboard: Can see various routes and airlines available and their fares.
-
Discount: Discounts and offers can also be seen under the dashboard.
-
Proper cart should be implemented and all discounts and offers can be applied to the cart feature.
-
Discount: Discounts and offers can also be seen under the user dashboard.
-
Application owner can see the feedback coming from the user.
-
Application owner can control and manages promotional activities on this application.
Non-Function Requirement:
-
Build and Test Responsive and Interactive Webpages
-
Proper authentication should be implemented using OAuth 2.0 / JWT.
-
Application should have proper validation implementation with all required forms.
-
Appropriate cloud service should be incorporated / can be used for deployment, developing features based on project or use case.
-
Proper front-end unit testing should be part of the implementation.
-
Junit test coverage should also be part of development.
-
Implement proper CI and CD pipeline.
-
Deploy application on AWS cloud. (like Deploy Java Microservices on Amazon ECS using AWS Fargate).
Tools and Technologies to be used
-
VCS: Gitlab
-
Front End: HTML, CSS, JavaScript, Bootstrap and REACT.
-
Backend: Java 8, Spring Boot, Microservices, RSET API.
-
Database: MySQL/MongoDB
-
Testing: Mocha/Chai, Junit.
-Deployment: AWS Cloud services