IFQ555 Introduction to Programming


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-4A 2024, QUT Online, Online

Unit code:IFQ555
Credit points:6
Equivalent:IFN555
Anti-requisite:IFN501
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

This unit is designed for those who have never programmed before. It introduces the basic building blocks of algorithms: sequence, selection and iteration and how algorithmic thinking is used to decompose problems into simpler steps. The C# language is used for expressing those steps in a programming language. It introduces an imperative style of programming in which a sequence of statements change the program’s state. The program’s state consists of a set of variables that contain data of various types. We introduce basic data types including numbers, text strings and lists. Students are also introduced to processes for debugging and testing programs to ensure their correctness and the forms of professional communication associated with software development.

Learning Outcomes

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

  1. Discuss the processes software development: requirements, design, coding, testing and ongoing evolution, as embedded in the overall life-cycle of software and services.
  2. Decompose problems into simpler steps consisting of sequence, selection and iteration using algorithmic thinking.
  3. Create simple programs and reusable program constructs using the strict syntax of a programming language.
  4. Use debugging and testing strategies to ensure the quality of computer programs.
  5. Communicate professionally in all phases of software development.

Content

  • Software lifecycle
  • Algorithmic thinking
  • Introduction to programming using C#
  • Compilation
  • Sequence, Selection and Iteration
  • Simple data types 
  • Program syntax and understanding compiler errors
  • Importance of program readability and documentation
  • Testing and debugging

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.

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 will receive formative peer and academic feedback on your practical exercises conducted in labs.
  • You will receive written feedback on submitted assessment items.
  • You can request private consultation with teaching staff.

Assessment

Overview

The assessment is designed to allow you to demonstrate your comprehension of the core programming concepts covered in this unit.

Unit Grading Scheme

7- point scale

Assessment Tasks

Assessment: Small programming exercises

Small programming exercises designed to build specific skills. Submitted online for automated assessment and rapid feedback to students.

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

Weight: 40
Length: Approximately 10-40 lines of code per weekly exercise
Individual/Group: Individual
Due (indicative): Weeks 2, 3 and 4
Related Unit learning outcomes: 2, 3, 4

Assessment: Programming Assignment

Creating a software solution using C# for a larger real-world motivated problem.

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

Weight: 60
Length: 100-200 lines of code
Individual/Group: Individual
Due (indicative): End of 5-week term
Related Unit learning outcomes: 1, 2, 3, 4, 5

Academic Integrity

Students are expected to engage in learning and assessment at QUT with honesty, transparency and fairness. Maintaining academic integrity means upholding these principles and demonstrating valuable professional capabilities based on ethical foundations.

Failure to maintain academic integrity can take many forms. It includes cheating in examinations, plagiarism, self-plagiarism, collusion, and submitting an assessment item completed by another person (e.g. contract cheating). It can also include providing your assessment to another entity, such as to a person or website.

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.

Further details of QUT’s approach to academic integrity are outlined in the Academic integrity policy and the Student Code of Conduct. Breaching QUT’s Academic integrity policy is regarded as student misconduct and can lead to the imposition of penalties ranging from a grade reduction to exclusion from QUT.

Resources

  • There will be a prescribed text, TBC (possibly an eBook)
  • Visual Studio Software (available free of charge to ICT students)
  • Link to other online resources will also be provided.

Risk Assessment Statement

There are no unusual health or safety risks associated with this unit.