Create a program for a pizza shop

Assignment Help Programming Languages
Reference no: EM132314678

Assignment : Parallel Implementation

Overview

This assignment will test your skills in programming applications to specification in a number of different programming languages and is worth 20% of your non-invigilated (type A) marks for this course. Completion of this assignment requires the:

Understanding of various programming languages’ features

Understanding of Implementing a program in multiple languages

Assignment Overview

You are asked to create a program for a pizza shop – however, as this is a comparative languages course, you will be creating the same application in the following programming languages:

C

Python,

Java and

Lisp

As you implement the application in each language, you should keep notes on the features of the languages used, which you found useful, as well as any issues or complications which arose due to the complexity or lack of any language features.

A brief discussion based on these programming features for each individual language accompanying each implementation is required. Finally, a comparative overview of the languages highlighting applicability based on your experience in the design, implementation and debugging of your code is also required.

If you foresee or encounter any complications, you may opt to implement or incorporate additional language features which may be lacking, i.e. data structures. This can be done via:

Your own implementation, Through libraries, or

Via the incorporation of existing source code. You can use code found on the Internet, but use of any existing code must be referenced.

Assessment Details

Sab, the owner of a new Pizza and Pasta shop, is opening a takeaway service for selling delicious Pizza and Pasta to the customers. She wants to offer some packages to interested customers to promote her business. To do so she is offering the following packages:

1. 1 large Pizza = 12 AUD

2. 2 large Pizzas = 22 AUD

3. N large pizzas = N*10 AUD, where N>=3, and the customer will receive 1 garlic bread for every three pizzas [For example, if a customer is interested to buy 10 large pizzas, Sab will provide 3 complementary garlic bread for 100 AUD]

4. 1 large pasta = 8 AUD

5. 2 large pastas = 15 AUD

6. M large pastas = M*7 AUD, where M>=3, and the customer will receive 1.25 Liter soft drinks for every 3 pastas [For example, if a customer is interested to buy 6 large pastas, Sab will provide 2 complementary 1.25 liter soft drinks for 42 AUD]

7. For every 3 pizzas AND 3 pastas, Sab will give a small box of Baklava (a famous dessert item) in addition to garlic-bread and 1.5-liter soft drinks.

You have agreed to design and develop a small console program for Sab, enabling her to select the appropriate item and the package, and calculate the corresponding cost. Once an order is processed, the program will return to the menu ready to commence another order. This payment information should display:

total payment amounts received for pizza order

total payment amounts received for pasta order

total amount of pizzas and pastas sold in that session*

A session indicates the duration Sab is using the program after opening the program. There is no need for this data to persist once the program has stopped running.

The owner wants the system to be flexible so that she can include additional items and packages at a later date without having to rewrite the entire program. This means you will need to use an interface for processing payments, and polymorphism for the various food items classes, so that new and different packages may be added at a later date with minimal updates to the code.

She asked that you provide her with some documentation before you commence coding, so that she is able to verify that the program you intend to code will address her requirements. She would like to see the use cases to summarize the requirements in written format, as well as use case diagrams, class diagrams and sequence diagrams.

Suggested Development Environments

Codeblocks for C '99

Code::Blocks can be downloaded To create a new C project is: When you create a project, choose File | New and then Console Application, and then choose C as the programming language.

IDLE for Python:

Python, including the IDLE development environment, can be downloaded

Eclipse for Java 7 or Java 8

Eclipse may be freely downloaded

Eclipse does not come with the Java JDK, which must the downloaded separately

Ensure that your Eclipse type and Java type match – i.e. 32-bit Java for 32-bit Eclipse, or 64-bit Java for 64-bit Eclipse. If you mix and match it won't work.

GNU CLisp for Common Lisp

CLISP 2.49 can be sourced

Any good text editor would be suitable for writing the source code.

Additional Documentation – Language Suitability Report

The design of each programming language incorporates a number of decisions about the language which make it more or less suitable for given tasks. During your implementation of the pizza program in each of the languages, you should make notes about the language features which exist or do not exist, and which have therefore made program development easier or more difficult.

Where a language has not provided a feature which would have been useful to the implementation of the program, or where the complexity of using a language feature has been high you should remark upon it and briefly discuss a mechanism or feature of another language which would have made development easier.

After completing the application in all languages (or as many as you can), discuss the comparative ease of implementation in terms of the design, implementation and debugging for each programming language, including how robustness issues were addressed.

Reference no: EM132314678

Questions Cloud

Deception figures largely in popul vuh and paradise lost : Deception figures largely in Popul Vuh-Paradise Lost. Compare and contrast Milton's Satan and Mayan twins use of deception.Discuss the role of women in Sundiata
Develop components of the software specification : MITS5501 Software Engineering Methodology Assignment, Victorian Institute of Technology, Australia. Develop components of the Software Specification
Communicating with professional network : What communications strategies are important to uphold when communicating with professional network? Explain
Revelation-opportunity for grace chance to find redemption : Read "Revelation" by Flannery O'Connor. O'Connor gives these characters what she calls an "opportunity for grace," a chance to find redemption
Create a program for a pizza shop : ITECH 5403- Comparative Programming Languages-Federation University Australia- Test your skills in programming applications to specification in languages.
What is social loafing and what kind of experience : What is social loafing and what kind of experience a person can have with this example? Explain
About your reflections on the concept of sustainability : Your task is to write about your ‘reflections' on the concept of sustainability. what action may you take as a result of new thinking?;
Write a summative paper on seminal theories of governance : Write summative paper on seminal theories of governance & stewardship that inform effective organizational leadership in non-profit or for-profit organizations
Evaluate the contexts of a named novel in relation to themes : FC33CY034 Understanding a Novel-Coleg y Cymoedd-UK-Develop a series of points, supported with textual evidence and developed fully.

Reviews

len2314678

5/31/2019 2:45:49 AM

You must supply your program source code files and language suitability report documentation in as single compressed archive called: You may supply your programming language suitability report in either Word or LibreOffice/OpenOffice format in which the document can be edited – no proprietary Mac-specific formats, please. Assignments will be marked on the basis of fulfillment of the requirements and the quality of the work. In addition to the marking criteria, marks may be deducted for failure to comply with the assignment requirements, including (but not limited to): Incomplete implementation(s), and Incomplete submissions (e.g. missing files), and Poor spelling and grammar.

Write a Review

Programming Languages Questions & Answers

  Write a haskell program to calculates a balanced partition

Write a program in Haskell which calculates a balanced partition of N items where each item has a value between 0 and K such that the difference b/w the sum of the values of first partition,

  Create an application to run in the amazon ec2 service

In this project you will create an application to run in the Amazon EC2 service and you will also create a client that can run on local machine and access your application.

  Explain the process to develop a web page locally

Explain the process to develop a Web page locally

  Write functions

These 14 questions covers java class, Array, link list , generic class.

  Programming assignment

If the user wants to read the input from a file, then the output will also go into a different file . If the user wants to read the input interactively, then the output will go to the screen .

  Write a prolog program using swi proglog

Write a Prolog program using swi proglog

  Create a custom application using eclipse

Create a custom Application Using Eclipse Android Development

  Create a application using the mvc architecture

create a application using the MVC architecture. No scripting elements are allowed in JSP pages.

  Develops bespoke solutions for the rubber industry

Develops bespoke solutions for the rubber industry

  Design a program that models the worms behavior

Design a program that models the worm's behavior.

  Writing a class

Build a class for a type called Fraction

  Design a program that assigns seats on an airplane

Write a program that allows an instructor to keep a grade book and also design and implement a program that assigns seats on an airplane.

Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd