IFQ636 Software Lifecycle Management


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: Session 2 2026, QUT Online, Online

Unit code:IFQ636
Credit points:12
Pre-requisite:IFN585 or IFQ585 or ((IFN552 and IFN558) or (IFQ552 and IFQ558)) OR admission into IQ15
Equivalent: IFN636
Assumed Knowledge:

Students are required to have successfully completed a computer programming unit that teaches the fundamentals of imperative-style programming, e.g., using a language like Python, Java, C#, etc.

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

Software development is not an isolated technical activity, but instead involves working with multiple stakeholders and infrastructures to develop solutions of general applicability and lasting value. This unit gives you hands-on experience with management techniques and technical tools used for designing, developing, deploying and maintaining substantial IT systems. It provides knowledge and skills of the software life cycle in which applications are developed from conception to release by multi-disciplinary teams of analysts, architects, developers and managers. It exposes you to the critical stages of the software life cycle: requirements and design, development and testing, and Cloud performance and scalability tuning. You will see different techniques and tools supporting different stages, delivered through a modern, agile methodology. At its core, the unit provides you with fundamental programming and critical problem-solving skills in real-world systems contexts.

Learning Outcomes

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

  1. Explain the key stages of the software life cycle, the different artefacts associated required to be produced through these and the supportive techniques, languages and tools and languages used.
  2. Create a software blueprint using requirements and design specifications based on descriptions, references and other insights of real-world systems contexts.
  3. Develop a software implementation and test plans comprising a software application module, its components and application programming interfaces.
  4. Configure a software implementation using Cloud systems to meet given performance and scalability requirements when it is operated.
  5. Apply effective teamwork using ICT professional roles and project work practices.

Content

The teaching unit is delivered as three linked modules.

  • Module 1 introduces you to software systems, software life cycle management and the first of the life cycle stages in requirements analysis and design. You will be introduced to the key layers and parts of software and how they interact to support real-world systems contexts. Based on this, you will learn how to analyse systems contexts and capture requirements and design specifications using widely supported techniques.
  • Module 2 introduces you to implementation aspects of software applications. This includes how to develop programs which implement higher-level modules and lower-level components using object-oriented programming. The focus will be on the application logic layer, fundamental program control and data structures, and the way application components support the presentation (user interface) and database layers. You will learn how to create application programming interfaces allowing external systems to invoke software components. This part will also cover software testing.
  • Module 3 shows you how software applications are prepared for running in Cloud infrastructure to meet performance and scalability requirements. You will be exposed to relevant concepts and mechanisms, such as virtual machines, multi-tenancy and performance and scalability, which you will apply in a step-by-step way using state-of-the-art Cloud infrastructure. It will provide you with a basic appreciation of this aspect of the software life cycle, whereby developed software components are continuously released into production, in line with real-world practice.

This is a first-year teaching unit which would normally be undertaken in a student's first or second semester. It supports career development and employability by teaching practical programming skills and emphasises use of contemporary, industry-relevant technologies to do so. Through its groupwork assignment it also provides experience at working with other students with diverse backgrounds and skill sets.

Learning Approaches

In this fully online unit you will have the opportunity to learn through active engagement with the interactive learning resources, peer learning, moderated and facilitated online discussions, learning events and self-directed learning materials.

The pre-recorded lecture videos and online activities will provide you with the knowledge and skills for understanding the architecture of software applications, requirements and design specifications, introductory exposure to programming fundamentals, software testing and Cloud deployment and performance and scalability tuning of applications using Cloud tools. The different aspects will cover required techniques, programming, tools and Cloud system tools.

Self-paced learning materials build directly on the material presented in the pre-recorded lecture videos and will involve detailed instruction sheets for undertaking the required tasks. In addition, you will practise the principles and techniques required to develop planning, communication, reflection and teamwork skills. This learning is facilitated by communicating the different aspects of software applications produced through different stages of the software life cycle and keeping an online project tracking logbook. This will be used as part of the progressive assessment throughout the unit offering students multiple opportunities to demo

Feedback on Learning and Assessment

There are multiple ways for you to receive feedback on your learning and progress in this unit. These include:

  • formative in-class individual and whole-of-class feedback provided by unit staff during discussion activities 
  • responses to questions posed through the unit communication channel from your peers and teaching staff
  • feedback given on your assessment items individually via the rubric and written feedback.

Assessment

Overview

The assessment in this unit has been designed so that you may develop deeper understanding of the knowledge and key skills expected of IT graduates concerning software life cycle management, the different artifacts required to be produced for software applications intended for real-world digital solutions and the key activities in producing these. You will develop the skills to work collaboratively and present confidently, demonstrating effective written and visual communication. You will also develop the skills to engage in reflective practice.

As well as individual assessment tasks, early in the semester you will be asked to form into small teams so that you can work together on aspects of the large assignment. You will be required to use team collaboration tools, e.g., Slack (team collaboration) and Trello (project tracking), to support your teamwork activities.

The assessments are structured through the different perspectives of software applications in the different stages of the software lifecycle: requirements and design, software development and testing, and production tuning and release. Each will of these stages will be undertaken for a progressive development of a real-world example of a software application.

Unit Grading Scheme

7- point scale

Assessment Tasks

Assessment: Software requirements analysis and design

In this task you will develop a system design that meets the needs of various stakeholders, including the client requesting the system and the future development team, through requirements analysis, consideration of alternative designs, and cost-benefits analysis. The assessment required live oral presentation and demonstration, followed by a recorded demonstration. 

The use of generative artificial intelligence (GenAI) tools is prohibited during this assessment.

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

Weight: 50
Length: 10 minute recorded demonstration
Individual/Group: Individual
Due (indicative): Week 4
Related Unit learning outcomes: 1, 2, 3

Assessment: Software development, testing and configuration

In this task you and your team will apply programming and management skills to develop an application that meets the functional requirements of a given system design. The design may be your own, if suitable, or one developed by someone else. Your team will deploy the completed program as a Cloud-based application, configuring the infrastructure in such a way as to meet the original performance requirements. The individual assessment will be based on peer evaluation within the group. The project task required live oral presentation and demonstration, followed by a recorded demonstration.

The use of generative artificial intelligence (GenAI) tools is prohibited during this assessment.

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

Weight: 50
Length: 10 minutes recorded presentation
Individual/Group: Individual and group
Due (indicative): Week 8
Related Unit learning outcomes: 1, 3, 4, 5

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.

Resources

There is no required textbook for this unit. However, this unit may, where appropriate, make use of selected chapters from textbooks, journals, and magazines. Students are encouraged to obtain a copy of these materials from the library. Where possible, materials will be made available online through QUT Readings.

Risk Assessment Statement

There are no unusual health and safety issues associated with this unit.

Course Learning Outcomes

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

IQ20 Master of Information Technology

  1. Demonstrate advanced specialist IT knowledge in at least one information technology discipline
    Relates to: ULO1, Software requirements analysis and design, Software development, testing and configuration
  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, Software requirements analysis and design
  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, ULO3, ULO4, Software requirements analysis and design, Software development, testing and configuration
  4. Employ leadership and initiative in both self-directed and collaborative contexts to create value for others
    Relates to: ULO5, Software development, testing and configuration
  5. Communicate effectively in IT professional and scholarly contexts to specialist and non-specialist audiences using written, visual and oral formats.
    Relates to: ULO5, Software development, testing and configuration
  6. Demonstrate business acumen and well-developed values, attitudes, behaviours and judgements in professional contexts.
    Relates to: ULO2, ULO5, Software requirements analysis and design, Software development, testing and configuration