0% found this document useful (0 votes)
49 views29 pages

22BCP082 Se Ia1

Uploaded by

Samyak Gandhi
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
49 views29 pages

22BCP082 Se Ia1

Uploaded by

Samyak Gandhi
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 29

Software Requirements

Specification
for

E-Commerce Website
Version 1.0 approved

Prepared by

Samyak Gandhi 22BCP082

PANDIT DEENDAYAL ENERGY UNIVERSITY

08-09-2024

Copyright © 2002 by Karl E. Wiegers. Permission is granted to use, modify, and distribute this document.
Software Requirements Specification for <Project> Page 2

Table of Contents
1. Introduction 1
1.1 Purpose 1
1.2 Document Conventions 1
1.3 Intended Audience and Reading Suggestions 2
1.4 Project Scope 2
1.5 References 3
2. Overall Description 4
2.1 Product Perspective 4
2.2 Product Features 4
2.3 User Classes and Characteristics 5
2.4 Operating Environment 6
2.5 Design and Implementation Constraints 6
2.6 User Documentation 7
2.7 Assumptions and Dependencies 7
3. System Features 8
3.1 User Registration and Login 8
3.2 Product Catalogue and Search 9
3.3 Shopping Cart and Checkout 10
3.4 Order Tracking and History 11
3.5 Admin Dashboard and Product Management 12
4. External Interface Requirements 14
4.1 User Interfaces 14
4.2 Hardware Interfaces 15
4.3 Software Interfaces 15
4.4 Communications Interfaces 16
5. Other Nonfunctional Requirements 17
5.1 Performance Requirements 17
5.2 Safety Requirements 18
5.3 Security Requirements 19
5.4 Software Quality Attributes 20
6. Other Requirements 21
Appendix A Glossary 22
Appendix B Analysis Models 23
Appendix C Issues List 26
Software Requirements Specification for <Project> Page 3

Revision History
Name Date Reason For Changes Version
Software Requirements Specification for E-Commerce Website Page 1

CHAPTER 1

1. Introduction
This document provides the Software Requirements Specification (SRS) for an e-commerce laptop-
selling store website. It outlines the requirements for building and maintaining the platform,
describing the functionality, user interactions, and system capabilities.

1.1. Purpose
The purpose of this SRS is to specify the software requirements for the e-commerce website,
focusing on the sale of laptops. The version of the software covered in this document is Version 1.0.
This document encompasses the front-end and back-end functionalities required for the e-
commerce store, including the product catalog, shopping cart, checkout process, and user account
management.
This SRS specifically describes the first release of the system. Future iterations of the project will
include enhanced features such as product recommendations, advanced search filters, and more
detailed reporting for administrators.

1.2. Document Conventions


This document follows standard software documentation practices and uses the following
conventions:
 Bold Text: Used for headings and key terms.
 Italicized Text: Used for emphasis on specific instructions or key points.
 Monospaced text: Used for code snippets or filenames.
 Requirements follow the format of [REQ-xx] to uniquely identify each item.
 Prioritization is denoted as:
o Must: Essential for the current release.
o Should: Desirable for the current release but not mandatory.
o Could: Potentially added in future releases.
Software Requirements Specification for E-Commerce Website Page 2

1.3. Intended Audience and Reading Suggestions


This document is intended for the following readers:
 Developers: To understand the functional and non-functional requirements of the website
and the technical framework to be used for implementation.
 Project Managers: To ensure the project stays on track by following the defined scope and
understanding the expectations of the final product.
 Marketing Staff: To gain insights into the business objectives and product features that can
be leveraged for promotional strategies.
 Users and Testers: To verify that the software meets the intended requirements and perform
relevant testing.
 Documentation Writers: To understand the product scope and features for creating user
manuals and guides.
Reading suggestions:
 Developers should start with Section 2, which covers the functional requirements in detail.
 Project Managers might prefer reading Section 1 (Introduction) and Section 4 (Project
Deliverables) to gain a high-level understanding.
 Testers can focus on the functional and non-functional requirements (Sections 2 and 3).

1.4. Project Scope


This e-commerce website is intended to serve as an online platform for the sale of laptops. The
primary purpose is to offer users a streamlined experience to browse, search, and purchase laptops.
The platform will also allow users to create and manage accounts, track orders, and review products.
Key objectives include:
 Product Display: Provide detailed descriptions, images, and prices for various laptop models.
 Shopping Cart: Allow users to add multiple products, adjust quantities, and proceed to
checkout.
 Secure Transactions: Ensure safe and secure payment methods, including credit card, net
banking, and third-party payment gateways.
 User Accounts: Support customer profiles, including order history, saved addresses, and
personalized settings.
Software Requirements Specification for E-Commerce Website Page 3

 Administrator Dashboard: Offer an administrative interface for product management, order


tracking, and sales reporting.
This project aligns with the broader corporate strategy to enhance digital sales, expand the customer
base, and increase overall revenue by providing an easy-to-use, scalable platform for selling laptops.

1.5. References
The following documents and resources are referenced in this SRS:
 Vision Document: "Laptop E-commerce Website Vision" by Tiyarsna Solanki, Version 1.0, July
2024.
 HTML/CSS Guidelines: W3C Style Guidelines, accessed in August 2024.
 Payment Gateway API Documentation: "Stripe API Guide," Version 2023, available at
https://stripe.com/docs/api.
 Database Design Documentation: "Relational Database Best Practices," by MySQL, Version
8.0, available at https://dev.mysql.com/doc/.
 User Interface Style Guide: "Material Design for Web," Google, accessed in August 2024.
These references provide additional details on the technologies, design standards, and APIs to be
integrated into the e-commerce platform.
Software Requirements Specification for E-Commerce Website Page 4

CHAPTER 2
2. Overall Description
This section provides a high-level overview of the e-commerce laptop-selling store website, including
its context, features, user demographics, operational environment, and design constraints.

2.1. Product Perspective


The e-commerce laptop-selling website is a new, standalone product designed to allow users to
browse and purchase laptops online. The product is being developed as part of a college assignment
for software engineering and is not a follow-on to an existing system or part of a larger product
family.
This website functions independently, but it will interface with third-party services such as:
 Payment Gateways (e.g., Stripe or PayPal) for handling secure transactions.
 Shipping APIs for calculating and tracking deliveries.
 Email services for notifications to customers regarding orders and shipping updates.
A simple diagram below shows the high-level interaction between major components:
 Frontend: Displays products and allows users to interact with the website.
 Backend: Processes requests, handles business logic, and communicates with the database.
 Database: Stores product details, user information, and transaction records.
 External Services: Handles payments and shipping details.

2.2. Product Features


The e-commerce laptop-selling website provides the following key features:
 User Registration and Login: Users can create accounts, log in, and manage their profiles.
 Product Catalog: Displays various laptops with details like specifications, images, and prices.
 Search and Filter: Users can search for laptops and apply filters based on brand, price range,
features, etc.
 Shopping Cart: Users can add laptops to their cart, modify quantities, and view the total
price.
 Secure Checkout: Users can complete their purchase with secure payment methods.
 Order Tracking: Once the purchase is complete, users can track their orders and view their
history.
Software Requirements Specification for E-Commerce Website Page 5

 Admin Dashboard: Admin users can manage products, update inventory, process orders, and
generate sales reports.
These features will help both end customers and store administrators in achieving their respective
goals, and a detailed breakdown will follow in Section 3.

2.3. User Classes and Characteristics


This website is designed for the following user classes:

 End Customers:

 Characteristics: Regular users of the website who are browsing, selecting, and
purchasing laptops. They will have varying technical expertise, so the website will
provide an easy-to-use interface. These users are likely to use the search, filter, and
purchase functions.

 Technical Expertise: Basic to moderate.

 Frequency of Use: Occasional, when looking to purchase a laptop or browse new


deals.

 Admin Users:

 Characteristics: These users manage the website, including product listings,


inventory, orders, and sales. They will need access to more advanced features and
reports through an admin dashboard.
 Technical Expertise: Moderate to high, as they will need to navigate a more
complex system.
 Frequency of Use: Frequent, to maintain and update the product catalog and
process orders.

 Guest Users:

 Characteristics: Users who browse products but do not log in or create an


account. They will be limited in functionality (e.g., they cannot make purchases).
 Technical Expertise: Basic.
 Frequency of Use: Casual or one-time visitors.
