100% found this document useful (1 vote)
355 views77 pages

AD Coursework2 - Rawindu

This document describes a group coursework project to develop a web-based burger ordering system, called E-Burger, for a private company. The project aims to allow online ordering to expand the business and provide customer convenience. It includes introduction and problem background in chapters 1-2, requirements analysis and design considerations in chapters 3-4, and acknowledges assistance from lecturers and teammates. The system is intended to improve efficiency over the existing process and transform it into a computerized solution for corporate data.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
100% found this document useful (1 vote)
355 views77 pages

AD Coursework2 - Rawindu

This document describes a group coursework project to develop a web-based burger ordering system, called E-Burger, for a private company. The project aims to allow online ordering to expand the business and provide customer convenience. It includes introduction and problem background in chapters 1-2, requirements analysis and design considerations in chapters 3-4, and acknowledges assistance from lecturers and teammates. The system is intended to improve efficiency over the existing process and transform it into a computerized solution for corporate data.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 77

Burger Ordering Management System

Application Development
Group Course Work

CS6004ES

Application Development
London Metropolitan University, Faculty of Software
Engineering
Group Coursework – 2 (2020/21)

Develop a web-based application to build a burger ordering system for


E-burger Pvt.

Reg No: 00080791 I.K Avishka Ravindu Dushmantha 01


Burger Ordering Management System
Application Development
Group Course Work

Name : I.K Avishka Ravindu Dushmantha

Register Number : Reg No: 00080791

CS6004ES Application Development

London Metropolitan University, Faculty of Software Engineering

CS6004ES Application Development

GROUP STUDENT ID NUMBERS:

1. Reg No: 00080791


2. Reg No: 00018104

NAMES:

1. I.K Avishka Ravindu Dushmantha


2. M. Kavishka Madhuranga Leelarathne

Plagiarism

You are reminded that there exist regulations concerning plagiarism. Extracts from these
regulations are printed overleaf. Please sign below to say that you have read and understand these
extracts:

Signature: avishkaravindu355@gmail.com

Reg No: 00080791 I.K Avishka Ravindu Dushmantha 02


Burger Ordering Management System
Application Development
Group Course Work

This header sheet should be attached to the assignment specification and to the work you
submit. No work will be accepted without it.

Acknowledgements

First of all, we would like to thank our lecturers, Mr. Medagoda and Mr. Lasitha Ranawaka
(Coordinator of BEng Software Engineering) for always assisting us in completing this assignment
successfully. The lecturers always supported the report with the aim of getting a good result.

Then Author would like to offer the humble of thanking Miss. Jeewanthi Marasinghe, who led to
a correct way to accomplish this coursework report.

as well as

Finally, the other member also helped a lot in making this project a success, and the author would
like to thank the team member and all the parents, friends, and well-wishers who supported in
every aspect to complete this report.

Reg No: 00080791 I.K Avishka Ravindu Dushmantha 03


Burger Ordering Management System
Application Development
Group Course Work

Abstract

In this rapidly evolving technological age, non-adaptive organizations or companies cannot


survive to the end. Many governments and private companies have transformed this process into
a computerized solution to improve the efficiency and security of corporate data. Therefore, E-
burger (Pvt) Ltd., which operates a burger distribution restaurant in Sri Lanka, commissioned our
company, LMN (Pvt) Ltd, to develop an online burger ordering system for its company.

This online burger ordering system allows the company to expand its business scope by reducing
labour. Also, customers may have to wait a long time to go to a store to place an order. But this
way due to the online burger ordering system the customer can easily place a burger order from
anywhere.

This report begins with an introduction to the project and outlines the goals, scope, and limitations
in the first chapter. The background and problem statement of the second chapter are also
discussed. Fact-finding methods only use document verification. User activities and active and
non-active requirements are also well described. Chapter III also describes the application life
cycle development model used to improve systems. All UML diagrams and interfaces as well as
database plans were done during the design chapter. Refers to system requirements when
evaluating solutions. Chapter 5 describes the system implementation environment as well as the
technologies and key codes.

Reg No: 00080791 I.K Avishka Ravindu Dushmantha 04


Burger Ordering Management System
Application Development
Group Course Work

Table of Contents

Contents
Chapter 01 ..................................................................................................................................... 10

1. Introduction ........................................................................................................................ 10

1.1 Goals ........................................................................................................................... 11

1.2 Scope .......................................................................................................................... 11

1.3 Project obstacles ......................................................................................................... 12

Chapter 02 ..................................................................................................................................... 14

2.1 Background .................................................................................................................... 14

2.2 Existing system .............................................................................................................. 14

2.3 User Group and Functionalities...................................................................................... 15

Chapter 03 ..................................................................................................................................... 17

3.1 Analysis .......................................................................................................................... 17

3.1.1 SWOT Analysis ............................................................................................................ 17

3.1.1 What is a SWOT analysis? ..................................................................................... 17

3.2 Functional & non-functional requirements .................................................................... 19

3.3 Resource requirements ................................................................................................... 21

3.1.1 Hardware specification ........................................................................................... 21

3.1.2 Software specification ............................................................................................. 22

3.4 Application Lifecycle Management ............................................................................... 23

Chapter 04 ..................................................................................................................................... 26

3.5 Design............................................................................................................................. 26

System Analysis & Design........................................................................................................ 26

Reg No: 00080791 I.K Avishka Ravindu Dushmantha 05


Burger Ordering Management System
Application Development
Group Course Work

3.5.1 System Architecture Design ................................................................................... 27

3.4.3 tier Architecture ...................................................................................................... 28

3.1.1 Sequence diagram ................................................................................................... 36

3.4.4 Physical design........................................................................................................ 37

Database design ......................................................................................................................... 45

3.4.5 Normalization ......................................................................................................... 45

Evaluating of solutions .............................................................................................................. 47

3.4.6 Selected solution ..................................................................................................... 47

3.4.7 Alternative solutions ............................................................................................... 48

Chapter 05 ..................................................................................................................................... 50

3.5 Implementation............................................................................................................... 50

Implementation environment .................................................................................................... 50

3.5.3 Introduction of visual studio ................................................................................... 51

3.5.4 Features in Visual Studio 2017 ............................................................................... 52

Software and technologies ........................................................................................................ 55

3.5.5 Programming Languages ........................................................................................ 55

3.5.6 Frameworks............................................................................................................. 58

3.5.7 Supportive components of .NET framework .......................................................... 59

1.4.1 Object oriented programming ................................................................................. 63

5.6 Major codes ......................................................................................................................... 64

Chapter 06 ..................................................................................................................................... 68

3.6 Testing and verification .................................................................................................. 68

Testing and Quality assurance................................................................................................... 68

3.6.3 Unit testing .............................................................................................................. 69

Reg No: 00080791 I.K Avishka Ravindu Dushmantha 06


Burger Ordering Management System
Application Development
Group Course Work

3.6.4 Integration testing ................................................................................................... 69

3.6.5 Security testing........................................................................................................ 69

1.4.2 Black box testing..................................................................................................... 69

1.4.3 White box testing .................................................................................................... 70

Test case .................................................................................................................................... 71

1.4.4 5.2.1 Test plan for Web Application. ...................................................................... 72

1.4.5 5.2.2 Test Case for Web Application. ..................................................................... 73

5.3 Test analysis ........................................................................................................................ 74

Chapter 07 ..................................................................................................................................... 75

3.7 CONCLUSION .............................................................................................................. 75

References ..................................................................................................................................... 76

Reg No: 00080791 I.K Avishka Ravindu Dushmantha 07


Burger Ordering Management System
Application Development
Group Course Work

Table Of finger
Figure 1:SWOT Analysis (Author developed) ............................................................................. 17
Figure 0-2: Application Lifecycle Management (KCM connect, 2021)....................................... 23
Figure 3:System Architectural design (Author developed) .......................................................... 28
Figure 4:tier Architecture (Logi Report, 2021)............................................................................. 29
Figure 5:Use case diagram (Author developed) ........................................................................... 31
Figure 6:Class diagram (Author developed) ................................................................................. 32
Figure 7:ER diagram (Author developed) .................................................................................... 33
Figure 8:ER diagram (Author developed) .................................................................................... 34
Figure 9:EERD (Author developed) ............................................................................................. 35
Figure 0-8: System Architectural design (Author developed) ...................................................... 37
Figure 11:Home page (Author developed) ................................................................................... 38
Figure 12:Home page (Author developed) ................................................................................... 38
Figure 13:Higher management login (Author developed) ............................................................ 39
Figure 14:Customer login (Author developed) ............................................................................. 40
Figure 15:Customer Registration (Author developed) ................................................................. 40
Figure 16:Customer Registration (Author development) ............................................................. 41
Figure 17:Admin dashboard (Author developed) ......................................................................... 42
Figure 18:Customer dashboard (Author developed)..................................................................... 43
Figure 19:Select Burger (Author Develop)................................................................................... 43
Figure 20:Report(Author Development)....................................................................................... 44
Figure 21:Report PDF (Author Development) ............................................................................. 44
Figure 22:Visual studio IDE ......................................................................................................... 51
Figure 23:Refactoring feature in VS 2017 .................................................................................... 52
Figure 24:IntelliSense feature in VS 2017 .................................................................................... 52
Figure 25: Dotted line feature in VS 2017 .................................................................................... 53
Figure 26:Live unit testing in VS 2017......................................................................................... 54

