Assignment3 ENPM 612

19
Sweet Tooth Bakery Sales Management System Version 1.1 March 6, 2015 Submitted by: Anupama Arora Bharathi Mallineni Prepared for ENPM-612 System and Software Requirements Instructor : Mikael Lindvall Spring 2015

Transcript of Assignment3 ENPM 612

Sweet Tooth Bakery Sales Management SystemVersion 1.1

March 6, 2015

Submitted by:

Anupama AroraBharathi Mallineni

Prepared for

ENPM-612 System and Software Requirements

Instructor : Mikael Lindvall

Spring 2015

Revision History

Date Description Author CommentsMarch 6, 2015

Version 1 Anupama AroraBharathi MallineniAnupama AroraBharathi Mallineni

First Revision

April 6, 2015

Version 1.1 Anupama AroraBharathi Mallineni

Updated Version

Document Approval

The following Software Requirements Specification has been accepted and approved by the following:

Signature Printed Name Title DateProfessor

Mikael Lindvall ENPM-612

2

3

Table of Contents

REVISION HISTORY...............................................2DOCUMENT APPROVAL..............................................21. INTRODUCTION................................................41.1 PURPOSE.........................ERROR: REFERENCE SOURCE NOT FOUND1.2 SCOPE......................................................41.3 DEFINITIONS, ACRONYMS, AND ABBREVIATIONS4ERROR: REFERENCE SOURCE NOT FOUND1.4 REFERENCES..................................................4

2. OVERALL DESCRIPTION ……………………………………………………...................................................5

2.1 SCOPE OF THE SYSTEM …………………………………………………………………………………………………………..52.2 STAKE HOLDERS.……………..........…………………………………………………………………………………………… 52.3 PROCESS DESCRIPTION …………………………………………………………………………………………………………..62.4 USER REQUIREMENTS ….………………………………………………………………………………………………………..62.5 USER REQUIREMENTS ANALYSIS ...…………………………………………………………………………………………… 72.6 USE CASE …………….……………………………………………………………………………………………………………..72.7 REQUIREMENT SPECIFICATION …………………………………………………………………………………………………10

2.8 REQUIREMENT ANALYSIS MODELS ……………………………………………………………………………………………12

4

1. INTRODUCTION

1.1PURPOSE

The purpose of this document is to specify the requirements of sweettooth sales management system. The sweet tooth bakery salesmanagement system aims at automating the process of overall sales,finances and day to day operations of the bakery. This document willlist the functional requirements, non-functional requirements andconstraints. The document is intended to be proposed to customer forits approval and a reference for developing the first version of thesystem.

1.2SCOPE

The scope of the system is to automate the process of sales andmaintain data of sweet tooth bakery. This system will now expand itshorizons in the context of increasing of customers. The business willnot only accept walk-in orders and phone orders but also onlineorders.

Bakery owners will provide information such as prices and expiry dateof the products like cookies, cakes and breads on the website. Theadministrator of the bakery (Mr. Sweet) will administer the systemand keep the information accurate. He will maintain the cashier’s,workers and the customer’s information in the system.

1.3 DEFINITIONS, ACRONYMS & ABBREVIATIONS

Terms Definitions

User Someone who uses with the bakery website to make orders.

Bakery owner Someone who owns bakery and wants his bakery operations

5

to be automated.Web Application Web application is the web

interface which allows users to make bakery orders.

Stake Holder Any person who has the interaction with the system but not the developer.

1.4REFERENCE

1. IEEE Software Engineering Standards Committee, “IEEE Std 830-1998, IEEE Recommended Practice for Software Requirements Specifications”, October 20, 1998.

2.OVERALL DESCRIPTION

2.1SCOPE OF THE SYSTEM

The scope is shown diagrammatically by making use of work-context diagram.

6

2.2STAKEHOLDERS

Mr. Sweet: Mr. Sweet, the husband/father, is the manager of the bakery who handles the bakery’s overall finances, makes sure the pantry is well stocked, and occasionally helps with baking. Mr. Sweetmay also record expenses related to the bakery utilities, improvement, etc. At the end of the month, he calculates income or losses.

Miss Sweet: Ms. Sweet, is Mr. Sweet’s daughter who joined in the family business. She took over the responsibility of the day-to-day operations as well as the marketing aspect of the company. Because ofher marketing effort, the bakery’s reputation took off and they are busier than ever. She is also responsible for balancing the sheet against the sales and expenses.

Customers: They will order the products online or view products available on the website.

7

2.3PROCESS DESCRIPTION

The Sweet tooth bakery maintains the purchase of the raw materials, production of bakery items, staff salary, customer orders, customer information and billing information. The bakery periodically creates the balance sheets to calculate profit and loss in the business.

2.4USER REQUIREMENTS

Title and Number Requirement Stake Holder

Type of Requirements

User Requirement 1 The System shall be able to generate the end of the day sales reports.

Mr. Sweet Functional

User Requirement 2 The System shall accept online orders, phone orders and walk-in orders from customer.

Miss Sweet

Functional

User Requirement 3 The System shall be able to generate bills asper the items purchased by the customer.

Mr. Sweet Functional

User Requirement 4 The System shall authenticate the staff members with a username and a password

Mr. sweet Functional

User Requirement 5 The System shall showcase the available items to the customer

Miss Sweet

Functional

User Requirement 6 The System shall manage the salaries of the staff employed in

Mr. Sweet Functional

8

the bakeryUser Requirement 7 The System shall

interface with Facebook and Twitter

Miss Sweet

Non-Functional

User Requirement 8 The System shall be able to support 100 concurrent customers

Mr. Sweet Non-Functional

User Requirement 9 The System shall be compatible with windows XP

Mr. Sweet Constraint

User Requirement 10

The System shall be able to handlecancelled orders.

Miss Sweet

Non-Functional

User Requirement 11

The System shall accept cash/Credit card/Debit card for payment of orders.

Mr. Sweet Functional

User Requirement 12

The system shall report about stock in pantry

Mr. Sweet Functional

User Requirement 13

The System shouldbe available 24X7

Miss Sweet

Non-Functional

User Requirement 14

The System shouldbe able to retrieve past finances.

Miss Sweet

Non-Functional

2.5USER REQUIREMENT ANALYSIS

1. User Requirement 2: The System shall authenticate the staff members with a username and a password

Assumption: The bakery workers are provided with unique usernames and passwords.

2. User Requirement 7: The System shall interface with facebook and twitter.

9

User Requirement 9: The System shall be compatible with windows XPConflict: Windows XP being an old version of windows may not be able to support the technologies required for social networking sites like facebook and twitter.

3. User Requirement 1: The System shall be able to generate the end of the day sales reports.

Assumption: The system uses an inbuilt sophisticated tool for generating reports.

4. User Requirement 5 : The System shall showcase the available items to the customer

Ambiguity: Showcasing of all the items can be a problem since different products have different expiry dates and hence can get spoiled during the delivery.

5. User requirement 10: The System shall be able to handle cancelled orders.

Ambiguity: There can be a case where the order has already been delivered and customer wants that order to be cancelled.

2.6 USE CASES

1. “I need to record sales transactions. In addition to the total purchase, I also record the itemsthat were purchased as well as the customers who purchased the item. There can be multipleemployees that man the cash register”

Normal Flow:Use case1: Record Sales TransactionCorresponding Requirement : User Requirement 3Triggering Event: Purchase of Item by CustomerPreconditons: The Register should be attended by a cashier.Steps:

Customer should take the item to the register for making a purchase.

Item should be scanned by its barcode and should come into the sale record.

The price attached to the item must be entered by the cashier Customer information should be entered into the system.[Alternate

flow] Customer should pay for the item either by cash or card.

[Exception Flow]

10

System should generate the bill.

Post Condition:Both customer record and sale record have been submitted successfully and stored in the system

1.1 Alternate Flow:Use case1: Customer Record AdditionTriggering Event: Purchase of Item by CustomerPre-condition: Customer record is not present in the system. Steps:

There must be a separate customer form that needs to be filled bythe cashier.

This form must contain basic fields, so as to have a customer record.

Customer should tell the details appropriately Customer gets added in the customer list of bakery.

Post-condition: Customer gets successfully added.

1.2 Exception Flow:Use case1: Failure in payment Triggering Event: Purchase of Item by Customer Steps:

Exception in payment occur when card is not acceptable. Exception in payment occur when wrong pin is entered by the

customer. Post Condition: Customer is asked to re-enter the pin or for an alternative modeof payment

2. “I want to be able to view the bakery’s income and expenses. As the owner of the bakery, mymain job is worrying about how much we spend and what we spend it on. So, I need to beable to track what we spend on the different categories of expenses: baking supplies, rent,employee pay, employee benefits, insurance, business taxes, office supplies, advertising and amillion other things.”

Normal Flow:Use case2: View Income and ExpensesCorresponding Requirement : User Requirement 13

11

Triggering Event: To view the report generated Preconditons:

Manager should be logged in. Steps:

Manager must select the time frame and the desired category inorder to view report.[Alternate Flow][Exception Flow]

Post Condition: Report has been successfully generated.

2.1 Exception Flow:Use case1: Failure of Report generationTriggering Event: manager selecting in-appropriate values in time frame field or category field.

Pre-condition: Exception in report generation occurs when with in the selected

time frame no expenses have been made for the selected category. Steps:

System validates the date and time field ,displays error message and asks to re-enter the values.

Post Condition: Report would not be generated.

3. “I need to keep track of what we have in stock in inventory and in the pantry”

Normal Flow:Use case 3: View stock availabilityCorresponding Requirement : User Requirement 12Triggering Event: To view stock availabilityPreconditons:

Manager should be logged in. Steps:

Manager must select the category of stock. [Alternate flow] Manager must select the time frame in which he wants retrieve a

record of stock in inventory and pantry. [Exception Flow]Post Condition:Report has been successfully generated.

3.1 Alternate Flow:Use case1: View record of stock based on categoryTriggering Event: Manager selecting Category of stock

12

Pre-condition: Manager must select a category for which there is a valid stock. Record of consumption of the stock is listed.

Post-condition:Manager able to view record.

3.2 Exception Flow:Use case1: Failure in estimation of consumption of stockTriggering Event: manager selecting in-appropriate time framePre-condition:

Exception in report generation occur when with in the selected category, no stock is available.

Post Condition:No report is generated.

2.7 REQUIREMENT SPECIFICATION

FUNCTIONAL REQUIREMENTS:1.

Requirement: User Requirement 1

Requirement Type : Functional

Use Case: 1

Description : The System shall be able to generate end of the day sales reportsRationale : Sales have been recorded accurately throughout the day.Source : Mr. Sweet

2. Requirement: User Requirement 3

Requirement Type : Functional

Use Case: 1

Description : The System shall be able to generate bill for theitems purchased by customers.Rationale For every item there should be corresponding price listed in the database.Source : Mr. Sweet

13

4. Requirement: User Requirement 11

Requirement Type : Functional

Use Case: 1

Description : The System shall accept cash/credit card/debit card for the payment of orders.Rationale : The system has the capacity to process credit and debit cards.Source : Mr. Sweet

5. Requirement: User Requirement 12

Requirement Type : Functional

Use Case: 3

Description : The system shall report about the stock in pantry.Rationale : To be able to gauge the stock used.Source : Mr. Sweet

NON FUNCTIONAL REQUIREMENTS:

6 “I’m really busy, so I don’t have a lot of time to spend figuring out how some stupid computer program works. I need this thing to be really simple and just do what I want it to do”

Requirement: User Requirement 9

Requirement Type : Non Functional

Use Case: -

Description : The System shall be compatible with windows XPRationale : Non sophisticated computer users should be able to use the software.Source : Mr. Sweet

7 “The system should be available when we need it.”

Requirement: User Requirement 15

Requirement Type : Non Functional

Use Case: -

Description : The System should be available 24X7.Rationale : Infrastructure should be able to handle heavy load.Source : Miss Sweet

8 “I don’t need the sales people up front seeing all of our financial data. They should just see thesales information. Right now, the sales computer up front only has sales data, and the officecomputer has all the sales and expenses and whatever else on it. We have two different

14

passwords for those computers. She wants to access it from the Internet, does she? Like I said, Idon’t want our financial records on the Internet. However, I do want my files to have passwordsin case someone does manage to steal them.”

Requirement: User Requirement 4

Requirement Type : Non Functional

Use Case: -

Description : The System shall authenticate the staff members with a username and a passwordRationale : To be able to have strict role based authentication.Source : Miss Sweet

9 “I want to be able to view reports on-the-go or after I come home from working in the bakery.”

Requirement: User Requirement 13

Requirement Type : Non Functional

Use Case: -

Description: The System should be available 24X7Rationale : To be able to fetch reports at any time of the day.Source : Mr. Sweet

10 “I need to be able to look up old finances. I certainly don’t want to lose any information.”

Requirement: User Requirement 13

Requirement Type : Non Functional

Use Case: -

The system shall be able to retrieve all the past finances.Rationale: To be able to analyze the business of bakery at any later stage..Source : Mr. Sweet

15

2.8 REQUIREMENT ANALYSIS MODELS:

ACTIVITY DIAGRAM FOR RECORD OF SALES:

Questions for Conflicting Requirements:

Stake holder : Mr. Sweet

16

Question: There will be different sales on different platform onewill be online (for online orders) and another is in-person (in thebakery). Should the system generate the reports separately for onlineorders?

Stake holder : Mr. SweetQuestion : For the online orders, will this website use the thirdparty services like “Escrow Services” or any other payment gateway?

Stake holder : Mr. SweetQuestion: For online orders, once the customers places the order forbakery items, if at the delivery stage , the payment doesn’tprocessed. How would you like the situation to be handled?

STATE TRANSITION DIAGRAM FOR EXPENSE OBJECT:

17

STATE TRANSITION DIAGRAM INCLUDING DISPUTED STATE:

18

19