SEN Micro Project-2
SEN Micro Project-2
This is to certify the following group of students roll no. 54-59 of 4th semester
of diploma in COMPUTER ENGINEERING of institute, THAKUR
POLYTECHNIC (Code:0522) has completed the Micro Project satisfactorily in
subject-SEN (22413) for the academic year 2019-2020 as prescribed in the
curriculum.
Seal of the
Institution
ACKNOWLEDGEMENT
We would like to express our special thanks of gratitude to our institute Thakur Polytechnic and
our Principal Dr. S.M Ganechari, our subject teacher and head of the Department Ms.Vaishali
Rane who gave us the opportunity to make this micro project on the topic to develop software
based on matrimonial portal. This has greatly helped us in expanding my cohere of knowledge.
We are thankful to each other because every one of us aided to complete this project within the
limited time frame.
PROPOSAL
Name of Micro-Project: - Online Book Store Management System
Any
1. Personal Computer configuration 1
with support of
4GB RAM
Office 365
2. Microsoft Word 1
Minimum 32
3. Internet Mbps 1
Microsoft
4. Operating System Windows or any 1
other higher
1. Umang Makwana 54
2. Aamlesh Maurya 55
3. Aviyansh Maurya 56
4. Dhruv Mehra 57
5. Parth Mehta 58
6. Sahil Mehta 59
Signature
Vaishali Rane
REPORT
Report
1.0 Rationale
Benefits: -
In this project, we have learnt about software development by choosing appropriate
software process model. We also learnt how to use software modelling to create software
designs. We also understood the purpose and objective of this Micro-Project. This project
aims at creating a full-fledged website for matrimony.
Problem Statement:
Almost every activity in the world today is controlled by computer driven software programs.
His trend was first accommodated by engineering applications in the past. However, as the
lifestyle became more and more complex, every area of human interactions was invaded by
various software systems, such as real time, business, simulation, embedded, web based,
personal and more recently, artificial intelligence software etc.
According to the above facts, managing and maintaining a book shop could also be controlled
by efficient software. This project focuses attention on designing efficient and reliable
software which controls the transactions of a bookshop.
In real world, it tends to associate with automated systems as they provide many benefits than
doing the same thing in manually. As above mentioned, here we have introduced a system
which can be used to maintain a bookshop.
When we are concerning the manual process of a bookshop, the major problem is the waste
of time. A customer has to waste his/her valuable time when he needs to buy a book as all the
events such as searching, purchasing are done by members of the staff .In briefly, the manual
process is very slow. But automation will reduce the time taken in the whole process.
In a bookshop we should deal with a large store. Then person (storekeeper) has to maintain it
with documents which are recorded by him. Therefore, there may be defective reports. Also
company has to appointed more persons to complete the maintenance of the stationery. Then
the company has to have an additional cost.
As we familiar with this type of system at instance we will be able to have the results that we
want. Communication with suppliers, customers and other related organizations will be more
successful as the system is so fast.
When the bookshop issues an item to a customer, all the stages of the transaction procedure
will be facilitated by the system & it will be more accurate.
Scope
Book Store Management System is the web application to automate all kinds of operations in
the book shop. The purpose of this software is to manage the books in the book store.
Generally, it includes the Order Processing, Stock Management and Accounts Management.
We developed this software to maintains records of sales, purchase and staff records. This
project developed using ASP.NET as front end and SQL Server as Back end. Here we are try
to develop such type system which is provide the automation on the any type of the
bookshop. That means a shop which has the type system which provides the facility to the
customers of the shop to purchase the books from the shop without any complexity.
This Book Shop Management System is used to overcome the entire problem which they are
facing currently, and making manual system to computerized system. -
Purposed Book shop management system should help the customers query whether a book in
a stock the user can query the availability of a book either by using the book title or by using
the name of author. The objective and scope of this Project Book Shop Management System
is to record the details various activities of user. It simplifies the task and reduce the paper
work. Book store management system should generate sales statistics (book name, publisher,
ISBN number, number of copies sold and the sales revenue) for any period.
At present, the Wholesale and Retail outlets are working under manual management. The
client uses MS Excel, All records related to Products, Sales, Suppliers, Orders, Payment are
stored in excel files. there is lot of duplicate work, and chance of mistake. When the records
are changed, they need to update each and every excel file. In case of Customer records, all
information related to customers and the product which the customer has purchased is to be
stored in the Customers excel files. If the changes in the customer profile (like Phone no. ,
Address) occur, excel file must be updated.
To manage the whole data, the person maintaining records has to take great pain. Various
excel files has to be maintained for each separate process. There is no option to find previous
saved records. There is no security; anybody can access any report and sensitive data.
This software can be easily implemented under various situations. Any education institute
can make use of it for providing information about author, content of the available books in
their library. Modifications can be easily done according to requirements and when
necessary. It can be used in any type of Book Shop for managing all the sales and purchased
activities and managing the data records related to Book house.
Table of Contents
1. Introduction……………………………………………………..5
1.1 Purpose ………………………………………………………….5
1.2 Scope…………………………………………………………….5
1.3 Definitions , acronyms , and abbreviations……………………...5
1.4 Organization……………………………………………………..5
2. Overall Description………………………………………………6
2.1 Product Perspective……………………………………………….6
2.2 Product Functions…………………………………………………6
2.3 User Characteristics……………………………………………….6
2.4 Constraints…………………………………………………………6
2.5 Assumptions and Dependencies……………………………………6
2.6 Approportioning of Requirements………………………………….6
3. Specific Requirements……………………………………………..7
3.1 Restrictions…………………………………………………………7
3.2 Data Structure……………………………………………………….7
3.3 System……………………………………………………………….7
3.3.1 Browse Inventory………………………………………………...7
3.3.2 Search Inventory…………………………………………………7
3.3.3 Create, Update and Destroy (CRUD) Functionality……………..7
3.3.4 Shopping Cart……………………………………………………7
3.3.5 Checkout Procedure…………………………………………….7
3.3.6 Authentication System………………………………………….7
3.3.7 Promotions………………………………………………………7
3.3.8 Automated Reorder……………………………………………...7
3.3.9 Order Logging…………………………………………………...7
4. Functional Requirements…………………………………………8
5. Non-Functional Requirements……………………………………8
1 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 [5]. Its primary purpose is to provide a clear and descriptive
“statement of user requirements” [5] that can be used as a reference in further development of
the software system. 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 [4] 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.
1.1 Purpose
Defining and describing the functions and specifications of the Book E-Commerce
System (BECS) is the primary goal of this Software Requirements Specification (SRS).
This Software Requirements Specification illustrates, in clear terms, the system’s primary
uses and required functionality as specified by our customer.
The intended audience of this document is our primary Book E-Commerce System
customer: Mr. Borzoo Bonakdarpour, the CSE435 instructor Dr. Betty Cheng, the fall
semester 2007 CSE435 Group 4 members, as well as the other students attending CSE435
that will require access to such documentation.
1.2 Scope
The software system being produced is called Book E-Commerce System or BECS. It is
being produced for a customer interested in selling books via the Internet. This system is
designed to “provide automation support” [2] 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 Computer Science Department’s provided computer resources in the
MSU Engineering Building. 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 Book E-Commerce
System 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 BECS also allows a
manager to manage the inventory with full create, retrieve, update and delete (CRUD)
functionality with regards to books in the system. It will also allow, on an inventory wide
basis, customers and managers to interact with a promotion system that handles percentage-
off promotions that can be applied to member’s orders. This interaction includes the creation
(by managers) and the application to orders (by customers) of the promotions. The BECS has
full email capabilities; the automated email functionality will be used to send promotions to
members of the system as well as provide the managers with low-stock notifications. The
BECS will have numerous constraints on what it can do. The system will not have full credit-
card processing capabilities. It will not allow managers to be customers. The manager will be
a hard-coded user and only a single manager will exist. There will be no actual book ordering
and order completion, however the system will provide the customer with a receipt and it will
log the transaction details. The system will not allow multiple promotions to be added to a
single shopping cart nor will it allow a customer to add more than one of each item to their
cart. The system also will not allow users to retrieve passwords or edit their user details.
1.3 Definitions , acronyms , and abbreviations
BECS Book E-Commerce System.
Barcode A unique identifier assigned to single items.
Book An instance of an item that has these additional attributes: Title, Author.
Button A user interface element that allows a User to click and inform the system to take an
action.
Checkbox A user interface element that allows a User to inform the system that he/she selected a
particular item.
Checkout The process a Customer goes through to purchase an item.
CRUD Create, Retrieve, Update, Delete.
Customer A person that is user of the system but has created an account.
Inventory An object that holds items available for purchase by the customer.
Item An individual entity in the inventory which has several descriptive attributes:
Barcode, Price, Reorder Threshold, Stock
Manager A single person that has the ability to create, retrieve, update and delete items in the
store. This person cannot simultaneously act as a Customer and Manager.
Member A person that is a customer of the system and has requested to be sent promotions.
Promotion An item-wide percentage-off price discount applied to a Member’s shopping cart.
Reorder The system process that automatically orders new stock of an item.
Reorder The numeric value of an item’s stock that must be reached before the system will
Threshold order additional quantities of the item.
Session The time which a User is actively using the system.
Shopping An object that lists a Customer’s selected Items, their applied promotions and gives
Cart them an option to check out.
SRS Software Requirements Specification.
Stock The quantity of any particular item the inventory has on hand.
Text Box A user interface element that allows a User to input text to the system.
Transaction The information related to a customer’s purchase that is logged.
User The person who operate the software product.
1.4 Organization
This Software Requirements Specification document is divided in to multiple subsections.
The first section includes explanations of the Purpose, Scope and Organization of the
document. The first section also handles the description of project specific words, acronyms
and abbreviations that will be used in the document.
The second section of the document is separated into the following five different sections,
each detailing specific details of system uses and their corresponding actions: Product
Perspective, Product Functions, User Characteristics, Constraints, Assumptions and
Dependencies, Apportioning of Requirements. The third section is an enumerated listing of
all of the requirements described for this system. The fourth section encompasses all of the
Use-case, Sequence, State and Class diagrams that model the system. In the fifth section there
exists a Prototype of the system along with a sample scenario that graphically describes the
use of the system. The sixth section contains a listing of all related reference materials used in
this document. The seventh and final subsection is dedicated to providing a point of contact
for any viewer of this document.
2 Overall Description
This section includes details about what is and is not expected of the BECS system in
addition to which cases are intentionally unsupported and assumptions that will be used in the
creation of the BECS system.
2.4 Constraints
As stated by the customer, security is not a concern for this system. The database may store
passwords in plain text and there doesn't need to be a password recovery feature nor lockout
after numerous invalid login attempts. As such, the system may not work correctly in cases
when security is a concern. These cases include those listed above in addition to lack of an
encrypted connection when sending credit card information and forcing users to use “strong”
passwords. A strong password is a password that meets a number of conditions that are set in
place so that user's passwords cannot be easily guessed by an attacker. Generally, these rules
include ensuring that the password contains a sufficient number of characters and contains
not only lowercase letters but also capitals, numbers, and in some cases, symbols.
The system may not behave correctly when used with Internet browsers other than Firefox
and Internet Explorer.
SCR "Software Cost Reduction (SCR) is a set of techniques for
designing software systems developed by David Parnas and
researchers from the U.S. Naval Research Laboratory
beginning in the late 1970s." [7]
Mode Class "A mode class is a finite state machine, with states called
system modes" [8]
System State The current state or mode that the system is in. The system
must be in exactly one state at any moment in time.
Event An event is any action that can trigger an action within the
software system. Examples include but are not limited to
changing values of variables or user-triggered events.
Event Notation We may need to refer to both the old and new value of a
variable:
Used primed values to denote values after the event
@T(c) ≡ ¬c ^ c’ e.g. @T(y=1) ≡ y<>1 ^ y’=1
@F(c) ≡ c ^ ¬c’
A conditioned event is an event with a predicate
@T(c) WHEN d ≡ ¬c ^ c’ ^ d [8]
Controlled Variable A variable whose value can change throughout the lifetime
of the system and whose value is critical and must be
maintained correctly.
Mode Transition When the mode (state) changes from one mode (described
as the old mode) to a new mode.
Mode Class Table Table consisting of a list of modes that the system can be
in, modes that can be transitioned to, and the conditions
required for the transition to occur. The table if formatted
such that the first column lists the current mode (old
mode) and the last column lists the new mode. The
columns between the first and last columns each describe a
specific event.
Event Table An event table illustrates how an input event can affect a
controlled variable. The first column shows modes and the
last row shows the values that the controlled variable will
be set to. The remaining cells are conditions required for a
mode to affect the value of a controlled variable.
Condition Table A condition table shows the conditions (one of which must
be met) in order for a controlled variable to be set to some
specified value. The first column lists modes and the last
row names the controlled variable and the values it is set
to.
Condition Table
Mode Conditions
AddPromotion TRUE FALSE PromotionAdded
TRUE FALSE
Mode Class
Old Mode Login IsManager IsCustomer Logout New Mode
UserLoggedOut @T t - - ManagerLoggedIn
@T - t - CustomerLoggedIn
ManagerLoggedIn - - - @T UserLoggedOut
CustomerLoggedIn - - - @T UserLoggedOut
Event Table
@T(User::Login() ==
UserLoggingIn TRUE) never
@T(Logout() ==
UserLoggingOut never TRUE)
User::LoggedIn TRUE FALSE
Condition Table
Mode Conditions
UserLoggedOut FALSE TRUE
ManagerLoggedIn TRUE FALSE
CustomerLoggedIn TRUE FALSE
UserLoggedIn TRUE FALSE
Additionally, the system may need to later be extended to provide additional functions. One
such example is added support for visually impaired users. In many cases a screen reading
program is used and ensuring that page-layout reads from top-left to bottom-right in a logical
manner would be required.
3 Specific Requirements
1. Restrictions
1.1. User Side
1.1.1.Software
1.1.1.1. Internet Explorer or Mozilla Firefox
1.1.2.Hardware
1.1.2.1. Computer Science Department Laboratory Terminal
1.2. System Side
1.2.1.Software
1.2.1.1. Web-based application
1.2.1.2. Database information storage system
2. Data Structure
2.1. Book has these attributes
2.1.1.Unique ID (auto-increment starting at 1)
2.1.2.Title
2.1.3.Author
2.1.4.Price
2.1.5.Reorder Threshold
2.1.6.Stop-order Boolean value
2.1.7.Stock
4. Functional Requirements
5. Non-Functional Requirements
· The system must ensure that all the transferable data as for examples customers credit
or debit card number, CVV Code, e-payment should be done in secured connection.
· The system must be able to handle multiple transactions a time.
· The system must provide customers 24*7 hours online booking service.
· The system should support almost all the browsers (Internet Explorer, Safari, Chrome,
and Firefox).
· The system should be able to convert the price from Malaysian to USD and SGD.
· System should send the newsletter about ongoing promotions or deal to registered
customers.
· Customers need to cancel the booking before 24 hrs. otherwise their credit card will be
charged for one day.
· In promotion time the system will charge credit card promptly.
Use case is a term used in system analysis to determine, clarify and integrate all system
requirements.
It describes how user interacts with the software to achieve certain goals. It also describes
various business activities carried out by the system.
Use cases consists of 4 basic elements as boundary, actor, use cases and relationships.
Use case diagram for online book store management system:
Actors Shown in the diagram as stick figures with a name
underneath. They represent elements that will be directly
interacting with the system.
Use Cases Oval shapes that have their names in the center. These
represent direct functionality within the system that must
be implemented.
Interactions Lines that connect the actors with the different Use Cases.
These show that there is some form of direct interaction
between the actor and that specific functionality.
Includes Dotted lines labeled “<<include>>” that connect two use
cases and have an arrow pointing towards one. This
means that the use case without the arrow calls on the
functionality of the use case with the arrow.
Extends Dotted lines labeled “<<extend>>” that connect two use
cases and have an arrow pointing towards one. This
means that the use case without the arrow takes all of the
functionality of the use case with the arrow and adds extra
functionality.
The System The large rectangle that contains the Use Cases.
Boundary Everything within the rectangle is what the system is
responsible for implementing
Use Case Template Describes the basic functionality and features of each use
case and the can be found in the pages following the use
case diagram.
Type A field in the use case template that states whether or not
the use case is directly interacted with by an actor
(Primary) or not (Secondary) as well as whether or not it is
essential to having a functioning system.
Cross Ref A field in the use case templates that states which one of
the original requirements that particular use case satisfies.
Use-Cases A field in the use case templates that state which other use
cases must be executed prior to that particular use case.
Figures below are the Data Flow Diagrams for the current system. Each
process within the system is first shown as a Context Level DFD and later as a
Detailed DFD. The Context Level DFD provides a conceptual view of the process and
its surrounding input, output and data stores. The Detailed DFD provides a more
detailed and comprehensive view of the interaction among the sub-processes within
the system.
Timeline chart
Timeline charts illustrate events, in chronological or sequential order — for example the progress
of a project, advertising campaign, acquisition process — in whatever unit of time the data was
recorded — for example week, month, year, quarter.
Timelines are extremely important in project management because they help to visualize time-
related metrics, synchronize tasks, set deadlines and define potential delays.
Any
1. Personal Computer configuration 1
with support of
4GB RAM
Office 365
2. Microsoft Word 1
Minimum 32
3. Internet Mbps 1
Microsoft
4. Operating System Windows or any 1
other higher
54 Umang Makwana
55 Aamlesh Maurya
56 Aviyansh Maurya
57 Dhruv Mehra
58 Parth Mehta
59 Sahil Mehta