Unit Outline
KIT500
Programming Foundation
Semester 1, 2024
James Montgomery
School of Information and Communication Technology
College of Sciences and Engineering
CRICOS Provider Code: 00586B

Unit Coordinator
James Montgomery
Email: James.Montgomery@utas.edu.au
What is the Unit About?
Unit Description
 

This unit introduces fundamental programming skills, developing students' ability to think algorithmically to solve problems and to express their solutions in well-constructed Python code. Beginning with the fundamental characteristics of computers and how they represent information, the unit develops the concepts of data types, variables, expressions (calculations), statements (actions) and text-based input and output. Building on these low-level constructs the unit examines ways to manage the complexity in a program with control structures (for making decisions), functions and their parameters, built-in and custom data structures, and higher-level organisational mechanisms such as modules.
Intended Learning Outcomes
As per the Assessment and Results Policy 1.3, your results will reflect your achievement against specified learning outcomes.
On completion of this unit, you will be able to:
1.
Apply code reading and debugging techniques to analyse, interpret, and describe the purpose of program code, and to identify and correct errors in syntax, logic or style
2.
Apply the principles of structured programming to the design and implementation of algorithms as computer programs
3.
Construct small programs that include the use and creation of functions, lists, and other data structures
4.
Apply functional decomposition to algorithms, document the resulting design, and implement the design as programming modules and functions
Alterations as a result of student feedback
This unit replaces a software design and construction unit that students found to be very challenging early in their course. The unit's teaching and assessment design is based on a successful model used to develop competency in those new to programming. Additionally, the selected teaching language Python has a simpler syntax than many other programming languages, allowing students to focus their attention on learning foundational programming skills.
 
 

Teaching arrangements
ATTENDANCE MODE
TEACHING TYPE
LEARNING ACTIVITY
CONTACT HOURS
FREQUENCY
On Campus
Independent Learning
Involving reading, listening to audio, watching video, and/or completing exercises and/or quizzes, self-study is individual work undertaken when the student chooses (i.e. asynchronous), most likely through engagement with MyLO. The content is examinable, and may need to be completed prior to attending classes and/or attempting assessment tasks.
2
Weekly
Workshop
A structured real-time (i.e. synchronous) activity that involves a mix of presentation of new information/ideas/skills and guided activities related to that information/ideas/skills. All students are expected to attend.
2
Weekly
Computer Laboratory
A structured real-time (i.e. synchronous) computer-based activity in a small-group setting where the primary purpose is the clarification, exploration or reinforcement of subject content presented or accessed at another time or place (e.g. lecture, preparatory work). It is teacher supported and may involve student-teacher and/or student-student interaction and dialogue for achievement of its learning outcomes. The students enrolled in the class are expected to attend. Begins in Week 2.
2
Weekly
Attendance / engagement expectations
If your unit is offered On campus, it is expected that you will attend all on-campus and onsite learning activities. This is to support your own learning and the development of a learning community within the unit. If you are unable to attend regularly, please discuss the situation with your course coordinator and/or our UConnect support team.

If your unit is offered Online, it is expected you will engage in all those activities as indicated in the Unit Outline, including any self-directed learning.

If you miss a learning activity for a legitimate reason (e.g., illness, carer responsibilities) teaching staff will attempt to provide alternative activities (e.g., make up readings) where it is possible.
 
 
 
 

How will I be Assessed?
 
For more detailed assessment information please see MyLO.
Assessment schedule
ASSESSMENT TASK #
ASSESSMENT TASK NAME
DATE DUE
WEIGHT
LINKS TO INTENDED LEARNING OUTCOMES
Assessment Task 1:
Learning Reflection Report
Week 13
10 %
LO1, LO2, LO3, LO4
Assessment Task 2:
Advanced Portfolio
Week 13
40 %
LO1, LO2, LO3, LO4
Assessment Task 3:
Pass Portfolio
Week 13
50 %
LO1, LO2, LO3, LO4
 
Assessment details
    
Assessment Task 1: Learning Reflection Report
Task Description:
A reflection report on what you have learned in the unit using the supplied report template. The quality of this reflection determines your numerical mark within the grade for which you have qualified (based on the portfolio tasks completed). A draft should be submitted during Week 12 to receive feedback before submitting the final version.

Task Length:
typically 2-4 pages
Due Date:
Week 13
Weight:
10 %
 
CRITERION #
CRITERION
MEASURES INTENDED
LEARNING OUTCOME(S)
1
Describe how each of the unit’s learning outcomes has been met, with reference to portfolio tasks completed
LO1, LO2, LO3, LO4
2
Express ideas in your own words, citing any ideas or descriptions derived from other sources
LO1, LO2, LO3, LO4
 
