Overview
This unit will help you become a programmer even if you have had no programming experience. You will learn and practise topics such as pseudocode, variables, constants, data types, operators, expressions, statements, classes, objects, control constructs, methods, passing parameters and arrays. In addition, you will learn how to design, implement and test programs using a modern Integrated Development Environment (IDE).
Details
Pre-requisites or Co-requisites
There are no requisites for this unit.
Important note: Students enrolled in a subsequent unit who failed their pre-requisite unit, should drop the subsequent unit before the census date or within 10 working days of Fail grade notification. Students who do not drop the unit in this timeframe cannot later drop the unit without academic and financial liability. See details in the Assessment Policy and Procedure (Higher Education Coursework).
Offerings For Term 3 - 2024
Attendance Requirements
All on-campus students are expected to attend scheduled classes - in some units, these classes are identified as a mandatory (pass/fail) component and attendance is compulsory. International students, on a student visa, must maintain a full time study load and meet both attendance and academic progress requirements in each study period (satisfactory attendance for International students is defined as maintaining at least an 80% attendance record).
Recommended Student Time Commitment
Each 6-credit Undergraduate unit at CQUniversity requires an overall time commitment of an average of 12.5 hours of study per week, making a total of 150 hours for the unit.
Class Timetable
Assessment Overview
Assessment Grading
This is a graded unit: your overall grade will be calculated from the marks or grades for each assessment task, based on the relative weightings shown in the table above. You must obtain an overall mark for the unit of at least 50%, or an overall grade of 'pass' in order to pass the unit. If any 'pass/fail' tasks are shown in the table above they must also be completed successfully ('pass' grade). You must also meet any minimum mark requirements specified for a particular assessment task, as detailed in the 'assessment task' section (note that in some instances, the minimum mark for a task may be greater than 50%). Consult the University's Grades and Results Policy for more details of interim results and final grades.
All University policies are available on the CQUniversity Policy site.
You may wish to view these policies:
- Grades and Results Policy
- Assessment Policy and Procedure (Higher Education Coursework)
- Review of Grade Procedure
- Student Academic Integrity Policy and Procedure
- Monitoring Academic Progress (MAP) Policy and Procedure - Domestic Students
- Monitoring Academic Progress (MAP) Policy and Procedure - International Students
- Student Refund and Credit Balance Policy and Procedure
- Student Feedback - Compliments and Complaints Policy and Procedure
- Information and Communications Technology Acceptable Use Policy and Procedure
This list is not an exhaustive list of all University policies. The full list of University policies are available on the CQUniversity Policy site.
Feedback, Recommendations and Responses
Every unit is reviewed for enhancement each year. At the most recent review, the following staff and student feedback items were identified and recommendations were made.
Feedback from Teacher Evaluation (Term 1, 2023)
There were limited responses in the class because of a struggle to understand programming concepts.
This problem is highly related to the challenging Java programming language for beginners. The programming language 'Python' should be introduced to replace Java.
Feedback from Teacher Evaluation (Term 1, 2023)
The class needs to be more interactive.
To make the class more interactive, include real-world examples, creating a more engaging learning environment.
- Develop clearly documented and thoroughly tested applications using an industry-standard integrated development environment (IDE)
- Apply procedural concepts (methods, iteration, selection) and design principles (encapsulation, coupling and cohesion) to the realisation of object behaviour in applications
- Implement standard algorithms such as searching, sorting and sequential processing for arrays and lists of objects in applications
- Employ stream abstraction to process records contained in sequential text files
- Apply concepts presented in this unit, including language syntax, memory models, execution models, types, scope rules, methods, parameter passing, classes, objects and algorithms.
- Programming/Software Development (PROG)
- Testing (TEST)
Alignment of Assessment Tasks to Learning Outcomes
Assessment Tasks | Learning Outcomes | ||||
---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | |
1 - Practical Assessment - 35% | |||||
2 - Practical Assessment - 15% | |||||
3 - Examination - 50% |
Alignment of Graduate Attributes to Learning Outcomes
Graduate Attributes | Learning Outcomes | ||||
---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | |
1 - Communication | |||||
2 - Problem Solving | |||||
3 - Critical Thinking | |||||
4 - Information Literacy | |||||
5 - Team Work | |||||
6 - Information Technology Competence | |||||
7 - Cross Cultural Competence | |||||
8 - Ethical practice | |||||
9 - Social Innovation | |||||
10 - Aboriginal and Torres Strait Islander Cultures |
Textbooks
How to Think Like a Computer Scientist: Learning with Python 3
Authors: Peter Wentworth, Jeffrey Elkner, Allen B. Downey and Chris Meyers
ISBN: 9888406787
Binding: eBook
IT Resources
- CQUniversity Student Email
- Internet
- Unit Website (Moodle)
- Textpad 7 or higher
- NetBeans 8.2 or a higher version
- Visual Studio Code (latest version)
- python 3.10 or higher
- Java 21
All submissions for this unit must use the referencing style: Harvard (author-date)
For further information, see the Assessment Tasks.
b.mckenzie@cqu.edu.au
Module/Topic
Understanding programming and creating simple python programs
Chapter
Python textbook Chapter 1 and online resources
Events and Submissions/Topic
Module/Topic
Using Data (in Python)
Chapter
Python textbook Chapter 2
Events and Submissions/Topic
Module/Topic
Making decisions
Chapter
Python textbook Chapter 5 and online resources
Events and Submissions/Topic
Assessment item 2: part 1 - due in week 3 tutorial class
Module/Topic
Functions
Chapter
Python textbook Chapter 4 and online resources
Events and Submissions/Topic
Assessment item 2: part 2 - due in week 4 tutorial class
Module/Topic
Looping
Chapter
Python textbook Chapter 7 and online resources
Events and Submissions/Topic
Assessment item 2: part 3 - due in week 5 tutorial class
Module/Topic
Classes and Objects
Chapter
Python textbook Chapter 15 and online resources
Events and Submissions/Topic
Assessment item 2: part 4 - due in week 6 tutorial class
Module/Topic
Lists and Strings
Chapter
Chapter 8 and online resources
Events and Submissions/Topic
Assessment Item 1: Part A (15%) due Friday 11:55pm (AEST)
Assessment item 2: part 5- due in week 7 tutorial class
Module/Topic
Chapter
Events and Submissions/Topic
Module/Topic
Chapter
Events and Submissions/Topic
Module/Topic
Working with files
Chapter
Python textbook chapter 13
Events and Submissions/Topic
Assessment item 2: part 6- due in week 8 tutorial class
Module/Topic
Testing, Error handling, and debugging.
Chapter
Events and Submissions/Topic
Assessment item 2: part 7- due in week 9 tutorial class
Module/Topic
Introduction to Programming in Java Part 1 (primitive types, reference types, and decision making)
Chapter
Events and Submissions/Topic
Assessment item 2: part 8 - due in week 10 tutorial class
Module/Topic
Introduction to Programming in Java Part 2 (Looping, Methods, and Arrays)
Chapter
Events and Submissions/Topic
Assessment Item 1: Part B (20%) due Friday11:55pm (AEST)
Assessment item 2: part 9 - due in week 11 tutorial class
Module/Topic
Introduction to Design; Ethical Considerations; Review
Chapter
Online resources
Events and Submissions/Topic
Assessment item 2: part 10 - due in week 12 tutorial class
Module/Topic
Chapter
Events and Submissions/Topic
Examination (50%) - scheduled during examination block
1 Practical Assessment
This assessment requires the development of programming applications. It is intended to assess your ability to apply the programming concepts studied to the development, testing, and documentation of software applications. The applications are called Assessment Item 1: Part A and Assessment Item 1: Part B.
- Part A (15%): requires you to apply the concepts covered in the first part of the term (variables, constants, data types, arithmetic expressions, selection statements, repetition statements, input/output from/to the standard input/output devices, classes and compound data types). It is due at the end of week 7 (Friday).
- Part B (20%): requires you to apply the concepts covered in the first part of the term as well as concepts covered in the second part of the term (e.g. looping, compound data types, searching, sorting, exceptions, etc). It is due at the end of week 11 (Friday).
Further details about the requirements for both software applications can be found in their detailed specification documents on the unit website.
Part A is due on Friday of week 7. Part B is due on Friday of week 11.
2 weeks after the due date.
The submissions will be assessed based on the following criteria
- Achieves the requirements outlined in the specification (including functionality and design specified) (Part A and B)
- Appropriate use of programming constructs/concepts: variables, constants, types, operators, expressions, selection statements, standard input, and output), compound data types (Part A and B); Exceptions, searching, sorting, and working with files (Part B)
- Appropriate use of objects, classes, and methods (Part A and B)
- Good programming practices (see Coding Guidelines document on the website ) (Part A and B)
- Compilation and execution of the program using a modern IDE (Part A and B)
- Appropriate and complete code documentation (Part A and B)
- Appropriate test planning and thorough testing of the code (Part A and B)
A more detailed breakdown of the assessment criteria can be found in the specifications on the Moodle unit website.
- Develop clearly documented and thoroughly tested applications using an industry-standard integrated development environment (IDE)
- Apply procedural concepts (methods, iteration, selection) and design principles (encapsulation, coupling and cohesion) to the realisation of object behaviour in applications
- Implement standard algorithms such as searching, sorting and sequential processing for arrays and lists of objects in applications
- Apply concepts presented in this unit, including language syntax, memory models, execution models, types, scope rules, methods, parameter passing, classes, objects and algorithms.
2 Practical Assessment
This assessment item is to be developed and submitted as part of your weekly tutorial/practical sessions.
For on-campus students
This assessment item will be based on weekly tutorial/practical work in weeks 3 -12 (inclusive). The assessment will be based on your performance/engagement in the class as well as the sample of work your tutor will ask you to submit during the class. However, note that the class is a tutorial/practical class, not a test. It is a normal tutorial where your tutor will guide you through the activities and help you if you have any questions. It is important to prepare for the class by attending and/or viewing the week's lecture content before your tutorial/practical class. For on-campus students (and offshore students), the submission of the sample of work is due in the weekly tutorial/practical class, NOT the due date shown in Moodle. The date given in Moodle is to cater for all scheduled workshop classes.
Note:
- Unless there are special circumstances (approved by the unit coordinator), this assessment task must be developed and submitted on Moodle in your weekly tutorial/practical class. If you have special circumstances that prevent you from attending a specific class, please contact your tutor and unit coordinator as soon as you are aware of an issue.
- Marks may be deducted if your tutor is not satisfied with your progress or understanding of the work. Marks are not only awarded for the sample of work submitted during the class. Satisfactory participation in all tutorial/practical class activities is also required to be awarded marks for this assessment item.
Distance Education students
As distance education students you are not required to attend a tutorial/practical class. The unit coordinator will communicate with you more about this assessment item at the start of the term. However, note the following:
- You will be required to submit the sample of your weekly work requested by your tutor by the due date shown on the unit website for the corresponding week. Late submissions will normally be awarded 0 marks.
- All the worksheet questions are important to help your understanding of the work covered each week, so you should attempt all questions (and check all the solutions when they become available). However, just as is the case for on-campus students, you will not be required to submit all the questions in the weekly worksheet. You will be told which questions are to be submitted as a sample of your work each week.
- As with on-campus students, it is a tutorial, not a test. If you are having any difficulty with the tutorial/practical work please do not hesitate to get in touch with the unit coordinator.
- The unit coordinator is normally the tutor for distance education students.
- The unit coordinator may make arrangements to discuss aspects of the weekly work with you before marks can be awarded.
- If you have any special circumstances that may impact your ability to complete the weekly assessment task please contact the unit coordinator to discuss this as soon as you are aware of any issue.
Each week (weeks 3 - 10) is worth 1.5% of your overall mark for the unit. (This may appear as a mark out of 3 in the assessment area in Moodle. Moodle does not allow fractional maximum assessment item marks. In that case, the final marks in this assessment item will be divided by 2 when included in the calculation for your final grade.)
Due in your weekly tutorial/practical class from weeks 3 -12 (inclusive).
Marks will be returned before your next tutorial submission is due.
Tasks in the weekly tutorial/practical will test your understanding of the topics covered in that week.
On-campus students: You are required to participate in all activities in the tutorial and submit the sample of work requested when you are instructed to do so during the class. Your tutor will monitor your progress in class. Be prepared to ask questions if anything is unclear and to explain your work to your tutor in class.
Distance Education students: You will also be required to submit a specified sample of work each week and you may be asked to meet with your tutor or the unit coordinator to discuss your work (e.g. over Zoom). The unit coordinator will communicate with you further about this assessment item.
Each week is worth 1.5 marks.
- Develop clearly documented and thoroughly tested applications using an industry-standard integrated development environment (IDE)
- Apply procedural concepts (methods, iteration, selection) and design principles (encapsulation, coupling and cohesion) to the realisation of object behaviour in applications
- Implement standard algorithms such as searching, sorting and sequential processing for arrays and lists of objects in applications
- Employ stream abstraction to process records contained in sequential text files
- Apply concepts presented in this unit, including language syntax, memory models, execution models, types, scope rules, methods, parameter passing, classes, objects and algorithms.
Examination
As a CQUniversity student you are expected to act honestly in all aspects of your academic work.
Any assessable work undertaken or submitted for review or assessment must be your own work. Assessable work is any type of work you do to meet the assessment requirements in the unit, including draft work submitted for review and feedback and final work to be assessed.
When you use the ideas, words or data of others in your assessment, you must thoroughly and clearly acknowledge the source of this information by using the correct referencing style for your unit. Using others’ work without proper acknowledgement may be considered a form of intellectual dishonesty.
Participating honestly, respectfully, responsibly, and fairly in your university study ensures the CQUniversity qualification you earn will be valued as a true indication of your individual academic achievement and will continue to receive the respect and recognition it deserves.
As a student, you are responsible for reading and following CQUniversity’s policies, including the Student Academic Integrity Policy and Procedure. This policy sets out CQUniversity’s expectations of you to act with integrity, examples of academic integrity breaches to avoid, the processes used to address alleged breaches of academic integrity, and potential penalties.
What is a breach of academic integrity?
A breach of academic integrity includes but is not limited to plagiarism, self-plagiarism, collusion, cheating, contract cheating, and academic misconduct. The Student Academic Integrity Policy and Procedure defines what these terms mean and gives examples.
Why is academic integrity important?
A breach of academic integrity may result in one or more penalties, including suspension or even expulsion from the University. It can also have negative implications for student visas and future enrolment at CQUniversity or elsewhere. Students who engage in contract cheating also risk being blackmailed by contract cheating services.
Where can I get assistance?
For academic advice and guidance, the Academic Learning Centre (ALC) can support you in becoming confident in completing assessments with integrity and of high standard.