Credit points


Campus offering

No unit offerings are currently available for this unit


ITEC217 Programming Concepts orISYS217 Programming Concepts


ISYS313 Object Oriented Programming

Teaching organisation

4 hours per week for twelve weeks or equivalent.

Unit rationale, description and aim

This is an intermediate level programming unit that prepares students for developing specialised applications by teaching them key programming theories including data structures and algorithms. It is built on the fundamental programming concepts students have gained from the Programming Concepts unit to teach students more advanced programming concepts. It covers event-driven programming, graphical user interface, multimedia, file input/output, data structures, and algorithms. It aims to equip students with the skills needed to solve programming problems of moderate complexity, such as applications that provide an interface to real-world data. It also teaches students effective use of computing resources such as CPU cycles, file input/output, and memory usage through data structures and algorithms, which contributes to stewardship of natural and computing resources by saving energy consumption by computers.

Learning outcomes

To successfully complete this unit you will be able to demonstrate you have achieved the learning outcomes (LO) detailed in the below table.

Each outcome is informed by a number of graduate capabilities (GC) to ensure your work in this, and every unit, is part of a larger goal of graduating from ACU with the attributes of insight, empathy, imagination and impact.

Explore the graduate capabilities.

On successful completion of this unit, students should be able to:

LO1 - Demonstrate high-level working knowledge and understanding of advanced programming concepts and apply them to solve real world problems (GA4, GA5)

LO2 - Apply the current practices of developing interactive applications that exhibit effective and efficient user interfaces with appropriate tools (GA5, GA10)

LO3 - Evaluate the consequences of key design decisions on program performance and user experience (GA5, GA8)

LO4 - Critically evaluate data structures and algorithms relevant to a particular problem and choose appropriate ones for the stewardship of computing resources (GA2, GA5)

Graduate attributes

GA2 - recognise their responsibility to the common good, the environment and society

GA4 - think critically and reflectively 

GA5 - demonstrate values, knowledge, skills and attitudes appropriate to the discipline and/or profession 

GA8 - locate, organise, analyse, synthesise and evaluate information 

GA10 - utilise information and communication and other relevant technologies effectively


Topics covered:

  • Java Event Model
  • Java GUI programming
  • Java Multimedia
  • Text and binary I/O
  • Recursion
  • Generics
  • Data structures
  • Sorting and search algorithms
  • Stewardship of computing resources through appropriate use of data structures and algorithms

Learning and teaching strategy and rationale

This unit is offered in different modes. These are: “Attendance” mode, “Blended” mode and “Online” mode. This unit is offered in three modes to cater for the learning needs and preferences of a range of participants and maximise effective participation for isolated and/or marginalised groups.

Attendance Mode

In a weekly attendance mode, students will require face-to-face attendance in specific physical location/s. Students will have face-to-face interactions with lecturer(s) or lab demonstrators to further their achievement of the learning outcomes. This unit is structured with required upfront preparation before workshops, most students report that they spend an average of one hour preparing before the workshop and one or more hours after the workshop practicing and revising what was covered. The online learning platforms used in this unit provide multiple forms of preparatory and practice opportunities for you to prepare and revise.

Blended Mode

In a blended mode, students will require face-to-face attendance in blocks of time determined by the School. Students will have face-to-face interactions with lecturer(s) to further their achievement of the learning outcomes. This unit is structured with required upfront preparation before workshops. The online learning platforms used in this unit provide multiple forms of preparatory and practice opportunities for you to prepare and revise.

Online Mode

This unit uses an active learning approach to support students in the exploration of the essential knowledge associated with working with technology. Students can explore the essential knowledge underpinning technological advances and develop knowledge in a series of online interactive lessons and modules. Students are given the opportunity to attend facilitated synchronous online seminar classes with other students and participate in the construction and synthesis of knowledge, while developing their knowledge of working with technology. Students are required to participate in a series of online interactive workshops which include activities, knowledge checks, discussion and interactive sessions. This approach allows flexibility for students and facilitates learning and participation for students with a preference for virtual learning.

Assessment strategy and rationale

The first assessment item is based on completing weekly lab practicals. The purpose of this cumulative lab/attendance assessment task is to identify any problems students may be having with the course material and assist them to overcome these problems and improve learning outcomes for the unit overall. The second assessment item is a larger program design report that assesses students’ design and development skills. The final assessment is a programming assignment that assesses students’ understanding and knowledge on application development.

In order to pass this unit, students are required to:

1.    achieve an overall mark of at least 50%, and

2.   attempt all three assessment tasks.

The assessment tasks for this unit are designed for students to demonstrate their achievement of each learning outcome. All assessment will be marked in accordance with pre-determined rubric and/or marking guide.

Overview of assessments

Brief Description of Kind and Purpose of Assessment TasksWeightingLearning OutcomesGraduate Attributes

Assessment 1: Cumulative lab assessment

These lab practical tasks cover JAVA GUI and data structures and algorithms. For GUI, it involves creating a suitable user interface with labels, text field and buttons, for uploading an image from the local machine and displaying it in the panel. Assessment will be based on functionality and code structure, such as appropriate indentation style, meaningful variable names.

Submission Type: Individual

Assessment Method: In-class cumulative assessment

Artefact: Functionality demonstration 


LO2, LO4

GA2, GA5, GA10

Assessment 2: Design Report for a number filtering program with GUI

This assessment task consists of a 1000-word design report highlighting how JavaFX architecture can be used to develop a GUI for a Fibonacci number sequence filtering program. The assessment is designed to assess students’ ability to apply their knowledge and application skills of an industry standard framework for developing a search function application.

Submission Type: Individual

Assessment Method: Program design document

Artefact: Written report 



GA5, GA8

Assessment 3: Programming Assignment

For assessment 3, students have to submit a working JavaFX GUI for a Fibonacci number sequence filtering program. The aim of this assessment is to enable students to undertake a realistic application development. Students’ ability to design and develop a realistic solution will be assessed in this assessment task.

Submission Type: Individual

Assessment Method: Programming task

Artefact: Programming code 



GA4, GA5

Representative texts and references

Y. Daniel Liang 2018, Introduction to Java Programming and Data Structures, 11th edn, Pearson Education.

C. S. Horstmann 2019, Core Java, Volume II--Advanced Features, 11th edn, Pearson Education.

H. Schildt 2019, Java: The Complete Reference, 11th edn, McGraw Hill.

Have a question?

We're available 9am–5pm AEDT,
Monday to Friday

If you’ve got a question, our AskACU team has you covered. You can search FAQs, text us, email, live chat, call – whatever works for you.

Live chat with us now

Chat to our team for real-time
answers to your questions.

Launch live chat

Visit our FAQs page

Find answers to some commonly
asked questions.

See our FAQs