ECE2071 Systems programming
Faculty of Engineering
ECE2071 Systems programming is a level 2, 6-credit-point, undergraduate unit from the Faculty of Engineering, offered in 2025 in Semester 1 at Clayton and Malaysia. It needs (ENG1013 or ENG1003) and (ENG1060 or ENG1014) and unlocks 6 units, leading on to 10 units in all.
- Credit points
- 6
- Offered in 2025
- Semester 1
- Clayton, Malaysia
- Assessment
- Exam 40%
- and 4 other tasks
- Workload
- 144 hours
- per semester
This is the 2025 handbook entry. See the 2027 entry.
Reviews
No reviews yetNo reviews yet. Be the first to review ECE2071.
Requisites
Before ECE2071
Prerequisites
Pass these before you enrol.
After ECE2071
6 units list ECE2071 as a prerequisite or corequisite.
Overview
This unit provides an introduction to computers, microcontrollers, processor organisation, and algorithm design for engineering problems and embedded computer systems. Key microprocessor topics including serial communication, interrupts and analogue to digital conversion, are addressed. The unit covers the C programming language and its implementation on a typical computer, including standard data types, arrays, control statements, functions, C library functions, pointers, strings, arrays of pointers, structures, linked lists, dynamic memory allocations, and abstract data structures. The unit presents basic assembly programming, using a RISC-based architecture, with a focus on computer arithmetic and the stack. It introduces object-oriented programming principles and design methodologies. Key software engineering techniques, such as version management, are also covered and operating system concepts are introduced.
Offerings in 2025
| Teaching period | Campus | Mode |
|---|---|---|
| First semester | Clayton | Flexible |
| First semester | Malaysia | On campus |
Assessment
- Mid-semester testQuiz / TestThreshold hurdle10%
- AssignmentsArtefactThreshold hurdle20%
- Workshop-related activitiesExerciseThreshold hurdle5%
- Project activitiesProjectThreshold hurdle25%
- Final assessmentExaminationThreshold hurdle40%
Learning outcomes
When you finish this unit, you should be able to:
- 1
Apply appropriate algorithms, abstract data structures, environments, and standards to a range of real-world programming scenarios.
- 2
Construct programs to meet simple and complex real-world specifications at a range of abstraction levels, including assembly, making use of both procedural and object-oriented programming paradigms.
- 3
Evaluate the performance of software through the development of test cases and automated measurement and analysis tools.
- 4
Describe the design, implementation and project management process of a complex system using context-appropriate graphical, narrative, or technical communication strategies.
- 5
Describe the operating principles and use-cases of interrupts, the conversion of analogue and digital signals, and serial communication protocols.
Workload and teaching
- Workshops24 hours
- Applied sessions12 hours
- Applied sessions36 hours
- Practical activities18 hours
- Teaching approachActive learning
- Teaching approachOnline learning
- Teaching approachSimulation or virtual practice
- Teaching approachPeer assisted learning
The minimum total expected workload to achieve the learning outcomes for this unit is 144 hours per semester typically comprising a mixture of 3-6 hours of scheduled learning activities and 6-9 hours of independent study per week. Scheduled activities may include a combination of teacher-directed learning, peer-directed learning and online engagement. Independent study may include associated readings, assessment and preparation for scheduled activities.
Working through theory-based, software-based and hardware-based examples during the workshop.
Independent study using video, written and online quiz-based resources.
The assignments use a variety of tools for virtual practice of software development and analysis. The Projects provides a virtual practice environment for problem-solving in embedded design.
In a team of four student engineers, you will work on a project over the course of a semester. You will also work within informal teams during the workshops.
Learning resources
Required resources
- ElecLab Toolkit - Information regarding how to acquire one on your campus is available on this webpage.
- BYOD for workshops
Technology resources
- C compiler
- Text Editor (eg. VS Code)
- MicroController IDE (CubeIDE)
- MIPS Simulator
Where it fits
ECE2071 is part of 5 areas of study in the 2025 handbook.
- BIOMDENG03Part C. Biomedical engineering knowledge and applicationBiomedical engineeringNo reviews yet
- CHEMENG04Chemical engineering technical electivesChemical engineeringNo reviews yet
- ECSYSENG04Part C. Electrical and computer systems engineering knowledge and applicationElectrical and computer systems engineeringNo reviews yet
- ROBMCTRN04Part C. Robotics and mechatronics engineering knowledge and applicationRobotics and mechatronics engineeringNo reviews yet
- SNSYSMNR01Core unitsSensory systems in Industry 4.0No reviews yet
Contacts
- Unit Coordinators
- Dr Ajay Achath Mohanan
- James Salamy
- Chief Examiners
- James Salamy
Common questions
What are the prerequisites for ECE2071?
You need (ENG1013 or ENG1003) and (ENG1060 or ENG1014) before you enrol.
What can I take after ECE2071?
ECE2071 is a prerequisite or corequisite for 6 units, including ECE3073, ECE4076, ECE4078, ECE4179, ENG4105 and TRC3500. Those lead on to 10 units in all.
When is ECE2071 offered?
In 2025, ECE2071 runs in Semester 1 at Clayton and Malaysia.
How much work is ECE2071?
The handbook expects about 144 hours of study across the semester. No students have rated its difficulty yet.
Does ECE2071 have an exam?
Yes. The exam is worth 40% of the final mark, alongside 4 other tasks.
Which majors and minors include ECE2071?
ECE2071 is part of Biomedical engineering; Chemical engineering; Electrical and computer systems engineering; Robotics and mechatronics engineering; and Sensory systems in Industry 4.0.