A Software Requirement Specification On
Food Safety Portal
Swami Keshvanand Institute of Technology, Management & Gramothan, Jaipur
In the partial fulfillment of Bachelor of technology in computer science and Engineering under Rajasthan Technical University.
Submitted to:
Submitted by:
Prof. Dr. CM Choudhary
Surbhi Gupta
(HOD CS)
Swastik Pareek 09ESKCS123
Mr. Deepak Garg
Somya Sharma 09ESKCS114
(Lecturer CS)
Surbhi Baghla
Miss. Nidhi jain (Lecturer CS, Mentor)
09ESKCS121
09ESKCS120
Food Safety Portal Software Requirement Specification Team Name
Version<1.0> Date: 15/10/2012 S4
Table of contents 1. Introduction 1.1 Methodology…………………… Methodology………………………………………………………………………………………………………… ………………………………………………………………………………………………. …………. 3 1.2 Purpose……………………… Purpose……………………………………………………………………………………………………………… ……………………………………………………………………………………………………. ……………. 4 Scope…………………………………………………………………………..…………………………………………………. …………………………………………………. 4 1.3 Scope………………………………………………………………………….. 1.4 Definitions, Acronyms and Abbreviations…………………………………………………………………………. Abbreviations…………………………………………………………………………. 5 ………………………………………………………………………………………………………………………. ……………………………………………………. 6 1.5 Tools Used ………………………………………………………………… 1.6 References ………………………………………………………………………………………………………………………. ………………………………………………………………………………………………………………………. 7 1.7 Technologies to be used …………………………………………………………………………………………………. 7 1.8 Overview ………………………………………………………………………………………………………………………... ………………………………………………………………………………………………………………………... 7 2. Overall Description 2.1 Product Perspective ……………………………………………………………………………………………………….. 8
2.2 Software Interface ………………………………………………………………………………………………………….. 8 2.3 Hardware Interface ………………………………………………………………………………………………………… 9 2.4 Communication Interface ……………………………………………………………………………………………….. 10 2.5 Constraints ……………………………………………………………………………………………………………………… ……………………………………………………………………………………………………………………… 10 Diagram………………………………………………………………………………………………… ………………………………………………………………………………….. ……….. 11 2.6 Data flow Diagram……………………… …………………………………………………………………………………………………………………….. …………………………………………….. 13 2.7 E-R Diagram ………………………………………………………………………
2.8 Database Design …………………………………………………………………………………………………………….. 14 2.9 Class Diagram ………………………………………………………………………………………………………………… 16 …………………………………………………………………………………………………………….. …………………………………………………….. 18 18 2.10 Use-Case Model ……………………………………………………… Design……………………………………………………………………………………………………….. …………………………………………………………………………….. 20 2.11 Architecture Design………………………… 3. Specific Requirement
3.1 Activity Diagrams …………………………………………………………………………………………………………….. 21 3.2 Sequence Diagrams………………………………………………………………………………………………………….. 25 4. Supporting Information…………………………………………………………………………………………………….. Information…………………………………………………………………………………………………….. 28
Page 2 S4/SKIT/CS-B(G2)
Food Safety Portal Software Requirement Specification Team Name
Version<1.0> Date: 15/10/2012 S4
1. Introduction 1.1 Methodology Rational Unified Process The Rational Unified Process brings together elements from all of the generic process models, supports iteration and illustrates good practice in specification and desig n. The RUP is normally described from three perspectives:
A dynamic perspective that shows the phases of the model over time. A static perspective that shows the process activities that are enacted. A practice perspective that suggests good practices to be used during the process.
Fig 1.1:Phases of RUP
The different phases in RUP are :Page 3 S4/SKIT/CS-B(G2)
Food Safety Portal Software Requirement Specification Team Name
Version<1.0> Date: 15/10/2012 S4
Inception The goal of the inception phase is to establish a business case for the system. Identifying all external entities that will interact with the system and defining these interaction. This information is used to assess the contribution of system to business. Elaboration The goals of the elaboration phase are to develop an understanding of the problem domain, establish an architectural framework, develop project plan and identify key project risks. Construction This phase is concerned with system design, programming and testing. Parts of the system are developed in parallel and integrated during this phase. Transition This is the final phase of RUP and is concerned with moving the system from the development community to the user community and making it work in real environment.
1.2 Purpose Food Safety Portal is a web application which provides information related to restaurants of a city, market certifications, quality of food, dining guide, food handling, local diet/delicacies to everyone at their doorstep.
The users living in the city or visitors of that city can connect through internet can get information about restaurants of that city, food related illness and restaurant guide. City employees can easily update an information and and others users also can submit feedback, suggestion for improvement on the web-site.
1.3 Scope
There are three basic users - city residents, visitors and city employees. All users have their own profiles in FSP. City residents and visitors can search for restaurants and make online booking. They can also submit feedback on any restaurant. City employees can view record of their customers (regular customers, weekend customer or new customers). Restaurant guide views and manages the booking, performs day open and close activities and calculates his commission. He also sends reports to admin. Admin has the authority to add/delete users, grant permission to city employees and restaurant guide to generate and view. He also views the complains and feedback of users and takes necessary actions.
Page 4 S4/SKIT/CS-B(G2)
Food Safety Portal Software Requirement Specification Team Name
Version<1.0> Date: 15/10/2012 S4
1.4 Definitions, Acronyms and Abbreviations FSP Food Safety Portal: It’s a web application th at provides online food related services for people. Admin
Administrator: He has the authority to add/delete users, grant permission to city employees and restaurant guide. RG
Restaurant Guide: He manages bookings of restaurants. WASCE
WebSphere Application Server Community Edition: It is an application server that run and supports J2EE and web service applications. DB2
Database_2: A database management system that provides a flexible and efficient database platform to maintain records of restaurants, customers, admin. JSP
Java Server Pages: It is used to create dynamic web content. J2EE
Java 2 Enterprise Edition: A programming platform which is a part of java platform for developing and running distributed java. UML
Unified Modeling Language is a standard language for writing software blueprints. The UML may be used to visualize, specify, construct and document. XML
Extensible Markup Language is a text based format that let developers describe, deliver and exchange structured data between a range of applications to client for display and manipulation. HTTP
Hypertext Transfer Protocol: It’s a service protocol. RAD
Rational Application Developer is a development tool that helps to design web pages and also helps to design the diagrams like ER, Database schema diagrams and to generate DDL.
Page 5 S4/SKIT/CS-B(G2)
Food Safety Portal Software Requirement Specification Team Name
Version<1.0> Date: 15/10/2012 S4
1.5 Tools Used Application architecture – JAVA, J2EE JAVA Java is an object-oriented programming language developed by Sun Microsystems a company best known for its high end UNIX workstations. Java language was designed to be small, simple, and portable across platforms, operating systems, both at the source and at the binary level, which means that Java programs (applet and application) can run on any machine that has the Java virtual machine (JVM) installed. J2EE Java Platform, Enterprise Edition or Java EE is a widely used platform for server programming in the Java programming language. The Java platform (Enterprise Edition) differs from the Java Standard Edition Platform (Java SE) in that it adds libraries which provide functionality to deploy fault-tolerant, distributed, multi-tier Java software, based largely on modular components running on an application server. Web server – WASCE WebSphere Application Server Community Edition (from now on WASCE) is a free, certified Java EE 5 server for building and managing Java applications. It is IBM's supported distribution of Apache Geronimo that uses Tomcat for servlet container and Axis 2 for web services. Over 15WASCE developers are committers in the Apache Geronimo project. Development tool –RAD IBM Rational Application Developer for WebSphere Software (RAD) is an integrated development environment (IDE), made by IBM's Rational Software division, for visually designing, constructing, testing, and deploying Web services, portals, and Java (J2EE) applications. Database platform – DB2 DB2 Database is the database management system that delivers a flexible and cost effective database platform to build robust on demand business applications and supports the J2EE and web services standards. Design tool – Rational Software Modeler IBM Rational Software Modeler, (RSM) made by IBM's Rational Software division, is a Unified Modeling Language UML 2.0-based visual modeling and design tool. Rational Software Modeleris built on the Eclipse open-source software framework and includes capabilities focused on visual modeling and model-driven development (MDD) with the UML for creating resilient, thought-out applications and web services.
Page 6 S4/SKIT/CS-B(G2)
Food Safety Portal Software Requirement Specification Team Name
Version<1.0> Date: 15/10/2012 S4
1.6 References
Object Oriented Modeling and Design with UML-Michael Blaha, James Rambaugh. Software Engineering, Seventh Edition, Ian Sommerville. IBM Red Books. IBM TGMC Sample Synopsis. IBM – www.ibm.in/developerworks . Java - www.sun.com Wikipedia - www.wikipedia.com Database Management Systems – Navathe Complete Reference - J2EE - Keogh.
1.7 Technologies to be used
DB2: Relational Database Management System. RAD: Rational Application Developer. WASCE: Websphere Application Server Community Edition. Rational Software Modeler.
1.8 Overview Existing System: Registration for users Discussion forum Drawbacks: Remote area users and people who doesn't have knowledge of internet cannot use the system. Proposed System: Registration for city residents, visitors, city employee - help the users who doe sn't have knowledge of internet to use the system. Our Plan: Registration for users. Online maintenance of restaurant record. Online booking facility. Users reviews and ratings for restaurants.
Page 7 S4/SKIT/CS-B(G2)
Food Safety Portal Software Requirement Specification Team Name
Version<1.0> Date: 15/10/2012 S4
2. Overall Description 2.1 Product Perspective
Fig 2.1 Product Perspective
2.2 Software Interface Client on Internet Web Browser, Operating System (any) Client on Intranet Web Browser, Operating System (any) Web Server WASCE, Operating System (any) Data Base Server DB2, Operating System (any) Development End RAD (J2EE, Java, Java Bean, Servlets, HTML, XML, AJAX), DB2, OS (Windows),WebSphere(Web Server)
Page 8 S4/SKIT/CS-B(G2)
Food Safety Portal Software Requirement Specification Team Name
Version<1.0> Date: 15/10/2012 S4
2.3 Hardware Interface Minimum Requirements:
Client Side Processor RAM Disk Space
Client Side
Internet Explorer - 6
Processor
RAM
Disk Space
Intel Pentium III or AMD -800 MHz
128 MB
100 MB
Server Side
RAD
Processor
RAM
Disk Space
Intel Pentium III or AMD 800 MHz
1 GB
3.5 GB
256 MB
500 MB (Excluding Data Size)
DB2 - 9.5
Recommended Requirements:
C Client Side
Internet Explorer - 6 All
Processor
RAM
Disk Space
Intel or AMD - 1 GHZ
256 MB
100 MB
Server Side RAD DB2 - 9.5
All Intel or AMD - 2 GHZ
2 GB
3.5 GB
512 MB
500 MB (Excluding Data Size)
Page 9 S4/SKIT/CS-B(G2)
Food Safety Portal Software Requirement Specification Team Name
Version<1.0> Date: 15/10/2012 S4
2.4 Communication Interface
Client (customer) on Internet will be using HTTP/HTTPS protocol. Client (system user) on Internet will be using HTTP/HTTPS protocol.
2.5 Constraints
Login and password is used for the identification of users. GUI is only in English. Limited to HTTP/HTTPS. This system is working for single server.
Page 10 S4/SKIT/CS-B(G2)
Food Safety Portal Software Requirement Specification Team Name
Version<1.0> Date: 15/10/2012 S4
2.6 Data Flow Diagram 0-Level DFD
Application form Validate user
do registration /login user View map
Food Safety
Admin
Portal
View templates Confirmation Search restaurant
In 0 level data flow data diagram user will request for registration or login (if already registered). Non registered users can view city map and templates and also search for restaurant and restaurant guide.
Page 11 S4/SKIT/CS-B(G2)
Food Safety Portal Software Requirement Specification Team Name
Version<1.0> Date: 15/10/2012 S4
1-Level DFD
View city map
Getting
Search restaurant
Restaurant Guide
Information
View tem lates Contacts
User Submit Do
User Record
feedback
booking
Check User Status
Submit form Registration confirmation Registration rejection
Registration Process
Application form
admin
confirmation rejection
Page 12 S4/SKIT/CS-B(G2)
Food Safety Portal Software Requirement Specification Team Name
Version<1.0> Date: 15/10/2012 S4
2.7 E-R Diagram gender name
E_id
R_id
occupation password id
City resident
has
record
City employee
update
DOB
Contact no approves submit
B_id booking
date F_id
time feedback
content
manages
name
address approve
admin
Restaurant
has
restaurant
DOB
guide G_name
contact password
Admin_id
Res_id
Res_name
address G_id Page 13
S4/SKIT/CS-B(G2)
Food Safety Portal Software Requirement Specification Team Name
Version<1.0> Date: 15/10/2012 S4
2.8 Database Design Tables User Table
Serial No 1 2 3 4 5 6 7 8 9 10
Field name User Id User name Password Security Question Secqurity Answer Email id Contact no Address City DOB
Data type Varchar varchar Varchar Varchar Varchar Varchar Numeric Varchar Varchar Date
Constraint Primary key
Field name Admin Id Admin name Password Security Question Secqurity Answer Email id Contact no Address City DOB
Data type Varchar Varchar Varchar Varchar Varchar Varchar Numeric Varchar Varchar Date
Constraint Primary key
Field name Rest Id Rest name Contact no Address City
Data type Varchar Varchar numeric Varchar Varchar
Constraint Primary key
Admin Table
Serial No 1 2 3 4 5 6 7 8 9 10
Restaurant Table
Serial No 1 2 3 4 5
Page 14 S4/SKIT/CS-B(G2)
Food Safety Portal Software Requirement Specification Team Name
Version<1.0> Date: 15/10/2012 S4
Restaurant Guide Table
Serial No 1 2 3 4 5 6 7 8 9 10
Field name Guide Id Guide name Password Security Question Secqurity Answer Email id Contact no Address City DOB
Data type Varchar Varchar Varchar Varchar Varchar Varchar numeric Varchar Varchar date
Constraint Primary key
Template Table
Serial no 1 2 3 4
Field name Name Type Size Location
Data type Varchar Varchar Varchar Varchar
Constraint Primary key
Field name Booking Id User id guide id Res id guide rates Date Time
Data type Varchar varchar Varchar Varchar numeric Date Date
Constraint Primary key
Booking Table
Serial No 1 2 3 4 5 6 7
Page 15 S4/SKIT/CS-B(G2)
Food Safety Portal Software Requirement Specification Team Name
Version<1.0> Date: 15/10/2012 S4
2.8 Class Diagram
In Class Diagram each class defines the attributes and methods. Each class is connected to other class according to the functionality. C
Page 16 S4/SKIT/CS-B(G2)
Food Safety Portal Software Requirement Specification Team Name
Version<1.0> Date: 15/10/2012 S4
City Resident Class: It has attributes like user id, user name, password, email-id, contact no,
address, city and date of birth. The class city resident is conncted to restaurant class, template class and feedback class for booking a restaurant, to use templates and to give feedback about the restaurant and restaurant guide. Restaurant Class: Attributes of reataurant class are id, name, address, contact no, and password.
The functions it performs are booking(), review() and update(). It is connected to city resident and restaurant guide with M:M cardinality. Restaurant Guide Class: Its attributes are id, name, contact no, email-id , address, password and
rate. It has functionality of set up a deal between user and restaurant. Admin Class: Admin is administrator who can look at all the activities which are goinng on. Its
attributes are id, name, password, email-id, contact no, address, city.
A feedback form is
submitted to the admin and according to the feedback he can rate the restaurants and restaurant guide. Template Class: Template class has attribute like type of that template, file name, file size. This
class is connected to the users. Users can view the template which are based on food safety. Feedback Class: Feedback class has attribute id, date, subject, content and name of the user who
submitted the feedback. It is associated to the user with M:1 cardinality that means one user can submit more then one feedback. Visitor Class: Visitor can visit the website without logging in. They can use the templates and can
also see the city map for finind the location of restaurants.
Page 17 S4/SKIT/CS-B(G2)
Food Safety Portal Software Requirement Specification Team Name
Version<1.0> Date: 15/10/2012 S4
2.9 Use Case Diagram
Page 18 S4/SKIT/CS-B(G2)
Food Safety Portal Software Requirement Specification Team Name
Version<1.0> Date: 15/10/2012 S4
DESCRIPTION
Sign In : The user has to Sign In in order to . View profile: Every registered user has his/her own profile containing personal details. Update profile: The user has the option to update his/her own profile. Select Restaurant or Restaurant Guide : The user can select restaurant based on various criteria. Do Booking: The user can request for booking to a particular restaurant. Interact with restaurant guide: The user can interact with guide . Feedback : The user can submit feedback on restaurant or restaurant guide to admin. Search :
The user can search for a particular item in website by entering the keyword.
Page 19 S4/SKIT/CS-B(G2)
Food Safety Portal Software Requirement Specification Team Name
Version<1.0> Date: 15/10/2012 S4
2.10 Architecture Diagram
Login UI
Registration UI
Login UI
Login
Registration UI
Restaurant guide/ user/Reataurant
Search UI
Search UI
Feedback UI
Feedback UI
Booking UI
Booking UI
Feedback
Booking
Page 20 S4/SKIT/CS-B(G2)
Food Safety Portal Software Requirement Specification Team Name
Version<1.0> Date: 15/10/2012 S4
3. Specific Requirement 3.1 Activity Diagrams
User Registration Activity:
Initially user is made to fill all mandatory fields filled in registration form. Once the user clicks submit, the username is verified. If the username is already present, then the user is again taken back, so that he can change the username. If the username is not present then it checks for password and remaining mandatory fields. If any of the mandatory field is left empty or filled incorrect, then the user is informed to enter the correct values. Once all these verifications are succeeded, then the registration is done. Page 21 S4/SKIT/CS-B(G2)
Food Safety Portal Software Requirement Specification Team Name
Version<1.0> Date: 15/10/2012 S4
Login Activity:
User is made to enter the username and password, if he is signing in through his id then he has to be entered, after that entered values are verified. If it is a valid username and password, then the user is logged in, or else they are asked to re enter the correct values.
Page 22 S4/SKIT/CS-B(G2)
Food Safety Portal Software Requirement Specification Team Name
Version<1.0> Date: 15/10/2012 S4
Feedback Activity:
After submitting the feedback form the admin views this feedback and analyse it. According to the feedback submitted by users he updates the rates of restaurant and restaurant guide. Rates of a restaurant or guide makes it easy to choose a restaurant and guide.
Page 23 S4/SKIT/CS-B(G2)
Food Safety Portal Software Requirement Specification Team Name
Version<1.0> Date: 15/10/2012 S4
Book Deal Activity
After the user logged in if the user wants to do online booking then either he can select a restaurant guide or directly contact to the restaurant. Now the deal will be confirmed by the restaurant and the report will be displayed to the user.
Page 24 S4/SKIT/CS-B(G2)
Food Safety Portal Software Requirement Specification Team Name
Version<1.0> Date: 15/10/2012 S4
3.2 Sequence Diagram: Validation Sequence Diagram:
When a user enter user name and password for login then these values are forwarded to the database for validation. If the validation is successfull it will display user profile and if the validation is failed it will display a error page indicating that user name or password is incorrect.
Page 25 S4/SKIT/CS-B(G2)
Food Safety Portal Software Requirement Specification Team Name
Version<1.0> Date: 15/10/2012 S4
Booking sequence diagram:
User search for a restaurant or restaurant guide, these search parameters are forwarded to the database and searched in the database for related keywords. Then the search result is displayed to the user. After selecting a restaurant user request for booking with date and time. Restaurant approves or reject the user request and display the result to the user.
Page 26 S4/SKIT/CS-B(G2)
Food Safety Portal Software Requirement Specification Team Name
Version<1.0> Date: 15/10/2012 S4
Feedback Sequence Diagram
User enters feedback then submit it. After clicking on submit button this feedback is stored in the database. Noe this feedback is visible to the users , Restaurant guide and admin. Admin can use the feedback to rates the restaurant and guide.
Page 27 S4/SKIT/CS-B(G2)
Food Safety Portal Software Requirement Specification Team Name
Version<1.0> Date: 15/10/2012 S4
Supporting Information A Abbreviations · 5 Acronyms · 5 Acronyms · 5 Administrator · 16 AJAX · 7, 13 Analysis · 3 Design · 14 D Data Base · 15 DB2 ·6 Definitions ·6 Development End · 8 Drawbacks · 7 H Hardware · 9 HTML · 8 HTTP · 5 J J2EE · 6, 13 Java · 6 JSP · 5,6 O Operating System · 6, 8 Our Plan· 7 Overall description· 8 Overview ·7 R Restaurant.5 Restaurant Guide.5 RAD · 5 References · 7 Rational Unified Process · 3 T Transition· 4 Technologies · 6,7
C Client on Internet · 8 Client on Intranet · 8 Communication · 9 Constraints · 11 Construction · 9 E Elaboration · 4 ER Diagram · 13 Existing System · 7
I Inception · 4 Interface · 9,10,11 Introduction · 4 M Methodology.3
P Product Perspective · 8 Proposed System ·7 Purpose · 4 S Scope · 4 Sequence · 24 Software · 8
U User UML · 5 Use-case · 18,19
W WASCE · 6
Page 28 S4/SKIT/CS-B(G2)