SRS (Software Requirements Specification) - JU-CSE-27/swe-wiki GitHub Wiki

Introduction:

The Software Requirements Specification is designed to document and describe the agreement between the customer and the developer regarding the specification of the software product requested. Its primary purpose is to provide a clear and descriptive “statement of user requirements” that can be used as a reference in further development of the software system. This Software Requirements Specification specifies an E commerce site, by using this platform buyers can buy their necessary products and sellers can sell their product. This document is broken into a number of sections used to logically separate the software requirements into easily referenced parts. This Software Requirements Specification aims to describe the Functionality, External Interfaces, Attributes and Design Constraints imposed on Implementation of the software system described throughout the rest of the document. Throughout the description of the software system, the language and terminology used should unambiguous and consistent throughout the document.

Purpose:

E-commerce is an emerging and fast-growing technique which is used to buy and sell categorized product or services, chat, transact, generate report and track history of every customer. The software will be a platform for sellers and buyers where sellers can sale, promote their products and buyers can buy, post their demanded products in our site. The software will handle the trust issues among those groups and make an interactive platform where both parties can fulfill their demand. The purpose of this Software Requirements Specification is to verify all the specifications are correct and verified. It also ensures that this software is traceable throughout its software development life cycle.

Intended Audience:

The Software Requirements Specification will be used by administrators of the software, business analysts (BAs), project managers (PMs), developers, QA/QC engineers, users (sellers and buyers), marketing staffs, testers, investors etc.

Intended Use:

The main objective of this software is to provide easy assistance to both the customer as well as the seller with proper database and information.

The software provides the following facilities to the administrator:

  • Administrator can add, edit and delete product from database
  • Administrator can add and see the delivery report to the database

The software provides the following facilities to the customer:

  • The customers register with their details and get authentication for an authorized logging
  • Customer are provided with up-to-date information on the products available by category
  • Using shopping cart, see the item selected appears in the shopping
  • Select the shipping option for the item purchased
  • Using payment options, use either online model or offline models
  • After buying and making payment the products are sent to customer's address

Product scope:

  • Secure registration and profile management facilities for customers.
  • Comprehensive product details with product categorizations.
  • Product searching facilities for easy and quick access to products and services.
  • Dynamic product recommendations mechanism for individual user.
  • Creating a Shopping cart so that customers can shop several items and checkout finally with entire shopping carts.
  • Providing multiple shipping methods with online tracking of shipment.
  • Uploading Most purchased Items in each category of products.
  • Regular updates to registered customers about new arrivals, sale and offers.
  • Strategic data and graph for administrators and seller about the most popular items in each category.
  • Maintaining database of regular customers and products for different needs.
  • Employees are responsible for internal affairs like processing orders, assure home delivery, getting customer’s delivery time feedback, uploading order's status and answering client’s queries.
  • Feedback mechanism, where customer can give feedback for the product or service which they purchased.
  • Adequate payment mechanism and gateway for all popular credit cards and others relevant payment options.

Risk definition:

The typical risks that an e-commerce organization will encounter are:

Online Security Breach:

One of the biggest problems that come with the online world is its security risks. There are many threats that are present in the digital universe. Hackers can breach the network and gain unprecedented access to sensitive information such as company data and customer’s credit card information. Our e-commerce website must be adequately protected.

Client Disputes:

Client disputes on-site can be a headache. One of the most common causes of client disputes is customer refunds. Customer refunds can happen when either the item was never delivered, the customer was dissatisfied with the product, if the product is damaged, or when the product delivered does not match the customer’s order.

Seller Disputes:

Just like a brick-and-mortar store, vendor disputes can be quite tricky. There are cases when sellers do not give the products on time or even not deliver at all. This issue can cause a considerable number of problems for our e-commerce website, especially when we are just starting.

Shipment Problems

E-commerce means hiring a courier service to deliver products from seller to the customer. The speed of delivery is one aspect that can boost customer retention and loyalty. Many problems can go wrong with a sketchy courier service:

  • Huge shipping fees
  • Packages not arriving on time
  • Packages not even arriving
  • Packages with damaged goods inside
  • Packages going to the wrong address

Credit Card Scams

It is common for e-commerce websites to deal with stolen credit card information. Hackers, thieves, and frauds can easily use a credit card that is not theirs to complete a transaction.

Overall Description

This section includes details about what is and is not expected of our E-commerce system in addition to which cases are intentionally unsupported and assumptions that will be used in the creation of the E-commerce system.

2.1 Product Perspective

E-commerce system is an online marketplace where sellers can sell and promote their products and buyers can buy and post their demanded products in our site .This site supports also a number of functions ( Such as Product Recommendation System, Exchange offer, Lottery Offer etc. )for both of them.The website must be available to any customer who has internet connected devices. As stated by the customer, there are no hardware or software requirements beyond these including .

2.2 User Classes and Characteristics

  1. System - It will be the system administrator class He will maintain the overall web store

  2. login -This class will make login of customers and merchants

  3. customer -It includes the people who will purchase the things. It will save the attributes of product sale.

  4. Merchant - It includes the people who upload their products on the web

  5. recommendation- It recommends to user for choosing their best products.

  6. Exchanging- It includes the people who upload their products on the web

  7. Offers - It includes the people who upload their products on the web.

⇒ The user should be familiar with the shopping mall related terminology like Shopping Cart/Checking Out/ Transaction etc. ⇒ The user should have access to the internet. ⇒ The user should be familiar with at least one browser

2.3 User Needs

  • Sometimes many people don’t have enough time to go for shopping.Through this system they can easily find their desired products
  • Through this system people can exchange their old products and can also sell it.
  • People can also request for any kind of products
  • In case of product’s delivery, any customer’s desire is to get the product fast.In this case this system will help to make the fastest delivery.

2.4 Operating Environment

Operating environment for the E-commerce system is as listed below :

  • First it will operate on Internet explorer version 6 and Google Chrome. In next increment it will browse other browsers like Mozilla, Firefox and for their different version also.
  • Firebase : We will use Firebase as a database for storing data in our project.
  • Distributed database : We will use Github for Distributing the data.
  • Operating System : It can be open on android, ios, windows as well as Mac. But we recommend android and windows .
  • Ram : The RAM should be at least 1GB. But we recommend 2GB or more for better performance. .
  • Platform: .net/Java/JavaScript/PHP
  • Graphics: The video device should support graphics. For the clear view of graphics and to see video latest flash player should be installing.

2.5 Constraints

  • Limited to HTTP and HTTPS.
  • Real life credit card validation and Banking system is not implemented.
  • There is no maintainability of backup so availability will get affected.
  • No multilingual support.
  • The system may not behave correctly when used with Internet Explorer other than Google Chrome .
  • The system may not work correctly in cases when security is a concern.
  • For the password, a sufficient number of characters and contains not only lowercase letters but also capitals, numbers, and in some cases, symbols.

2.6 Assumptions

  • Provider’s Perspective : We have assumed that our E-commerce site will be running on a properly working web server and database system with an Internet connection that allows this system to perform all communications with clients.
  • Client’s Perspective : We have assumed that all of our clients have at least one smart phone to browse this site. The users are capable of open and login in their own accounts in this online platform.
  • All things will be happen according to the plan inshallah.

Functional Requirements:

As a user, I can exchange a product with a nearest user.

Success:

  • You can exchange your old products with anyone in the site.
  • You can sale your used product.

Failure:

  • Showing the message-“No match found”.
  • No internet connection
  • The page can’t load

As a user, I want to know about the payment methods.

Success:

  • You can pay by using credit card.
  • You can pay by Bkash.
  • You can pay cash on delivery.

Failure:

  • Showing the message-“Enter valid mobile no or pin number”
  • Card is declined
  • There is no bkash account for this number or haven’t sufficient balance
  • No internet connection
  • This page can’t be load

As a user, I want a conditional refund of a product.

Success:

  • You can get refunded if you want.
  • In exchange of the product within several days, you can get conditional refunded.

