Course overview
- Study period
- Semester 1, 2025 (24/02/2025 - 21/06/2025)
- Study level
- Undergraduate
- Location
- St Lucia
- Attendance mode
- In Person
- Units
- 2
- Administrative campus
- St Lucia
- Coordinating unit
- Elec Engineering & Comp Science School
Introduction to programming for engineers focusing on the fundamentals of computing and programming, using an exploratory problem-based approach. Building abstractions with procedures, data and objects; data modelling; designing, coding and debugging programs of increasing complexity. Applying programming techniques to the analysis of real world data.
This course introduces fundamental concepts in engineering programming, using the Python programming language. Emphasis is placed on problem solving using computational techniques, creating algorithms,ᅠdesigning classes, data analysisᅠand visualisation.
Course requirements
Assumed background
No background in computer programming is assumed
Incompatible
You can't enrol in this course if you've already completed the following:
CSSE1001
Restrictions
Restricted to students enrolled in BE, BE(Hons), BE(Hons) and Duals, BE/ME, BE/ME Exchange, ME (32), ME(48) and Study Abroad
Course contact
Course staff
Lecturer
Timetable
The timetable for this course is available on the UQ Public Timetable.
Aims and outcomes
This course aims to provide students with the basic programming skills that are needed by engineers. These skills include file processing, robust program design with functions and classes, data analyis,ᅠvisualisation and applied engineering programming.ᅠ
Learning outcomes
After successfully completing this course you should be able to:
LO1.
Differentiate and apply program constructs such as variables, selection, iteration and sub-routines
LO2.
Recognise and apply basic object-oriented design methodologies, along with associated concepts such as classes, instances and methods
LO3.
Read and analyse programs written by others
LO4.
Interpret an engineering problem and design an algorithmic solution to the problem
LO5.
Read and analyse an algorithmic design and be able to translate the design into a working program
LO6.
Apply techniques for program testing and debugging
LO7.
Apply sound programming techniques to the solution of real world engineering problems
LO8.
Analyse and visualise engineering data
Assessment
Assessment summary
Category | Assessment task | Weight | Due date |
---|---|---|---|
Computer Code, Quiz | Online exercises | 15% |
Intro 14/03/2025 3:00 pm Conditional branching 14/03/2025 3:00 pm Functions 21/03/2025 3:00 pm Strings 28/03/2025 3:00 pm Lists & dictionaries 4/04/2025 3:00 pm Intro to arrays 11/04/2025 3:00 pm Arrays revisited 28/04/2025 3:00 pm Graphs 2/05/2025 3:00 pm Classes 16/05/2025 3:00 pm Inheritance 23/05/2025 3:00 pm |
Computer Code | Assignment 1 | 15% |
28/03/2025 3:00 pm |
Computer Code | Assignment 2 | 25% |
23/05/2025 3:00 pm |
Examination |
End of semester exam
|
45% |
End of Semester Exam Period 7/06/2025 - 21/06/2025 |
A hurdle is an assessment requirement that must be satisfied in order to receive a specific grade for the course. Check the assessment details for more information about hurdle requirements.
Assessment details
Online exercises
- Mode
- Written
- Category
- Computer Code, Quiz
- Weight
- 15%
- Due date
Intro 14/03/2025 3:00 pm
Conditional branching 14/03/2025 3:00 pm
Functions 21/03/2025 3:00 pm
Strings 28/03/2025 3:00 pm
Lists & dictionaries 4/04/2025 3:00 pm
Intro to arrays 11/04/2025 3:00 pm
Arrays revisited 28/04/2025 3:00 pm
Graphs 2/05/2025 3:00 pm
Classes 16/05/2025 3:00 pm
Inheritance 23/05/2025 3:00 pm
- Learning outcomes
- L01, L02, L03, L04, L05, L06, L07
Task description
See course Blackboard site for details. Students submit their answers to questions on-line. These are normally due by 3pm on a Friday (with the exception of the 'Arrays revisited' task, because of public holidays and mid-semester break). Students are not allowed to use generative AI tools to answer these questions. The best 8 out of 10 sets of exercises will be used to determine the final mark for this assessment task. All assessment tasks evaluate students' abilities, skills and knowledge without the aid of generative Artificial Intelligence (AI) or Machine Translation (MT). Students are advised that the use of AI technologies to develop responses is strictly prohibited and may constitute student misconduct under the Student Code of Conduct. They must also refrain from using generative AI tools.
Submission guidelines
Submission online.
Deferral or extension
You cannot defer or apply for an extension for this assessment.
Late submission
You will receive a mark of 0 if this assessment is submitted late.
No extensions available and 100% Late penalty applied for the online exercises. To accommodate unforeseen circumstances such as illness, your quiz score will be based on the best 8 out of 10 submissions.
Assignment 1
- Mode
- Oral, Written
- Category
- Computer Code
- Weight
- 15%
- Due date
28/03/2025 3:00 pm
- Learning outcomes
- L01, L04, L06, L07, L08
Task description
In this assignment students will write a program in accordance with a specification. See assignment sheet for details. Students will need to attend a compulsory interview in the week after the due date, and will be required to sign up for an interview time slot. All assessment tasks evaluate students' abilities, skills and knowledge without the aid of generative Artificial Intelligence (AI) or Machine Translation (MT). Students are advised that the use of AI technologies to develop responses is strictly prohibited and may constitute student misconduct under the Student Code of Conduct. They must also refrain from using generative AI tools.
Submission guidelines
Assignment submitted on-line via Gradescope. Students should submit their code regularly to Gradescope as they progress in the assignment.
Deferral or extension
You may be able to apply for an extension.
The maximum extension allowed is 7 days. Extensions are given in multiples of 24 hours.
Solutions will be released 7 days after the due date.
Late submission
You will receive a mark of 0 if this assessment is submitted late.
Assignment submissions received after the due time (or any approved extended deadline) will be subject to a 100% late penalty. A one-hour grace period applies to the due time after which time (4:00:00pm) the 100% late penalty will be imposed. This grace period is designed to deal with issues that might arise during submission (e.g. delays with Blackboard or Gradescope) and should not be considered a shift of the due time.
Assignment 2
- Mode
- Oral, Written
- Category
- Computer Code
- Weight
- 25%
- Due date
23/05/2025 3:00 pm
- Learning outcomes
- L01, L02, L03, L04, L06, L07, L08
Task description
In this assignment students will write a program according to a specification. See assignment sheet for details. Students will need to attend a compulsory interview in the week after the due date, and will be required to sign up for an interview time slot. All assessment tasks evaluate students' abilities, skills and knowledge without the aid of generative Artificial Intelligence (AI) or Machine Translation (MT). Students are advised that the use of AI technologies to develop responses is strictly prohibited and may constitute student misconduct under the Student Code of Conduct. They must also refrain from using generative AI tools.
Submission guidelines
Assignment submitted on-line via Gradescope. Students should submit their code regularly to Gradescope as they progress in the assignment.
Deferral or extension
You may be able to apply for an extension.
The maximum extension allowed is 7 days. Extensions are given in multiples of 24 hours.
Solutions will be released 7 days after the due date.
Late submission
You will receive a mark of 0 if this assessment is submitted late.
Assignment submissions received after the due time (or any approved extended deadline) will be subject to a 100% late penalty. A one-hour grace period applies to the due time after which time (4:00:00pm) the 100% late penalty will be imposed. This grace period is designed to deal with issues that might arise during submission (e.g. delays with Blackboard or Gradescope) and should not be considered a shift of the due time.
End of semester exam
- Hurdle
- Identity Verified
- Mode
- Written
- Category
- Examination
- Weight
- 45%
- Due date
End of Semester Exam Period
7/06/2025 - 21/06/2025
- Learning outcomes
- L01, L02, L03, L04, L06, L07, L08
Task description
End of semester exam. The exam will test understanding of the concepts covered over the entire course.
The exam will be an invigilated multiple choice exam. The exam will be conducted on-campus.
Hurdle requirements
Refer to course grading informationExam details
Planning time | 10 minutes |
---|---|
Duration | 120 minutes |
Calculator options | (In person) Casio FX82 series only or UQ approved and labelled calculator |
Open/closed book | Closed Book examination - no written materials permitted |
Exam platform | Paper based |
Invigilation | Invigilated in person |
Submission guidelines
Deferral or extension
You may be able to defer this exam.
Course grading
Full criteria for each grade is available in the Assessment Procedure.
Grade | Description |
---|---|
1 (Low Fail) |
Absence of evidence of achievement of course learning outcomes. Course grade description: Conditions for Grade of 2 not satisfied. |
2 (Fail) |
Minimal evidence of achievement of course learning outcomes. Course grade description: MARK >= 20% (Please refer to additional information below) |
3 (Marginal Fail) |
Demonstrated evidence of developing achievement of course learning outcomes Course grade description: MARK >= 47% and Exam >= 40% (Please refer to additional information below) |
4 (Pass) |
Demonstrated evidence of functional achievement of course learning outcomes. Course grade description: MARK >= 50% and Exam >= 45% (Please refer to additional information below) |
5 (Credit) |
Demonstrated evidence of proficient achievement of course learning outcomes. Course grade description: MARK >= 65% and Exam >= 60% (Please refer to additional information below) |
6 (Distinction) |
Demonstrated evidence of advanced achievement of course learning outcomes. Course grade description: MARK >= 75% and Exam >= 70% (Please refer to additional information below) |
7 (High Distinction) |
Demonstrated evidence of exceptional achievement of course learning outcomes. Course grade description: MARK >= 85% and Exam >= 80% (Please refer to additional information below) |
Additional course grading information
To calculate your final grade and mark, we use the overall mark (MARK), the mark for the exam (EXAM), the mark for the On-line exercises (OLE)ᅠand the marks for the assignments (A1, A2)ᅠwith each of these marks given as a percentage.
MARK = A1 * 0.15 + A2 * 0.25 + Exam * 0.45 + OLE * 0.15
Final percentage will be rounded before grade cut-offs are applied.
Your final grade and final mark are then the highest grade for which your component results satisfy the criteria in the above table.
At the discretion of the course coordinator, final grades and marks may be scaled upwards, but not downwards.
Supplementary assessment
Supplementary assessment is available for this course.
Additional assessment information
Having Troubles?
If you are having difficulties with any aspect of the course material you should seek help. Speak to the course teaching staff.
If external circumstances are affecting your ability to work on the course, you should seek help as soon as possible. The University and UQ Union have organisations and staff who are able to help, for example, UQ Student Services are able to help with study and exam skills, tertiary learning skills, writing skills, financial assistance, personal issues, and disability services (among other things).
Complaints and criticisms should be directed in the first instance to the course coordinator. If you are not satisfied with the outcome, you may bring the matter to the attention of the School of EECS Director of Teaching and Learning.
Academic integrity
Students must not look at anyone else's code or show anyone else their own code. They must also refrain from copying code from the internet or other sources.
Use of AI
All assessment tasks evaluate students' abilities, skills and knowledge without the aid of generative Artificial Intelligence (AI) or Machine Translation (MT). Students are advised that the use of AI technologies to develop responses is strictly prohibited and may constitute student misconduct under the Student Code of Conduct.
They must also refrain from using generative AI tools.
In accordance with the Assessment Procedure, marks may be moderated and/or grade cutoffs may be lowered if academically justified.
Learning resources
You'll need the following resources to successfully complete the course. We've indicated below if you need a personal copy of the reading materials or your own item.
Library resources
Find the required and recommended resources for this course on the UQ Library website.
Learning activities
The learning activities for this course are outlined below. Learn more about the learning outcomes that apply to this course.
Filter activity type by
Please select
Learning period | Activity type | Topic |
---|---|---|
Multiple weeks |
Tutorial |
Weekly tutorials Learning outcomes: L01, L02, L03, L04, L05, L06, L07, L08 |
Practical |
Daily Help sessions (Monday-Friday 10am-5pm, Weeks 3-5 and 7-12). Learning outcomes: L01, L02, L03, L04, L05, L06, L07, L08 |
|
Lecture |
Week 1 Introduction to course and Python programming, variables and types, multiline programs Learning outcomes: L01, L04 |
|
Lecture |
Week 2 Functional decomposition and control structures Learning outcomes: L01, L03, L06 |
|
Lecture |
Week 3 Manipulating data structures, file I/O Learning outcomes: L01, L03, L06 |
|
Lecture |
Week 4 Intro to classes and objects, lists, variable scope Learning outcomes: L01, L02, L03, L06 |
|
Lecture |
Week 5 Dictionaries, Intro to Numpy Learning outcomes: L01, L02, L03, L04, L05, L06 |
|
Lecture |
Week 6 Array creation, vectorisation Learning outcomes: L01, L02, L03, L04, L05, L06, L07 |
|
Lecture |
Week 7 Data visualisation and further numpy examples Learning outcomes: L01, L02, L03, L04, L05, L06 |
|
Lecture |
Week 8 Introduction to data analysis Learning outcomes: L01, L02, L03, L04, L05, L06, L07 |
|
Lecture |
Week 9 Analysis of engineering data Learning outcomes: L01, L02, L03, L04, L05, L06, L07, L08 |
|
Lecture |
Week 10 Object orientation, implementation and application of classes, inheritance Learning outcomes: L01, L02, L03, L04, L05, L06 |
|
Lecture |
Week 11 Engineering applications, random walks Learning outcomes: L01, L02, L03, L04, L05, L06, L07, L08 |
|
Lecture |
Week 12 Engineering applications, diffusive processes Learning outcomes: L01, L02, L03, L04, L05, L06, L07, L08 |
|
Lecture |
Week 13 Engineering applications, course review Learning outcomes: L01, L02, L03, L04, L05, L06, L07, L08 |
Policies and procedures
University policies and procedures apply to all aspects of student life. As a UQ student, you must comply with University-wide and program-specific requirements, including the:
- Student Code of Conduct Policy
- Student Integrity and Misconduct Policy and Procedure
- Assessment Procedure
- Examinations Procedure
- Reasonable Adjustments - Students Policy and Procedure
Learn more about UQ policies on my.UQ and the Policy and Procedure Library.
School guidelines
Your school has additional guidelines you'll need to follow for this course: