You are on page 1of 49

Mom’s Pizza Store

Chapter 1:
Study and Prepare documentation for different Software Process
Models

L. C. Institute of Technology, Bhandu Page 1


Mom’s Pizza Store

A software process model is an abstract representation of process. It represents a description of


process from some particular perspective. Models, by their very nature, are simplifications so a
software process model is an abstraction of the actual process which is being described. Process
models may include activities which are part of the software process, software products and the
roles of people involved in software engineering.

Different Software Process Models are:

1. Waterfall model

2. Incremental model

3. RAD model

4. Prototype model

5. Spiral model

L. C. Institute of Technology, Bhandu Page 2


Mom’s Pizza Store

1. Waterfall model

The Waterfall Model was first Process Model to be introduced. It is also referred to as a linear-
sequential life cycle model. It is very simple to understand and use. In a waterfall model, each
phase must be completed fully before the next phase can begin. At the end of each phase, a
review takes place to determine if the project is on the right path and whether or not to continue
or discard the project. In waterfall model phases do not overlap.

Diagram of Waterfall-model:

Requirement Analysis

Design

Coding and Unit Testing

System Testing

Maintanance

L. C. Institute of Technology, Bhandu Page 3


Mom’s Pizza Store

Advantages of waterfall model:


 Simple and easy to understand and use.
 Easy to manage due to the rigidity of the model – each phase has specific deliverables
and a review process.
 Phases are processed and completed one at a time.
 Works well for smaller projects where requirements are very well understood.

Disadvantages of waterfall model:

 Once an application is in the testing stage, it is very difficult to go back and change
something that was not well-thought out in the concept stage.
 No working software is produced until late during the life cycle.
 High amounts of risk and uncertainty.
 Not a good model for complex and object-oriented projects.
 Poor model for long and ongoing projects.
 Not suitable for the projects where requirements are at a moderate to high risk of
changing.

When to use the waterfall model:

 Requirements are very well known, clear and fixed.


 Product definition is stable.
 Technology is understood.
 There are no ambiguous requirements
 Ample resources with required expertise are available freely
 The project is short.

L. C. Institute of Technology, Bhandu Page 4


Mom’s Pizza Store

2. Incremental model

In incremental model the whole requirement is divided into various builds. Multiple
development cycles take place here, making the life cycle a multi-waterfall cycle. Cycles are
divided up into smaller, more easily managed modules. Each module passes through the
requirements, design, implementation and testing phases. A working version of software is
produced during the first module, so you have working software early on during the software
life cycle. Each subsequent release of the module adds function to the previous release. The
process continues till the complete system is achieved.

Diagram of Incremental model:

L. C. Institute of Technology, Bhandu Page 5


Mom’s Pizza Store

Advantages of Incremental model:

 Generates working software quickly and early during the software life cycle.
 More flexible, less costly to change scope and requirements.
 Easier to test and debug during a smaller iteration.
 Customer can respond to each built.
 Lowers initial delivery cost.
 Easier to manage risk because risky pieces are identified and handled during it’d
iteration.

Disadvantages of Incremental model:

 Needs good planning and design.


 Needs a clear and complete definition of the whole system before it can be broken down
and built incrementally.
 Total cost is higher than waterfall.

When to use the Incremental model:

 Requirements of the complete system are clearly defined and understood.


 Major requirements must be defined; however, some details can evolve with time.
 There is a need to get a product to the market early.
 A new technology is being used
 Resources with needed skill set are not available
 There are some high risk features and goals.

L. C. Institute of Technology, Bhandu Page 6


Mom’s Pizza Store

3. RAD model

RAD model is Rapid Application Development model. It is a type of incremental model. In


RAD model the components or functions are developed in parallel as if they were mini projects.
The developments are time boxed, delivered and then assembled into a working prototype. This
can quickly give the customer something to see and use and to provide feedback regarding the
delivery and their requirements.

Diagram of RAD-Model:

L. C. Institute of Technology, Bhandu Page 7


Mom’s Pizza Store

The phases in the rapid application development (RAD) model are:

Business modeling: The information flow is identified between various business functions.
Data modeling: Information gathered from business modeling is used to define data objects
that are needed for the business.
Process modeling: Data objects defined in data modeling are converted to achieve the business
information flow to achieve some specific business objective. Description are identified and
created for CRUD of data objects.
Application generation: Automated tools are used to convert process models into code and the
actual system.
Testing and turnover: Test new components and all the interfaces.