Reg No: 00080791 I.K Avishka Ravindu Dushmantha 08


Burger Ordering Management System
Application Development
Group Course Work

Reg No: 00080791 I.K Avishka Ravindu Dushmantha 09


Burger Ordering Management System
Application Development
Group Course Work

Chapter 01
1. Introduction
It is a globally known fact that in today's market it is extremely difficult to start a new small
scale. With the fast pace of business and live competition today, time is running out and when
everyone is squeezed, the majority of people turn to place an order online. In this way, the text can
be seen in many parts of the world today. It is very easy to place an order online and we can save
a lot of everyday activities.
It can take a long time for customers to go to a restaurant and pick up items. Uses a manual
process to perform all activities in the restaurant. But using a paper-based system by hand can lead
to some unexpected problems and the company's popularity will not be known. Manual handling
can cause a number of errors and can interfere with efficiency and workflow safety. So, the whole
company has to face various problems and in the new technological age, there are many
disadvantages of using a manual system.
Thus, customers have to spend a lot of money going to a restaurant. As a result, this online
ordering system can prevent and save time. After the customer goes to this online order and places
an order and the admin receives the order, the admin will hand over the order to the employees of
the restaurant. Allows employees to prepare and send the order as soon as it is received. This will
enable you to process all orders efficiently and effectively with minimal delays and confusion.
At the same time, the ordering system allows customers to create their own accounts. They
are also given the opportunity to manage their account. Once they are logged into the system, they
can view the restaurant menu, select items, and place the desired order. It is also possible to change
the items ordered by the customer and view their previous items. Also, the admin of this online
ordering system can view the orders placed by the customers and also the previous orders. Admin
also has the ability to manage the menu. This completes the burger company's online ordering
system.
By removing the out-dated manual procedure and implanting a computerized solution the
institute wishes to provide a well-organized ordering system, payment system as well as report
generation system to enhance the services. And also, customers can access real-time information

Reg No: 00080791 I.K Avishka Ravindu Dushmantha 010


Burger Ordering Management System
Application Development
Group Course Work

more easily. Higher management also can interact with the customers and get the needed details
in few seconds without time wastage. Efficiency and the effectiveness are the main outcome of all
the parties by implementing a computerized solution. By applying a computer-based solution,
considering the requirements of the institute can easily reach the highest point while supplying a
good feeling to staff and the customers.

1.1 Goals
The main objective of the project is to set up an online burger ordering system to suit the
needs of E-burger (Pvt) Ltd., which operates a burger-carrying restaurant in Sri Lanka, as well as
automate many of the company's functions using computerized technology.

When ordering burgers online, many customers will be able to participate at once. Doing so
will increase the company's popularity. At the same time, due to the current corona epidemic in
Sri Lanka, day-to-day traffic will be disrupted. Due to this, the customer is keen to order online
and this company is also being advertised among many people as they can pay online.

The overall objective of implementing this online ordering system is to direct the company
towards a path of data flow efficiency, accuracy as well as high security within the company.
Therefore, some of the objectives of the system will be as follows.

a. A computerized system does not require money transfer by hand over the Internet.
b. Improving the efficiency and popularity of the company among many customers.
c. Provide a fast and accurate data retrieval process.
d. Helps to reduce delays in human work.
e. Satisfy customer satisfaction by providing work efficiency.
f. Get a trusted customer base.

1.2 Scope
Mainly, the scope is based on the requirements that the customer has. Burger ordering online
requires a variety of functions to improve the system.

Reg No: 00080791 I.K Avishka Ravindu Dushmantha 011


Burger Ordering Management System
Application Development
Group Course Work

− Manage admin accounts: The system administrator has permission to manage all admin
accounts in the system.
− Manage User Accounts: The system allows users to manage their user accounts so that an
administrator can view them.
− Registration and Filling: Registered customers can log in to the system using a username
and password, and new customers can register through the system.
− Customer Dashboard: Users have the opportunity to view the restaurant menu and select
items.
− Add an item to the current order: Only the administrator is allowed to review the current
order of the system by adding and removing an item to the current order.
− Make orders and payments: Registered customers can place orders and pay online
through the system.
− Generate reports: Obtain admin and reports from the system that helps make decisions
about the company. Reports can be exported in a variety of formats, such as PDF format
and Excel.

1.3 Project obstacles


There are various hurdles to overcome in developing a system. Barriers are common to any project.
Thus, success and failure largely determine how efficient a project manager is in overcoming
obstacles. The following are some of the obstacles that have been encountered in completing the
system and carrying out the project.

a. Lack of clarity.
b. No time for the meeting.
c. Priority conflicts.
a) Lack of clarity: It's amazing how many times you can go back to project teams working
together and think about the basics and achieve success quickly. What is the purpose? Why
is the team focusing on this task? What matters is the result that the team hopes to achieve.
It will be difficult to succeed without a full understanding of the project.

Reg No: 00080791 I.K Avishka Ravindu Dushmantha 012


Burger Ordering Management System
Application Development
Group Course Work

b) No time to raise funds: Need team support? What about project sponsors and top
leadership? of course! However, finding time to ensure that a team project stands out
among the crowd is not always easy. Join the team to improve customer service levels,
accelerate results, increase profitability, and more.
c) Priority Conflict: Team members follow instructions to clarify project objectives.
According to the instructions, the project will be completed within the stipulated time.
For example, in a timely delivery project, there is a conflict between the customer service
department and the planning department regarding expeditious orders. Customer Service
makes every effort to meet customer needs and needs to change the schedule/priority for
an emergency order. On the other hand, what is needed to plan is to ensure that scheduled
orders come out of the door on time and to ensure that there is no bandwidth to review
additional requests. Both focus on the purpose of delivering on time but a conflict arises.

The best way to overcome these types of obstacles is to redefine the objectives. If the objectives
are clear, team members may have a conflict over how to get to the goal. Again, bring together the
right resources to discuss and decide the best way forward. If the team fails, the team members
must adjust it so that no one succeeds.

Reg No: 00080791 I.K Avishka Ravindu Dushmantha 013


Burger Ordering Management System
Application Development
Group Course Work

Chapter 02
2.1 Background
This chapter focuses entirely on the background of the organization and the manual
process. The main purpose of creating this software is for the daily convenience of the customers
who come to the burger shop as well as for the people who cannot come to get what they want
from home. The software allows you to store details of burgers and other items, calculate profits
and losses per month, and provide details on total purchases and sales. It allows the user to
understand whether the store is cheap or whether the flow of business is right. They also receive a
report on the burger details of the total purchase and sale. This software helps to improve the burger
shop process and saves time in calculating profits and losses per month.

It is essential to adopt a methodology to identify the details accurately and accurately in


order to identify the shortcomings and shortcomings of the current procedures. The well-known
method used to gather information is called truth-seeking technology. But the main thing is that
there is only one way for team members to gather the information that can be documented. Under
this section, team members can get all the details they need by paying full attention to the case
study.

2.2 Existing system


As mentioned earlier, customers who visit the burger shop can pick up the burger at the
burger shop. But there are times when it is not possible to do it efficiently when many customers
come. When many customers come to get the burgers, they will have to wait in long queues to get
the burgers. Also, because customers do not know the exact price of the burgers they want, the
prices of the burgers customers even have to ask the staff. Even when paying bills, customers, as
well as staff, face problems such as lack of cash and lack of transfer coins. The company's top
management has observed that efficiency and accuracy are not as secure as expected.

Reg No: 00080791 I.K Avishka Ravindu Dushmantha 014


Burger Ordering Management System
Application Development
Group Course Work

The system currently in use is hampering its popularity among consumers. And because
of the time-consuming process, many loyal customers stop doing business with the company. It
directly affects the image and profit of the company.

2.3 User Group and Functionalities


This E-burger Pvt Ltd company has designed the burger ordering system to make it easier for
customers to order burgers. This burger ordering system consists of three main user groups:
Admin, Administrative officer, and the customer. Each user group is able to perform the following
tasks.
1. Admin: Admin has complete control over the whole system. The administrator's responsibilities
are as follows:
- Control the whole system and make changes if necessary, according to the
requirements.
- Make decisions that are valid for all the users in the system.
- Manage admin accounts as well the user accounts.
- View customers’ orders by sorting ongoing, completed, and delivered.
- Higher management staff registration.
- Manage the price of burgers for sale.
- View reports.
.
2. Administrative officer:
- Manage and be responsible for the order procedure such as ongoing, issued,
completed.
- Manage system when the admin is absent.
3. Customer:
- Sign in and sign up for the system.
- Manage their account.
- Account setting

Reg No: 00080791 I.K Avishka Ravindu Dushmantha 015


Burger Ordering Management System
Application Development
Group Course Work

- Make payments online.


- Place orders as the preferences.
- Responsible for confirmation of the completed orders.
- Track orders if it is needed.
- View the Navigate the restaurant’s menu if there are problems.

Reg No: 00080791 I.K Avishka Ravindu Dushmantha 016


Burger Ordering Management System
Application Development
Group Course Work

Chapter 03
3.1 Analysis
The author provides a detailed explanation of the e-burger ordering mechanism in this
chapter. E-burger Pvt Ltd SWOT analysis also considers its strengths, weaknesses, opportunities,
and threats. This chapter includes covers resource needs, as well as active and non-active
requirements. Applications related to the burger ordering system consider the life cycle model.

3.1.1 SWOT Analysis

Figure 1:SWOT Analysis (Author developed)

A SWOT analysis is an incredibly simple, yet powerful tool to help you develop your business
strategy, whether you’re building a startup or guiding an existing company.

3.1.1 What is a SWOT analysis?


SWOT stands for Strengths, Weaknesses, Opportunities, and Threats. SWOT analysis is a
technique for assessing these four aspects of your business and A simple tool that can help you to
analyze what your company does best right now, and to devise a successful strategy for the
future. SWOT can also reveal areas of the business that are holding you back, or that your
competitors could exploit if you don't protect yourself.

Reg No: 00080791 I.K Avishka Ravindu Dushmantha 017


Burger Ordering Management System
Application Development
Group Course Work

Strengths and weaknesses are internal to your company—things that you have some
control over and can change. Examples include who is on your team, your patents and
intellectual property, and your location.

Opportunities and threats are external—things that are going on outside your
company, in the larger market. You can take advantage of opportunities and protect
against threats, but you can’t change them. Examples include competitors, prices of raw
materials, and customer shopping trends.

A SWOT analysis organizes your top strengths, weaknesses, opportunities, and threats into an
organized list and is usually presented in a simple two-by-two grid. (What Is a SWOT Analysis
and How to Do it Right in 2021 (With Examples), 2021)

Table 1: SWOT Analysis (Author developed)

SWOT Analysis
A burger ordering system for E-burger Pvt Ltd

Strength Weakness

Strengths are internal, positive attributes of Weaknesses are negative factors that detract
your company. These are things that are within from your strengths. These are things that you
your control. might need to improve on to be competitive.

− We have assembled a team that embraces − Lack of capital.


different disciplines with expertise in all − Less popularity.
areas of the business − Lack of reputation
− Our first location downtown will draw in − Lack of promotion and communication
visitors and downtown shoppers
− Employee commitment/engagement
− we offer consistently high-quality food in a
distinctive atmosphere.
− Enhanced information management

Reg No: 00080791 I.K Avishka Ravindu Dushmantha 018


Burger Ordering Management System
Application Development
Group Course Work

Opportunities Threats

Opportunities are external factors in your Threats are external factors that you have no
business environment that are likely to control over. You may want to consider
contribute to your success. putting in place contingency plans for dealing
with them if they occur.
− External image improvement − Competition: One competitor sells similar
burgers, and has loyal customers as well as
− Our business sector is expanding, with a relationship with businesses that
many future opportunities for success. regularly buy from them.
− Being unprepared for opening numbers:
− Work-based learning/employee Initial poor service or product quality
engagement could discourage customers from
returning.
− Our competitors may be slow to adopt new − As the company interacts with the money
technologies. issuing process there will be hackers.
− Developments in technology may change
this market beyond our ability to adapt.

3.2 Functional & non-functional requirements


The user needs are divided into two categories: functional and non-functional. User
preferences, performance, and limitations are all taken into account while creating functional
requirements. When assessing the situation, the Company's first priority is to build an online burger
ordering system to handle day-to-day operations and improve services. Non-functional needs are
made up of many sorts of users divided into several categories, such as professional and personal
users. In addition, the environment in which the product will be utilized may be taken into account.
There are also several sorts of users in the suggested system, such as admin and user.
Functional requirements: In software development and systems engineering, functional
requirements are the desired operations of a program or system. Functional requirements are a

Reg No: 00080791 I.K Avishka Ravindu Dushmantha 019


Burger Ordering Management System
Application Development
Group Course Work

part of requirements analysis, which is an interdisciplinary field of engineering that concerns the
design and maintenance of complex systems. Functional requirements describe the desired end
function of a system operating within normal parameters, so as to assure the design is adequate
to make the desired product and the end product reaches its potential of the design in order to
meet user expectations.

The following are some of the client's active requirements for the proposed system for the
online burger ordering system, which makes it possible to order burgers online.
1. Manage Admin Accounts:
Admin must register the company's employees, particularly the upper management. And also has
to update and delete the accounts of the staff if it is needed.

2. Manage User Accounts:


Admin only can view and manage the customers’ accounts as the accounts include personal
information. But admin only can deactivate the accounts of the users.

3. Manage Burger Orders Available for Service Charge:


An administrator will also have to add new orders to the system along with relevant prices. If any
order is no longer available, those orders must be deleted and prices may be updated.

4. Orders from customers are managed through several processes:


Admin also can view the current status of the orders that are made by the customers. This function
consists of the sorting function also.

5. Signup and Sign In:


Registered customers can sign into the system using the valid username and password that are
using when signing up with the system. And also, a new customer also can register with the system
filling in the details required by the company.

6. Admin Dashboard:

Reg No: 00080791 I.K Avishka Ravindu Dushmantha 020


Burger Ordering Management System
Application Development
Group Course Work

Through the dashboard, the admin can get a proper understand of the overall company workflow.
Counts of the essential details are visible in the dashboard and also admin can go to the relevant
pages from the dashboard.

7. Customer Dashboard:
Customers also can get the details about the Total Pending Orders, Total Delivered Orders also.
And also, can go to the relevant pages from the dashboard.

8. Place Orders and payments:


Registered customers can place orders by entering the required details by the company and make
the payments easily by using an online platform.

9. Reports:
From this function admin can get all the details into one place. As well this reporting function
helps the admin to take immediate actions and changes about the company.

3.3 Resource requirements


3.1.1 Hardware specification
− Processor : Intel i3-8145U processor
− RAM : ADATA 4GB DDR4
− VGA : 256MB
− Hard Disk Drive : 1TB
− Printer : Ink-Jet Printer
− Monitor : 18.5-inch LED or LCD monitor
− Keyboard : 108 keys
− Mouse : Wireless mouse

What are hardware requirements?

Reg No: 00080791 I.K Avishka Ravindu Dushmantha 021


Burger Ordering Management System
Application Development
Group Course Work

System requirements are the required specifications a device must have in order to use
certain hardware or software. For example, a computer may require a specific I/O port to
work with a peripheral device. A smartphone may need a specific operating system to run
a particular app.

Before purchasing a software program or hardware device, you can check the system
requirements to make sure the product is compatible with your system. If your hardware
device does not have drivers for your operating system, usually the only solution is to get
a replacement device that is compatible with your operating system.

(System Requirements Definition, 2021)

3.1.2 Software specification


− Operating System : Windows 8.1 or higher version
− Front End : ASP.Net
− Visual Studio Version : 2019 version or higher
− Database : MySQL
− .Net framework : Net framework 4.7.2

What is Software Requirement?

The requirement is a condition or capability possessed by the software or system


component in order to solve a real-world problem. The problems can be to automate a part
of a system, to correct shortcomings of an existing system, to control a device, and so on.
IEEE defines requirement as (1) A condition or capability needed by a user to solve a
problem or achieve an objective. (2) A condition or capability that must be met or possessed
by a system or system component to satisfy a contract, standard, specification, or other
formally imposed documents. (3) A documented representation of a condition or capability
as in (1) or (2).’

Requirements describe how a system should act, appear or perform. For this, when users request
software, they provide an approximation of what the new system should be capable of doing.

Reg No: 00080791 I.K Avishka Ravindu Dushmantha 022


Burger Ordering Management System
Application Development
Group Course Work

Requirements differ from one user to another and from one business process to another. (Thakur,
2021)

3.4 Application Lifecycle Management


Application lifecycle management (ALM) is an integrated system of people, tools and processes
that supervise a software application from its initial planning through retirement. By combining
and organizing the elements of an application's lifecycle, ALM improves product quality,
optimizes productivity and eases the management and maintenance of products. ALM stands for
application lifecycle management, which is an integrated system of people, tools, and processes
that oversees a software application from conception through retirement. ALM enhances product
quality, optimizes productivity, and simplifies product management and maintenance by unifying
and arranging the parts of an application's lifetime. (Rouse, 2021).

Figure 0-2: Application Lifecycle Management (KCM connect, 2021)

Stages of ALM
According to Rouse (2021), Application lifecycle management consists of 5 stages:
1. Defining requirements
2. Development of the product
3. Testing and quality assurance
4. Deployment

Reg No: 00080791 I.K Avishka Ravindu Dushmantha 023


Burger Ordering Management System
Application Development
Group Course Work

5. Continuous maintenance and improvement of the product


When defining requirements, all stakeholders gather to declare what they need from the
application to support their business cases. A design of the application is created based on the
expressed needs. Requirements can include a range of factors, from the business needs of the
stakeholders to compliance requirements.

Development of the product begins once all requirements have been set and agreed upon. In this
stage, the product is brought from an idea and design to a real, working application. At the start,
the development team must break down the application requirements into pieces and phases to
create a development plan. It is beneficial to incorporate representatives from all related teams
during this time -- this includes sales, product marketing, IT, and testing. This will help ensure that
the created product satisfies all defined needs and is easy to use, test and deploy.
Testing and quality assurance are frequently used in conjunction with the development stage.
Before the product is formally published, testers should begin creating their test cases and testing
environments. Throughout the development process, testers should be ready to offer input on the
application. In addition, unit and integration tests should be included in the programming
operations. Development teams frequently utilize continuous integration solutions.
The product is released to users at the deployment stage. This procedure will alter depending
on the type of application being deployed; each product type will have its own set of qualities and
requirements.
After deployment, the product undergoes continuous maintenance and enhancement in
order to monitor and manage the performance of the launched application. This step involves
finding and fixing any lingering issues, as well as planning and prioritizing upcoming releases.
Maintenance is often the most time-consuming step of application lifecycle management, but it
also requires the least involvement from the development team provided the preceding stages have
been successfully accomplished.

Benefits of application lifecycle management


- Increased visibility into workflow
- Enhanced compliance

Reg No: 00080791 I.K Avishka Ravindu Dushmantha 024


Burger Ordering Management System
Application Development
Group Course Work

- Faster deployments
- Higher-quality products
ALM (Application Life cycle Management) vs. SDLC (Software Development Life Cycle)
Software development lifecycle (SDLC) refers to the processes or set of procedures involved
in the creation of a high-quality software product. Application lifecycle management is similar to
SDLC, but it incorporates a larger range of processes. (Rouse, 2021).
While ALM covers the entire application lifecycle, SDLC only focuses on the software
development process. In other words, ALM includes all five stages of the app's lifecycle --
requirements, development, testing, deployment and maintenance -- but SDLC only includes one
stage -- development.
Consequently, application lifecycle management includes software development lifecycle,
but SDLC only focuses on a fraction of ALM.
Let's take a quick look at what ALM and SDLC are, and what the differences between them
are.

ALM (Application Lifecycle Management) is a combination of people, processes, and tools


that controls an application's whole lifecycle from conception to obsolescence. It entails upkeep,
development, and finally decommissioning.

Reg No: 00080791 I.K Avishka Ravindu Dushmantha 025


Burger Ordering Management System
Application Development
Group Course Work

Chapter 04

4.1 Design
A plan is the execution of a function or process from a plan or specification to build an object or
system, or the result of that plan, or as a prototype, product, or process. The verb for design
expresses the process of developing a design. In some cases, creating an object directly without a
clear complete plan (such as coding and graphic design) can also be considered a design function.
This chapter is devoted entirely to the logical and physical architecture of the system as well as to
the database design. Here are the essential notes in the logical design of UML diagrams, class
diagrams and ER diagrams. The author's physical design section also includes an illustration of
UGI. The database is designed using the concept of generalization. This section also describes in
detail the proposed solution and alternatives.

System Analysis & Design


Systems development is systematic process which includes phases such as planning, analysis,
design, deployment, and maintenance.

− Systems analysis
− Systems design

Systems Analysis

It is a process of collecting and interpreting facts, identifying the problems, and decomposition of
a system into its components. System analysis is conducted for the purpose of studying a system
or its parts in order to identify its objectives. It is a problem-solving technique that improves the
system and ensures that all the components of the system work efficiently to accomplish their
purpose. Analysis specifies what the system should do.

Systems Design

It is a process of planning a new business system or replacing an existing system by defining its
components or modules to satisfy the specific requirements. Before planning, you need to

Reg No: 00080791 I.K Avishka Ravindu Dushmantha 026


Burger Ordering Management System
Application Development
Group Course Work

understand the old system thoroughly and determine how computers can best be used in order to
operate efficiently. System Design focuses on how to accomplish the objective of the system.

(System Analysis and Design - Overview, 2021)

3.4.1 System Architecture Design


Systems architecture is a conceptual model that defines the structure, behavior, and perspective of
a system. System architecture should be considered when building a system. The objective of
system architectural activities is to define a detailed solution that is logically consistent with each
other based on principles, concepts, and properties. Those notes are diverse and can be created in
one structural way. Architectural designs of systems are sometimes simply referred to as system
designs, which are conceptual representations of components and sub-components that reflect the
behavior of a system.

Systems architecture is abstract, conceptual-oriented, global, and focuses on realizing the mission
and life cycle concepts of the system. It also focuses on the high-level structure of systems and
system components. It addresses architectural principles, concepts, properties, and features of the
system of interest. Sometimes it can be applied to more than one system by setting a common
structure, pattern, and set of requirements for families in class or similar or related systems.

Before a system can be created, it must be documented structurally, and that structured document
makes it easy to create a system. It facilitates the identification of personality traits and the
configuration and configuration of system processes. The following are some examples of the
system given to us in the assignment.

Reg No: 00080791 I.K Avishka Ravindu Dushmantha 027


Burger Ordering Management System
Application Development
Group Course Work

Figure 3:System Architectural design (Author developed)

3.4.3 tier Architecture


Three-tier architecture is a client-server architecture in which the functional process logic, data
access, computer data storage, and user interfaces are developed and maintained as independent
modules on separate platforms. Three-tier architecture is a software design pattern and well-
established software architecture. The three-tier architecture allows any one of the three tiers to
be upgraded or replaced independently. Since the three are not physical but logical in nature,
they may run in different servers both in on-premises-based solutions, as well as in software-as-
a-service (SaaS). (REPORT, 2021)

1. Presentation Tier-

The presentation tier is the front-end layer in the 3-tier system and consists of the user interface.
This user interface is often a graphical one accessible through a web browser or web-based
application and which displays content and information useful to an end user. This tier is often
built on web technologies such as HTML5, JavaScript, CSS, or through other popular web
development frameworks, and communicates with others layers through API calls. (REPORT,
2021)

Reg No: 00080791 I.K Avishka Ravindu Dushmantha 028


Burger Ordering Management System
Application Development
Group Course Work

2. Application Tier- The application tier contains the functional business logic which drives
an application’s core capabilities. It’s often written in Java, .NET, C#, Python, C++, etc.
(REPORT, 2021)
3. Data Tier- The data tier comprises of the database/data storage system and data access
layer. Examples of such systems are MySQL, Oracle, Postgre SQL, Microsoft SQL Server,
MongoDB, etc. Data is accessed by the application layer via API calls. (REPORT, 2021)

Figure 4:tier Architecture (Logi Report, 2021)

4.5 Logical and Physical Design


The term "logical design" refers to an abstract representation of a system's data flow, inputs, and
outputs. It specifies the inputs (sources), outputs (destinations), databases (data storage), and
processes (data flows) in a user-friendly style. The system analyst describes the user demands at
a degree of detail that essentially dictates the information flow into and out of the system, as well
as the needed data sources while creating the logical architecture of a system. E-R diagram
modeling and data flow diagrams are utilized.

1. The Use Case Diagram


The following diagram shows the usage case of our system.
The purpose of the use case diagram is to capture the dynamic aspect of a system. Use case

Reg No: 00080791 I.K Avishka Ravindu Dushmantha 029


Burger Ordering Management System
Application Development
Group Course Work

diagrams are used to gather the requirements of a system including internal and external influences.
These requirements are mostly design requirements. Hence, when a system is analyzed to gather
its functionalities, use cases are prepared and actors are identified. (Tutorials point, 2021).
There are three actors in the usage case diagram below. An actor is someone who initiates events
related to a task. But for convenience and understanding, the author divides the actors into two
parts of the case. The case diagrams actually used are very closely linked to the project and, simply
put, anyone can get an idea of the tasks and procedures by looking at the diagram.
The following usage diagram shows only three actors and a few usage cases. Many of the activities

Reg No: 00080791 I.K Avishka Ravindu Dushmantha 030


Burger Ordering Management System
Application Development
Group Course Work

in this online burger ordering system are done by the customers and the main objective of the

Figure 5:Use case diagram (Author developed)

2. Class diagram
Class diagrams are the mainstay of object-oriented analysis and design and it shows the classes of
the system, their interrelationships, and the operations and attributes of the classes. Class diagrams
are used for a wide variety of purposes, including both conceptual/domain modelling and detailed

Reg No: 00080791 I.K Avishka Ravindu Dushmantha 031


Burger Ordering Management System
Application Development
Group Course Work

design modelling (UML 2 Class Diagrams: An Agile Introduction, 2021)

Figure 6:Class diagram (Author developed)

There are ten classes in this class. In this class diagram, there are also several association links.
The association shows the relationship between class opportunities. For example, the "admin"
class is related to the "E-burger service" class. The multiplicity of forums indicates the number of
objects that can participate in the relationship. For example, an "issuance of an order" object can
only be associated with one administrative officer, but an "administrative officer" can be associated
with the issuance of multiple orders.

Reg No: 00080791 I.K Avishka Ravindu Dushmantha 032


Burger Ordering Management System
Application Development
Group Course Work

3. ER (Entity Relationship) diagram


An ER diagram is a diagram that illustrates the relationship between entity sets stored in a database,
and in short, an ER diagram that helps to explain the logical structure of a database. The purpose
of the ER chart is to represent the institutional framework infrastructure.
ER diagrams contain a variety of symbols, such as a rectangle to represent bodies, an oval to define
attributes, and diamond shapes to represent relationships.
At the same time, when it comes to the ER model, the ER model is the enterprise relationship
model that can be represented as a high-level conceptual data model diagram. The ER model helps
to systematically analyse data requirements to produce a well-designed database. The ER model
represents real-world institutions and the relationships between them.
ER diagrams are based on three basic concepts: institutions, attributes, and relationships. They can
be pointed out as follows.

Figure 7:ER diagram (Author developed)

Reg No: 00080791 I.K Avishka Ravindu Dushmantha 033


Burger Ordering Management System
Application Development
Group Course Work

The diagram below shows the ER diagram of our system. Anyone can get the right idea by
looking at this.

Figure 8:ER diagram (Author developed)

4. EER (Enhanced Entity Relationship) diagram

Reg No: 00080791 I.K Avishka Ravindu Dushmantha 034


Burger Ordering Management System
Application Development
Group Course Work

