Se Srs Practical File
Se Srs Practical File
Se Srs Practical File
2. Overall Description
2.1 Product Perspective
2.2 Product Functions
2.3 User Classes and Characteristics
2.4 Operating Environment
2.5 Design and Implementation Constraints
2.6 User Documentation
2.7 Assumptions and Dependencies
9|
Page
1. Introduction
Purpose
This Software Requirement Specification is meant for an Online Bookstore. The Online
Bookstore is meant as a way for customers to browse books on the website and buy them
from home without the need to travel to a book shop. Defining the functions and
specifications of the Online Bookstore is the primary purpose of this SRS. The SRS illustrates
in clear terms, the system’s primary uses.
Document Conventions
This SRS is written in Arial font with size 11 in italics, and Times font with size 14 for bullet
points. The priorities for higher level requirements are inherited in detailed requirements.
Product Scope
The software system being produced is called Online Bookstore. It is being produced for a
customer interested in selling books via the Internet. This system is designed to “provide
automation support” for the process of placing books for sale on the Internet and facilitating
the actual sale. This system is largely cross-platform and is available to anyone using the
internet. The system will be run on a central server with each user having a remote user
interface through a web browser to interact with it. The Online Bookstore will allow any user
to create an account to become a customer. The customer, through the process of account
creation, will have the option to become a member of the site. The system will allow
customers to browse, search, select, and add books to a shopping cart. Then, provided they
have books in their shopping cart, check out books in shopping cart and decrement the stock
that the inventory the system maintains. The Online Bookstore also allows a manager to
manage the inventory with full create, retrieve, update and delete (CRUD) functionality with
regards to books in the system.
10 | P a g e
References http://www.cse.msu.edu/~chengb/RE-491/Papers/SRS-BECS-2007.pdf
https://docplayer.net/25969140-Srs-for-bsu-online-bookstore.html
2. Overall Description
Product Perspective
This product is an entirely new product. It is not a component of a larger system. The online
bookstore website supports a number of functions for both the consumer and store's
management. The website is available to anyone using the internet and as such must work
correctly in all browsers (Google Chrome, Internet Explorer, Mozilla Firefox, Microsoft Edge,
Safari, etc). There are no hardware or software requirements beyond these including, but
not limited to, memory or specific software packages that need to be utilized nor software
packages that need not be utilized. The Online Bookstore system will interact with a
credit/debit card processing system in order to process purchases from the website. The
system will also interact with the Bookstore’s Inventory database, which records the
quantity of books available for sale in the inventory.
Product Functions
The Online Bookstore will provide a number of functions, each is listed below.
• Maintain data associated with the inventory (a collection of books).
Title.
Author.
• Each book has its own stop-order status – either on or off. Details of its use are
involved in the following feature.
• Notify manager when books need to be reordered.
• When the quantity a book falls below a threshold, the manager is notified that
the book needs to be reordered.
One exception is if the manager has already specified a stop-order for this
book.
Every book must either have stop-order enabled or disabled.
• Allow manager to update stock quantities.
Operating Environment
The system will work on any hardware device having an internet connectivity and browsers
to browse the website. The browsers should be up to date to run various features of the
website. The system will not run-on OS below Windows XP. The system will also not run-on
browsers not supporting JAVA plugins.
Apportioning of requirements
As stated by the customer, security is not a concern of this project. As such, it is beyond the
scope of this system to encrypt personal user data, encrypt credit card information, prevent
unauthorized login attempts, or any other concern of this nature. Additionally, the system is
not responsible for the following:
• Verifying that credit card information is valid.
• Verifying the email address provided by a user.
• Storing additional information about a book beyond simply the title, name of author, and price.
• Allowing users to edit their account details (username, password, mailing address, etc).
• Allowing customers to order multiple copies of a book in a single order.
• Providing individual product pages (one page for every item in the inventory).
• Allowing the manager to update login credentials or other information about the manager.
13 | P a g e
3. External Interface Requirements
System Interfaces
The system will interface with the following two systems:
1. A credit/debit card processing system: The system will access the credit/debit card
processing system via its web services API.
2. The Bookstore Inventory database: The system will interact with the inventory
Hardware Interfaces
There are no special hardware interface requirements. Software
Interfaces
There are no special software interface requirements.
Communications Interfaces
There are no special communication interface requirements.
Safety Requirements
The safety requirements are as follows: -
14 | P a g e
• The password should not be visible while typing.
• The system should use a secure connection to connect with the credit/debit card
processing system.
Security Requirements
The security requirements are as follows: -
• The user (buyers and administrator) requires a username and password to login into the
system.
• Availability The Online Bookstore will be available 24x7, with the exception of being down
for maintenance no more than 3 hours a week. If the system crashes, it should be back up
within a week.
• Security Users will be able to access only their own personal information and not that of
other users. Purchases will be handled through a secure server to ensure the protection of
user’s credit card and personal information.
computers only, without any patches required by the user. Business Rules
The business rules are as follows:
• The administrator will receive notifications from the credit/debit card processing system to
process the order and confirm payment of order is received.
Practical no.: - 03
Aim: - Draft a project plan using OpenProj.
OpenProj is an open-source project management software application. OpenProject offers powerful
collaboration features and meets highest requirements in data privacy and security. It offers an
appealing and intuitive user interface. Also, the majority of features are fully accessible. OpenProj
operates on multiple platforms including Windows, Mac, Linux and Unix.
Due to continuous development and enhancements, OpenProject has an enormous potential, which
outdrives common project management software. OpenProject is licensed under the terms of the
GNU General Public License version 3. OpenProject's plugins also support a variety of functionalities,
15 | P a g e
such as meeting management, Scrum methodologies, time and cost reporting, etc... OpenProject
also includes companies and organisations to participate and consider their requirements and ideas
to improve the software, e.g., in terms of data privacy, security, usability and accessability.
OpenProject provides a place to collaborate, exchange ideas, best practices and new requirements
for companies as well as individuals.
The open-source software, OpenProj, is provided free of charge to companies of all sizes. Consumers
may download the application as many times as needed for all team members throughout their
enterprise. No restrictions exist with OpenProj. Each of these tools help managers allocate time,
resources and budget expenses. Project management tools are designed to help team members
effectively manage time and budget resources.
Features:
The current version includes:
16 | P a g e
Network: An arrangement of intersecting horizontal and vertical lines. interact
with others to exchange information and develop professional or social
contacts
Resources: A stock or supply of money, materials, staff, and other assets that
can be drawn on by a person or organization in order to function effectively.
17 | P a g e
Report: An account given of a particular matter, especially in the form of an
official document, after thorough investigation or consideration by an
appointed person or team.
Task usage: The task usage view displays useful information about all the tasks
in a project. Through this view you can see how much time and money any task
will take. Once you have assigned an hourly rate to the different resources in
your project you can get an estimate to how much the project is going to take.
18 | P a g e
Resources usage: one of the most important aspects of your role is to monitor
the assignments for each of your resources so that you can effectively balance
their workloads. Some resources might be overallocated, and others might be
under allocated. You can review how efficiently your resources are being used
in your project, and whether you need to make any adjustments
19 | P a g e
Practical no.: -05
Aim: - Activity diagram, Sequence diagram and Class diagram for online bookstore
using Rational Rose.
Activity Diagram:
Activity diagram models the logic from workflow to use cases to methods. It borrows most of the
notations from the flowchart but has added the concept of concurrency to support many modern
applications. The arrow traces the flow from beginning to end through decision and loops, while
identifying each logic steps in the process. Activity diagrams are typically used for business process
modeling, for modeling the logic captured by a single use case or usage scenario, or for modeling the
detailed logic of a business rule.
20 | P a g e
Sequence Diagrams:
Sequence diagram is one kind of interaction diagrams, which shows an interaction among a set of
objects and their relationships. The purpose of the Sequence diagram is to document the sequence
of messages among objects in a time-based view. The scope of a typical sequence diagram includes
all the message interactions for a single use case.
21 | P a g e
Class Diagram
Class diagram, one of the most commonly used diagrams in object-oriented system, models the
static design view for a system. The static view mainly supports the functional requirements of a
system – the services the system should provide to the end users. We will see from our practical
experience that lots of fun comes out when modeling out system with class diagrams. A class
diagram shows a set of classes, interfaces, and collaborations and their relationships.
22 | P a g e
Practical no.: - 06
Aim: - To perform unit testing and integration testing.
Unit testing:
Unit testing is a software testing method by which individual units of source code, sets of one or
more computer program modules together with associated control data, usage procedures, and
operating procedures, are tested to determine whether they are fit for use. Intuitively, one can view
a unit as the smallest testable part of an application. In procedural programming, a unit could be an
entire module, but it is more commonly an individual function or procedure. In object-oriented
programming, a unit is often an entire interface, such as a class, but could be an individual method.
Unit tests are short code fragments created by programmers or occasionally by white box testers
during the development process. It is also known as component testing.
Test cases
Test cases help us discover information. Different types of tests are more effective for different
classes of information. Test cases can be "good" in a variety of ways. No test case will be good in all
of them.
USER:
• Registration
• Login
• Add To Cart
• Edit Cart
ADMIN:
• Manage Orders
• Manage Members
23 | P a g e
User
24 | P a g e
Admin
25 | P a g e
Test Conditions for the fields in the Login screen
Admin Name-enter admin name
Test Prerequisite: The user should have access to Admin Login screen form screen.
Integration testing:
26 | P a g e
Integration testing (sometimes called integration and testing, abbreviated I&T) is the phase in
software testing in which individual software modules are combined and tested as a group. It occurs
after unit testing and before validation testing. Integration testing takes as its input modules that
have been unit tested, groups them in larger aggregates, applies tests defined in an integration test
plan to those aggregates, and delivers as its output the integrated system ready for system testing.
Integration testing tests integration or interfaces between components, interactions to different
parts of the system such as an operating system, file system and hardware or interfaces between
systems. The purpose of this level of testing is to expose faults in the interaction between integrated
units. Test drivers and test stubs are used to assist in Integration Testing.
Practical no.: - 07
Aim: - To perform various white box and black box testing techniques.
Black box testing:
Black-box testing is a method of software testing that examines the functionality of an application
without peering into its internal structures or workings. This method of test can be applied to
virtually every level of software testing: unit, integration, system and acceptance. Test cases are built
around specifications and requirements, i.e., what the application is supposed to do. The test
designer selects both valid and invalid inputs and determines the correct output without any
knowledge of the test object's internal structure. Black box testing treats the system as a “blackbox”,
so it doesn’t explicitly use Knowledge of the internal structure or code. Also known as functional
testing, behavioral testing.
27 | P a g e
This method attempts to find errors in the following categories:
• Equivalence partitioning
• Boundary Value Analysis
• Cause Effect Graphing
Login page
When the admin name and the password is correct then admi services are opened.
White box testing:
White-box testing is a method of testing software that tests internal structures or workings
of an application, as opposed to its functionality (i.e., black-box testing). In white-box testing
an internal perspective of the system, as well as programming skills, are used to design test
28 | P a g e
cases. The tester chooses inputs to exercise paths through the code and determine the
appropriate outputs. White box testing is a testing technique, that examines the program
structure and derives test data from the program logic/code. Also known as clear box
testing, glass box testing, transparent box testing, and structural testing
In this the test cases are generated on the logic of each module by drawing flow graphs of
that module and logical decisions are tested on all the cases.
It has been uses to generate the test cases in the following cases:
• Guarantee that all independent paths have been executed.
• Execute all logical decisions on their true and false sides.
• Execute all loops at their boundaries and within their operational bounds.
• Execute internal data structures to ensure their validity.
29 | P a g e
30 | P a g e