Team Name
Clouders
Timeline
Summer 2020 – Fall 2020
Students
- Mohan Karki
- Roshan Kandel
- Noel Tamang
- Nabin Panthi
- Sunny Raj Bhandari
Abstract
eMarket is a cloud-based web application that is designed especially focusing to help local businesses and people to sell their products. It is a classified-ad website where the local people or business can post their ad of the products that the buyers can search and contact them to pay and get the item in a safer way following the guidelines provided to CDC in order to get and to protect others from COVID-19. The application is built using the Java programming language and Spring Framework and deployed using the services provided by Amazon Web Services (AWS).
Background
The article published in Business Insider states that more than 99 percent of all businesses are small businesses, and they employ about half the US workforce. Most small businesses lack the cash reserves to weather a month-long interruption, and forecasts indicate more than 2 million workers could lose their jobs in just one week as a result of the coronavirus pandemic. There is also the possibility of a “startup depression,” wherein new companies don’t enter the job market because of the pandemic[1] . This was a serious problem and through our project, we want to address it helping the small business to reach the massive numbers of buyers to sell their products free of cost. Similarly, we are also addressing the individual person who wants to sell items that are of no use for them anymore and are in good condition without charging any fee. Similarly, profiles of the sellers can be easily seen on the web page such that the buyers can easily contact them if they have any questions or queries. We believe that with the completion of the project and joining the eMarket team, local businesses can keep running the business and powering the economy of the country too which is most needed in the current situation.
Project Requirements
- The application will be developed using Java programming Language, Spring Framework, and Thymeleaf for the front end.
- The application will be deployed and analyzed using the AWS Services such as Elastic Beanstalk, CloudWatch, Route 53.
- The system shall have a simple and easy to navigate graphical user interface homepage for the user’s convenience and use.
- The application should be stable and shouldn’t be crashing every time the users open the web page.
- The system shall authenticate and authorized the valid user credentials like email address and password that were used while registering.
- Stripe API should be used in the application to process and operate the payment services.
- The application shall have the option to display the information regarding the safety measures due to COVID-19, app information, and what it is about, and other guidelines.
- Users can make an offer in any Ad and contact the seller through the available option in the application.
- Users can post an Ad for a certain amount of time and can be sponsored to be displayed at the homepage of the application.
- Users can report the Ad for spam, duplicate, and so on.
System Overview
eMarket consists of three different layers as Presentation Layer, Application Layer, and Repository Layer as shown in the figure below. This architecture layer gives an easy and simple approach showing how the information is passed, received, and stored. The top-level of the system layer allows the user to request and display the response received from the application layer whereas the application layer will perform the business logic using the data received from the repository layer doing the CURD operations. As in the diagram below, the presentation layer will be displayed once the users browse the domain address of the eMarket in their web browsers. After this, the user will make the request like Post an Ad, log in through the help of the Thymeleaf, CSS, and bootstrap, and communicate with the application layer where the system will validate, authenticate, and authorized tasks based on their request. Then this application layer will communicate with the repository layer with the storage logic and query and respond back to the presentation layer sending a response to users using Thymeleaf, CSS, and bootstrap.
Results
A demo of our application is shown here:
Future Work
Some of the Future work that we are planning to work on:
- Use of the Amazon S3 to save all the buckets and only store metadata in the database pointing to that specific S3 object.
- Use of the Amazon Aurora serverless Database instead of RDS in order to save cost, and increase efficiency.
- Expand the application’s platform to mobile devices.
Project Files
Project Charter (link)
System Requirements Specification (link)
Architectural Design Specification (link)
Detailed Design Specification (link)
Source Code (link)
Poster (link)
References
- Business Insider. COVID-19 BUSINESS ECONOMY, 2020.