Developing a web app that helps car owners find second hand car parts and compare prices from different vendors.
Searching for car part can be both:
- Time Consuming: Searching for the needed parts in different places
- No Straightforward Pricing: The user not only has to search for the availability of the part, but also has to go around and compare different prices
Creating an application for users to search for different parts digitally, and get responses only from registered vendors who have that part available.
As the app owner,
So that I can confirm the legitimacy of my app's users,
I want all users to register with their name and a valid phone number
As the app owner,
So that I can confirm the legitimacy of vendors using my app,
I want all vendors to register with their CR number and location/address (+ name & mobile number)
As an admin,
So that I can do my administrative work,
I want to be able to register to the app as an admin
As a vendor,
So that I can best suit my business needs and budget,
I want to choose from different registration packages that varies in prices and maximum number of listing
As a vendor,
So that I can start listing cars,
I want to be able to register as a vendor
As a buyer,
So that I start looking for car parts,
I want to be able to register as a buyer
As a registered user,
So that I can access my account,
I want to be able to log in
As a logged-in user,
So that I protect my data,
I want to be able to logout of my account
As a vendor,
So that buyers can find parts from my car scrap,
I want to list my cars by their: manufacturer, model, year
As an admin,
So that I can validate vendors' listings,
I want to be able to view them before they are listed
As an admin,
So that legit posts get posted,
I want to be able to accept and list posts by vendors
As an admin,
So that defying posts don't get posted,
I want to be able to decline posts
As the app owner,
So that I make sure vendors gets what they paid for,
I want vendors to be able to list up to their maximum number of listing according to their registration package
As a buyer,
So that I can find and compare car parts,
I want to be able to put up an inquiry for car parts with specific: manufacturer, model, year, part name.
As a vendor,
So that I can negotiate with buyers,
I want to receive requests/inquiries from buyers for parts available at my scrap
As the app owner,
So that I make sure all negotiation happens in the app,
I want buyers and vendors to have hidden contact info
As a vendor,
So that I can response to requests/inquiries,
I want to be able to chat with buyers I received requests/inquiries from
As a buyer,
So that I can organize my inbox,
I want to be able to accept and decline offers
As a buyer,
So that I can buy the part I choose,
I want to be able to see the vendor's contact info and location after accepting their offer
As a vendor,
So that I a can communicate with confirmed buyers,
I want to be able to see their contact info after they accept my offer
TDD will be followed to develop the app, and the tech stack includes: Ruby on Rails, PostgreSQL, HTML,CSS, and Javascript, and for testing: Rspec, Capybara, and Jasmine
Mobile apps stack is to be discussed.