The primary focus will be on ensuring a smooth user experience for end customers, while admin
users will have access to detailed controls for managing the store.
Software Requirements Specification for E-Commerce Website Page 6

2.4. Operating Environment


The e-commerce website will operate in the following environment:
 Hardware Platform: Compatible with standard devices such as desktops, laptops, and mobile
devices (responsive design).
 Operating System: The system is platform-independent, capable of running on Windows,
macOS, Linux, iOS, and Android via web browsers.
 Browsers Supported: Chrome, Firefox, Safari, Microsoft Edge (latest versions).
 Backend Server: Runs on a web server with support for Node.js/Express or PHP (depending
on the chosen tech stack).
 Database: MySQL or MongoDB for storing user information, product details, and transaction
logs.
 Third-Party Software: Integration with external APIs for payments (Stripe, PayPal), shipping,
and email notifications.

2.5. Design and Implementation Constraints


There are several constraints that will affect the design and implementation of the system:
 Hardware Limitations: The system must handle a minimum of 10,000 products and 1,000
concurrent users. The website should be optimized for both high-traffic scenarios and large
product catalogs.
 Security Considerations: The system must comply with security standards (e.g., HTTPS for
secure transactions, strong password policies, data encryption).
 Database Constraints: The database must be able to store product details, user accounts,
order information, and sales reports. MySQL is preferred due to its scalability and support
for relational queries.
 API Limitations: The system will depend on third-party payment and shipping APIs, which
may have their own limitations in terms of transaction volume or availability.
 Programming Standards: The codebase will follow best practices for maintainability, using
clear naming conventions, modular architecture, and adequate documentation.
 Regulatory Constraints: Compliance with data privacy laws (such as GDPR) and payment
security standards (PCI DSS).
Software Requirements Specification for E-Commerce Website Page 7

2.6. User Documentation


The following documentation will be provided with the product:
1. User Manual: A detailed guide on how to navigate the website, search for products, make
purchases, and manage user accounts. It will also include a FAQ section for common queries.
2. Online Help: Embedded help features and tooltips within the website to guide users as they
perform various tasks.
3. Admin Guide: A separate document for admin users, detailing how to manage products,
process orders, and generate reports.
4. Video Tutorials: Short video clips on key features, such as product management and
checkout processes.
5. API Documentation (if required): For any external developers who might need to interface
with the website’s API (for example, to integrate external services or tools).

All documentation will be available in HTML and PDF formats, with video tutorials hosted on the site
and linked from the documentation.

2.7. Assumptions and Dependencies


The development of this e-commerce website is based on the following assumptions:
1. Third-Party API Availability: It is assumed that payment gateways (e.g., Stripe or PayPal) and
shipping APIs will be available and function correctly. Any changes to these services could
affect the project.
2. Browser Compatibility: The system assumes that users will have modern browsers capable
of supporting HTML5, CSS3, and JavaScript. Older browsers may not be fully supported.
3. Hosting Requirements: It is assumed that the web hosting environment will provide
adequate server resources for handling expected traffic and will support secure protocols
(e.g., SSL certificates).
4. User Devices: The website is assumed to be accessed via desktops, laptops, tablets, and
smart phones, with no need for specialized devices or hardware.
5. Development Team: The team working on the project is familiar with web development
technologies (HTML, CSS, JavaScript, Node.js, or PHP) and can integrate third-party APIs.
Any failure in these assumptions (e.g., changes in third-party services or browser support) could
require adjustments to the design and implementation pl
Software Requirements Specification for E-Commerce Website Page 8

CHAPTER 3
3. System Features
This section describes the major system features for the e-commerce laptop-selling store website.
Each feature is detailed with its description, priority, stimulus/response sequences, and functional
requirements.

3.1. User Registration and Login

3.1.1. Description and Priority


This feature allows users to create an account, log in, and manage their profiles. It is a high-priority
feature since registration and login are essential for secure transactions, personalized shopping
experiences, and order tracking. Without this, customers cannot make purchases or store
information securely.
 Benefit: 9 (high)
 Penalty: 8 (high)
 Cost: 5 (medium)
 Risk: 4 (medium)

