Architecture ver 2.0

advertisement
DUYTAN UNIVESITY
INTERNATIONAL SCHOOL
ARCHITECTURE & DESIGN
KFC VIETNAM ORDER SYSTEM
Version: 2.0
Project team : HTC Team
Member
: Hung Phi Cao
Han Van Le
Chuong Hong Nguyen
Tan Nhat Tran Van
Hoang Phuc Tran
Mentor 1
Mentor 2
: Son Van Phan
: Toan Duc Vo
KFC Vietnam Order System
Architecture
Version:
Date:
1.0
17/04/2013
Document Approvals: The following signatures are required for approval of this
document.
Mentor 1
Son V. Phan
Signal
Date
Signal
Date
Signal
Date
Signal
Date
Mentor 2
Toan D. Vo
Customer
KFC Vietnam Stores
Team leader
Hung P. Cao
Confidential
HTC Team , 2016
Page 2 of 18
KFC Vietnam Order System
Architecture
Version:
Date:
1.0
17/04/2013
Revision history
Date
Version
A, M, D (*)
Description
Author
22/03/2013
1.0
A
The draft
HTC Team
2.0
A
2.1
M
Adding some
server functions
Modifying some
functions
HTC Team
HTC Team
(*) A-added, M-modified, D-deleted
Confidential
HTC Team , 2016
Page 3 of 18
KFC Vietnam Order System
Architecture
Version:
Date:
1.0
17/04/2013
Table of Contents
ARCHITECTURE
5
1. Introduction
5
1.1. Purpose
5
2. Project Overview
5
2.1. Business needs
5
2.2. Business drivers
6
2.3. Project goal
6
3. Architectural Drivers
6
3.1 Functional requirements
6
3.2 Business constraints
8
3.3 Technical constraints
8
3.4 Quality Attribute
8
3.5 Context diagram
11
4. C&C view
11
5. Module view
14
6. Allocation view
16
Confidential
HTC Team , 2016
Page 4 of 18
KFC Vietnam Order System
Architecture
Version:
Date:
1.0
17/04/2013
ARCHITECTURE
1. Introduction
1.1. Purpose
This document will cover the following information:
-
Brief description of the project (project overview, business goals, general
constrains about technical and business problems).
-
Architectural drivers (functional requirements, quality attributes and
constraints).
-
Architectural design (C&C View type, Module View type, Allocation View
type).
This document is intended for the following audience:
-
Stakeholders (direct or indirect) of the KFC Vietnam Order System project.
-
Audience that might want to get an insight into or analyze the architecture
and design of KFC Vietnam Order System project.
2. Project Overview
2.1. Business needs
KFC are known to at Vietnam with a name calling the chicken run Kentucky chain stores served of dishes from chicken, Bo-GO and Mon Floating known first is
a chicken bee run Kentucky is invented by Harland Sanders.
Six one series successfully of the system chain food restaurants Trademark
quick with KFC (above 10,000 restaurant has been a development in the entire
World), Vietnam at KFC have joined to the field once the first to 12/1997 at Saigon
Trade Center Super Bowl. Time here, the system food restaurants quick is already
lost in most of the route City the Philippines.
Nowadays, KFC Vietnam stores has many branches in many provinces and
cities. They, therefore, need a tool help their customers easily to search and order
food. Besides that, this tool also support KFC Vietnam stores manager their
Confidential
HTC Team , 2016
Page 5 of 18
KFC Vietnam Order System
Architecture
Version:
Date:
1.0
17/04/2013
customer easy and convenient. Especially, this tool must be effective to compete
against other company in the same business area like Lotteria or McDonalds.
2.2. Business drivers
Base on the business needs our team decides to make a KFC Vietnam Order
System. This system will be developed by PC and Laptop and available tools for all
Android Devices.
2.3. Project goal
The purpose of the project is to deliver the KFC Vietnam Order System
satisfying the client’s requirements:
-
Customers can search, order, and add to their favorite, and so on (refer to the
proposed solution).
-
Administrator of the system can manage system such as add foods and users,
edit user’s information, and so on (refer to the proposed solution).
3. Architectural Drivers
3.1 Functional requirements
-
Client Side:
Functional ID
FRC1
Functional name
Log in
Description
When you want to use all
function of KFC Vietnam Order
System, they must login.
FRC2
Log out
If you don’t want to do anything
on of KFC Vietnam Order System,
they can logout.
FRC3
Add to cart
Users use this function to add
type of dishes that they want to
Confidential
HTC Team , 2016
Page 6 of 18
KFC Vietnam Order System
Architecture
Version:
Date:
1.0
17/04/2013
buy to their cart for checkout,
review, add more dishes, remove
any food in their cart …
FRC4
Manage cart
Users use this function for adding
item, removing items, clearing all
items in their cart.
FRC5
Check out
Users use this function for
checking out after adding any dish
to their cart.
FRC6
Route map
Users use this function for
finding the shortest way to the
nearest KFC stores from their
location and all KFC around their
location.
FRC7
Search
Users use this function for
searching all dishes that KFC
provides or their favorite dishes.
FRC8
Favorite
Users use this function for adding
favorite dishes into their favorite
lists for later order.
-
Server Side
Functional ID
FRS1
Functional name
Log in
Description
When manager want to use all
function of KFC Vietnam Order
Management System, they must
login.
Confidential
HTC Team , 2016
Page 7 of 18
KFC Vietnam Order System
Architecture
Version:
Date:
Log out
FRS2
1.0
17/04/2013
If you don’t want to do anything
on of KFC Vietnam Order System,
you can logout.
3.2 Business constraints
Following are business constraints of the project:
-
Project begins from August 31th, 2010 to December 12th, 2012. After
delivery, the HTVN team will rectify defects in the deliverables (no
additional functionalities or features).
-
Resource availability is defined below: 31/8 – 12/12 with 4 members.
-
Product follows customer’s requirement.
3.3 Technical constraints
-
Programming language: C# .NET, Java.
-
Tool to develop: Visual Studio 2012 Ultimate, Eclipse with Android SDK.
-
Database: MySQL.
-
Environments: .NET framework 3.5 or higher, Java Runtime Environment.
-
Network: Internet and LAN.
3.4 Quality Attribute
Table 3.3.1: Quality Attributes: Availability
Quality
Attributes
:
Availability
ID : QA01
Stimulus
The power is off while server is running
Source(s) of the stimulus
Power
Relevant
environmental
conditions
Architectural elements
System response
Confidential
During peak usage load
Hardware and software
System will use the reserve power maintain the server
if the power incident occurred
HTC Team , 2016
Page 8 of 18
KFC Vietnam Order System
Architecture
Version:
Date:
1.0
17/04/2013
Server must always be online even when the main
Response measure(s)
power is off
Table 3.3.2: Quality Attributes: Performance
Quality
Attributes
:
Performance
ID : QA02
Stimulus
User want the system respond their requests quickly
Source(s) of the stimulus
Customer
Relevant
environmental
conditions
During the system running
Application
Architectural elements
System response
User should take less than 3s to login into system.
Viewing or searching dishes, all dishes should take less
Response measure(s)
than 10s to show detailed result. Other functions should
present the result within 5s.
Table 3.3.3: Quality Attributes: Security
Quality
Attributes
:
Security
ID : QA03
Stimulus
Customer wants all the data is safe
Source(s) of the stimulus
Customer
Relevant
environmental
conditions
During initial development
Architectural elements
Network and application
System response
Refuse the unpermitted connection
Response measure(s)
User can log in system with system’s applications
Confidential
HTC Team , 2016
Page 9 of 18
KFC Vietnam Order System
Architecture
Version:
Date:
1.0
17/04/2013
Table 3.3.1: Quality Attributes: Capability
Quality
Attributes
:
Capability
Many customers can access to the system at the same
Stimulus
time
System
Source(s) of the stimulus
Relevant
ID : QA04
environmental
conditions
During initial development
Network and application
Architectural elements
Allow many customers access to the system at the same
System response
time
The system can work probably with at least 50 devices
Response measure(s)
logged in at the same time.
Table 3.3.1: Quality Attributes: Usability
Quality
Attributes
:
Usability
ID : QA05
Stimulus
Users can easily use the system at the first time.
Source(s) of the stimulus
Customer
Relevant
environmental
conditions
During initial development and after deployment
Architectural elements
Application and user guide.
System response
Friendly user interface is presented
Confidential
HTC Team , 2016
Page 10 of 18
KFC Vietnam Order System
Architecture
Version:
Date:
1.0
17/04/2013
Users can use any functions of the system with just few
Response measure(s)
click and very easy to start their in the first time of use.
3.5 Context diagram
Figure 3.5.1: Context diagram of system
Confidential
HTC Team , 2016
Page 11 of 18
KFC Vietnam Order System
Architecture
Version:
Date:
1.0
17/04/2013
4. C&C view
We mainly used C&C view to argue and reason about architectural properties,
quality attribute requirements, and functional requirements that the system must adhere
to.
This view type partitions the system into components that have some runtime
presence such as processes, objects, data stores and connectors or that represent
pathways of communication such as information flows, and access to shared storage.
The diagram below shows the architecture overview including the Feedback Teachers
Website components and other related components. We have representations and
behaviors for important components in the following sections.
Figure 4.1: C&C View
Confidential
HTC Team , 2016
Page 12 of 18
KFC Vietnam Order System
Architecture
Version:
Date:
1.0
17/04/2013
Prose
Element
Responsibilities
Client
Client is a component which manages all of user
inputs, and raises appropriate events: view dishes;
add/remove dishes to favorite list, add/remove dishes to
cart, check out but all action is not directed to database,
its operation via Web Service.
Server
Server is a component which is manages all users,
dishes, orders information. The major different between
client is read and modify direct to database.
Database SQL
Database is a component which contains information
of dishes, users, and all orders information. All data of
system needs.
RESTful request/response
RESTful is method to call and return information from
Web Service.
Query
Query is command for interacting with database.
Web Service
Web Service is a technology that allow to transfer data
between Database and applications.
Smartphone
Smartphone is environment running Android application
of system and it determines the performance of the
Android application.
Desktop
Desktop is running environment for management
application.
Component
Provider
Role
Responsibility
Desktop
User
Environment that running
Windows Form
application.
Run Windows Form
application.
Smartphone
User
Environment that running
Android application.
Run Android
application.
Confidential
HTC Team , 2016
Page 13 of 18
KFC Vietnam Order System
Architecture
Version:
Date:
1.0
17/04/2013
Web Service
System
Transferring data between Transfer data .
database and applications.
RESTful
request/response
System
Communicating between
applications and Web
Service.
Send and receive
information.
Query
System
Query command use in
database
Give results.
5. Module view
This view type partitions the system into a unique non-overlapping set of
hierarchically decomposable implementation units (modules). The goal is to show how
the source code is decomposed, as well as the dependencies between modules. In other
words, it shows the decomposition and the “uses” relation.
The elements in this view type are UML packages or UML classes or interfaces.
Packages are hierarchically decomposable; hence, placement of a class or package inside
another package in a diagram implicitly indicates an is-part-of relation. This view type
also shows dependencies among implementation units. It tells developers what other
modules must exist in order for their portion of the system to work correctly.
This view type was selected because it helps the following roles:
-
The project manager, who must define work assignments, form teams, and
formulate project plans and schedule, knowing which modules are more critical
in terms of dependencies.
-
Testers who use the modules as their unit of work to create test cases and
perform the tests.
-
The configuration manager who is in charge of maintaining current and past
versions of the units in consistent and functional package assemblies, being able
to produce a running version of the system.
-
Developers, who are required to implement the elements.
-
Maintainers, who are tasked with modifying the software elements.
-
The software architect, who defines the software elements that are sufficiently
large or complex enough to belong at the architectural level. The architect can
Confidential
HTC Team , 2016
Page 14 of 18
KFC Vietnam Order System
Architecture
Version:
Date:
1.0
17/04/2013
evaluate the architecture with respect to modifiability looking at the views in
this view type.
Figure 5.1: Module view of KFC Vietnam Order System.
Legend
Thumbnail Title
Description
Class
A class artifact.
Library
A library of modules.
Event
A uses B
Prose
Confidential
HTC Team , 2016
Page 15 of 18
KFC Vietnam Order System
Architecture
Version:
Date:
1.0
17/04/2013
Element
Responsibilities
Database
Database is a module contains some classes that implement
the
connections
with
database
or
processing
data
input/output of system.
Library
Library is a module contains some Interface libraries is used
to build background of system
Web Service
Web Service is a module contains some classes and forms
that implement functions to transfer data to Database.
Desktop Application, Android Desktop Application, Android Application are modules that
Application
contain some classes and forms that implement functions to
transfer data to Web Service.
6. Allocation view
Confidential
HTC Team , 2016
Page 16 of 18
KFC Vietnam Order System
Architecture
Version:
Date:
1.0
17/04/2013
Client
Android
Application
Server
.NET
Framework
Desktop
Application
Internet
SERVER
Web Service
Database
Figure 6.1: Allocation view of KFC Vietnam Order System.
Confidential
HTC Team , 2016
Page 17 of 18
KFC Vietnam Order System
Architecture
Version:
Date:
1.0
17/04/2013
Legend
Thumbnail Title
Description
Component
Component of system
Database
To store data
Server Node
Node
PC Node
Node
Use
A uses B
Prose
Element
Responsibilities
Database
Database is a component of system that system can save
and get data from it.
Desktop Application
Desktop Application is a component of system that users
can manage all information, activities of the system based
on their role.
Android Application
Android Application is a component of system that users
can view and update some important activities of the
system.
.NET Framework
.NET Framework is a component of system that user
must install it before using KFC Vietnam Order System.
Confidential
HTC Team , 2016
Page 18 of 18
Download