Year
2023Credit points
10Campus offering
No unit offerings are currently available for this unit.Prerequisites
Nil
Incompatible
ISYS217 Programming Concepts , ITEC217 Programming Concepts
Unit rationale, description and aim
Computer programs are widely used to drive practical business applications. As a result, global demand for people with programming skills is increasing. Programmers are commonly required to maintain legacy code and develop new applications to make business competitive, to improve software security, and to contribute to people’s work efficiency. This unit introduces students to key concepts of computer program design and development using appropriate data structures, control structures and functions. In addition, students will learn object-oriented programming and basic testing and debugging skills. The aim of this unit is to introduce the basics of a modern programming language for building simple software applications involving objects and functional components. Hence by studying this unit students will be able to support the common good of mankind by overcoming chronic shortages of programmers to drive modern business applications.
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 knowledge of programming concepts, structures, tools, terminology and format through consistent problem solving and program implementation (GA5, GA10)
LO2 - Distinguish basic to advanced programming concepts including program structures, control structures, data structures and software structures through reflective and analytical program implementation (GA4, GA5)
LO3 - Analyse real-life applications and programs using object-oriented concepts and appropriate programming structures and tools (GA5, GA8)
LO4 - Develop object-oriented programming solutions for real-life practical systems to meet stakeholder needs and the responsibility to the common good (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 will include:
- Introduction to computers, programs and Java
- Programming terminology and concepts
- Elementary programming: identifiers, variables, constants, and operators
- Elementary program logic: selections and loops
- Elementary data types: numbers, strings and arrays
- System and Text I/O
- Functions and methods
- Objects and classes
- Object-oriented thinking
- Inheritance and polymorphism
- Abstract classes and interfaces
- Exception handling and testing
- Programming solutions to stakeholder needs and the common good.
Learning and teaching strategy and rationale
Mode of delivery: This unit is offered mainly in ‘Attendance mode’ with aspects of ‘Multi-mode’ incorporated into the delivery to maximise the learning support offered to students. Students will be required to attend face-to-face workshops in specific physical location/s (including supervised lab practical sessions) and have face-to-face interactions with teaching staff to further their achievement of the learning outcomes. This unit is also structured with some required upfront preparation before workshops – learning materials and tasks set via online learning platforms. This will provide multiple forms of preparatory and practice opportunities for students to prepare and revise.
Further to this, to ensure students are ready to transition from the Diploma and articulate into the second year of undergraduate study, transition pedagogies will be incorporated into the unit as the key point of differentiation from the standard unit. This focuses on an active and engaging approach to learning and teaching practices, and a scaffolded approach to the delivery of curriculum to enhance student learning in a supportive environment. This will ensure that students develop foundation level discipline-based knowledge, skills and attributes, and simultaneously the academic competencies required of students to succeed in this unit.
Students should anticipate undertaking 150 hours of study for this unit, including class attendance, readings, online forum participation 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 assessment item is a regular programming-based exercise with lab engagement that consists of programming environment setup, quiz and practical problem solving. The second and the final programming project assessment consists of one or several small to medium programming projects to implement with focus on modelling and solving real-world computational problems with potential impact to the common good.
Strategies aligned with transition pedagogies will be utilised to facilitate successful completion of the unit assessment tasks. For each assessment, there will be the incorporation of developmentally staged tasks with a focus on a progressive approach to learning. This will be achieved through activities, including regular feedback, particularly early in the unit of study to support their learning; strategies to develop and understand discipline-specific concepts and terminology; in-class practice tasks with integrated feedback; and greater peer-to-peer collaboration.
The assessment tasks for this unit are designed to demonstrate the achievement of each learning outcome. To pass this unit, students are required to obtain an overall mark of at least 50%.
Overview of assessments
Brief Description of Kind and Purpose of Assessment Tasks | Weighting | Learning Outcomes | Graduate Attributes |
---|---|---|---|
Assessment 1: Programming Studio The first assessment is a regular programming-based exercise with lab engagement which consists of programming environment setup, quiz and practical problem solving. It requires students to consistently demonstrate their understanding of programming concepts and apply their learned programming knowledge and skills. Submission Type: Individual Assessment Method: Cumulative assessment Artefact: Written solution and code | 50% | LO1, LO2 | GA4, GA5, GA10 |
Assessment Task 2: Programming Project The second assessment will consist of one or several small to medium programming projects to implement with focus on modelling and solving real-world computational problems with potential impact to the common good. Specifically, students will need to apply their object-oriented programming knowledge in designing and building larger application programs. Submission Type: Individual Assessment Method: Project design and implementation Artefact: Project documentation and code | 50% | LO3, LO4 | GA2, GA5, GA8 |
Representative texts and references
Farrell J, 2018, Java Programming, 9th edn, Cengage Learning.
Horstmann CS, 2018, Core Java Volume I – Fundamentals, 11th edn, Prentice Hall Press, New Jersey.
Liang DY, 2018, Introduction to Java Programming and Data Structures, Comprehensive Version, 11th edn, Pearson Education, UK.
Schildt H, 2018, Java: The Complete Reference, 11th edn, McGraw-Hill Education, USA.