Figure 9:EERD (Author developed)

In the figure above, there are numerous tables and linkages. Anyone may gain a good picture of
the proposed system's database and tables, as well as the contents, by glancing at this ERD. On the
other hand, this data modelling method can aid in the definition of the entire project process. This
graphic also aids the developer in gaining a clear picture of the relationships between the various
sorts of entities.
4. Activity diagram
Activity diagram is another important diagram in UML to describe the dynamic aspects of the
system. Activity diagram is basically a flowchart to represent the flow from one activity to another
activity. The activity can be described as an operation of the system. The control flow is drawn
from one operation to another. This flow can be sequential, branched, or concurrent. Activity

Reg No: 00080791 I.K Avishka Ravindu Dushmantha 035


Burger Ordering Management System
Application Development
Group Course Work

diagrams deal with all type of flow control by using different elements such as fork, join and so
on essential behavioral diagram in the UML diagram is the activity diagram, which is used to
depict dynamic characteristics of the system. An activity diagram is a more complex version of a
flow chart that depicts the flow of information from one activity to the next. (Tutorials point, 2020).

3.1.1 Sequence diagram


Sequential diagrams describe the interaction between classes in the exchange of messages over
time. Also known as event diagrams, this sequential diagram is a good way to visualize and
validate different running times. At the same time, they can predict how a system will behave
and identify the responsibilities that a class should have when modeling a new system. To
understand what this sequential diagram is, it is important to know the role of integrated
formatting language, better known as UML. UML is therefore a set of formatting tools that guide
the creation and drawing of many diagrams, including behavioral diagrams, interactive diagrams,
and structural diagrams. At the same time, there are two types of sequential diagrams. That is
UML diagrams and code-based diagrams.

6. System Architectural design


System Architecture Design sometimes simply known as System Design is a conceptual
representation of the components and subcomponents that reflects the behavior of a system.
System architects or solution architects are the people who know what components to choose for
the specific use case, make right trade-offs with awareness of the bottlenecks in the overall system.
A system's architecture specifies the primary components, their relationships (structures), and how
they interact with one another. Business strategy, quality attributes, human dynamics, design, and
the IT environment are all variables that go into software architecture and design.

Reg No: 00080791 I.K Avishka Ravindu Dushmantha 036


Burger Ordering Management System
Application Development
Group Course Work

Figure 0-10: System Architectural design (Author developed)

In the LMS system, users such as admin, administrative officers, and customers can access the
system using relevant usernames and passwords using the internet facility. The information saved
using the “view part” is stored in the database. And also users can get the information anytime
from the system using login privileges.

3.4.4 Physical design


Physical design refers to the system's real input and output operations. It focuses on how data
is entered into a system, checked, processed, and outputted. It creates the functioning system by
establishing the design specification, which details the candidate system's functionality. It is
involved with the design of user interfaces, processes, and data.

1. Home page

Reg No: 00080791 I.K Avishka Ravindu Dushmantha 037


Burger Ordering Management System
Application Development
Group Course Work

Figure 11:Home page (Author developed)

Figure 12:Home page (Author developed)

Reg No: 00080791 I.K Avishka Ravindu Dushmantha 038


Burger Ordering Management System
Application Development
Group Course Work

The author built the system with the key features of a webpage in mind since the firm needed to
build a huge client base. There are two primary logins on the home page: Admin and User. An
automatic slide presentation is utilized to provide life to the website there. Customers are also
made aware of the contact information by having it posted on the main page.

2. Login page (Higher management)

Users must pick the appropriate user type and input their username and password to log in to the
system from this window. If the user provides correct information, he or she will be redirected to
sites depending on their roles; however, if the user enters erroneous information, error warnings
will be presented.

Figure 13:Higher management login (Author developed)

3. Login page (Customer)

By entering the correct username and password customers can log into the system. If a new
customer wants to make an order, he/she has to click the “New User” link and register with the
company by filling in the required details displayed in the system. Customers who enter valid
details can access the system while the customers who enter invalid details are shown error
messages.

Reg No: 00080791 I.K Avishka Ravindu Dushmantha 039


Burger Ordering Management System
Application Development
Group Course Work

Figure 14:Customer login (Author developed)

4. Customer sign up

Figure 15:Customer Registration (Author developed)

Reg No: 00080791 I.K Avishka Ravindu Dushmantha 040


Burger Ordering Management System
Application Development
Group Course Work

Figure 16:Customer Registration (Author development)

From this page, new customers can register with the system by providing essential details. It has
been shown that this cannot be entered without providing the essential details.

5. Admin Dashboard

Reg No: 00080791 I.K Avishka Ravindu Dushmantha 041


Burger Ordering Management System
Application Development
Group Course Work

Figure 17:Admin dashboard (Author developed)

If the Admin enters the user login details correctly, he/she will redirect to the admin dashboard
page. Dashboard supplies the count of different types of forms such as customers, profit, orders,
and so on.

6. Customer Dashboard

If the customer enters the correct username and password, he/she will redirect to the dashboard. In
the dashboard, customers may appear the username of the top navigation bar and also can view
the counts of the different types of orders such as pending, delivered, and total orders. And also,
the completed orders that have to confirm by the customer are visible in the dashboard. Once the
customer clicks the “Deliver” button, the row will disable and the details are confirmed as
delivered.

Reg No: 00080791 I.K Avishka Ravindu Dushmantha 042


Burger Ordering Management System
Application Development
Group Course Work

Figure 18:Customer dashboard (Author developed)

7. Select Burger

Customers can choose the burgers here and buy them.

Figure 19:Select Burger (Author Develop)

Reg No: 00080791 I.K Avishka Ravindu Dushmantha 043


Burger Ordering Management System
Application Development
Group Course Work

12. Reports

Figure 20:Report(Author Development)

After clicking the Report button here, the admin can view the one-day earnings. It also looks like
the following.

Figure 21:Report PDF (Author Development)

Reg No: 00080791 I.K Avishka Ravindu Dushmantha 044


Burger Ordering Management System
Application Development
Group Course Work

Admin can only access the reports. As the requirement of the client, the reports can view in the
format of pdf, excel, and other ways. The report can make a user get a proper understand of the
whole process of the system. And also, this report has the search function to fetch data quickly
with no time wastage. So, reports play a major role in this system also.

Database design
Database Architecture: DBMS architecture helps in design, development, implementation, and
maintenance of a database. A database stores critical information for a business. Selecting the
correct Database Architecture helps to access data quickly and secure. (Guru99, 2021)

Database design for the system

Database is a very large, integrated collection of data and also it can call as also a collection of
interrelated data items that can be processed by one or more application systems. Data, software,
hardware and personnel are the components of a database system. Data Definition Language
(DDL) used to create and modify the structure of database objects in a database. “CREATE”,
“ALTER”, “DROP” and “UPDATE” is several words that used to add/modify or delete columns
in a table. Database most often calls as Data Layer comprises of the database/data storage system
and data access layer. There are several DBMS such as MySQL, Oracle, Postgre SQL, Microsoft
SQL Server, MongoDB, etc. Database design refers to a set of procedures that make it easier to
plan, create, implement, and maintain enterprise data management systems. A well-designed
database is simple to manage, increases data consistency, and saves money on disk storage space.
The database designer determines how data items relate to one another and what information must
be saved.

3.4.5 Normalization
NORMALIZATION is a database design approach that minimizes unwanted features such as
Insertion, Update, and Deletion Anomalies and decreases data redundancy.

Reg No: 00080791 I.K Avishka Ravindu Dushmantha 045


Burger Ordering Management System
Application Development
Group Course Work

Update anomalies − If data items are scattered and are not linked to each other properly, then
it could lead to strange situations. For example, when someone try to update one data item having
its copies scattered over several places, a few instances get updated properly while a few others
are left with old values. Such instances leave the database in an inconsistent state. (Tutorials point,
2021)

Deletion anomalies – When someone tries to delete a record, but parts of it was left undeleted
because of unawareness, the data is also saved somewhere else.

Insert anomalies – When someone tries to insert data in a record that does not exist at all.

Normalization rule divides larger tables into smaller tables and links them using relationships. The
purpose of Normalization in SQL is to eliminate redundant (repetitive) data and ensure data is
stored logically. The inventor of the relational model Edgar Codd proposed the theory of
normalization with the introduction of the First Normal Form, and he continued to extend theory
with Second and Third Normal Form. (Guru99, 2021)

First normal form (1NF): As per the rule of first normal form, an attribute (column) of a table
cannot hold multiple values. It should hold only atomic values. (Singh, 2021)
Second normal form (2NF): A table is said to be in 2NF if both the following conditions hold
which are table is in 1NF (First normal form) and no non-prime attribute is dependent on the proper
subset of any candidate key of table. An attribute that is not part of any candidate key is known as
non-prime attribute. (Singh, 2021)
Third Normal form (3NF): A table design is said to be in 3NF if both the following conditions
which are table must be in 2NF and transitive functional dependency of non-prime attribute on any
super key should be removed. An attribute that is not part of any candidate key is known as non-
prime attribute. In other words 3NF can be explained like this: A table is in 3NF if it is in 2NF and
for each functional dependency X-> Y at least one of the following conditions which are X is a
super key of table and Y is a prime attribute of table. (Singh, 2021)

According to the given information from the client, it is unnecessary to store all the essential
details in many more tables. With duplicate data, unnecessary space is used. When use

