Agile Coding

Unit Outline (Higher Education)

   
?   Display Outline Guidelines      


Effective Term: 2025/05
Institute / School :Institute of Innovation, Science & Sustainability
Unit Title: Agile Coding
Unit ID: ITECH2306
Credit Points: 15.00
Prerequisite(s): (GPSIT2001 or ITECH1000 or ITECH1400 or ITECH2001)
Co-requisite(s): Nil
Exclusion(s): (ITECH2100)
ASCED: 020103
Other Change:  
Brief description of the Unit

This unit introduces students to programming constructs of a textual programming language used in the creation of a software system. Students must have demonstrated previous pre-requisite knowledge regarding logical problem solving and basic algorithmic development. Students will be introduced to the use of an integrated development environment (IDE) to develop and edit source code, then compile, debug, test and run a software application. Students will be exposed to principles involved in the engineering/designing and developing of applications for information systems to address requirements using object-oriented and event-driven paradigms. Tools that enable collaborative coding are also utilised.

Grade Scheme: Graded (HD, D, C, P, MF, F, XF)
Work Experience Indicator:
No work experience
Placement Component: No
Supplementary Assessment:Yes
Where supplementary assessment is available a student must have failed overall in the Unit but gained a final mark of 45 per cent or above, has completed all major assessment tasks (including all sub-components where a task has multiple parts) as specified in the Unit Description and is not eligible for any other form of supplementary assessment
Course Level:
Level of Unit in CourseAQF Level(s) of Course
5678910
Introductory                                                
Intermediate                                        
Advanced                                                
Learning Outcomes:
Knowledge:
K1.

Explain the key paradigms of object-oriented programming (OOP) and event-driven programming (EDP) and how they can be integrated

K2.

Describe programming constructs and principles used to create modular code

K3.

Explain how primitive type and reference type variables are treated in memory

Skills:
S1.

Select and justify appropriate data types to represent information in a program

S2.

Develop multi-class object-oriented programs which incorporate APIs and self-authored classes

S3.

Develop, compile, test and debug code using an appropriate Integrated Development Environment (IDE)

S4.

Manage code assets through a source-code version control system repository in collaborative environments

S5.

Analyse and explain the run-time behaviour of code

Application of knowledge and skills:
A1.

Analyse, develop, compile, test and debug object-oriented programs to address specified requirements.

A2.

Use source-code version control tools to manage a repository of code

Unit Content:

Students will learn how to code in a current object-oriented programming language. They will learn how to use modern industry-standard software development tools to plan, develop/implement, test and manage software solutions.

Topics may include:
1. Appropriate use of data types to store information within a program.
2. Object-oriented programming concepts: encapsulation, polymorphism, inheritance, dynamic binding and abstraction.
3. Code design and modularization using object-oriented approach.
4. Design principles: classes and their relationships.
5. Using object-oriented modelling conceptualize an abstract design for an information system.
6. Using an IDE to edit, compile and debug code.
7. Event-driven Graphical User Interfaces
8. Source code version-control systems such as git.

Graduate Attributes:
Federation University recognises that students require key transferable employability skills to prepare them for their future workplace and society. FEDTASKS (Transferable Attributes Skills and Knowledge) provide a targeted focus on five key transferable Attributes, Skills, and Knowledge that are be embedded within curriculum, developed gradually towards successful measures and interlinked with cross-discipline and Co-operative Learning opportunities. One or more FEDTASK, transferable Attributes, Skills or Knowledge must be evident in the specified learning outcomes and assessment for each FedUni Unit, and all must be directly assessed in each Course.

FED TASK and descriptorDevelopment and acquisition of FEDTASKS in the Unit
Level
FEDTASK 1
Interpersonal

Students will demonstrate the ability to effectively communicate, inter-act and work with others both individually and in groups. Students will be required to display skills in-person and/or online in:

•   Using effective verbal and non-verbal communication

•   Listening for meaning and influencing via active listening

•   Showing empathy for others

•   Negotiating and demonstrating conflict resolution skills

•   Working respectfully in cross-cultural and diverse teams.

N/A - Not Applicable
FEDTASK 2
Leadership

Students will demonstrate the ability to apply professional skills and behaviours in leading others. Students will be required to display skills in:

•   Creating a collegial environment

•   Showing self -awareness and the ability to self-reflect

•   Inspiring and convincing others

•   Making informed decisions

•   Displaying initiative

N/A - Not Applicable
FEDTASK 3
Critical Thinking and Creativity

Students will demonstrate an ability to work in complexity and ambiguity using the imagination to create new ideas. Students will be required to display skills in:

•   Reflecting critically

•   Evaluating ideas, concepts and information

•   Considering alternative perspectives to refine ideas

•   Challenging conventional thinking to clarify concepts

•   Forming creative solutions in problem solving.

Level 2 - Student demonstrates some independence within provided guidelines
FEDTASK 4
Digital Literacy

Students will demonstrate the ability to work fluently across a range of tools, platforms and applications to achieve a range of tasks. Students will be required to display skills in:

•   Finding, evaluating, managing, curating, organising and sharing digital information

•   Collating, managing, accessing and using digital data securely

•   Receiving and responding to messages in a range of digital media

•   Contributing actively to digital teams and working groups

•   Participating in and benefiting from digital learning opportunities.

Level 2 - Student demonstrates some independence within provided guidelines
FEDTASK 5
Sustainable and Ethical Mindset

Students will demonstrate the ability to consider and assess the consequences and impact of ideas and actions in enacting ethical and sustainable decisions. Students will be required to display skills in:

•   Making informed judgments that consider the impact of devising solutions in global economic environmental and societal contexts

•   Committing to social responsibility as a professional and a citizen

•   Evaluating ethical, socially responsible and/or sustainable challenges and generating and articulating responses

•   Embracing lifelong, life-wide and life-deep learning to be open to diverse others

•   Implementing required actions to foster sustainability in their professional and personal life.

N/A - Not Applicable
Learning Task and Assessment:

Students should engage with the weekly laboratory exercises to develop their programming skills. In class, students will work individually to plan, create (code) and test software to gain practice in programming. Students should engage with all material made available online, in lectures and computer laboratory classes in order to support their knowledge acquisition and practical work.
The in-semester assessment for the subject will involve the development and testing of working programs, drawing together topics from multiple weeks. The final test/examination will test the understanding of the concepts and skills studied in this course.

 Learning Outcomes AssessedAssessment TasksAssessment TypeWeighting
1.K1, K2, K3, S1, S2, S5, A1

Provide theoretical answers and provide practical solutions to a range of questions and problem types drawn from theory and topics used during this unit, in one or more quizzes.

Quiz or Quizzes

0-20%

2.K2, K3, S1, S2, S3, S4, S5, A1, A2

Students will be required to complete tasks during weekly lab sessions. Many of these labs will require the student to either demonstrate how the code they have written fulfils an objective of the task, or to explain what portions of the code achieve or how a particular concept has been implemented, or to make an on-the-spot alteration requested by the lab tutor.

Lab work demonstrations and explanations

0-30%

3.K1, K2, K3, S1, S2, S3, S4, S5, A1, A2,

Students will develop moderate sized multi-class programs possibly requiring demonstration of taught concepts and techniques, to fulfill a set of provided requirements. They may also be asked to demonstrate techniques or attend an assessment interview. They may be required to use a git repository which may provide 'starting' code.

Programming Assignments

50-80%

Adopted Reference Style:
APA  

Professional Standards / Competencies:
 Standard / Competency
1.Australian Computer Society - Core Body of Knowledge: 2023 accreditation
AttributeAssessedLevel
Core ICT Knowledge
Computational Science and Engineering
Programming: programming language constructs, coding methods, scripts and apps, interfaces YesIntermediate
Software Engineering: systematic practices of specification, development and testing to produce reliable, safe, maintainable computing systems, integrated development and configuration management environments YesIntroductory
Application Systems
User experience: interface design, physical and cognitive ergonomics YesIntroductory
2.Skills Framework for the Information Age (SFIA): Version 8
AttributeAssessedLevel
Development and implementation
Systems development
SWDN Software design (Levels 2 - 6)

Specifying and designing software to meet defined requirements by following agreed design standards and principles.

Yes1
PROG Programming/software development (Levels 2 - 6)

Developing software components to deliver value to stakeholders.

Yes2
TEST Testing (Levels 1 - 6)

Investigating products, systems and services to assess behaviour and whether this meets specified or unspecified requirements and characteristics.

Yes2
Data and analytics
DTAN Data modelling and design (Levels 2 - 5)

Developing models and diagrams to represent and communicate data requirements and data assets.

Yes2
Delivery and operation
Technology management
CFMG Configuration management (Levels 2 - 6)

Planning, identifying, controlling, accounting for and auditing of configuration items (CIs) and their interrelationships.

Yes1