Advantages of the RAD model:

 Reduced development time


 Increases reusability of components
 Quick initial reviews occur
 Encourages customer feedback
 Integration from very beginning solves a lot of integration issues

L. C. Institute of Technology, Bhandu Page 8


Mom’s Pizza Store

Disadvantages of RAD model:

 Depends on strong team and individual performances for identifying business


requirements
 Only system that can be modularized can be built using RAD
 Requires highly skilled developers/designers
 High dependency on modeling skills
 Inapplicable to cheaper projects as cost of modeling and automated code generation is
very high

When to use RAD model:

 RAD should be used when there is a need to create a system that can be modularized in
2-3 months of time.
 It should be used if there’s high availability of designers for modeling and the budget is
high enough to afford their cost along with the cost of automated code generating tools.
 RAD SDLC model should be chosen only if resources with high business knowledge are
available and there is a need to produce the system in a short span of time (2-3 months).

L. C. Institute of Technology, Bhandu Page 9


Mom’s Pizza Store

4. Prototype model

The basic idea here is that instead of freezing the requirements before a design or coding can
proceed, a throwaway prototype is built to understand the requirements. This prototype is
developed based on the currently known requirements. By using this prototype, the client can
get an “actual feel” of the system, since the interactions with prototype can enable the client to
better understand the requirements of the desired system. Prototyping is an attractive idea for
complicated and large systems for which there is no manual process or existing system to help
determining the requirements. The prototype are usually not complete systems and many of the
details are not built in the prototype. The goal is to provide a system with overall functionality.

Diagram of Prototype model:

L. C. Institute of Technology, Bhandu Page 10


Mom’s Pizza Store

Advantages of Prototype model:

 Users are actively involved in the development


 Since in this methodology a working model of the system is provided, the users get a
better understanding of the system being developed.
 Errors can be detected much earlier.
 Quicker user feedback is available leading to better solutions.
 Missing functionality can be identified easily
 Confusing or difficult functions can be identified
Requirements validation, Quick implementation of, incomplete, but
functional, application.

Disadvantages of Prototype model:

 Leads to implementing and then repairing way of building systems


 Practically, this methodology may increase the complexity of the system as scope of the
system may expand beyond original plans.
 Incomplete application may cause application not to be used as the
full system was designed
Incomplete or inadequate problem analysis.

L. C. Institute of Technology, Bhandu Page 11


Mom’s Pizza Store

When to use Prototype model:

 Prototype model should be used when the desired system needs to have a lot of
interaction with the end users.
 Typically, online systems, web interfaces have a very high amount of interaction with
end users, are best suited for Prototype model. It might take a while for a system to be
built that allows ease of use and needs minimal training for the end user.
 Prototyping ensures that the end users constantly work with the system and provide a
feedback which is incorporated in the prototype to result in a useable system. They are
excellent for designing good human computer interface systems.

L. C. Institute of Technology, Bhandu Page 12


Mom’s Pizza Store

5. Spiral model

The spiral model is similar to the incremental model, with more emphasis placed on risk
analysis. The spiral model has four phases: Planning, Risk Analysis, Engineering and
Evaluation. A software project repeatedly passes through these phases in iterations (called
Spirals in this model). The baseline spiral, starting in the planning phase, requirements are
gathered and risk is assessed. Each subsequent spirals builds on the baseline spiral.
Requirements are gathered during the planning phase. In the risk analysis phase, a process is
undertaken to identify risk and alternate solutions. A prototype is produced at the end of the
risk analysis phase. Software is produced in the engineering phase, along with testing at the
end of the phase. The evaluation phase allows the customer to evaluate the output of the
project to date before the project continues to the next spiral.

Diagram of Spiral model:

L. C. Institute of Technology, Bhandu Page 13


Mom’s Pizza Store

Advantages of Spiral model:

 High amount of risk analysis hence, avoidance of Risk is enhanced.


 Good for large and mission-critical projects.
 Strong approval and documentation control.
 Additional Functionality can be added at a later date.
 Software is produced early in the software life cycle.

Disadvantages of Spiral model:

 Can be a costly model to use.


 Risk analysis requires highly specific expertise.
 Project’s success is highly dependent on the risk analysis phase.
 Doesn’t work well for smaller projects.

When to use Spiral model:

 When costs and risk evaluation is important


 For medium to high-risk projects
 Long-term project commitment unwise because of potential changes to economic
priorities
 Users are unsure of their needs
 Requirements are complex
 New product line
 Significant changes are expected (research and exploration)

L. C. Institute of Technology, Bhandu Page 14


Mom’s Pizza Store

Chapter 2:
Developing SRS
For
Mom’s Pizza Store

L. C. Institute of Technology, Bhandu Page 15


Mom’s Pizza Store

2.1 Introduction

2.1.1 Purpose

This document gives detailed functional and non-functional requirements for Mom’s Pizza
Store – an online pizza ordering system. The purpose of this document is that the requirements
mentioned in it should be utilized by software developer to implement the system.

2.1.2 Scope

This system allows people to order their favorite delicious pizzas online from Mom’s Pizza
Store. With the help of this system customer should able to order their favorite pizza’s from
Mom’s Pizza Store from anywhere. The information about store and every pizza is also
provided.

2.1.3 Overview

This system provide easy solution to the customer to order the item he/she wants directly
through internet without visiting the store.

L. C. Institute of Technology, Bhandu Page 16


Mom’s Pizza Store

2.2 General Description

This system replaces old Pizza Stores where lots of crowd of people is there by online Pizza
Store. Moreover conventional Pizza Store requires more and big manpower compare to this
system. This system is developed with new geo-location like features in HTML 5 for more
customer comfort.

L. C. Institute of Technology, Bhandu Page 17


Mom’s Pizza Store

2.3 Requirements
This section describes different types of users of the system in 3.3.1. In the following paragraph
3.3.2, the functional requirements for each type of user are listed. 3.3.3 Lists the non-functional
requirements of the system.

Users
Three types of users should be able to use the system: customer, employee and administrator.
Customers are users who visit the website and can create orders by customizing pizzas,
selecting products and entering customer details. Employees are the group of users that work
with the ordering system on a daily basis. Employees will have their own accounts to log on to.
They are the ones responsible for processing orders. Since Customer users do not need a log in,
employees who process telephone orders can use the system as a Customer and enter the
telephone order directly into the system as they take the order from the calling customer.
The administrator, or super user, has the ultimate control of the system, he can add, change or
delete ingredients and products, as well as add, change, or delete employee accounts.

2.3.1 Functional requirements

1 Customers
1.1 The user must be able to create a new order.
1.2 The user must be able to customize a pizza by:
1.2.1 The user must be able to view a list of available ingredients.
1.2.2 The user must be able to add an ingredient to a custom pizza
1.2.3 The user must be able to remove an ingredient from a custom pizza

L. C. Institute of Technology, Bhandu Page 18


Mom’s Pizza Store

1.2.4 The user must be able to get graphical feedback from selecting ingredients. A photo of a
pizza will contain the newly selected ingredient combined with previous selected ingredients.
1.3 The user must be able to add a custom pizza to an order.
1.4 The user must be able to view a list of available non-pizza products.
1.5 The user must be able to add non-pizza products to an order.
1.6 The user must be able to see a list of custom pizzas and non-pizza products that are added to
the order.
1.7 The user must be able to change the amount of a custom pizza.
1.8 The user must be able to change the amount of a non-pizza product.
1.9 The user must be able to delete a custom pizza from an order.
1.10 The user must be able to delete a non-pizza product from an order.
1.11 The user must be able to see the total price of an order.
1.12 The user must be able to choose a delivery date and time that is up to two weeks ahead.
1.13 The user must be able to add the name and address of the customer.
1.14 The user must be able to clear the current order to start a new one.
1.15 The user must be able to confirm the order.

2 Employees
2.1 The employee must be able to log in and out.
2.2 The employee must be able to view a list of available orders and their custom pizzas.
2.3 The employee must be able to mark orders as “prepared”.
2.4 The employee must be able to mark order as “delivered”
2.5 The employee must be able to mark order as “failure to deliver”
2.6 Only users with respective rights (employee) must be able to use all these
“Employees” features.
L. C. Institute of Technology, Bhandu Page 19
Mom’s Pizza Store

3 Administrators
3.1 The administrator must be able to log in and out.
3.2 The administrator must be able to add/delete/edit orders.
3.3 The administrator must be able to add/delete/edit ingredients.
3.4 The administrator must be able to add/delete/edit non-pizza products.
3.5 The administrator must be able to add/delete/edit other users.
3.6 The administrator must be able to view an order log.
3.7 Only users with respective rights (administrators) must be able to use all these
“Administrators” features.

2.3.2 Non-functional requirements