Reg No: 00080791 I.K Avishka Ravindu Dushmantha 046


Burger Ordering Management System
Application Development
Group Course Work

normalization process, can avoid data duplication, save storage and better handle database. Cleanly
laundry management system has many data to be stored. Therefore, normalization process is most
important to this system. This system database should faster run a query on the data. When use
normalization process, there is less data to search through, it is much faster to run a query on the
data and better data integrity and less risk of mistakes.

Evaluating of solutions
When planning, designing and implementing a system, developer has to make a decision about the
appropriate solution for the project regarding the client’s requirements and also the scope and the
nature of the company. The processes for validating a complete solution or a part of a solution that
is about to be implemented or has already been implemented are referred to as solution evaluation.
The effectiveness of a solution in meeting the business needs represented by stakeholders,
including giving value to the customer, is determined by evaluation.

3.4.6 Selected solution


Web based solution:

A web-based application is any program that is accessed over a network connection using
HTTP, rather than existing within a device’s memory. Web-based applications often run inside a
web browser. However, web-based applications also may be client-based, where a small part of
the program is downloaded to a user’s desktop, but processing is done over the internet on an
external server Web-based software (or a web-based application) is software that operates on a
server (computer linked to the Internet) and is accessed by users via an Internet browser from their
own computers.

Consumers and businesses alike use web-based software: most of us use webmail, social
networking sites, and online stores. Business services are also popular, ranging from office suites
(G suite) to online collaboration, accountancy, and customer relationship management (CRM).
(Techopedia, 2021).
By implementing a web-based solution to the requirements of the client is very useful and

Reg No: 00080791 I.K Avishka Ravindu Dushmantha 047


Burger Ordering Management System
Application Development
Group Course Work

more important to do the all activities within the company. When the proposed system is a web
based, all the authorized user levels can access the system in anywhere within their relevant
usernames and passwords with more easily and accurately with the high security. According to the
details that were given by the client of the company, in the recent system there are many difficulties
when handling the system. In the proposed system there are usernames and passwords for the main
characters that have to connected with the laundry management system directly, and can log into
the system and gather the details that they want with quickly just in one quick not wasting the
valuable time. On the other hand, users can gain many advantages by using web-based solution. If
users use typical software have to spend much money for maintenance, upgrade and other failures.
Low cost, low maintenance features, easily customizable, no installation, high security, better user
experience, worldwide access, secure login and so on are several advantages of the web-based
solution. According to the author’s point of view selecting a web-based solution for the “Cleanly”
laundry management system can lead the company to the top of the mountain of success.

3.4.7 Alternative solutions


Enhancing current system: The current system that is using by the company is based on the
papers. Some of the staff did not like to use a computerized system to do the tasks in the system.
What the workers want is to continue the recent system with lots of papers all around them
everywhere. But if users want to continue as the recent, do not gain more knowledge about the
modern world. To prevent the fear to use computers several trainings also has organize by the
department. The Panel defined a path for university research control in the previous chapter that
reflects our balance of competing national priorities. The Panel discovered numerous other areas
where modifications could better balance benefits and costs while assessing the effectiveness and
costs of certain current and proposed regulations. This chapter outlines specific suggestions for
enhancing the current control system.

Stand-alone system: A standalone system is exactly what its name implies: a system that stands
on its own. Any tasks or data associated with that system stay inside it and are not accessible from
anywhere else. In hybrid systems, stand-alone systems are made up of one or more electric
generators, often PV modules that use solar energy or wind generators. The current is charged into
the batteries via a charge controller, where it is held until it is needed. To use the energy, it is taken

Reg No: 00080791 I.K Avishka Ravindu Dushmantha 048


Burger Ordering Management System
Application Development
Group Course Work

from the battery and converted by an inverter from direct current (DC) to alternating current (AC).
As a result, normal home equipment can be used as if the power came from the public grid. (Saez,
2021)

Introducing mobile environment: When using mobile environment, the users can
manage their daily tasks in the place where they are. It is very useful to all the users who access
the system. If there is a web solution it is easier to implement a mobile environment as today
society with the busy schedule of the people, mobile environment can give the access to the users
at any time anywhere. A lot of this will be determined by the context. For instance, the situation
in which the mobile device will be used. It's great if your users can access the mobile web from
their workplaces, but many don't. They'll try to use them at the grocery store, on their daily
commute, on their walk to the coffee shop, and so on.
This means the system is installed into a computer and that system is accessed by one
person or the developed system can be installed into several computers and can access by several
authorized users. In this solution only one person or several users do all the works. This is a time-
consuming solution because there is large number of details to input and process inside within the
project, when only few persons access the system has to work very hard to complete all the tasks.
And also, the main demerit is the non-interact of the users of the system. This solution is also not
reasonable for the large-scale projects.

Reg No: 00080791 I.K Avishka Ravindu Dushmantha 049


Burger Ordering Management System
Application Development
Group Course Work

Chapter 05
3.5 Implementation
This chapter focuses solely on the system's implementation. The author described the
features of Visual Studio, the IDE that was used to build and create the system. In addition, the
author used a range of apps and technologies to create the community project. Programming
languages, frameworks, and object-oriented programming are all discussed in this section. This
area also has a lot of important codes attached to it.

Implementation environment
According to Rouse (2021), in computer program and software product development, the
development environment is the set of processes and programming tools used to create the program
or software product. The term may sometimes also imply the physical environment. An integrated
development environment is one in which the processes and tools are coordinated to provide

Reg No: 00080791 I.K Avishka Ravindu Dushmantha 050


Burger Ordering Management System
Application Development
Group Course Work

developers an orderly interface to and convenient view of the development process (or at least the
processes of writing code, testing it, and packaging it for use).

There are many advantages of using an IDE to develop a system such as easiness, save
time, easy and may be less likely to fail and so on. Author used Visual Studio 2017 version to
build this system as there are many features as bellow.

3.5.3 Introduction of visual studio


Visual Studio is a suite of applications created by Microsoft to give developers a
compelling development environment for the Windows and .NET platforms. Visual Studio can be
used to write console applications, Windows applications, Windows services, Windows Mobile
applications, ASP.NET applications, and ASP.NET web services, in your choice of C++, C#,
VB.NET, J#, and more. Visual Studio also includes various additional development tools, such as
Visual SourceSafe; which tools are included depends greatly on the edition of Visual Studio that
we are using (Avery, 2021).

Figure 22:Visual studio IDE

Reg No: 00080791 I.K Avishka Ravindu Dushmantha 051


Burger Ordering Management System
Application Development
Group Course Work

3.5.4 Features in Visual Studio 2017


1. Refactoring: Refactoring includes operations such as intelligent renaming of variables,
extracting one or more lines of code into a new method, changing the order of method parameters,
and more. (Microsoft, 2021)

Figure 23:Refactoring feature in VS 2017

2. Filtered IntelliSense: The new Filtering IntelliSense option is available in Visual Studio 2017.
This option is one of the powerful ways to consume the developers time, which alternatives
increases productivity. The following IntelliSense bottom tray contains icons to select a specific
type to filter the results developers are especially interested in. (Patra, 2021)

Figure 24:IntelliSense feature in VS 2017

3. Dotted Line: This is a very cool feature in Visual Studio 2017 because this option helps to
identify the scope of the code block with the exact open and close curly braces "{}" through dotted

Reg No: 00080791 I.K Avishka Ravindu Dushmantha 052


Burger Ordering Management System
Application Development
Group Course Work

line in our code. This is really helpful for when developers are working on a bulk amount of code
in a single page. (Patra, 2021)

Figure 25: Dotted line feature in VS 2017

4. Live Unit Testing:

In Visual Studio Enterprise 2017, live unit testing gives us live unit test results and code coverage
in the editor while you are coding. It works with C# and Visual Basic projects for the .NET
Framework and supports three test frameworks of MSTest, xUnit, and NUnit. (Patra, 2020)

Reg No: 00080791 I.K Avishka Ravindu Dushmantha 053


Burger Ordering Management System
Application Development
Group Course Work

Figure 26:Live unit testing in VS 2017

5. Improved Debugging Techniques: Breakpoint has been improved a lot in Visual Studio 2017.
Normally, we go step by step but here, user can skip many lines, where moving to breakpoint
directly specifies line, using “Run-To-Click”. (Patra, 2021)

Reg No: 00080791 I.K Avishka Ravindu Dushmantha 054


Burger Ordering Management System
Application Development
Group Course Work

Above author has described about several and most significant features in visual studio
IDE. Those features in Microsoft Visual Studio 2017 edition are very useful when implementing
the system for laundry management system. If there are no features like that, developers are fall
into many troubles and also it will take too much time and too much effort to develop a system.
Actually the Author be able to use the new edition of named as Microsoft Visual Studio 2019, but
using a new edition will lead to several problems and using an old edition like 2017, will help to
carry out the project with no unexpected errors and also if the errors are occurs Author can refer
to the Google and find the correct answers as many people have experiences by using the edition.
So according to the author’s point of view Visual Studio 2017 is the best IDE tool to design the
proposed system to the laundry management system.

Apart from the IDE that discussed earlier, systems can be developed in many
environments. Such as mobile, handheld, web based, desktop, dedicated device, client server and
so on regarding the client requirements. As the other environments also have so many advantages,
Author used web based environment to the system giving priority to the requirements of the client.

Software and technologies


According to Spring Digital (2021), Software development is conversion of user
requirements into a computer based program. It is used to automate tireless, lengthy and
complicated processes as it saves effort, time and resources. And also software development is a
dynamic field, where programming languages, frameworks, and technologies may live and die
within a few years, and job market needs are constantly changing. Author also used several
software and technologies to design and implement the “Cleanly” laundry management system.

3.5.5 Programming Languages


1. C#: Mentioned as in Computer science (2021), C# is a multi-paradigm programming language
that features strong typing, imperative, declarative, functional, generic, object-oriented and
component-oriented disciplines. C# was developed in 2000 as part of Microsoft’s release of .NET
framework; in 2003 it became an ISO standard. C# was based off of C, C++, and Java languages.
C# helps developers create XML web services and Microsoft .NET-connected applications for
Windows operating systems and the internet.

Reg No: 00080791 I.K Avishka Ravindu Dushmantha 055


Burger Ordering Management System
Application Development
Group Course Work

2. ASP.NET:

ASP.NET is a web development platform, which provides a programming model, a comprehensive


software infrastructure and various services required to build up robust web applications for PC,
as well as mobile devices. ASP.NET is used to produce interactive, data-driven web applications
over the internet. It consists of a large number of controls such as text boxes, buttons, and labels
for assembling, configuring, and manipulating code to create HTML pages. (Tutorials point, 2020)

3. HTML (Hyper Text Markup Language): HTML is the standard markup language used to
create web pages; it ensures proper formatting of text and images (using tags) so that Internet
browsers can display them in the ways they were intended to look. HTML is used to create
electronic documents (pages) displayed online. HTML made “rich” text possible (i.e. text
formatting and visual images). (Computer science, 2020)

Reg No: 00080791 I.K Avishka Ravindu Dushmantha 056


Burger Ordering Management System
Application Development
Group Course Work

4. JavaScript:

JavaScript is a client-side programming language that runs inside a client browser and processes
commands on a computer rather than a server. It is commonly placed into an HTML or ASP file.
Despite its name, JavaScript is not related to Java. JavaScript is used primarily in Web
development to manipulate various page elements and make them more dynamic, including
scrolling abilities, printing the time and date, creating a calendar and other tasks not possible
through plain HTML. (Computer science, 2020)

5. CSS (Cascading Style Sheets): The merit of this language is that developer can easily
customized the appearance of the web pages and makes user friendly interfaces. When using CSS
there are three main parts named as selector, property and value. For example “body” can called
as a selector while the “height” named as property. And also “100vh” will become value.

Reg No: 00080791 I.K Avishka Ravindu Dushmantha 057


Burger Ordering Management System
Application Development
Group Course Work

3.5.6 Frameworks
1. Bootstrap: Bootstrap is a free and open source frontend web framework for designing websites
and web applications. It contains HTML and CSS based design templates for typography, forms,
buttons, navigation and other interface components, as well as optional JavaScript extensions.
Unlike many web frameworks, it concerns itself with frontend development only. (Education-
ecosystem, 2020)

2. jQuery: Not only does jQuery present ease to use, but it also diminishes the requirement to
script wide-ranging JavaScript codes. Basically, jQuery is utilized to operate DOM and CSS and
to augment the interactivity and functionality of a website. Further, jQuery is browser-friendly and
supports the browsers you aim to utilize. (Monocubed, 2020)

Reg No: 00080791 I.K Avishka Ravindu Dushmantha 058


Burger Ordering Management System
Application Development
Group Course Work

3. ASP. NET framework: ASP.NET is an open-source, server-side web application framework


designed for web development to produce dynamic web pages. It was developed by Microsoft to
build dynamic web sites, applications, and services. ASP.NET is a part of Microsoft .Net platform.
ASP.NET applications are compiled codes, written using the extensible and reusable components
or objects present in the .Net framework. These codes can use the entire hierarchy of classes in the
.Net framework. The framework is used to produce interactive, data-driven web applications over
the internet. It consists of a large number of controls such as text boxes, buttons, and labels for
assembling, configuring, and manipulating code to create HTML pages. The latest version of
ASP.NET framework is 4.8 released on April 18, 2019. (Classic informatics, 2020)

3.5.7 Supportive components of .NET framework


1. Common Language Runtime (CLR)

.Net Framework provides runtime environment called Common Language Runtime (CLR).It
provides an environment to run all the .Net Programs. The code which runs under the CLR is called
as Managed Code. Programmers need not to worry on managing the memory if the programs are
running under the CLR as it provides memory management and thread management.
Programmatically, when our program needs memory, CLR allocates the memory for scope and
de-allocates the memory if the scope is completed. Language Compilers (e.g. C#, VB.Net, J#) will

Reg No: 00080791 I.K Avishka Ravindu Dushmantha 059


Burger Ordering Management System
Application Development
Group Course Work

convert the Code/Program to Microsoft Intermediate Language (MSIL) intern this will be
converted to Native Code by CLR. (Jayanthan, 2020)

2. .Net Framework Class Library (FCL)


This is also called as Base Class Library and it is common for all types of applications i.e. the way
you access the Library Classes and Methods in VB.NET will be the same in C#, and it is common
for all other languages in .NET. In short, developers just need to import the BCL in their language
code and use its predefined methods and properties to implement common and complex functions
like reading and writing to file, graphic rendering, database interaction, and XML document
manipulation (Jayanthan, 2020).

Reg No: 00080791 I.K Avishka Ravindu Dushmantha 060


Burger Ordering Management System
Application Development
Group Course Work

3. Common Type System (CTS)

As Jayanthan (2020) mentioned, it describes set of data types that can be used in different .Net
languages in common. CTS ensure that objects written in different .Net languages can interact
with each other. For Communicating between programs written in any .NET complaint language,
the types have to be compatible on the basic level.

Reg No: 00080791 I.K Avishka Ravindu Dushmantha 061


Burger Ordering Management System
Application Development
Group Course Work

4. Common Language Specification (CLS)

It is a sub set of CTS and it specifies a set of rules that needs to be adhered or satisfied by all
language compilers targeting CLR. It helps in cross language inheritance and cross language
debugging. (Jayanthan, 2020)

Evaluate identified components


.Net Framework is a platform that provides tools and technologies to develop Windows, Web and
Enterprise applications. Above mentioned components are most consequential to build .NET
framework. Common Language Runtime can call (CLR) as the heart of the .NET framework. In
an application which is without CLR, when the application is compiled, it produces the machine
language which the Operating System can understand. Hence the source code is directly converted
into machine code. But the problem with this approach is that if anyone tries to run the same
application in some other operating system say Linux/Unix, the application will fail to run. There
are many benefits of the CLR such as flexibility of application to run in different operating system,
garbage collection facility, code access security and code verification facility and so on.

When it turns to Framework class library (FCL), this component can called as a comprehensive
collection of reusable types including classes, interfaces and data types included in the .NET
Framework to provide access to system functionality. On the other hand FCL acts as a standard
library, which can be used in a consistent manner by all the .NET languages and common language

Reg No: 00080791 I.K Avishka Ravindu Dushmantha 062


Burger Ordering Management System
Application Development
Group Course Work

compliant compilers. This .NET FCL also can called as the key component of .NET framework as
it provides core functionalities of .NET architecture, which consists of base data types, object type
and implementation of data structures and so many. The cardinal demand in using FCL is to know
the specific class that can provide the required functionality.

When talk about the Common Type System (CTS), this is a standard for defining and using data
types in the .NET framework. CTS provide the types in the .NET Framework with which .NET
applications, components and controls are built in different programming languages so information
is shared easily. The rich set of types in CTS has well-designed semantics such that they can be
widely used as a base type in Common Language Runtime (CLR) -based languages. This is why
all .NET developers and users must have a thorough understanding of CTS.

When Author is implementing the laundry management system has to be very careful when using
the above mentioned components of the .NET as those components have different types of key
features. Hence, above mentioned components are essential for use .NET framework.

1.4.1 Object oriented programming


Object oriented programs are developed around an object which consists of definition of data
types and structures. Small reusable codes are written which are linked with one another and
other objects to form a complete program. The main advantage of this technique is that is easy to
interpret and update as the objects are defined separately. (educative, 2021) Figure 58: Reusable
codes Source: (Author developed) Above displayed codes are used in several places such as such
as insert, update and delete queries. This also comes under software development technique.

Reg No: 00080791 I.K Avishka Ravindu Dushmantha 063


Burger Ordering Management System
Application Development
Group Course Work

Above displayed codes are used in several places such as such as insert, update and delete
queries. This also comes under software development technique. Above displayed codes are used
in several places such as such as insert, update and delete queries. This also comes under
software development technique.

5.6 Major codes

Customer Register

Reg No: 00080791 I.K Avishka Ravindu Dushmantha 064


Burger Ordering Management System
Application Development
Group Course Work

Customer Registration

Add to cart

Reg No: 00080791 I.K Avishka Ravindu Dushmantha 065


Burger Ordering Management System
Application Development
Group Course Work

Place Order

Pdf Generate

Reg No: 00080791 I.K Avishka Ravindu Dushmantha 066


Burger Ordering Management System
Application Development
Group Course Work

Add Product

SQL and Web Configuration

Reg No: 00080791 I.K Avishka Ravindu Dushmantha 067


Burger Ordering Management System
Application Development
Group Course Work

Chapter 06
3.6 Testing and verification
The focus of this chapter is entirely on validation and verification. It's also known as testing. This
section also covers other forms of testing, such as unit testing, system testing, and security testing.
There are also numerous test cases that cover the entire system and provide the actual results in
the form of screenshots.

Testing and Quality assurance


The software system needs to be checked for its intended behavior and direction of progress at
each development stage to avoid duplication of efforts, time and cost overruns, and to assure
completion of the system within stipulated time. The software system needs to be checked for its
intended behavior and direction of progress at each development stage to avoid duplication of
efforts, time and cost overruns, and to assure completion of the system within stipulated time.
(Tutorials point, 2020)

Reg No: 00080791 I.K Avishka Ravindu Dushmantha 068


Burger Ordering Management System
Application Development
Group Course Work

3.6.3 Unit testing


Regarding to Tutorials point (2021), Unit testing is also known as Program Testing, it is a type of
testing where the analyst tests or focuses on each program or module independently. It is carried
out with the intention of executing each statement of the module at least once.

- In unit testing, accuracy of program cannot be assured and it is difficult to conduct testing of
various input combination in detail.

- It identifies maximum errors in a program as compared to other testing techniques.

3.6.4 Integration testing


In Integration Testing, the analyst tests multiple modules working together. It is used to find
discrepancies between the system and its original objective, current specifications, and systems
documentation.

- Here the analysts are try to find areas where modules have been designed with different
specifications for data length, type, and data element name.

- It verifies that file sizes are adequate and that indices have been built properly.

3.6.5 Security testing


Security testing is a type of Software Testing that uncovers vulnerabilities, threats, risks in a
software application and prevents malicious attacks from intruders. The purpose of Security Tests
is to identify all possible loopholes and weaknesses of the software system which might result in
a loss of information, revenue, repute at the hands of the employees or outsiders of the
Organization. (Guru99, 2021)

1.4.2 Black box testing


Black box testing is defined as a testing technique in which functionality of the Application
Under Test (AUT) is tested without looking at the internal code structure, implementation

Reg No: 00080791 I.K Avishka Ravindu Dushmantha 069


Burger Ordering Management System
Application Development
Group Course Work

details, and knowledge of the internal paths of the software. This type of testing is based entirely
on software requirements and specifications. In Black Box Testing the tester just focuses on
inputs and output of the software system without bothering about internal knowledge of the
software program.

Advantages / Pros of Black Box Testing

- Unbiased tests because the designer and tester work independently


- Tester is free from any pressure of knowledge of specific programming languages to test
the reliability and functionality of an application / software
- Facilitates identification of contradictions and vagueness in functional specifications
- Test is performed from a user’s point-of-view and not of the designer’s
- Test cases can be designed immediately after the completion of specifications

Disadvantages / Cons of Black Box Testing

- Tests can be redundant if already run by the software designer


- Test cases are extremely difficult to be designed without clear and concise specifications
- Testing every possible input stream is not possible because it is time-consuming and this
would eventually leave many program paths untested
- Results might be overestimated at times
- Cannot be used for testing complex segments of code

1.4.3 White box testing


White box testing is testing of a software solution's internal structure, design, and coding. In this
type of testing, the code is visible to the tester. It focuses primarily on verifying the flow of
inputs and outputs through the application, improving design and usability, strengthening
security. White box testing is also known as Clear Box testing, Open Box testing, Structural

Reg No: 00080791 I.K Avishka Ravindu Dushmantha 070


Burger Ordering Management System
Application Development
Group Course Work

testing, Transparent Box testing, Code-Based testing, and Glass Box testing. It is usually
performed by developers.

Advantages of White Box Testing

- Code optimization by finding hidden errors.


- White box tests cases can be easily automated.
- Testing is more thorough as all code paths are usually covered.
- Testing can start early in SDLC even if GUI is not available.

Disadvantages of White Box Testing

- White box testing can be quite complex and expensive.


- Developers who usually execute white box test cases detest it. The white box testing by
developers is not detailed can lead to production errors.
- White box testing requires professional resources, with a detailed understanding of
programming and implementation.
- White-box testing is time-consuming, bigger programming applications take the time to
test fully.

Test case
A Document portraying the extension, approach, assets, and timetable of planned test exercises.
It distinguishes among others test things, the highlights to be tried, the testing undertakings, who
will carry out every responsibility, level of analyzer autonomy, the test condition, the test
structure strategies, and section and leave models to be utilized, and the justification for their
decision, and any dangers requiring possibility arranging. It is a record of the test arranging
process.

The following is a list of test cases that can help ensure that the bidding client is operating
properly.

Reg No: 00080791 I.K Avishka Ravindu Dushmantha 071


Burger Ordering Management System
Application Development
Group Course Work

1.4.4 5.2.1 Test plan for Web Application.


Test plan for login Form

ID Test case Test data Expected Status


Result
01 Enter valid Username = Admin
username and Password = password Login successfully pass
password
02 Enter invalid Username = admikn
username and Password = kavishka1 Login fail fail
password

Test plan for User Registration Form

ID Test case Test data Expected Status


Result
01 Press “Register” button User ID = 9043
with fill full form User Name = Registration Pass
kavishka successfully

02 Fulfill same password Password = Pass


and Press kavishka123 Password
“Register” button Confirm Password matching
= kavishka123 successfully
03 Fulfill different Password = Fail
password and Press kavish123 Password
“Register” button Confirm Password Doesn’t Match
= kavishka123

Reg No: 00080791 I.K Avishka Ravindu Dushmantha 072


Burger Ordering Management System
Application Development
Group Course Work

1.4.5 5.2.2 Test Case for Web Application.


Actual Result for login

ID Test case and Actual result Status

01 Enter valid username and password


pass

02 Enter invalid username and password


pass

Actual Result for User Form

ID Test case Status

01 Press “Register” button with fill full form


Pass

02 Fulfill same password and Press Pass


“Register” button

03 Fulfill different password and Press Pass


“Register” button

Reg No: 00080791 I.K Avishka Ravindu Dushmantha 073


Burger Ordering Management System
Application Development
Group Course Work

5.3 Test analysis


Test Analysis is the process of looking into test artifacts to base your test conditions/test cases.
Hence, it is also called Test Basis. When observing the above tables how the testing happens and
how the result was obtained in this test case, the actual result and expected result also so in this
test case can be easily identified as the test analysis

Reg No: 00080791 I.K Avishka Ravindu Dushmantha 074


Burger Ordering Management System
Application Development
Group Course Work

Chapter 07
3.7 CONCLUSION
The Burger Order Management System of E-burger Pvt. Ltd. To begin, the author estimated the
project's scope based on the client's requirements. When the author examined the client's
requirements, he concluded that a web-based solution was required because the firm was spreading
the whole region.

The author simply utilized document verification as a fact-finding approach in order to learn more
about the firm. Based on client demands and search technologies, includes features for systems
such as author payments, place orders, and user registration. Users can enter and update
information in this format as needed. Users may also search the database for information they've
submitted. Users can also search for and delete information that has been entered into the database.

E-burger (Pvt) Ltd may improve workflow efficiency and effectiveness by activating a web-based
computerized system while decreasing loss of time.

Reg No: 00080791 I.K Avishka Ravindu Dushmantha 075


Burger Ordering Management System
Application Development
Group Course Work

References
Liveplan.com. 2021. What Is a SWOT Analysis and How to Do it Right in 2021 (With Examples).
[online] Available at: <https://www.liveplan.com/blog/what-is-a-swot-analysis-and-how-to-do-
it-right-with-examples/> [Accessed 10 October 2021].

Techterms.com. 2021. System Requirements Definition. [online] Available at:


<https://techterms.com/definition/system_requirements> [Accessed 12 October 2021].

Thakur, D., 2021. What is Software Requirement? Types of Requirements. - Computer Notes.
[online] Computer Notes. Available at: <https://ecomputernotes.com/software-
engineering/softwarerequirement#What_is_Software_Requirement> [Accessed 12 October
2021].

Tutorialspoint.com. 2021. System Analysis and Design - Overview. [online] Available at:
<https://www.tutorialspoint.com/system_analysis_and_design/system_analysis_and_design_ove
rview.htm> [Accessed 12 October 2021].

Agilemodeling.com. 2021. UML 2 Class Diagrams: An Agile Introduction. [online] Available at:
<http://www.agilemodeling.com/artifacts/classDiagram.htm> [Accessed 14 October 2021].

SearchSoftwareQuality. 2021. What Is Application Lifecycle Management (ALM)? Definition


from SearchSoftwareQuality. [online] Available at:
<https://searchsoftwarequality.techtarget.com/definition/application-lifecycle-management-
ALM> [Accessed 14 October 2021]

WhatIs.com. 2021. What is functional requirements? - Definition from WhatIs.com. [online]


Available at: <https://whatis.techtarget.com/definition/functional-requirements> [Accessed 14
October 2021].

Rouse, M. (2021) what is Application Lifecycle Management (ALM)? [Online] Available at:
https://searchsoftwarequality.techtarget.com/definition/application-lifecycle-management-ALM
[Accessed 14 October 2021].

Reg No: 00080791 I.K Avishka Ravindu Dushmantha 076


Burger Ordering Management System
Application Development
Group Course Work

Guru99. 2021. What is Normalization in DBMS (SQL)? 1NF, 2NF, 3NF, BCNF Database with
Example. [online] Available at: <https://www.guru99.com/database-normalization.html>
[Accessed 14 October 2021].

Reg No: 00080791 I.K Avishka Ravindu Dushmantha 077

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy