ADVANCED PROGRAM IN INFORMATION SYSTEMSPhan Lé Minh Huy - 13520369 Building a software application for coffee shop business managements BACHELOR OF ENGINEERING IN INFORMATION SYSTEMS THE
Trang 1ADVANCED PROGRAM IN INFORMATION SYSTEMS
Phan Lé Minh Huy - 13520369
Building a software application for coffee
shop business managements
BACHELOR OF ENGINEERING IN INFORMATION SYSTEMS
THESIS ADVISOR
Dr Bui Thanh Hiéu
Thesis Advisor Signature Thesis Reviewer Signature:
Trang 2The Assessment Committee is established under the Decision R
date by Rector of the University of Information Technology
+ - Chairman
r” - Secretary
E - Member
Trang 3First, we would like to give our sincere appreciations to the constantly dedication
of our beloved Dr Bui Thanh Hieu for his devotion, his knowledge and life time’sexperiences to this project
Trang 5Introduction
0.1 The reason for this project.
-Nowadays, the world in general and Viet Nam for more specific are turning to therevolution 4.0 to seize many of the latest technology and advance science Since
we are in WTO our economy is renovating to the whole new age The age of theopen economy which are trading and interacting with others in many internationalmarkets By seizing the advance as a member of WTO, we also have many
opportunities to learn the new management in selling and buying and adhere to theconstruction of doing business Therefore, the small retailers or small business areplaying a vital part in this scenario
-During the age in which economies are rising to the climax, the exchange andpurchase activities are performed in many diverse forms And basic forms whichare retailer store or distribute store is the most effective method
-To proceed the process of the purchase and exchange between the customers andretailers we need a professional protocol of management In order to satisfy thatrequirement, the management activities must be digitalized which are constructed
and designed into an application
Trang 60.2 Researching and studying methods.
-Surveying and collecting from the old material and the related database
-Approaching the exited platform application
-Expediting from many retailers and studying the method and process of
management.
-Executing the system analyst and design method to construct the project
Trang 70.3 Scientific hypothesis.
-After we complete the application the app will be launched and deployed to manylocal coffee shop retailers in order to testify the effectiveness of our application inthe management process as phase 1
-If we succeed at phase 1, our application will be constantly developed in order toadapt to the demand of other retailer divisions (restaurants, clothings,accessories, )
-Formulating a hypothesis is often a major difficulty for many Vietnameseresearchers, especially young researchers, because we do not understandcharacteristics, significances and aims of scientific hypotheses This paper consists
to analyze errors that many people often commits, systematize main principles onhypothesis, and show how to formulate a pertinent hypothesis, in order to helpyoung researchers to apply it easily Keywords: scientific hypothesis, exploratoryresearch, descriptive research, explanatory research, applied research
Trang 80.4 Realities application (Final result expectation).
-Friendly and Easy to use interfaces
-Employee and manager will be authorized different type of accounts in order to
preserve the management’s process
-Full report of the purchase and exchange activities by the time (DD/MM/YY) orname of employees
-Employees can insert the bill into the Database through our application’sinterface
-Employees can add and remove the bill in a temporary table before printed the
bill and insert the bill’s data into the main database
-Employees can check only their own selling activities in order to keep trackingtheir selling performances
-Only the manager can add/remove/edit the menu by their requests
-Only the manager can add/remove/edit the Employees/manager accounts
-Only the manager can authorize to keep tracking all the selling activities of all theemployees or any specific individuals
Trang 90.5 Tools.
-About C#:
- C# programming language is a modern programming language It
derives its characteristics from its predecessors like C and C++ It can perform a wide range of tasks and processes across different niches.
- Among other languages, C# is gaining huge popularity for developing
web-based applications Its core concepts help build an interactive environmentand provide functionalities that the dynamic web platform requires
- C# is a general-purpose programming language used to build different
types of programs and applications While it is exceptionally versatile,there are three fields where it is commonly applied:
o Web application development
o Window applications
-About SQL:
- Structured Query Language is the standard means of manipulating and
querying data in relational databases, though with proprietary extensionsamong the products The ease and ubiquity of SQL have even led thecreators of many “NoSQL” or non-relational data stores, such as Hadoop,
to adopt subsets of SQL or come up with their own SQL-like querylanguages
- But SQL wasn’t always the “universal” language for relational databases.
From the beginning (circa 1980), SQL had certain strikes against it Many
researchers and developers at the time, including me, thought that the
overhead of SQL would keep it from ever being practical in a productiondatabase
Trang 100.6 Project’s Chapter.
-This report contains 2 chapter:
- Chapter 1: Theoretical basics
- Chapter 2: System analyst and design
- Chapter 3: Conclusion and Final Demonstration
Trang 11Chap 1: Theoretical basic
Chap 1: Theoretical basic
1 Theoretical basics.
1.1 Overview about the application for coffee shop business
managements.
-Nowadays the revolution of technology which requires each one of the retailers
must acquire the latest method of technology in order to provide the conveniencefor tracking their purchase and exchange activities
-Each one of retailers has multiple different features therefore the application must
be compatible that one may meet up with each retailer’s requirements
-Multiple activities that within the management process will be divided into each
category based on the suitable account
-There are two type of account in this application:
o Managers account: Admin
o Employees account: Employee
-The management’s process will be given:
o Employee’s info: a unique ID for distinguishing purposes, their name and
their birthday (Note: our application does not collect any person’s line oraddress for privacy’s issues.)
Trang 12o Bill: a unique bill’s ID, drink’s ID, the drink’s price, the drink’s quantities,
and the summarize of the drink’s price by their quantities
-Manager’s Authorization:
o Add/remove/edit the manager’s accounts
o Add/remove/edit the employee’s accounts
o Add/remove/edit the drink on the menu
o Add/remove/edit the bill
o Check the total sale’s performance or any specific individual
-Employee’s Authorization:
o Add/remove/edit the drink in the bill during the sell
o Can keep track only their sell’s performance by their time’s request
(dd/mm/yy)
Trang 131.2 Report Summarize.
-Only the manager’s account can review the full report
-Surveillance all the drink’s purchasing activities by the given time (dd/mm/yy) or
any specific requests according to the manager or higher authorities
-Summarize the sale’s drink from all employees by the time’s request or timeperiods
-Summarize the sale’s drink from any specific employee
-Summarize the total money by the time’s requests
-Summarize the total money from any specific employee
Trang 141.3 The final goal of Building a software application for
coffee shop business managements.
-When applying our application into the reality business models, we expect to
significantly decrease the amount of the employees and the maintain cost of thecoffee shop
-Any employee can easily interact with our interface, and manage to carry theirtasks without any difficulties such as: managing the customer’s bills, tracking
their own sale activities, etc with efficiency and accuracy.
Trang 151.4 Significance of researching the topic of Building a
software application for coffee shop business
-There are a lot of glitches and shortcoming while I perceive this project andintroduce my project Every assessment and every comment will be documented
by heart for the upcoming projects
ZZD
Advanced Education
Program
Trang 16Chap 2: system analyst and design
building a software application for
coffee shop business managements.
Chap 2: system analyst and design building a software
application for coffee shop business managements.
Trang 172.2 Functional diagram.
mm _ Ey
=
Trang 18Result Employee selling activities
Figure 3: Employee's Function
Trang 192.3 Reports.
Requesting
Figure 4: Manager's Report Function
Before we dive into system structure, we would like to introduce many concepts,
tools, languages, platforms, components, that we use to develop our software Ingeneral, our Software Application for coffee shop management will be built by:
e SQL server 2012.
e Visualstudio : C#
We will set up a Centralized Database server in one of the facilities of our party company and testify in many devices at many local retailer coffee shops atthe end-user in order to increase the objective
Trang 202.4 Database.
2.4.1.Database design ideals.
Our database was based on many of the small retailer coffee shops which are stilloperating by various traditional management methods
In traditional management, many of small retailers only have 5 to 9 employees in
order to operate at full capacities With our software application, we’ll confident
that can significantly decrease the number of the capacities in the old methods
Another problem we have encountered that product sale activities management Inthe old methods, product sale activities are managed by a note Every time whenthe product is sale simultaneously it will be recorded in a notebook by theemployee This process may cause embezzlements, leaking the incomes or theproducts exposures if it is not managing with caution
Due to many models of database, on this project, we will concentrate on centralizedatabase
And which is why databases become an ideal for our project
Trang 212.4.2.Centralized database.
A centralized database is stored at a single location such as a mainframecomputer It is maintained and modified from that location only and usuallyaccessed using an internet connection such as a LAN or WAN The centralizeddatabase is used by many organizations such as colleges, companies, banks etc
Centralized data management is a comprehensive solution that allows libraries tolink all their important data, create a single common source of reference, andcontrol and store shared data to ensure the requirement for constantcommunication and continuity of activities Centralized data storage makes it easy
to secure, backup and synchronize; resources and services are also becomingeasier to manage and share, aims at serving the massive amount of users
Trang 22Centralized database’s requirement:
e Software's requirement: The application software for building, managing,
exploiting and updating the database is authorized and allowed to use,including: System software; background software (relational database
management, information systems ) Application software, including thebasic modules: System administration; information management; input,update data
e Hardware’s requirement: Centralized storage and operation equipment
includes: Database Server (Data Server); Standby Data Server; BackupData Server (Backup Data Server); Database storage system can usedirectly the hard disk system on the server (DAS solution) or the dedicated
data storage system on the network such as the storage area on the network(Storage Area Network - SAN), the Network Attached Storage (NAS) Thecapacity of the storage device system must be sufficient to store digitaldatabases and databases; data backup systems include DVD-ROM burners
or other permanent data backup systems
Advantage & Disadvantage:
Advantages:
1 All the information in the centralized database can be easily accessed from
the same location and at the same time
The data integrity is maximized as the entire database is stored at a uniquephysical location/Server which is easier to coordinate the data as much asaccurately and consistently as possible
Trang 23centralized database distinction Therefore, it is easier to make sure there is
no redundant data available
Data is easily portable and managed since it is located at one place
The centralized database is an economic solution than other models ofdatabases as it requires less power and maintenance & operating costs and
human resources
Disadvantage:
1 There is a lot of data access traffic for the centralized database This may
cause a bottleneck situation
Since all the data is at one location, it takes more time to search and accesssimultaneously If the network is slow, this process will be required more
Conclusion:
Combining all the advantages and disadvantages and the project’s requirement,not only the out weight of the advantages and disadvantages but also thedisadvantage is completely minimal and neutralized by this project distinction.Therefore, centralized database models become the most effective solution for ourproblems
Trang 252.4.3 Structure Query Language (SQL) and MySQL.
2.4.3.a Structure Query Language:
What is SQL? It stands for Structured Query Language which is a structured querylanguage It is a language that is a set of commands for interacting with databases
Used to store, manipulate, and retrieve data which is stored in a relationaldatabase In fact, SQL is the most popular standard language for relationaldatabases All relational database management systems (RDMS) such as MySQL,
MS Access, Oracle, Postgres and SQL Server use SQL as the standarddatabase language
SQL since the 70s, when IBM engineers Donald Chamberlin and Raymond Boyce
designed the first version to interact and retrieve data stored in a company'sdatabase system They first branded it SEQUEL, although they were later forced
to change it due to minimal from violated of many copyright issues
Why SQL is popular among the database user?
e Allows to access to data in relational database management systems
e Allows to describe the data
e Allows to define the data in the database and manipulate that data
e Allows embedding in other languages using SQL modules, libraries, and
pre-compilers
e Allows creating and dropping databases and tables
e Allows to create views, stored procedures, functions in a database
e Allows to set permissions on tables, procedures and views
Trang 26Building a software application for coffee shop business
managements.
2.4.3.b What is SQL server?
SQL Server also known as Microsoft SQL Server, abbreviated as MS SQL Server This is software developed by Microsoft for data storage based on the RDBMS standard, and it is also an Object Relational Database Management System
(ORDBMS).
SQL Server provides a full range of tools to manage, from Graphic User
Interface (GUI) interfaces to using the SQL query language Also there are strong
point that Microsoft has quite a few platforms that perfectly combine with SQL Server such as ASP.NET, C# to build Winform, because it works completely independently.
e Allows to create multiple databases
e Maintain sustainable storage
e High security
e Analyze data using SSAS - SQL Server Analysis Services
e Generate reports using SSRS - SQL Server Reporting Services
e Perform the ETL (Extract-Transform-Load) process with SSIS (SQL
Server Integration Services).
T-SQOL Language Statements
g
a a a
DML DDL DCL TCL
SELECT CREATE SRANT BEGIN TRAN
INSERT ALTER REVOKE COMMIT TRAM
UPDATE DROP DENY ROLLBACK TRAN DELETE
Figure 7: an example of SQL server function.
Trang 27For more specific, the NET Framework is a code that is pre-designed When
installed on a computer, it will help these computers use any software on their own platform, independent of the hardware and programming language With some software, without the NET Framework, you will not be able to install or operate it.
Which is why in order to operate our software, we will be required NET Framework 4.6.1 version or better.
Framework
Trang 28Building a software application for coffee shop business
managements.
2.5.2 N-tier.
N - Tier Architecture (Multi-Tier Architecture) or layered architecture is a
multi-tier architecture which is an application architecture method in software development with the function of processing, managing data and presenting separately and logically N is the number of floors in question, which can be 1, 2,
Figure 8: A N-tier Diagram
The multilayer architecture provides the model which is based by many developers that can create flexible and reusable applications by separating an application into multiple layers, thereby customizing or adding layers for reworking the entire application.
Tier is also a running layer, but it is completely different from the layer.
Difference between N - Tier and N - Layer:
N - Tier: refers to the actual n system components in your application.
N - Layer: refers to the internal architecture of the element.
Trang 292.5.3 Language.
2.5.3.a VisualStudio.
As the offspring of Microsoft, Visual Studio is known as a websites programming software that is unique and so far there is no tool that can replace them.
Visual Studio is programmed in VB+ and C# languages which are programming
languages that allow users to build website systems easily and quickly.
With the advantage of being built and developed directly from the big Microsoft, Visual Studio has been updated with many different versions since its inception This allows users to freely choose the best version, with the best configuration for their variety of models.
Microsoft®
Visual Studio
Trang 30Building a software application for coffee shop business
managements.
Why use VisualStudio?
Visual Studio supports programming on many different language platforms from C/C++, C#, to F#, Visual Basic, HTML, CSS, JavaScript Even the
VS 2015 version has support for code in the Python language.
Visual Studio makes it easy and efficient to debug (Debug) by running each statement and monitoring program state changes over variable values, code behavior.
Visual Studio owns a user-friendly interface that is easy to use for beginners.
Visual Studio allows building professional applications through drag and
drop, helping beginners reach more quickly.
Visual Studio for integrating many other applications such as applications for managing and writing code quickly for languages belonging to Net- Resharper, or allowing installation of libraries easily thanks to Nuget.
In addition, this tool also supports the development of desktop applications
on MFC, Windows Form or Universal App Simultaneously developing mobile applications on Windows Phone 8 / 8.1, Windows 10, iOS and Android Xamarin Visual Studio also supports website development on the
Fm Web form, ASP.NET MVC and of course, Microsoft Office development.