Failure:

  • Connection is lost
  • Can’t load this page• Please log in to get refund

As a user, I want to search product so that I can find my required product easily.

Success:

  • You can search your product by category name.
  • You can search your product by product name.
  • You can search your product from your search history.

Failure:

  • Please connect to the internet.
  • Please login to search product.
  • Get message-“No match is found”.

As a user, I want to see recommended products so that I can choose best option easily.

Success:

  • You can see your favorite product based on your selection for recommendation.
  • You can get best suggestions for your product based on your order.
  • You can get best suggestions based on your search.
  • You can get best suggestion based on your wishlist.
  • You get notification for recommended product.
  • You can block any product recommendation.

Failure:

  • Please connect to the internet.
  • Please login for recommendation.
  • You have to must select or search or order product or add product in whishlist for recommendation.

As a user, I want to see the description about products.

Success:

  • You can see the best product description.

  • You can see the ingredients and materials of that product. You will know the using procedure of that product.

  • Video description will also be added.

  • Authenticity will be shown.

Failure:

  • Please connect to the internet.
  • Please login to see product description.
  • “Description is not available”.

As a user, I want to see separately the old and new products.

Success:

  • You can get old products.
  • You can get new products.
  • You can get an offer or a new price for your old products.
  • Authenticity will be shown.

Failure:

  • Please connect to the internet.
  • Please login to see separately the old and new products.
  • “Product is not available”.

As a user, I want to get delivery report so that I can get delivery info.

Success:

  • You can get conformation massage of order place.
  • You can get required delivery time info.
  • You can get latest status of order.
  • You can get successful/ failure product delivery report.

Failure:

  • Please connect to the internet.
  • Please provide valid address.
  • Please provide valid mobile number.

As a user, I want to see shipping system so that I can choose best

option.

Success:

  • You can see several shipping options.
  • You can get shipping procedure info.
  • You can get required shipping time info.

Failure:

  • Please connect to the internet.
  • Please select a item to deliver.
  • Please provide valid address.
  • Get message-“No match is found”.

As a user, I want to see the ongoing offers easily so that I will be benefited.

Success:

  • You can check the ongoing offer.
  • You can recommend any offer.
  • You can get new notifications of new offers.

Failure:

  • Please connect to the internet.
  • Please login to see ongoing offer.
  • Not available any offer on this product.

As a user, I want an options to review and report a product so that I can sharemy experience with others.

Success:

  • You can review a product or company whether the product is good or bad.
  • You can see the others product review.
  • You can comment on others product review.
  • You can report a product whether the product is bad.
  • You can get reply on your report from seller.

Failure:

  • Please connect to the internet.
  • Please login to report.
  • Please login to give review.
  • There is no shipping history in your account of this product so you can’t
  • report this product.

Non-functional Requirements:

Performance Requirements:

  • Sign in within 25 seconds.
  • Receive confirmation email within 3 minutes.
  • Search results shown within 15 seconds.
  • Validate credit card within 5 seconds.
  • Support 200 customers logged at the same time.

Security Requirements:

  • System will use secure database.
  • Normal users can just read or write information but they can not edit or modify existing information except their personal information

Safety Requirements:

  • Database may get crushed at any certain time due to virus or operating system failure. There for it is required to take the database backup so that the database is not lost.

Quality Requirements:

  • The system is easy to use.
  • The system will be easy to learn how to operate it.
  • The system provide uniform look and feel between all the web pages.
  • The system provide digital image for each product in the product catalog.
  • The system provide multi language support.
  • The system is easy to upgrade.

Appendix A

Glossary:

  • DAA—digital asset analysis; a function that involves collection of data about the digital asset ( metadata ) and, if the asset is a text document, various indexes that identify its contents (full-text, semantic, ontological).
  • DAL—digital asset loading; a function that facilitates the selection and loading of digital assets.
  • DAR—digital asset repository; stores digital assets along with their metadex.
  • Metadex-a combination of metadata and indexes used to identify and search digital assets.
  • Repository—a central place where data is stored and maintained; it can be either remote or local to the user or system.