3.1.2. Stimulus/Response Sequences

 Stimulus: A user clicks the “Register” or “Login” button on the homepage.

 Response: The system displays a registration/login form.


 Stimulus: The user enters their email, password, and other required details and submits the
form.
 Response:

 If successful, the system logs the user in and redirects them to their profile or
home page.
 If unsuccessful (e.g., invalid email or password), the system shows an error
message.
 Stimulus: A registered user attempts to log in.
 Response: The system verifies the credentials and either grants access or returns an error
message.
Software Requirements Specification for E-Commerce Website Page 9

3.1.3. Functional Requirements


 REQ-1: The system must allow users to register by providing their email, password, and
contact details. A verification email should be sent to confirm registration.
 REQ-2: The system must validate email addresses and ensure passwords are at least 8
characters long, containing both numbers and letters.
 REQ-3: Users should be able to reset their passwords through a "Forgot Password" feature,
which sends a password reset link to their registered email.
 REQ-4: Upon successful login, the system should store the user session securely using session
tokens or cookies.
 REQ-5: Error messages must be clear and help users identify what went wrong, such as invalid
credentials or missing fields.

3.2. Product Catalog and Search


3.2.1. Description and Priority
The product catalog allows users to browse and search for laptops. The system displays product
listings, images, specifications, and prices. This is a high-priority feature because the primary
purpose of the website is to showcase available laptops to potential buyers.
 Benefit: 9 (high)
 Penalty: 8 (high)
 Cost: 6 (medium)
 Risk: 5 (medium)

3.2.2. Stimulus/Response Sequences

 Stimulus: A user navigates to the “Shop” or “Products” section.

 Response: The system displays a list of laptops with images, descriptions, prices, and filters
(e.g., brand, price range).

 Stimulus: The user enters a keyword in the search bar (e.g., “gaming laptop”).

 Response: The system displays laptops that match the search query.
 Stimulus: The user applies filters (e.g., selects a price range or brand).
 Response: The system updates the displayed products based on the filters.
Software Requirements Specification for E-Commerce Website Page 10

3.2.3. Functional Requirements


 REQ-6: The system must display the product catalog with product images, descriptions,
specifications, and prices.
 REQ-7: Users should be able to search for laptops using keywords related to brand, features,
or price.
 REQ-8: The system should provide filters for narrowing down product choices based on
brand, price range, screen size, RAM, storage, and more.
 REQ-9: The product listing must update dynamically when filters are applied or removed.

 REQ-10: If no products match the search or filters, the system should display a “No results
found” message.

3.3. Shopping Cart and Checkout


3.3.1. Description and Priority
The shopping cart allows users to add laptops to their cart, view the total price, adjust quantities,
and proceed to the checkout. This feature is high priority as it is essential for making purchases and
completing orders.
 Benefit: 9 (high)
 Penalty: 8 (high)
 Cost: 7 (medium)
 Risk: 5 (medium)

3.3.2. Stimulus/Response Sequences

 Stimulus: A user clicks “Add to Cart” on a product page.

 Response: The system adds the selected product to the shopping cart and updates the cart
icon with the total number of items.

 Stimulus: The user clicks on the “Cart” button.

 Response: The system displays the shopping cart page with a summary of items, total price,
and options to adjust quantities or remove items.

 Stimulus: The user clicks “Checkout” and enters payment and shipping information.

 Response: The system processes the payment and confirms the order with an order
summary.
Software Requirements Specification for E-Commerce Website Page 11

3.3.3. Functional Requirements


 REQ-11: The system must allow users to add products to their cart and update the cart's item
count dynamically.
 REQ-12: Users must be able to view and modify their shopping cart, including adjusting
quantities or removing items.
 REQ-13: The system should calculate the total price dynamically as products are added,
removed, or quantities are changed.
 REQ-14: The system must provide a secure checkout process, allowing users to enter shipping
details and choose from multiple payment options (e.g., credit card, PayPal).
 REQ-15: Upon successful checkout, the system must generate an order confirmation, send a
receipt to the user’s email, and update the order history.

3.4. Order Tracking and History


3.4.1. Description and Priority
This feature enables users to track their orders and view their purchase history. It is medium priority,
as it improves the post-purchase experience and ensures customer satisfaction.
 Benefit: 7 (medium)
 Penalty: 6 (medium)
 Cost: 5 (medium)
 Risk: 4 (medium)

