Coffee Shop Management Program, Thesis of Distributed Programming and Computing

The development of a coffee shop management program using an integrated development environment (ide). It covers the introduction to the program, explanation of programming paradigms (procedural, object-oriented, and event-driven), an evaluation of developing applications using an ide versus without an ide, an explanation and evaluation of the debugging process in the ide, and an explanation and evaluation of coding standards used in the program. The document aims to demonstrate the implementation of a working, secure application that adheres to coding standards for a detailed business problem. It includes the list of user requirements, source code examples, and evidence of the program's proper implementation and functionality.

Typology: Thesis

2020/2021

Uploaded on 07/18/2023

nguyen-huu-loi-k5
nguyen-huu-loi-k5 🇻🇳

2 documents

1 / 21

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
ASSIGNMENT 2 FRONT SHEET
Qualification BTEC Level 5 HND Diploma in Computing
Unit number and title Unit 1: Programming
Submission date April 24,2022 Date Received 1st submission April 24,2022
Re-submission Date Date Received 2nd submission
Student Name Nguyen Huu Loi Student ID BS00219
Class PBIT17102 Assessor name Thai Thi Thanh Thao
Student declaration
I certify that the assignment submission is entirely my own work and I fully understand the consequences of plagiarism. I understand that
making a false declaration is a form of malpractice.
Student’s signature Loi
Grading grid
P2 P3 P4 P5 M2 M3 M4 D2 D3 D4
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15

Partial preview of the text

Download Coffee Shop Management Program and more Thesis Distributed Programming and Computing in PDF only on Docsity!

ASSIGNMENT 2 FRONT SHEET

Qualification BTEC Level 5 HND Diploma in Computing Unit number and title Unit 1: Programming Submission date April 24,2022 Date Received 1st submission April 24, Re-submission Date Date Received 2nd submission Student Name Nguyen Huu Loi Student ID BS Class PBIT17102 Assessor name Thai Thi Thanh Thao Student declaration I certify that the assignment submission is entirely my own work and I fully understand the consequences of plagiarism. I understand that making a false declaration is a form of malpractice. Student’s signature Loi Grading grid P2 P3 P4 P5 M2 M3 M4 D2 D3 D

❒ Summative Feedback: ❒ Resubmission Feedback: Grade: Assessor Signature: Date: Lecturer Signature:

● An explanation and evaluation of coding standards used in your program and the benefits to organisations of using them. The working application produced must also be demonstrated together with the presentation. Guidance Task 1 – Introduction to your program In this part, you will have to present the list of user requirements of your application before designing the solution. Then, you will give a brief explanation how your application could solve the problem. The application has to allow user to enter inputs and perform specific CRUD (Create / Read / Update / Delete) actions. Some topics you can consider are:

  • Student Management
  • Gradebook Management
  • Inventory Management
  • Etc. (Word limit: 100 – 250 words) Task 2 – Explain programming paradigms Next, you will need to explain what procedural, object-oriented (Class and Object) and event-driven paradigms are with their characteristics. Source code with explanations need to be included to justify these paradigms. Then, you will explain why and how your program use these (or some of) paradigms. (Word limit: 1000 – 1200 words) Task 3 – IDE features Before jumping to the implementation phase, you will present the chosen IDE to develop the application. You will the common features of an IDE should have and evidence (e.g. screenshots) of how the IDE was used to manage the development of your code. Then, you will give:
  • An evaluation of developing applications using an IDE versus developing an application without using an IDE.
  • An explanation and evaluation of the debugging process in the IDE used and how it helped with development.
  • Evidences that you have used debugging during the implementation (Word limit: 500 – 700 words)

Task 4 – Design, implement and test Next, you will give the design of your application by using suitable diagrams such as: Flowchart, Activity diagram to describe its behaviours before implementing it. When your application is finally implemented, you will need to include evidences (source code, result images) to show how it is implemented and works properly with explanations. Test cases have to be included to make sure the application works without any error or exception. Finally, you have to explain and evaluate coding standards used in your program and the benefits to organisations of using them. ( Word limit: 500 – 700 words) Learning Outcomes and Assessment Criteria Pass Merit Distinction LO2 Explain the characteristics of procedural, object-oriented and event-driven programming, conduct an analysis of a suitable Integrated Development Environment (IDE) P2 Give explanations of what procedural, object-oriented and event-driven paradigms are; their characteristics and the relationship between them. M2 Analyse the common features that a developer has access to in an IDE. D2 Critically evaluate the source code of an application which implements the programming paradigms, in terms of the code structure and characteristics. LO3 Implement basic algorithms in code using an IDE LO4 Determine the debugging process and explain the importance of a coding standard P3 Write a program that implements an algorithm using an IDE. M3 Use the IDE to manage the development process of the program. D3 Evaluate the use of an IDE for development of applications contrasted with not using an IDE. P4 Explain the debugging M4 Evaluate how the debugging D4 Critically evaluate why a

Table of Figures

  • Figure 1 The definition of programming models………………………………………....
  • Figure 2 Example of Procedural Programming…………………………………………...
  • Figure 3 Example of Event-driven programming………………………………………..
  • Figure 4 Example of Object-oriented programming……………………………………..
  • Figure 5 Design of Coffee Manger……………………………………………………….
  • Figure 6 The writing part of a program's code……………………………………………
  • Figure 7 Debugging………………………………………………………………………
  • Figure 8 Way to start debug……………………………………………………………...
  • Figure 9 Put a breakpoint anywhere you want to debug…………………………………
  • Figure 8 Executing the code line by line……………………………………………….
  • Figure 11 Run and check ………………………………………………………………..
  • Figure 12 The variable names……………………………………………………………

LO2: Explain the characteristics of procedural, object-oriented and event-driven programming, conduct an analysis of a suitable Integrated Development Environment (IDE) 2.1 Give explanations of what procedural, object-oriented and event-driven paradigms are; their characteristics and the relationship between them. (P2) 2.1.The definition of programming models A programming model is programming models are supposed to explain how a program will be executed while the parallel computer model is meant to be an abstraction of the hardware. The programming model acts as a bridge between algorithms and actual implementations in software. Parallel algorithms are designed with a parallel computer model in mind and when the implementation phase comes, the programming model is put to use. Once an implementation has been completed the program code is given to a compiler which produces an executable program that can be loaded and run by the computer..[1]

Figure 10 Example of Procedural Programming

  • Event-driven programming
  • Event-driven programming is a programming model in which the flow of a program is determined by events such as user actions, sensor output, or messages from programs or threads.

Figure 11 Example of Event-driven programming

  • Object-oriented programming -Object-oriented programming is a programming paradigm based on the concept of "object technology", in which objects contain data, on fields, often called properties; and source code, organized into methods. Figure 12 Example of Object-oriented programming 2.1.2 Characteristics of the programming models
  • State the characteristics and advantages, disadvantages of the 3 models
  • Procedural programming
  • Is a programming model in which the flow of a program is determined by events such as user actions (clicks, keystrokes), sensor output, or messages from programs or threads.
    1. Advantages
    • The great benefit of event-driven programming is that it is very intuitive, flexible and naturally well suited to applications where control flow is based, not on its structure, but on external events. inside or outside
    1. Disadvantages:
  • Complicated control line
  • Less Logical and Obvious. The flow of the program is usually less logical and obvious.
  • Difficult to find Error
  • Slower
  • Confusing.
  • Tight Coupling.
  • Blocking.
  • Object-oriented programming
  1. Charactertist
  • There are three major features in object-oriented programming that makes them different than non-OOP languages: encapsulation, inheritance and polymorphism.
  • Encapsulation Enforces Modularity. ...
  • Inheritance Passes "Knowledge" Down. ...
  • Polymorphism Takes any Shape. ...
  • OOP Languages. 2.Advantages
  • Modularity for easier troubleshooting. When working with object-oriented programming languages, you know exactly where to look when something goes wrong.
  • Reuse of code through inheritance.
  • Flexibility through polymorphism.
  • Effective problem solving. 3.Disavantages
  • Size: programs are much larger than other programs.
  • Effort: programs require a lot of work to create.
  • Speed: programs are slower than other programs, partially because of their size. 2.1.3 Relationship between Procedural, Object-oriented, Event-driven.
  • Procedural programming means that you define a program and its subprograms as a series of steps. In contrast, declarative programs try to describe the result without regard to the steps taken to computer it but rather some description or denotation of the desired result.
  • Object oriented programming is a way of organizing code around the principles of encapsulation, inheritance, substitution, programming to interfaces, and so on. Object oriented programs are usually mostly procedural.
  • Event based programming is about writing event handling procedures and having the core event loop provided by the underlying system. In this way you can save the trouble of writing your own event loop and benefit from various libraries that already work with the system provided event loop. Event based programs are very often writing using object oriented style, but not always.
  • These three categories are thus not related strictly hierarchically, but in common usage they are mostly nested within one another. LO3 Implement basic algorithms in code using an IDE 3.1 Write a program that implements an algorithm using an IDE. (P3)
  • I will write a program to manage coffee, in this program, you have to enter information such as customer name, their address or phone number. They can choose the quantity of products and know the total price of the products. .This customer information helps the seller to provide products to the customer easily and quickly.The input to the program is

Step 3: Coding and Testing -The user needs to write the code to build the program, then you try it. They have to try and check the program for something missing or buggy. Figure 14 The writing part of a program's code Step 4: Debugging -In this step the user has to debug the program to check if the output of the program is exactly what he or she wants or is wrong with any statement in a particular place. This helps the user to edit the program. and easier to fix

Figure 15 Debugging LO4 Determine the debugging process and explain the importance of a coding standard 4.1 Explain the debugging process and explain the debugging facilities available in the IDE. (P4)

  • Definition Debugging:” Software programs undergo heavy testing, updating, troubleshooting, and maintenance during the development process. Usually, the software contains errors and bugs, which are routinely removed. Debugging is the process of fixing a bug in the software. It refers to identifying, analyzing and removing errors. This process begins after the software fails to execute properly and concludes by solving the problem and successfully testing the software. But, it is considered to be an extremely complex and tedious task because errors need to be resolved at all stages of debugging.”[2] -I will show you the steps of debugging in Visual Studio Code. Step 1: Locate the error

Figure 17 Executing the code line by line Step 3: Error handling -Fix the existing errors Step 4: Run test and check -Test runs and checks that the program does not appear with any new errors.

Figure 18 Check and Run the program

  • Analyze and give example debugging use Syntax error, Incorrect variable format error… 4.2 Integrates many programs such as code completion, compiler, editor Outline the coding standard you have used in your code. (P5) -Many vendors who buy drinks at coffee shops don't have an official program so this causes a lot of trouble for them. In other words, they can't charge when customers want to buy or don't have enough information about customers such as name, address, quantity of drinks they want to buy. Besides, updating new drinks, continuous quantity and attracting customers is very difficult and time consuming. On the other hand, having this sales program will help the merchant to upgrade the quality of the drink and increase the number of customers. Moreover, if you can create a beautiful interface for your program, you can attract many customers.