IFN584 Object-Oriented Design and Development


To view more information for this unit, select Unit Outline from the list below. Please note the teaching period for which the Unit Outline is relevant.


Unit Outline: Semester 1 2025, Gardens Point, Internal

Unit code:IFN584
Credit points:12
Pre-requisite:IFN581or IFN555 or IFQ555 or IFN556 or IFQ556 OR (192cps in IV04 or IV05 or EV07 or EV08) OR (admission into IV54 or IV59 or IV58 or IV60)
Anti-requisite:IFN563 or IFN564 or IFQ563 or IFQ564
Coordinator:Yi Lu | yt.lu@qut.edu.au
Disclaimer - Offer of some units is subject to viability, and information in these Unit Outlines is subject to change prior to commencement of the teaching period.

Overview

Object orientation is a program design principle applicable to software at various scales. In this unit you will extend your knowledge of small-scale object-oriented programming to large-scale systems in which the classes and objects mirror their real-world counterparts in the business-level processes the software supports (e.g., customers, orders, products, projects, etc). To do so you will learn about and apply several standard software design principles and patterns applicable to large-scale IT systems, and you will learn how such designs are communicated professionally and used as part of object-oriented software development processes. You will then implement those designs in an industry-standard object-oriented programming language, making use of its various library modules. Depending on the nature of the practical projects you complete this could require implementing user interfaces, executing concurrent threads, interacting with databases, and so on.

Learning Outcomes

On successful completion of this unit you will be able to:

  1. Explain object-oriented design principles and their benefits for building maintainable and extensible software
  2. Model real-world problems using object-oriented abstractions
  3. Communicate object-oriented designs professionally to peers
  4. Implement object-oriented software using industry-standard library modules
  5. Implement maintainable and extensible software using established object-oriented design principles and patterns
  6. Collaborate in a team environment to deliver an industry standard software application for a client

Content

This teaching unit focuses on the following technical topics:

  • Object-oriented design principles and patterns
  • Object-oriented software development processes
  • Implementing object-oriented designs as robust, extensible software

Real-World Learning is emphasised through application of industry-standard software development principles and tools. Successful completion of this teaching unit will enhance your employability not only by demonstrating your technical knowledge, but also by showing your ability to work in a team comprising other students with diverse skills and backgrounds.

Learning Approaches

This unit uses a blended approach to teaching making use of on-line resources, lectures, practical exercises, and your own individual practice. The on-line resources will include readings and videos from a variety of sources to help explain complex topics. You can also participate in on-line discussions with your classmates and teaching team to create a community of engaged learners that help and support one another. A hands-on "learning by doing" approach is emphasised, beginning with small exercises that will help you acquire the knowledge and develop the skills needed to complete the major assessment tasks.

You can expect to spend between 10 to 15 hours per week on average preparing for and attending scheduled classes, completing assessment tasks, and undertaking your own independent study to consolidate your learning.

Feedback on Learning and Assessment

Feedback in this unit is provided in the following ways:

  • You can ask the teaching staff for advice and assistance during lectures and practical sessions.
  • You can receive formative peer and academic feedback on your practical exercises.
  • You will receive written feedback on submitted assessment items.
  • You can request private consultation with teaching staff.

Assessment

Overview

The assessment tasks in this unit are designed to allow you to demonstrate your comprehension and mastery of the core object-oriented design and programming concepts covered.

Unit Grading Scheme

7- point scale

Assessment Tasks

Assessment: Object-oriented programming task

In this task you will complete an object-oriented programming exercise based on a simple design in order to reinforce your object-oriented programming knowledge and prepare you for the larger design-and-implementation task.

This assignment is eligible for the 48-hour late submission period and assignment extensions. 

Weight: 25
Individual/Group: Individual
Due (indicative): Week 6
Due on Friday of Week 6.
Related Unit learning outcomes: 4, 5

Assessment: Object-oriented design and implementation task

In this task you will participate in a non-trivial object-oriented software design and implementation exercise. You and your team will need to both design an object-oriented IT solution that satisfies certain business requirements, and then implement it as a practical software system.

Both the group's achievement (35%) and your individual contribution (10%) will be assessed, the latter via peer assessment.

This assignment is eligible for the 48-hour late submission period and assignment extensions. 

Weight: 45
Individual/Group: Individual and group
Due (indicative): Week 12
Due on Friday of Week 12.
Related Unit learning outcomes: 2, 4, 5, 6

Assessment: Final exam

The final exam will test the knowledge you have acquired throughout the semester about object-oriented design principles and patterns, and their applicability to the development of object-oriented software that meets business requirements.

Weight: 30
Individual/Group: Individual
Due (indicative): During central examination period
Central exam duration: 2:10 - No perusal
Related Unit learning outcomes: 1, 2, 3

Academic Integrity

Academic integrity is a commitment to undertaking academic work and assessment in a manner that is ethical, fair, honest, respectful and accountable.

The Academic Integrity Policy sets out the range of conduct that can be a failure to maintain the standards of academic integrity. This includes, cheating in exams, plagiarism, self-plagiarism, collusion and contract cheating. It also includes providing fraudulent or altered documentation in support of an academic concession application, for example an assignment extension or a deferred exam.

You are encouraged to make use of QUT’s learning support services, resources and tools to assure the academic integrity of your assessment. This includes the use of text matching software that may be available to assist with self-assessing your academic integrity as part of the assessment submission process.

Breaching QUT’s Academic Integrity Policy or engaging in conduct that may defeat or compromise the purpose of assessment can lead to a finding of student misconduct (Code of Conduct – Student) and result in the imposition of penalties under the Management of Student Misconduct Policy, ranging from a grade reduction to exclusion from QUT.

Requirements to Study

Costs

No extraordinary charges or costs are associated with the requirements for this unit.

Resources

There are no special resource requirements for this unit. The assignments can be completed using freely-available software.

Risk Assessment Statement

There are no unusual risks associated with this Information Technology unit.

Course Learning Outcomes

This unit is designed to support your development of the following course/study area learning outcomes.

IN20 Master of Information Technology

  1. Demonstrate advanced specialist IT knowledge in at least one information technology discipline.
    Relates to: ULO1, Final exam
  2. Critically analyse complex IT problems and opportunities and use creativity and problem-solving skills to generate innovative and novel solutions that are convincingly justified.
    Relates to: ULO2, Object-oriented design and implementation task, Final exam
  3. Integrate advanced, industry-best practice, IT methods, tools and techniques to develop and implement complex IT systems, processes and/or software.
    Relates to: ULO2, ULO4, ULO5, Object-oriented programming task, Object-oriented design and implementation task, Final exam
  4. Employ leadership and initiative in both self-directed and collaborative contexts to create value for others.
    Relates to: ULO6, Object-oriented design and implementation task
  5. Communicate effectively in IT professional and scholarly contexts to specialist and non-specialist audiences using written, visual and oral formats.
    Relates to: ULO3, Final exam