3.4.2. Stimulus/Response Sequences

 Stimulus: A user logs into their account and navigates to the “Order History” section.

 Response: The system displays a list of past orders with details like date, product, price, and
order status.
 Stimulus: The user clicks on an individual order.
 Response: The system displays the order details, including shipping status and tracking
information.

3.4.3. Functional Requirements


 REQ-16: The system must allow users to view their order history, including order number,
products purchased, total price, and date of purchase.
Software Requirements Specification for E-Commerce Website Page 12

 REQ-17: Users should be able to click on an order to view additional details such as shipping
status, estimated delivery date, and tracking information.
 REQ-18: The system must update the order status dynamically as the shipping progresses.
 REQ-19: Users should receive email notifications at major stages (e.g., order confirmation,
shipping confirmation, delivery).
 REQ-20: If an order is delayed or canceled, the system must notify the user through both
email and their account page.

3.5. Admin Dashboard and Product Management


3.5.1. Description and Priority
The admin dashboard provides tools for managing the product catalog, processing orders, and
generating sales reports. This is a high-priority feature as it ensures smooth operation and
maintenance of the website.
 Benefit: 8 (high)
 Penalty: 7 (medium)
 Cost: 6 (medium)
 Risk: 4 (medium)

3.5.2. Stimulus/Response Sequences


 Stimulus: An admin logs into the dashboard.
 Response: The system displays product management tools, order lists, and sales reports.
 Stimulus: The admin adds or edits a product.
 Response: The system updates the product catalog accordingly.

3.5.3. Functional Requirements


 REQ-21: The system must provide an admin dashboard with tools for managing products
(add, update, delete), viewing orders, and generating reports.
 REQ-22: The admin should be able to view all orders and update their statuses.
 REQ-23: The system must provide the ability to generate reports on sales, inventory, and
customer activity.
 REQ-24: The system should include role-based access control, allowing only authorized users
to access the admin dashboard.
Software Requirements Specification for E-Commerce Website Page 13

 REQ-25: Error handling should prevent unauthorized actions (e.g., deleting products without
sufficient privileges).
Software Requirements Specification for E-Commerce Website Page 14

CHAPTER 4
4. External Interface Requirements
External interface requirements specify how the system interacts with users, hardware, software,
and communication protocols. These requirements are critical for ensuring that the e-commerce
website functions correctly across all interfaces.

4.1. User Interfaces


The user interface (UI) is essential for an e-commerce website as it defines how users interact with
the system.

 Customer Interface:
 The website will feature a clean, intuitive layout for browsing laptops, searching for
products, and viewing product details.

 Key elements include a homepage with featured laptops, a search bar, product filters
(brand, price range, etc.), and detailed product pages.

 Customers can sign up/login, add laptops to their shopping cart, and proceed to
checkout.

 The UI will also offer a responsive design to ensure usability across different devices
(laptops, tablets, and smartphones).

 Basic styling will be achieved using HTML and CSS, with interactive elements using
JavaScript.

 Admin Interface:
 Admins can manage products (add, edit, or delete laptop listings), track sales, and
manage customer accounts.

 This section will be password-protected and offer functionality for inventory control,
order processing, and customer support.

 The admin dashboard will display key performance indicators (KPIs) such as total
sales, active orders, and inventory levels.

 PHP will handle the functionality behind the admin interface, while HTML/CSS will
control the layout and presentation.
Software Requirements Specification for E-Commerce Website Page 15

4.2. Hardware Interfaces


This section outlines the interaction between the software and hardware components of the system.

 Servers:
 The system will require a web server (e.g., Apache or Nginx) to host the website, along
with a server for managing the SQLite database.

 The website will be optimized to run on a typical hosting platform supporting PHP,
HTML, CSS, and SQLite.

 Adequate storage capacity will be needed to store product images, descriptions, and
customer data.

 User Devices:
 Customers will access the website from a variety of devices such as laptops, desktops,
smartphones, and tablets.

 The website will be designed to function seamlessly on different browsers and


operating systems (Windows, macOS, Linux, Android, iOS).

4.3. Software Interfaces


