For this assignment, create a study/simulation/tool/utility of your choice related to your program of study in Python that comprises a number of features, as described in Section 3.1, to demonstrate the code concepts detailed in Section 3.2, and analyse and evaluate your code and provide adequate documentation, as described in Section 3.3.
Note: Your program must relate to your program of study.
You must not just “throw in the concepts” to your program just because they need to be there; it should be clear from the code why a certain concept should be there, and you must further explain these through your comments. You will also need to debug your code on your own and document any issues, etc. You are given marks on your ability to fulfil all requirements of this document.
There are design requirements (6 marks), code requirements (18 marks), and documentation requirements (11 marks) for a total of 35 marks.
This assessment relates to all of the learning outcomes of the course which are:
• CLO 1: Demonstrate knowledge of basic concepts, syntax and control structures in programming.
• CLO 2: Devise solutions to simple computing problems under specific requirements.
• CLO 3: Encode the devised solutions into computer programs and test the programs on a computer.
• CLO 4: Demonstrate understanding of standard coding conventions and ethical considerations in programming.
There are design requirements (6 marks), code requirements (18 marks), and documentation requirements (11 marks) for a total of 35 marks.
The following design requirements must be clearly stated in your report.
3.1.1 The objective(s) and specifications of the study/simulation/tool/utility are clearly outlined. (3 mark)
3.1.2 There are at least 3 features that serve the objective(s) of the proposed program. A feature is a distinguishing characteristic of a program (i.e., what a program can do). The mechanics of a program (i.e., how a program works) is not a feature. (3 marks)
3.2 Code Requirements
The following code requirements must be applied to serve the objective(s) of the proposed program.
3.2.1 Presentation and formatting. The filename(s) must be chosen to match the application (default names such as assignmentX.py will not be accepted). Names of identifiers (including functions, variables, etc.) must be descriptive. Code formatting is clean and consistent. Must not include any unused/irrelevant code. (3 marks)
3.2.2 Data types. The program must process at least four different data types with at least one data type of the following: list, tuple, set, or dictionary. (3 marks)
3.2.3 Control flow. The program must have at least two control flow blocks, i.e., if/elif/else and/or for/while loops. (3 marks)
3.2.4 Files. Your program must use external input/output file(s) (e.g., .txt, .csv, or .png). Note: you will need to submit these files. (3 marks)
3.2.5 Functions. Demonstrate concepts of modular code organisation using at least two functions. When the program is run, there should be a pathway to run/call all functions (i.e. no unused functions). (3 marks)
3.2.6 Design. All libraries (if any) are imported at the top of the file. Functions and other constructs are defined at the appropriate level. The design and organization of the overall program is sensible, modular, and readable. (3 marks)
3.3 Documentation Requirements
3.3.1. Line 1 of your .py file must be an example of the command(s) needed to run your program. (1 mark)
3.3.2 Comments. Adequate code comments provided to improve the readability of your program. Write comments after function definitions, before code blocks, and in line with important variable declarations. The code comments in this assignment must focus more on the analysis of your approaches and their evaluation instead of simply translating the Python code to English (see rubric in Section 9 of this document). Explain any code requirements that you have not met and all bugs (situations that might cause the program to crash or behave abnormally) in the approximate locations they originate within your code. If you do not have bugs, you must explicitly say that there are none. A good programmer knows the limits of their program. (4 marks)
3.3.3 Submit a report in a text file (.txt) or PDF format that contains the following. (3 marks)
1. Introduction (including objective(s) and specifications of the study/simulation/tool/utility)
2. Relation of the study/simulation/tool/utility to your program of study
3. Features
4. Methodology (e.g., design decisions, devolvement process, etc.)
5. Results (e.g., sample inputs and outputs, figures, etc.)
6. Discussion (e.g., explain any code requirements that you have not met and all bugs (situations that might cause the program to crash or behave abnormally) in the approximate locations they originate within your code. If you do not have bugs, you must explicitly say that there are none. A good programmer knows the limits of their program.)
7. Conclusion
8. References
3.3.4 Submit a 2-5mins video or a screen recording that contains the following. (3 marks)
1. Introduction (including objective and specifications of the study/simulation/tool/utility)
2. Relation of the study/simulation/tool/utility to your program of study
3. Features
4. Discussion on the methodology/design of the program.
5. Demonstration of how to run the program and sample output.
Submit .py file(s), any data/input files, report and a link to the video via Canvas → Assignments →
Assignment 2 as a single .zip file called a2_{firstname}_{lastname}_{student_id}.zip.
It is the responsibility of the student to correctly submit their files. Please verify that your submission is correctly submitted by downloading what you have submitted to see if the files include the correct content. Please make sure your video is accessible via the provided link.
When you submit work electronically, you agree to the assessment declaration:
Academic integrity is about honest presentation of your academic work. It means acknowledging the work of others while developing your own insights, knowledge and ideas. You should take extreme care that you have:
• Acknowledged words, data, diagrams, models, frameworks and/or ideas of others you have quoted (i.e. directly copied), summarised, paraphrased, discussed or mentioned in your assessment through the appropriate referencing methods,
• Provided a reference list of the publication details so your reader can locate the source if necessary. This includes material taken from Internet sites.
If you do not acknowledge the sources of your material, you may be accused of plagiarism because you have passed off the work and ideas of another person without appropriate referencing, as if they were your own.
• Failure to properly document a source
• Copyright material from the internet or databases
• Collusion between students
For further information on our policies and procedures, please refer to
The following rubric will be used to assess your work.
A 30% penalty will apply if the study/simulation/tool/utility does not relate to your program of study. A 10% additional penalty will apply for every compile/runtime error in your code, e.g., syntax errors
CS 340 Milestone One Guidelines and Rubric Overview: For this assignment, you will implement the fundamental operations of create, read, update,
Retail Transaction Programming Project Project Requirements: Develop a program to emulate a purchase transaction at a retail store. This
7COM1028 Secure Systems Programming Referral Coursework: Secure
Create a GUI program that:Accepts the following from a user:Item NameItem QuantityItem PriceAllows the user to create a file to store the sales receip
CS 340 Final Project Guidelines and Rubric Overview The final project will encompass developing a web service using a software stack and impleme