CT018-3-1 Introduction to C Programming Individual Assignment Page 1 of 4
1.0 INDIVIDUAL ASSIGNMENT DESCRIPTION
DOSTA COFEE SHOP ORDERING SYSTEM
Dosta is a new coffee shop launched in Kuala Lumpur, Malaysia recently after the covid
outbreak. Dosta branches sell hot and cold drinks, sandwiches, cakes and pastries, and
snacks. As its business is expanding, they approach your Software Development company to
develop an Ordering System to handle all the primary information required to maintain
customer orders. Once the system is launched, staff will have to login to enter the main
screen and customers must register first to place their order.
The system will ask the users to choose whether they are staff, first time customers, or
registered customers.
a. Staff
add new menu item with related details
update the menu item
create the customer account
search for any customer order based on customer ids
b. First time customers should register their account (mandatory)
c. Registered customers
modify the customer details
place order and make the payment
cancel any order placed
receipts will be generated at the end of the ordering process
The system submitted should compile and be executed without errors. Besides, validation
should be done wherever needed. Customer, item and order details need to be stored in text
files. Primary Key should be implemented, no duplication of same customer, item or orders
should be accepted.
2.0 REQUIREMENTS
i. State any assumptions that you make under each function.
ii. You are required to store all data required for your system in separate text files.
iii. You are expected to use control structures, functions, array, pointers, structures,
unions, and files in your program. Your program must embrace modular
programming technique and should be menu driven. Functions of similar
operations can be grouped (or kept alone) and stored as separate C files. Header
files are to be stored separately as .h files.
Level 1 Asia Pacific University of Technology & Innovation 09//2022
CT018-3-1 Introduction to C Programming Individual Assignment Page 2 of 4
iv. Results of a comprehensive testing is to be included in your document in the form
of Input/Output screenshots with sufficient explanation. The tests conducted shall
take into consideration of all valid inputs and negative test cases.
3.0 DELIVERABLES
You are required to submit:
i. A softcopy of the program coded in C – submitted in Moodle. The program
should include the following:
- Basic C concepts such as displaying and reading of text, variables, and
assignment of values, comments – to explain various parts of the program, etc.
- Intermediate C concepts such as control structures – selection and iteration
control structures, use of arrays – single / double scripted, string.
- Advanced C concepts such as functions – programmer defined and library
functions, pointers, structures, unions, linked list, and files.
- Any other features of C that has not been covered.
ii. A documentation of the system, that incorporates basic documentation standards
such as header and footer, page numbering and which includes
- Cover page
- Table of contents
- Introduction and assumptions
- Design of the program – using pseudocode and flowchart – which adheres to
the requirements provided above
- Additional features which have been incorporated in the solution in terms of
design and C codes (sample segment of source code from the system created)
- Sample outputs when the program is executed with some explanation of the
outputs / sections of the program
Level 1 Asia Pacific University of Technology & Innovation 09//2022
CT018-3-1 Introduction to C Programming Individual Assignment Page 3 of 4
- Conclusion
- References – APA Referencing
iii. Files to be uploaded to Moodle (ONLY FOLLOWING 3 FILES):
1. Documentation file (.pdf)
2. Program / Source files (.c files), Header files (.h files), and text files. (all
compressed as single .zip or .rar file)
iv. Submission
- All three files to be uploaded to Moodle on or before November
DD/MM/22:11:59 PM.
4.0ASSESSMENT CRITERIA
i. Design solution (Pseudocode and Flowchart) 20%
Detailed, logical and application of appropriate idea.
ii. Coding / Implementation 30%
Appropriate application of C concepts (from basic to advance), good solution
implemented with validation and met all the requirements with additional features.
iii. Documentation 20%
Overall standard and layout, referencing (Harvard), Input/Output screen capture
and assumptions.
iv. Demonstration 20%
Know how to execute and able to trace the system.
v. Question and Answer 10%
Answered the questions based on the assignment submitted during presentation.
5.0PERFORMANCE CRITERIA
Distinction (75% and above)
Level 1 Asia Pacific University of Technology & Innovation 09//2022
CT018-3-1 Introduction to C Programming Individual Assignment Page 4 of 4
This grade will be assigned to work which meets all requirements stated in the question. The
program runs smoothly when executed. There is clear evidence and application of C concepts
up to advanced level. The program solution is unique with excellent coding styles and
validation. The program implemented maps completely against the design (pseudocode and
flowchart) as seen in the documentation. The design of the solution varies in styles and has
unique logic with hardly any errors / omissions. The documentation does not have any
missing components. Sample outputs documented have clear explanation. All work is
referenced according to Harvard Name Referencing convention. Student must be able to
provide excellent explanation of the codes and work done, show additional concepts / new
ideas used in the solution, able to answer all questions posed with accurate / logical answers /
explanation provided with sound arguments and clear discussion. Overall an excellent piece
of work submitted.
Level 1 Asia Pacific University of Technology & Innovation 09//2022