Year
2021Credit points
10Campus offering
No unit offerings are currently available for this unit.Prerequisites
Nil
Incompatible
ISYS217 Programming Concepts
Teaching organisation
4 hours per week for twelve weeks or equivalent.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 ethically maintain legacy code, to develop new applications to make business competitive and to improve software security. 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:
Demonstrate knowledge of programming concepts, structures, tools, terminology and format through consistent problem solving and program implementation (GA5, GA10)
Distinguish basic to advanced programming concepts including program structures, control structures, data structures and software structures through reflective and analytical program implementation (GA4, GA5)
Analyse real-life applications and programs using object-oriented concepts and appropriate programming structures and tools (GA5, GA8)
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
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.
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 lab that consists of programming environment setup and consistent problem solving. The second assessment item is a programming practical containing multiple programming tasks to solve which requires the understanding of basic to advanced programming concepts. The final assessment is a comprehensive programming assignment that requires students to demonstrate programming concepts and skills gained in the unit through building a larger object-oriented software program with potential impact to the common good.
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%
- attempt both assessment tasks
Overview of assessments
Brief Description of Kind and Purpose of Assessment Tasks | Weighting | Learning Outcomes | Graduate Attributes |
---|---|---|---|
Assessment Task 1: Programming lab The first assessment item is a regular lab-based programming exercise which consists of programming environment setup and problem solving. This task requires students to consistently demonstrate their digital literacy skills and apply their programming knowledge and technical understanding gained in the unit. Submission Type: Individual Assessment Method: In-class cumulative assessment Artefact: code | 30% | LO1 | GA5, GA10 |
Assessment Task 2: Programming practical The second assessment item is a programming practical containing multiple programming tasks to solve which requires the understanding of basic to advanced programming concepts. This task requires students to demonstrate their critical thinking skills and apply their practical programming skills gained in the unit. Submission Type: Individual Assessment Method: Programming code submission Artefact: code | 30% | LO2 | GA4, GA5 |
Assessment Task 3: Programming assignment The purpose of this assessment is to test students’ ability to apply and demonstrate their knowledge through a real-world programming assignment. More specifically students will work individually to demonstrate learned programming concepts and skills through building a larger object-oriented software program with potential impact to the common good. Submission Type: Individual Assessment Method: Programming and documentation submission Artefact: code package and readme document | 40% | LO3, LO4 | GA2, GA5, GA8 |
Representative texts and references
Liang DY, 2018. Introduction to Java Programming and Data Structures, Comprehensive Version, 11th Edition, Pearson Education.
Farrell J, 2018, Java Programming, 9th Edition. Cengage Learning.
Horstmann Cay S., 2018, Core Java Volume I -- Fundamentals, 11th Edition. Prentice Hall.
Schildt H, 2018, Java: The Complete Reference, 11th Edition. McGraw-Hill Education.