Year

2023

Credit points

10

Campus offering

No unit offerings are currently available for this unit

Prerequisites

ITEC217 Programming Concepts OR ISYS217 - Programming Concepts

Incompatible

ISYS313 - Object Oriented Programming

Teaching organisation

150 hours over a twelve-week semester or equivalent study period

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 object-oriented programming, event-driven programming, graphical user interface, file input/output, generics, 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 through implementing efficient data structures and algorithms, which contributes to stewardship of natural and computing resources.

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 through consistent problem solving and program understanding (GA5, GA10)

LO2 - Implement application programs with correct and appropriate user interface, program I/O and generics, and data structure and algorithm (GA5, GA8)

LO3 - Design applications that exhibit effective user interface and efficient functional components (GA4, GA5)

LO4 - Analyse data structures and algorithms 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

Content

Topics covered:

  • Object-oriented programming
  • Generics programming
  • Event-driven programming
  • Graphical user interface design
  • Java I/O systems
  • Recursion and recursive methods
  • Data structures and efficient algorithms
  • Sorting algorithms
  • Introduction to efficient non-linear data structures
  • Stewardship of computing resources through appropriate use of data structures and algorithms

Learning and teaching strategy and rationale

This unit can be offered in different modes. These are: “Attendance” mode, “Blended” mode and “Online” mode, 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 or online 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 students 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 students to prepare and revise.

ACU Online

This unit uses an active learning approach to support students in the exploration of knowledge essential to the discipline. Students are provided with choice and variety in how they learn. Students are encouraged to contribute to asynchronous weekly discussions. Active learning opportunities provide students with opportunities to practice and apply their learning in situations similar to their future professions. Activities encourage students to bring their own examples to demonstrate understanding, application and engage constructively with their peers. Students receive regular and timely feedback on their learning, which includes information on their progress.

Students should anticipate undertaking 150 hours of study for this unit, including activities like class attendance, reading, online engagement and assessment preparation.

Assessment strategy and rationale

A range of assessment procedures will be used to meet the unit learning outcomes and develop graduate attributes consistent with University assessment requirements. The first online engagement assessment consists of a series of weekly submissions or activities that test students’ understanding of the asynchronous learning modules. The second assessment item is a regular advanced programming-based lab exercises that consist of programming environment setup and practical problem solving. The last programming project assessment will consist of one or several small to medium advanced programming projects requiring efficiently developing user interfaces and data  structures and algorithms that contribute to the stewardship of computing resources.

The assessment tasks for this unit are designed for you to demonstrate your achievement of each learning outcome. To pass this unit, students are required to achieve an overall mark of at least 50%. 

Overview of assessments

Brief Description of Kind and Purpose of Assessment TasksWeightingLearning OutcomesGraduate Attributes

Assessment Task 1: Online engagement

This assessment consists of a series of weekly submissions or activities (e.g., quiz answers, short answers, forum discussions, or small coding tasks) that test students’ understanding of the asynchronous learning modules. These submissions will be provided timely feedback to improve student learning of the unit content.  

Submission Type: Individual

Assessment Method: Cumulative assessment

Artefact: Answers and problem solving

30%

LO1

GA5, GA10

Assessment Task 2: Advanced programming practical

The assessment is a regular advanced programming-based lab practical which consists of programming environment setup and practical problem solving. It will assess on the application of advanced programming concepts including Java OOP, GUI, program I/O, generics, and data structure and algorithm.

 

Submission Type: Individual

Assessment Method: Cumulative assessment

Artefact: Written solution and code

30%

LO2

GA5, GA8

Assessment Task 3: Advanced programming project

The assessment will consist of one or several small to medium advanced programming projects. Student will develop larger applications exhibiting effective user interfaces and efficient functional components that contribute to the stewardship of computing resources. The aim of this assessment is to provide students experience on different technical aspects of project development.

 Submission Type: Individual

Assessment Method: Project design and implementation

Artefact: Project documentation and code

40%

LO3, LO4

GA2, 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