As an operational requirement, the system will run as a database with a website as user
interface. As performance requirement the system must be accessible 24 hours a day, seven
days a week. Due to the nature of the system as an ordering website, the system must have a
low response time, preferably shorter than second, with a maximum of five seconds. The
exception is viewing order logs which could have a higher response time (of seconds) as the log
increases in size over time. Due to the low complexity of the system, no problems with response
time are expected. Customers who visit the website to order will get a sessionID for their visit,
which is used to identify them while using the system. For every action they take, a timestamp
is stored. From time to time a service on the server will scan sessionID’s and timestamps.
SessionID’s which have not been active for more than three hours will be deleted along with the
corresponding ordering information.

L. C. Institute of Technology, Bhandu Page 20


Mom’s Pizza Store

2.4 Interface Requirements


2.4.1 GUI

The user interface must be highly interactive so that all users may be able to operate the system
as easily and fluently. GUI would be used for creating home page with navigation bar and other
pages for respective categories.

2.4.2 Software Interface

The software interfaces required for this system are:

 Internet connection
 The PHP and MYSQL must be installed
 Any browser

2.5 Performance Requirements


The respond time must be less than 20 seconds. The full length pages should be displayed along
with the images.

2.6 Design Constraints


The system must be compatible with all the browsers.

L. C. Institute of Technology, Bhandu Page 21


Mom’s Pizza Store

2.7 Other Non-Functional Attributes


2.7.1 Security

The server-side security is needed to protect the system from hackers.

2.7.2 Reliability

The system should be highly reliable and it should generate all the updated information in
correct order.

2.7.3 Availability

The system should be available 24*7.

2.7.4 Maintainability

The system should be maintainable in such a manner that if any new requirement occurs then it
should be easily incorporated in an individual module.

2.7.5 Reusability

The system would be usable as long as people want to use it.

L. C. Institute of Technology, Bhandu Page 22


Mom’s Pizza Store

Chapter 3:
Developing Use case diagram
For
Mom’s Pizza Store

L. C. Institute of Technology, Bhandu Page 23


Mom’s Pizza Store

Use-Case Diagram

L. C. Institute of Technology, Bhandu Page 24


Mom’s Pizza Store

Chapter 4:
Developing Data Dictionary
For
Mom’s Pizza Store

L. C. Institute of Technology, Bhandu Page 25


Mom’s Pizza Store

Data Dictionary:
Table – 1 for Mom’s Store information
tblStore
Sr Field Name Data type Size Is Null Constrain Default Description
no value
1 strid int - No - It indicates id of store
2 Strname varchar 50 No - Name of the Store
3 stated Int - - Foreign key Name of city, it belong to which state.
6 Createddate date - No - It is used to store date in which it
created

Table – 2 forCustomer Information


tblCustomer

Sr Field Name Data type Size Is Null Constrain Default Description


no value
1 vid int - no Primary key - Primary key for table customer
2 vname varchar 50 - - - It indicate the first name of customer.
3 lname varchar 50 - - - It indicate the last name of customer
4 vadd char 30 - - - Address of customer
5 vstateid int - - - - It declare the state id of customer
6 vcityid int - - - - It declare the city id of customer
7 vloginid varchar 50 - Foreign key It declare the login id of customer
5 Isdeleted bit - No 0 Deleted status 0 or 1
6 Createddate date - No - It is used to store date in which it
created

L. C. Institute of Technology, Bhandu Page 26


Mom’s Pizza Store

Table -3 for Customers login information


tblLogin
Sr Field Name Data type Size Is Null Constrain Default Description
no value
1 uname varchar 50 No Primary key no User name
2 password varchar 15 - - - Password which is declared by user
3 utype varchar 40 - - - Type of user
4 status varchar 50 - - - Status of user
5 Isdeleted bit - No 0 Deleted status 0 or 1
6 Createddate date - No - It is use to store date in which it
created

Table -4 for order information


tblOredr
Sr Field Name Data type Size Is Null Constrain Default Description
no value
1 Oid Int - No Primary key - It indicate the id of order
2 O_name varchar 30 - - - It indicate the name of party
3 O_item Varchar 100 No - - It indicates ordered items
4 O_amount Int 30 - - - It indicates total order amount.
5 Isdeleted bit - No 0 Deleted status 0 or 1
6 Createddate date - No - It is used to store date in which it
created

L. C. Institute of Technology, Bhandu Page 27


Mom’s Pizza Store

Table -5 for pizza/item information


tblItem
Sr Field Name Data Size Is Constrain Default Description
no type Null value
1 Product_id Int - No Primary key - It indicate the id of product
2 Product_name varchar 30 - - - It indicate the name of product
3 Product_ingredients varchar 100 No - - It indicates ordered items ingradients
4 O_amount Int 30 - - - It indicates total order amount.
5 Isdeleted bit - No 0 Deleted status 0 or 1
6 Createddate date - No - It is used to store date in which it
created

