SRS Final
SRS Final
1.Introduction………………………………………………………..1
1.1 Category…………………………………………………………………………….1
2. Methodology……………………………………………………………....4
3. Functional Requirements……………………………………………….6
3.1 User Registration and Authentication……………………………………...6
4.1 Performance………………………………………………………………….7
4.2 Security………………………………………………………………………..8
4.3 Reliability………………………………………………………………………8
4.4 Usability………………………………………………………………………..8
4.5 Compatibility…………………………………………………………………..8
4.6 Maintainability………………………………………………………………………8
6.Software Requirement……………………………………………………………10
7.Hardware specifications………………………………………………………….11
7.1 Server…………………………………………………………………………….11
8.2 Compatibility……………………………………………………………………….11
8.4 Security……………………………………………………………………………..11
8.5 Scalability…………………………………………………………………………...12
8.7 Accessibility…………………………………………………………………………12
10.Appendices……………………………………………………………………………15
● References………………………………………………………………………..15
● Appendix A…………………………………………………………………………15
● Appendix B…………………………………………………………………………15
● Appendix C…………………………………………………………………………16
● Appendix D ………………………………………………………………………...16
1. INTRODUCTION
1.1 Category
The online Bookstore is a web application that falls under the category of
e-commerce platforms. It is specifically designed to facilitate the buying and selling
of books online. Users can access the Online Bookstore through a web browser on
their desktop computers, laptops, tablets, or mobile devices. The web application
provides a user-friendly interface for browsing, searching, and purchasing books
from a vast catalogue.
The main objective of the online book store is to create an e-commerce platform
where customers can browse, search, and purchase books online. The system
should provide a user-friendly interface, secure payment options, efficient order
processing, and personalised recommendations to enhance the overall customer
experience. It aims to streamline the book purchasing process, making it convenient
and accessible for customers.
1
1.4 Value to Customers
1. Convenience: Customers can browse and purchase books from the comfort of
their homes or any location with internet access, eliminating the need to visit physical
bookstores.
2. Wide Selection: The online store offers a vast collection of books, including
various genres, authors, and editions, providing customers with a diverse range of
options to choose from.
3. Easy Search and Discovery: Customers can easily search for specific books,
explore different categories, and discover new titles based on their interests,
enhancing the book discovery process.
4. User Reviews and Ratings: Customers can read reviews and ratings from other
users, helping them make informed decisions and choose books that align with their
preferences.
6. Secure Transactions: The online book store ensures secure payment options,
protecting customers' sensitive information during the checkout process, and
providing a safe and trustworthy shopping environment.
The limits of the system include the online purchasing and management of books
within the defined scope. It does not cover physical bookstores and offline
transactions. The system is intended to operate within the limits of the web
application and does not extend to mobile applications or other platforms unless
specified within the scope.
2
1.5 Product Description
The proposed Online Bookstore system is a web application that offers several
advantages over the traditional methods of purchasing books. Here are some key
points highlighting how the proposed system is better than the existing system:
Existing System:
1. Limited book selection and availability.
2. Users need to physically visit bookstores or browse multiple online
marketplaces.
3. Inconvenient and time-consuming searching and browsing process.
4. Lack of detailed book information, customer reviews, and ratings.
5. Manual tracking of order history and status.
6. Insecure transactions and potential privacy concerns.
7. Limited personalization and recommendation features.
8. Lack of efficient order processing and notifications.
9. Limited administrator management capabilities.
Proposed System:
1. Vast book catalogue with a wide range of genres, authors, and publications.
2. Online access from anywhere, eliminating the need for physical visits.
3. Advanced search and filtering options for quick and targeted book discovery.
4. Detailed book descriptions, author biographies, customer reviews, and
ratings.
5. Personalised user experiences with registration, wish lists, and
recommendations.
6. Secure online transactions with encrypted payment gateways.
7. Efficient order processing, tracking, and notifications.
8. Comprehensive administrator management features for book catalogue, user
accounts, and orders.
3
2. Methodology
4
2.2 Data Flow Diagram for Online Bookstore
5
3. Functional Requirements
Functional requirements outline the specific outcomes and effects that the software
system, the online bookshop store, should achieve when it is operational. These
requirements encompass various aspects of the system's functionality, including
calculations, data processing, user interactions, and more. The following functional
requirements are presented in a ranked order:
6
● The system should calculate the total price of the items in the shopping cart
accurately.
4. Non-Functional Requirements
Non-Functional requirements encompass the criteria and constraints that shape the
performance and user experience of the MERN stack e-commerce bookstore
website. They ensure that the system operates efficiently, maintains data security,
and delivers a seamless and user-friendly interface. The following non-functional
requirements have been identified for the system:
7
4.2 Security: Robust measures should be in place to protect user data, including
encryption of sensitive information and secure authentication protocols.
4.3 Reliability: The system should be highly available and resilient, minimising
downtime and recovering smoothly from any failures or errors.
4.4 Usability: The user interface should be intuitive, with clear navigation, logical
organisation of content, and support for accessibility standards to ensure a positive
user experience.
4.5 Compatibility: The website should be compatible with different web browsers
and devices, providing a consistent experience across various platforms.
5. Interface Requirements
Interface requirements describe how the software program, in this case, the online
bookshop store, communicates with other software components, external systems,
and users. These interfaces facilitate data exchange, system integration, and user
interactions. The following interface requirements are outlined:
8
5.4 Database Interface:
- The system should interact with a MongoDB database for storing and retrieving
data related to books, users, orders, and other relevant entities.
- The database interface should utilise appropriate libraries, or an
Object-Document Mapping (ODM) tool, such as Mongoose, to interact with the
MongoDB database.
These interface requirements ensure that the online bookshop store can effectively
communicate with users, external systems, and data sources, enabling smooth
interactions and data exchange. Proper integration and adherence to interface
standards will contribute to the overall functionality and usability of the system.
9
6. Software Requirement
The development process of the Online Bookstore using the MERN stack will involve
various software tools. Here are the key software tools typically used in each
component of the MERN stack:
● MongoDB:
A NoSQL document database used for storing and retrieving data in
JSON-like documents.
● Express.js:
Express.js is a fast and minimalist web application framework for Node.js that
simplifies the development of web applications and APIs.
● React.js:
React.js is a JavaScript library for building user interfaces, specifically
focusing on creating interactive UI components and managing component state.
● Node.js:
Node.js is the runtime environment for executing JavaScript code on the
server-side.
● Additional Tools:
- Visual Studio Code: A popular source code editor with support for JavaScript and
web development.
- Git: A distributed version control system for tracking changes in the codebase
and collaborating with other developers.
- GitHub: Online platforms for hosting and managing code repositories and
facilitating collaborative development.
- npm (Node Package Manager): A package manager for Node.js that allows the
installation and management of third-party libraries and dependencies.
- Postman: A tool for testing and documenting APIs during development.
10
7. Hardware Specifications:
Here are the general hardware requirements for developing the system:
7.1 Server:
1. Processor: 2 GHz or higher
2. RAM: 2GB or more.
3. Storage: 2GB or more.
8.Design Constraints
The design and implementation constraints of the online book store system are as
follows:
8.1 Technology Stack: The system will be developed using the MERN (MongoDB,
Express.js, React.js, Node.js) stack, imposing a constraint on the choice of
technologies and frameworks.
8.2 Compatibility: The system needs to be compatible with different web browsers
(e.g., Chrome, Firefox, Safari) and devices (desktop, tablets, mobile) to ensure a
consistent user experience across platforms.
8.4 Security: The system must implement robust security measures to protect user
data, prevent unauthorised access, and ensure secure transactions during payment
processing.
11
8.5 Scalability: The design should consider scalability to accommodate potential
growth in the user base and book inventory, allowing the system to handle increased
traffic and data volumes effectively.
8.6 Performance Optimization: The system should be optimised for efficient
performance, minimising loading times and providing a seamless browsing and
purchasing experience for users.
8.7 Accessibility: The system should follow accessibility standards and guidelines
to ensure that users with disabilities can access and use the platform effectively.
The preliminary schedule and budget outline the estimated time duration and cost
required for the development of the online bookshop store. These estimates provide
an initial understanding of the project timeline and financial resources needed. It's
important to note that these estimates are subject to change based on the
complexity of the project and the specific requirements. The following details are
provided:
12
9.2 Budgetary Considerations:
- The budget for the project is estimated to be Rs 2,00,000 and covers
expenses associated with development, third-party services, deployment and
other project-related costs.
- The budget may need to be revised as the project progresses and more
detailed cost assessments are made.
13
9.5 Cost Management:
- A cost management plan will be established to track expenses, monitor
budget utilisation, and identify any potential cost overruns.
- Regular reviews and updates will be conducted to ensure effective budget
management and alignment with project objectives.
14
10. Appendices
References
Appendix A: Definitions
15
2. Express.js: A web application framework for Node.js.
3. React.js: A JavaScript library for building user interfaces.
4. Node.js: A JavaScript runtime environment for server-side development.
5. Visual Studio Code: A popular source code editor.
6. Git: A distributed version control system.
7. Postman: A tool for testing and documenting APIs.
16