Assessment Task 2: Advanced Portfolio
Task Description:
In addition to the pass-level work you have the opportunity to extend your abilities with portfolio tasks at CR, DN and HD levels. These introduce more sophisticated techniques and debugging exercises, as well as the opportunity to design and then implement a program of your own design. Completion of all tasks of a particular level and those below it qualifies you for that final grade. Achieving a High Distinction requires that the HD Program task is completed, with an optional additional HD Project allowing achievement of a higher mark within the HD band. Students potentially qualifying for HD must demonstrate and explain their custom HD program to a member of the teaching team.

Task Length:
Varies by task, but typically 1-2 source files (more for DN and HD custom programs) and 1-5 pages of documentation
Due Date:
Week 13
Weight:
40 %
 
 

CRITERION #
CRITERION
MEASURES INTENDED
LEARNING OUTCOME(S)
1
Identify and document faults in more complex code samples and suggest appropriate corrections
LO1
2
Correctly apply structured programming principles of sequence, selection and repetition as required by the task
LO2
3
Implement all required functionality using the full range of programming techniques taught in the unit (in programming tasks)
LO3
4
Implement software as a collection of interacting functions given a plan
LO3, LO4
5
Devise own plan for implementing software as a collection of functions
LO4
6
Prepare external documentation for a program of your own design
LO4
7
Adhere to the unit’s coding style for layout, variable names, and commenting
LO3
8
Demonstrate and discuss the implementation of your custom program
LO4
 
Assessment Task 3: Pass Portfolio
Task Description:
Throughout the semester you will work on a collection of learning tasks (categorised as PP, CR, DN or HD level), submitting these for feedback as you complete them. The PP-level tasks demonstrate pass-level achievement in the unit. Tasks are assigned a status to indicate if further revision is required, the work is nearing completion subject to discussion with your tutor, or they are complete. Completed tasks count toward passing the unit.

Each task has a suggested completion week and a point later in semester after which no further corrective feedback will be given via MyLO (this varies by task), so you will need to be submitting (and revising) tasks most weeks.

Task Length:
Varies by task, but typically a single source file or 1-4 pages of text using a provided template
Due Date:
Week 13
Weight:
50 %
 
CRITERION #
CRITERION
MEASURES INTENDED
LEARNING OUTCOME(S)
1
Describe how program state changes in provided code samples
LO1
2
Select appropriate data types for modelling different phenomena
LO1
3
Identify faults in provided code samples and suggest appropriate corrections
LO1
4
Correctly apply structured programming principles of sequence, selection and repetition as required by the task
LO2
5
Implement all required functionality using specified techniques (in programming tasks)
LO3
6
Implement software as a collection of interacting functions given a plan
LO3, LO4
7
Devise own plan for implementing software as a collection of functions
LO4
8
Adhere to the unit’s coding style for layout, variable names, and commenting
LO2, LO3
 
 
 

How your final result is determined
To pass this unit, you need to demonstrate your attainment of each of the Intended Learning Outcomes, achieve a final unit grade of 50% or greater, and pass any hurdle tasks.
This is achieved by successfully completing the pass-level portfolio tasks (those labelled 'PP'). Most tasks will need to be revised at least once before they are assessed as completed.
 
Submission of assignments
Where practicable, assignments should be submitted to an assignment submission folder in MYLO. You must submit assignments by the due date or receive a penalty (unless an extension of time has been approved by the Unit Coordinator). Students submitting any assignment in hard copy, or because of a practicum finalisation, must attach a student cover sheet and signed declaration for the submission to be accepted for marking.
 
Requests for extensions
If you are unable to submit an assessment task by the due date, you should apply for an extension.
 
A request for an extension should first be discussed with your Unit Coordinator or teaching support team where possible. A request for an extension must be submitted by the assessment due date, except where you can provide evidence it was not possible to do so. Typically, an application for an extension will be supported by documentary evidence: however, where it is not possible for you to provide evidence please contact your Unit Coordinator.
 
The Unit Coordinator must notify you of the outcome of an extension request within 3 working days of receiving the request.
Late penalties
Assignments submitted after the deadline will receive a late penalty of 5% of the original available mark for each calendar day (or part day) that the assignment is late. Late submissions will not be accepted more than 10 calendar days after the due date, or after assignments have been returned to other students on a scheduled date, whichever occurs first. Further information on Late Penalties can be found on the Assessments and Results Procedure.
 
Review of results and appeals
You are entitled to ask for a review of the marking and grading of your assessment task if there is an irregularity in the marking standards or an error in the process for determining the outcome of an assessment. Details on how to request a review of a mark for an assignment are outlined in the Review and Appeal of Academic Decisions Procedure.