-
Notifications
You must be signed in to change notification settings - Fork 9
Requirements
Mısra Yavuz edited this page Jan 27, 2021
·
109 revisions
- Amazon-EC2: by allowing users to rent virtual computers on which to run their own computer applications.
- Admin User: A person who is responsible for system sustainability and management in general
- Guest User: A person who does not have an account and have restricted access to the application
- Vendor: A person who supply products to customers.
- Search: A tool to help the users find the relevant contents for given input words in the application
- Server: something that shares data or resources among multiple clients or performing computation for a client
- Sign In: Entering to the application by providing correct email and password
- Sign Up: Creating an account to be a member of application
- User: A person that interacts with the application
- Docker: It is a tool designed to make it easier to create, deploy, and run applications by using containers.
- Public Profile: A profile type which shall be visible to all users and guests.
- Private Profile: A profile type which shall be visible to limited users and guests.
-
1.1.1.1. Sign Up
- 1.1.1.1.1. Guests shall be able to sign up as a customer by providing their name, surname, e-mail address, choosing a password and a user name.
- 1.1.1.1.2. Guests should be able to sign up with their Google or Facebook account.
- 1.1.1.1.3. Guests shall be able to sign up as a vendor by providing their name, surname, e-mail address, choosing a password, a user name and their location (at least one).
- 1.1.1.1.4. Guest user shall be able to sign up while the purchase process.
-
1.1.1.2. Sign In
- 1.1.1.2.1. Users shall be able to sign in with their e-mail or user name and password.
- 1.1.1.2.2. There shall be a "forgotten password" button in case the user forgets the password.
- 1.1.1.2.3. Users should be able to sign in with their Google account or Facebook account.
-
1.1.1.3. Profile
- 1.1.1.3.1. Vendor and customer users shall have a profile page.
- 1.1.1.3.2. Vendor's profile shall contain vendor's rating, types of the products that vendor sell, products' prices and vendor's contact info.
- 1.1.1.3.3. Customer's profile shall contain user's address, user's info (age, sex etc.), the saved credit cards, user's previous orders and user's assessments about the vendors and the products.
-
1.1.1.4. User Types
- 1.1.1.4.1. Guest: A user who is using the platform but has not signed up yet.
- 1.1.1.4.2. Customer: A user who is able to use all the functionality of the system other than selling products.
- 1.1.1.4.3. Vendor: A user who is able to sell products on the platform.
- 1.1.1.4.4. Admin: An administrative user who is able to ban users and manage the whole system processes.
-
1.1.2.1. Rating
- 1.1.2.1.1. Customers shall be able to rate the products they bought, out of 5.
- 1.1.2.1.2. Customers shall be able to rate the vendors whom they bought a product from, out of 10.
-
1.1.2.2. Commenting on Products
- 1.1.2.2.1. Users shall be able to comment on the products that they have already bought.
- 1.1.2.2.2. Users shall be able to choose to anonymize their comment prior to posting.
- 1.1.2.2.3. Admins shall be able to delete inappropriate comments.
-
1.1.2.3. Search
- 1.1.2.3.1. Users shall be able to search for products and vendors. See 1.1.5 for more info.
-
1.1.2.4. Communication
- 1.1.2.4.1. Users shall be able to communicate with vendors through direct messaging.
-
1.1.2.5. Carts
- 1.1.2.5.1. Users shall be able to add products to their cart.
- 1.1.2.5.2. Users shall be able to remove products from their cart.
-
1.1.2.6. Lists
- 1.1.2.6.1. Customers shall be able to create private lists.
- 1.1.2.6.2. Customers shall be able to add products to their lists.
- 1.1.2.6.3. Customers shall be able to delete products from their lists.
- 1.1.2.6.4. Customers shall be able to delete their lists.
-
1.1.2.7. Orders
- 1.1.2.7.1. Customers shall be able to make and cancel orders and follow their orders. See 1.1.3 and 1.1.4 for more info.
-
1.1.3.1. Adding New Product
- 1.1.3.1.1. Vendors shall be able to add a new product to the platform with the necessary information of products(price, condition, category, etc.)
- 1.1.3.1.2. Vendors shall be able to sell as many products as they want.
- 1.1.3.1.3. Vendors shall be able to mention about the stock of a product.
-
1.1.3.2. Communication
- 1.1.3.2.1. Vendors shall be able to communicate with admins about orders.
- 1.1.3.2.2. Vendors shall be able to communicate with customers that text themselves through direct message.
-
1.1.3.3. Product Sold by Different Vendors
- 1.1.3.3.1. Vendors shall be able to sell the same product with another vendors.
-
1.1.3.4. Orders
- 1.1.3.4.1. Vendors shall be able to follow all processes about their ordered products as the customers.
- 1.1.3.4.2. Vendors shall be able to cancel an order during the order processing stage.
-
1.1.3.5. Recommendation System
- 1.1.3.5.1. Customers shall be able to be recommended based on their interactions on the platform.
-
1.1.4.1. Customers' Lists
- 1.1.4.1.1. Customers shall be able to create their own lists and carts.
- 1.1.4.1.2. Customers shall be able to add as many products as they want to their baskets.
-
1.1.4.2. Communication
- 1.1.4.2.1. Customers shall be able to communicate with vendors through direct messaging.
-
1.1.4.3. Orders
- 1.1.4.3.1. Customers shall be able to follow their orders via the orders page.
- 1.1.4.3.2. Customers shall be able to see their active and delivered orders with sufficient information about the orders.
- 1.1.4.3.3. Customers shall be able to cancel their active orders.
- 1.1.4.3.4. Customers shall be able to return their delivered orders.
-
1.1.4.4. Notifications
- 1.1.4.4.1. Customers shall be able to be notified about changes in products that are in their lists or favorites.
- 1.1.4.4.2. Customers shall be able to set alarm for a certain price and choose to be notified if the price of product goes below the chosen price.
-
1.1.4.5. Recommendation System
- 1.1.4.5.1. Customers shall be able to be recommended based on their interactions on the platform.
-
1.1.5.1. Search Bar
- 1.1.5.1.1. Users shall be able to search for both product pages and vendor profiles using the search bar. Search results should also include semantic results, similar vendors and similar products.
-
1.1.5.2. Filter
- 1.1.5.2.1. Users shall be able to filter products based on brand, vendor, price range, rating, and discount rate.
-
1.1.5.3. Sorting
- 1.1.5.3.1. Users shall be able to sort products based on bestsellers, newest arrivals, price, number of customer reviews, rating, and number of comments.
-
1.2.1.1. Sign Up
- 1.2.1.1.1. System shall send a verification email when a customer signs up.
- 1.2.1.1.2. System shall allow the passwords to be at least 8 characters which must include at least one uppercase, one lowercase character and a number
- 1.2.1.1.3. System shall ask customer to enter their password twice while signing up.
- 1.2.1.1.4. System shall verificate vendors when they sign up. They have to add their national id number.
-
1.2.1.2. Sign In
- 1.2.1.2.1. System shall allow customers to enter wrong password only 3 consecutive times. After that, system shall block the account and send an email to customer for giving information about the trial.
- 1.2.1.2.2. System shall remind customers to change their passwords regularly.
-
1.2.1.3. Payment
- 1.2.1.3.1. System shall ask all credit card information before any transaction if no credit card information is given or no card has already been saved. The information shall include proper card number with 16 characters, expiration date and CVV (3 character security code).
- 1.2.2.1 The system shall be able to respond to requests within 10 ms in general. Maximum response time should not exceed 1s.
- 1.2.2.2 The system shall cache frequently accessed contents to deliver faster and reduce response time.
1.1. User Requirements
1.1.1. User Basics
1.1.2. User Interactions
1.1.3. Vendor Specific Interactions
1.1.4. Customers Specific Interactions
1.1.5. Searching/Listing
1.2. System Requirements
1.2.1 Security
1.2.2. Performance
-
2.1.1. The system shall meet the standards written in the W3C protocol.
-
2.1.2. The system shall follow the W3C Activity Streams protocol.
- 2.2.1. When users sign up they must accept Privacy Policy.
- 2.2.2. When users sign up they must accept Terms of Use.
- 2.2.3. User data shall be processed according to the rules specified by GDPR and KVKK.
-
2.3.1. Deployment on a Server
- 2.3.1.1. The system shall be deployed on Amazon EC2 server
-
2.3.2. Docker
- 2.3.2.1. The system shall has docker technology to ease the development and deployment processes.
-
2.4.1 Web Access
- 2.4.1.1 The system shall have a Web application that supports Chrome browser that supports all versions since 2011.
- 2.4.1.2 The system shall have a Web application that supports Firefox browser that supports latest version.
- 2.4.1.3 The system shall have a Web application that supports Safari browser that supports all versions since 2014.
- 2.4.1.4 The system shall have a Web application that supports Opera browser that supports all versions since 2016.
-
2.4.2. Mobile Access
- 2.4.2.1 The system shall be compatible with Android 5.1 or higher version.
- 2.5.1 The system shall maintain itself every Monday between 3.00 am and 3.05 am regularly.
- 2.5.2 Every user shall receive an alert message 1 hour before the maintenance of the system starts.
2.1. Protocol
2.2. Ethical Issues
2.3. Deployment
2.4. Availability
2.5. Accessibility
🏠 Group 5
👨👧👦 Group Members
- Project Requirements
- Questions To Customer
- User Scenarios and Mockups
- Class Diagram
- Use Case Diagram
- Sequence Diagrams
- Description of APIs introduced
- Meeting #1 (13.02.2020)
- Meeting #2 (19.02.2020)
- Meeting #3 (26.02.2020)
- Customer Meeting #1 (03.03.2020)
- Meeting #4 (04.03.2020)
- Meeting #5 (12.03.2020)
- Meeting #6 (07.04.2020)
- Meeting #7 (17.04.2020)
- Meeting #8 (25.04.2020)
- Meeting #9 (10.05.2020)
- Meeting #10 (13.05.2020)
- Meeting #11 (25.05.2020)