Table – 9 table for admin information


tblAdmin
Sr Field Name Data type Size Is Null Constrain Default Description
no value
1 pkAdminId int - Primary key primary key for table
2 aduname varchar 50 unique user name of admin for login
3 fname varchar 50 first name of admin
4 lname varchar 50 last name of admin
5 passward varchar 10 password for admin for login
6 Isdeleted bit - No 0 Deleted status 0 or 1
7 Createddate date - No - It is use to store date in which it
created

L. C. Institute of Technology, Bhandu Page 28


Mom’s Pizza Store

Chapter 5:
Developing Data Flow Diagram
For
Mom’s Pizza Store

L. C. Institute of Technology, Bhandu Page 29


Mom’s Pizza Store

DFD level - 0

L. C. Institute of Technology, Bhandu Page 30


Mom’s Pizza Store

DFD level-1

L. C. Institute of Technology, Bhandu Page 31


Mom’s Pizza Store

Chapter 6:
Developing Class diagram
For
Mom’s Pizza Store

L. C. Institute of Technology, Bhandu Page 32


Mom’s Pizza Store

Class diagram

L. C. Institute of Technology, Bhandu Page 33


Mom’s Pizza Store

Chapter 7:
Developing Sequence Diagram
For
Mom’s Pizza Store

L. C. Institute of Technology, Bhandu Page 34


Mom’s Pizza Store

Sequence Diagram

L. C. Institute of Technology, Bhandu Page 35


Mom’s Pizza Store

Chapter 8:
Developing E-R diagram
For
Mom’s Pizza Store

L. C. Institute of Technology, Bhandu Page 36


Mom’s Pizza Store

E-R diagram

L. C. Institute of Technology, Bhandu Page 37


Mom’s Pizza Store

Chapter 9:
Developing Activity diagram
For
Mom’s Pizza Store

L. C. Institute of Technology, Bhandu Page 38


Mom’s Pizza Store

Activity Diagram 1

Activity Diagram 2

L. C. Institute of Technology, Bhandu Page 39


Mom’s Pizza Store

Activity Diagram 3

L. C. Institute of Technology, Bhandu Page 40


Mom’s Pizza Store

Activity Diagram 4

L. C. Institute of Technology, Bhandu Page 41


Mom’s Pizza Store

Chapter 10:
Prepare Time Line Chart
For
Mom’s Pizza Store

L. C. Institute of Technology, Bhandu Page 42


Mom’s Pizza Store

Time Line Chart for Voting System

SRS Phases
35

30

25

20

SRS Phases
15

10

0
Requirement Requirement Analysis Design Coding
Gathering

Timeline Diagram

L. C. Institute of Technology, Bhandu Page 43


Mom’s Pizza Store

4. Screen Shots

L. C. Institute of Technology, Bhandu Page 44


Mom’s Pizza Store

L. C. Institute of Technology, Bhandu Page 45


Mom’s Pizza Store

L. C. Institute of Technology, Bhandu Page 46


Mom’s Pizza Store

L. C. Institute of Technology, Bhandu Page 47


Mom’s Pizza Store

5. Conclusion
Mom’s Pizza Store will make great impact on our conventional stores with
lots of new features and comfort. As it’s an online store customer is going to love it
because it’s going to save your lots of time in this daily fast life. It’s geo-location
feature is eye-catching for all the customers and will help a lot to customers. It’s
easy to use navigation and simple though beautiful GUI are going to be praised by
all for sure. It’s one of the State-of –the art site for new Pizza Stores.

L. C. Institute of Technology, Bhandu Page 48


Mom’s Pizza Store

6. Reference’s
1. http://en.wikipedia.org/wiki/SDLC
2. http://en.wikipedia.org/wiki/Rapid_application_development
3. http://www.technotrice.com/rad-model-software-engineering/
4. http://www.studymode.com/essays/Srs-Of-Online-Pizza-Ordering-
1389543.html
5. http://creately.com/diagram/example/hmqrqsik1/Perfect+Pizza+-+Context-
Level+Data+Flow+Diagram
6. http://creately.com/diagram-
community/all?pg=5&term=ER%20diagram%20for%20online%20pizza%20
ordering
7. http://creately.com/diagram-
community/all?term=activity%2520diagram%2520for%2520online%2520piz
za%2520ordering

L. C. Institute of Technology, Bhandu Page 49

You might also like