Software interfaces define how the e-commerce system interacts with other software.

 Web Browsers:
 The website will be compatible with major web browsers (Google Chrome, Mozilla
Firefox, Safari, Microsoft Edge) to ensure a broad user base can access the system.

 The use of HTML, CSS, and JavaScript will ensure that the website provides a
consistent experience across browsers.

 Database Interface:
 SQLite will be used as the database management system to store data on laptops,
customers, orders, and transactions.

 PHP will interface with SQLite to perform CRUD operations (Create, Read, Update,
Delete) on the database, ensuring data integrity and real-time updates.

 The database will store structured data such as product details, inventory status,
customer information, and order history.
Software Requirements Specification for E-Commerce Website Page 16

 Payment Gateway:
 The website will integrate with external payment gateways (e.g., PayPal, Stripe)
to process online payments securely.
 API integrations will be required to ensure smooth communication between the
website and the payment gateway for transaction processing.

4.4. Communications Interfaces


Communication interfaces define how the system interacts with external networks and protocols.

 HTTP/HTTPS Protocol:
 The website will communicate over the internet using the HTTP/HTTPS protocol.

 HTTPS will be implemented for all sensitive transactions, ensuring encryption for
customer data and payment details.

 Email Notifications:
 Email communication will be utilized for order confirmations, shipping notifications,
and promotional messages.

 Integration with an SMTP server or email API (e.g., SendGrid) will be necessary to
send automated emails triggered by specific customer actions (e.g., order
placement).

 API Integration:
 If needed, the system may interface with external services for functionality such as
shipping calculations, product reviews, or social media integrations.

 APIs will be used to securely connect and exchange data between the website and
third-party services.
These external interface requirements ensure that the e-commerce website operates effectively,
providing a seamless experience for both customers and administrators.
Software Requirements Specification for E-Commerce Website Page 17

CHAPTER 5

5. Other Nonfunctional Requirements


Nonfunctional requirements define the qualities and constraints of a system rather than specific
functionalities. They ensure that the system performs well under real-world conditions and meets
user expectations for reliability, performance, security, and maintainability. Below is an elaboration
of key nonfunctional requirements for the system.

5.1 Performance Requirements

1. Page Load Time:

 Pages should fully load within 2 seconds to ensure a fast and responsive user experience.

2. Search and Filter Performance:

 Product search and filter operations must return results in under 2 seconds, even with a
database of 10,000 products.

3.Concurrent Users:

 The website should handle at least 10,000 concurrent users without performance
degradation. Stress testing will determine the upper limit for scalability.

4. Transaction Processing:

 95% of transactions should complete in under 5 seconds to reduce cart abandonment and
maintain customer satisfaction.

5. Real-Time Updates:

 Stock levels, prices, and dynamic content must be updated in real-time, with changes
reflected on the website within 2 seconds.
Software Requirements Specification for E-Commerce Website Page 18

5.2 Safety Requirements

1. Data Integrity:
o The system must ensure that all user-submitted data, such as customer details and
payment information, is securely stored and remains intact during transmission and
retrieval. Any data corruption or loss during these processes should be prevented
by maintaining consistent database practices and error-checking mechanisms.
2. Secure Transactions:
o All financial transactions must adhere to the Payment Card Industry Data Security
Standard (PCI DSS) to safeguard sensitive payment data, such as credit card details.
This includes encryption, tokenization, and secure processing environments to
prevent fraud and data breaches.
3. Fail-Safe Mechanisms:
o The system should incorporate robust fail-safe measures, including regular data
backups, real-time error recovery processes, and detailed logging. In the event of a
system failure or unexpected crash, these mechanisms ensure that no critical data
is lost, and operations can resume with minimal disruption.
4. Compliance with Regulations:
o The website must comply with relevant local and international regulations, such as
the General Data Protection Regulation (GDPR) for handling and protecting user
data within the European Union. Compliance ensures the lawful collection, storage,
and processing of personal data, protecting both users and the business from legal
liabilities.
5. Product Information Accuracy:
o Accurate product descriptions, prices, and specifications are critical to avoid
misleading users or violating consumer protection laws. The system should have
processes to verify product information regularly, preventing potential user harm,
legal disputes, or loss of trust due to incorrect or outdated information.
Software Requirements Specification for E-Commerce Website Page 19

5.3 Security Requirements

1. Authentication and Authorization:


o The website must implement secure authentication methods, such as multi-factor
authentication (MFA), to verify user identities during login. Additionally, role-based
access control (RBAC) should be enforced, allowing only authorized users to
perform sensitive operations, such as managing products or processing payments.
This ensures that users can access only the resources relevant to their roles.
2. Data Encryption:
o All sensitive data, including user credentials, personal information, and payment
details, must be encrypted to protect it from unauthorized access. Data must be
encrypted in transit using HTTPS/SSL to secure communication between users and
the server, and at rest to safeguard stored information on databases and servers.

3. Vulnerability Management:
o Regular security audits, vulnerability assessments, and penetration testing should
be conducted to proactively identify and fix security loopholes. These assessments
help prevent exploits of weaknesses in the system, ensuring continuous security
against new and evolving threats.
4. User Privacy:
o User data should not be shared with third parties without explicit consent. The
website must comply with privacy regulations such as the General Data Protection
Regulation (GDPR) and the California Consumer Privacy Act (CCPA), ensuring
transparency in data collection and providing users with control over their personal
information.
5. Incident Response:
o A comprehensive incident response plan must be in place to handle potential
security breaches or data leaks. The plan should outline the steps for identifying,
mitigating, and resolving security incidents. Affected users should be notified
promptly, and the breach should be reported to authorities where required by law,
ensuring swift action to minimize damage.
Software Requirements Specification for E-Commerce Website Page 20

5.4 Software Quality Attributes

1. Usability:
o The website must offer a user-friendly experience, including intuitive navigation,
efficient search and filtering features, and a seamless checkout process to enhance
customer satisfaction.
2. Reliability:
o The system should ensure 99.9% uptime, minimizing downtime and guaranteeing
users can access the website without interruptions, contributing to its
dependability.
3. Maintainability:
o The codebase should adhere to best coding practices, with clear documentation to
enable easy maintenance, troubleshooting, and updates, ensuring long-term
sustainability of the system.
4. Scalability:
o The system architecture should support both horizontal (adding more servers) and
vertical scaling (upgrading server capacity) to handle increased user traffic without
compromising performance.
5. Portability:
o The website should be fully compatible with major browsers (Chrome, Firefox,
Safari, Edge) and responsive across devices, ensuring a consistent user experience
on desktops, tablets, and smartphones.
6. Testability:
o The website should be built with automated testing in mind, allowing for efficient
testing of key functionalities like user registration, product search, and payment
processing to ensure quality and performance.
7. Interoperability:
o The system should seamlessly integrate with third-party services such as payment
gateways, shipping providers, and customer relationship management (CRM)
systems, enabling smooth external data exchanges.
Software Requirements Specification for E-Commerce Website Page 21

CHAPTER 6

6.Other Requirements
1. Database Requirements:
 Reliability of Transactions: Ensuring that all actions in a transaction occur fully or not at all.
For example, if a customer places an order, it should be recorded only if both payment and
inventory update processes succeed.
 Data Integrity: The data should remain correct and valid before and after transactions. For
instance, stock levels and user balances must always reflect the latest state after any
transaction.
 Concurrent Transaction Management: Even with multiple users making purchases at the
same time, the data should not become inconsistent. This means one customer's action (e.g.,
buying the last item) shouldn't interfere with another.

2. Internationalization Requirements:
 Language Support: The website must offer multiple language options, allowing users to
switch seamlessly between languages such as English, French, Spanish, etc., without
breaking the user interface.
 Currency Conversion: Displaying product prices in different currencies based on the user’s
location. For example, if a user is in Europe, they should see prices in Euros, while a user in
the US should see prices in dollars.
 Localization of Dates and Formats: The website should handle regional date, time, and
measurement formats (e.g., kilograms vs. pounds), ensuring the user experience is aligned
with local conventions.

3. Legal Requirements:
 Privacy Policy: Clearly state how customer data is collected and managed. Users need to
know how their personal information, like email and payment details, is being stored and
used.
 Terms and Conditions: Detail the rules of the site, including refund policies, intellectual
property usage, and user responsibilities, ensuring legal protection for both the business and
users.
 Cookie Consent: Ensure users are informed about cookies being used to track data and give
them the option to accept or reject, in line with regulations like GDPR.

4. Reuse Objectives:
 Payment Gateway Component: Design the payment integration (e.g., for credit cards,
PayPal) in a way that allows it to be reused in other projects or websites by simply plugging
it in, avoiding the need to rebuild from scratch.
Software Requirements Specification for E-Commerce Website Page 22

 Modular Code Structure: Break down the website’s features (e.g., cart, user authentication)
into individual, reusable components. Each can be extracted and adapted for future projects
or services, promoting efficiency.
 Scalability: Make the design of the website scalable, so that even as it grows or is adapted
for future projects, the core components can handle more users, products, or traffic without
major rework.

Appendix A: Glossary

1. PCI DSS:

 A security standard ensuring the safe handling of credit card information to protect
against fraud and data breaches.

2. GDPR:

 A European Union regulation governing data privacy and protection, requiring


businesses to safeguard personal data and provide transparency on its use.

3. CCPA:

 A California law that grants consumers rights over their personal data, including the
right to access, delete, and opt-out of data sharing.

4. HTTPS/SSL:

 A secure protocol and encryption method used to protect data transmitted


between a website and users, ensuring privacy and data integrity.

5. ACID:

 A set of properties (Atomicity, Consistency, Isolation, Durability) that guarantee


reliable and secure transaction processing in databases.
Software Requirements Specification for E-Commerce Website Page 23

Appendix B: Analysis Models


1. Data Flow Diagrams: Illustrating the flow of information between various modules (user
authentication, product search, order processing).

1. Visual Representation of System Processes:


 DFDs visually map how data flows between different modules of the system (e.g., user
authentication, product search, and order processing), showing the movement of
information within the website.
2. Clarifies Data Inputs and Outputs:
 DFDs clearly depict the sources of data inputs (e.g., user login, product queries) and how
these inputs are processed and converted into outputs, such as displaying search results or
confirming an order.
3. Enhances Understanding of Interactions:
 By illustrating how modules interact and exchange data, DFDs provide insight into system
dependencies, enabling better communication between developers and stakeholders during
the design and development process.
Software Requirements Specification for E-Commerce Website Page 24

2. Entity-Relationship Diagrams: Representing the database schema and relationships


between entities like users, orders, products, and payments.

1. Database Schema Representation:


 Depicts the structure of the database, including tables (entities) such as users, orders,
products, and payments.

2.Entity Relationships:
 Shows how entities are related to each other, such as users placing orders or orders
containing products.

3. Data Integrity Enforcement:


 Illustrates constraints and rules to ensure data consistency and integrity across the database.
Software Requirements Specification for E-Commerce Website Page 25

3.State-Transition Diagrams: Showing different states of an order from creation to completion or


cancellation.

1.Order Lifecycle Visualization:

 Illustrates various states an order can be in, such as "Created," "Processing," "Shipped," or
"Cancelled."

2.State Transitions:

 Shows how an order moves between states based on events or actions, like payment
confirmation or stock availability.

3.Process Flow Understanding:

 Provides a clear view of the order management process, helping identify possible issues and
streamline workflow
Software Requirements Specification for E-Commerce Website Page 26

Appendix C: Issues List

1. TBD: Supported Payment Gateways


o Issue: The supported payment gateways (e.g., PayPal, Stripe) are yet to be finalized.
o Impact: Delay in checkout and payment integration.
o Next Steps: Confirm payment gateway options based on region and feasibility.
2. Pending Decision: SQL vs. NoSQL Database
o Issue: Decision required between using a SQL or NoSQL database.
o Impact: Affects data structure, scalability, and backend design.
o Next Steps: Compare based on project requirements and choose the appropriate
database.
3. Information Needed: Laptop Suppliers & API Integration
o Issue: Vendor information and API details are needed for laptop suppliers.
o Impact: Without this, stock management and product listings may require manual
updates.
o Next Steps: Collect supplier data and API integration documentation.
4. Conflicts Awaiting Resolution: Currency Conversion Strategy
o Issue: Disagreement on real-time vs. fixed currency conversion rates.
o Impact: Delays in internationalization and pricing accuracy.
o Next Steps: Resolve by evaluating the best strategy for conversion handling.

You might also like