Skip to content | Change text size

M O N A T A R

InfoTech Unit Avatar

FIT9136 Algorithms and programming foundations in Python

Unsaved changes:

2021 01 29 15:16:09: Jaime Clark opened FIT9136 - Assessment/Summary edit screen
2021 08 20 13:25:19: Jaime Clark opened FIT9136 - Assessment/Summary edit screen

Chief Examiner

This field records the Chief Examiner for unit approval purposes. It does not publish, and can only be edited by Faculty Office staff

To update the published Chief Examiner, you will need to update the Faculty Information/Contact Person field below.

Chunyang Chen

NB: This view restricted to entries modified on or after 19990401000000

Unit Code, Name, Abbreviation

FIT9136 Algorithms and programming foundations in Python (24 Jul 2019, 1:27pm) [Alg prog Python (24 Jul 2019, 1:27pm)]

Reasons for Introduction

Reasons for Introduction (24 Jul 2019, 1:28pm)

The course review made a strong recommendation to introduce a unit on algorithms and data structures into the MIT course structure. We already had FIT5211, but that unit had FIT9133 as a prerequisite so it wasn't accessible for many MIT students, and according to the CE the material in FIT5211 was very introductory (more at undergrad level than masters level). The rationale for FIT9136 was therefore to combine an introduction to Python with an introduction to algorithms, and move it to level 9. Since there is already a similar undergraduate unit, FIT1045, the idea was to exploit synergies and base FIT9136 on FIT1045.

Role, Relationship and Relevance of Unit (28 May 2019, 11:58am)

Define here the role, relationship and relevance of the unit

Objectives

Objectives (24 Jul 2019, 1:29pm)

Upon successful completion of this unit, students should be able to:

  1. design, construct, test and document Python programs;
  2. demonstrate how basic data types/structures function;
  3. evaluate different algorithms and analyse their complexity;
  4. translate problems into algorithms with appropriate implementations by investigating different strategies for the algorithm development

Unit Content

ASCED Discipline Group Classification (24 Jul 2019, 2:26pm)

020103

Synopsis (24 Jul 2019, 1:31pm)

This unit introduces the Python programming and the basics of data structure and algorithms including their design, analysis and implementation in Python.

Students will experience working with Python implementation of data structures and algorithms widely used in modern programming language to solve simple problems. Topics covered in this unit are the programming basics including IOs, control structures, and concepts of object-oriented programming; data structures and algorithms including lists, stacks, queues, trees, recursion and searching/sorting algorithms.

Prescribed Reading (for new units) (18 Sep 2020, 10:02am)

Peter Wentworth, Jeffrey Elkner, Allen B. Downey, and Chris Meyers (2012). How to Think Like a Computer Scientist: Learning Python 3 (The Rhodes Local Edition). Available at: http://openbookproject.net/thinkcs/python/english3e/

Brad Miller, David Ranum, Jeffrey Elkner, Peter Wentworth, Allen B. Downey, Chris Meyers and Dario Mitchell (2012). How to Think Like a Computer Scientist (Interactive Edition). Available at: http://interactivepython.org/runestone/static/thinkcspy/index.html

Brad Miller and David Ranum (2014). Problem Solving with Algorithms and Data Structures using Python (Interactive Edition). Available at: https://runestone.academy/runestone/books/published/pythonds/index.html

Technological requirements

Software required for practical exercises and assignments: Python 3.5 or 3.6, Anaconda (Jupyter Notebook)

Additional software: Integrated development environments for Python (e.g. Python IDLE, PyCharm, Spyder)

Software available for download from the official websites: https://www.python.org/downloads/ https://www.anaconda.com/distribution https://www.jetbrains.com/pycharm/download/

Students are encouraged to bring their own devices to the lectures that can access the web (e.g. laptop, tablet, smartphone, etc).

Teaching Methods

Mode (24 Jul 2019, 2:27pm)

On-campus

Special teaching arrangements (17 Sep 2020, 10:07am)

Peer assisted learning

Assessment

Assessment Summary (17 Sep 2020, 09:58am)

Examination (2 hours and 10 minutes): 50%; In-semester assessment: 50%

  1. Assignment 1 - 20% - ULO: 1, 2, 3
  2. Assignment 2 - 30% - ULO: 1, 2, 3, 4
  3. End of semester examination - 50% - ULO: 1, 2, 3, 4

Workloads

Workload Requirements (24 Jul 2019, 2:11pm)

Minimum total expected workload equals 12 hours per week comprising:

Resource Requirements

Teaching Responsibility (Callista Entry) (24 Nov 2017, 12:10pm)

FIT

Prerequisites

Prohibitions (24 Jul 2019, 2:30pm)

FIT1045, FIT9133

Proposed year of Introduction (for new units) (24 Jul 2019, 2:31pm)

Semester 1, 2020

Location of Offering (28 May 2019, 12:00pm)

Clayton

Faculty Information

Proposer

Caitlin Slattery

Approvals

School: 25 Jul 2019 (Jeanette Niehus)
Faculty Education Committee: 25 Jul 2019 (Jeanette Niehus)
Faculty Board: 25 Jul 2019 (Jeanette Niehus)
ADT:
Faculty Manager:
Dean's Advisory Council:
Other:

Version History

24 Nov 2017 Caitlin Slattery modified UnitName; modified UnitContent/ASCED; modified ReasonsForIntroduction/RIntro; modified Teaching/Mode; modified Workload/ContactHours; modified Assessment/Summary; modified ResourceReqs/SchoolReqs; modified DateOfIntroduction; modified LocationOfOffering; modified Workload/ContactHours
24 Nov 2017 David Albrecht modified ReasonsForIntroduction/RIntro; modified ReasonsForIntroduction/RoleRelationshipRelevance; modified UnitObjectives/Objectives; modified UnitContent/ASCED; modified UnitContent/Synopsis; modified ReasonsForIntroduction/RIntro; modified UnitContent/Synopsis; modified UnitObjectives/Objectives
25 Nov 2017 David Albrecht
25 Nov 2017 David Albrecht modified Workload/ContactHours
27 Nov 2017 David Albrecht modified UnitContent/Synopsis
27 Nov 2017 David Albrecht
29 Nov 2017 David Albrecht modified UnitName; modified UnitContent/PrescribedReading; modified UnitName
29 Nov 2017 David Albrecht
28 May 2019 Jeanette Niehus Admin - Reusing unit code as it was never approved or set up in Callista.
24 Jul 2019 Jeanette Niehus Admin: New unit information.
25 Jul 2019 Jeanette Niehus FIT9136 Chief Examiner Approval, ( proxy school approval )
25 Jul 2019 Jeanette Niehus FEC Approval
25 Jul 2019 Jeanette Niehus FacultyBoard Approval - Approved by FEC via email (24/7/19), to be noted at FEC 4/19
16 Sep 2020 Joshua Daniel modified UnitContent/PrescribedReading; modified UnitContent/PrescribedReading; modified UnitContent/PrescribedReading; modified UnitContent/PrescribedReading; modified UnitContent/PrescribedReading; modified UnitContent/PrescribedReading; modified UnitContent/PrescribedReading; modified UnitContent/PrescribedReading
17 Sep 2020 Joshua Daniel modified UnitContent/PrescribedReading; modified UnitContent/PrescribedReading; modified UnitContent/PrescribedReading; modified UnitContent/PrescribedReading; modified UnitContent/PrescribedReading; modified UnitContent/PrescribedReading; modified UnitContent/PrescribedReading; modified UnitContent/PrescribedReading; modified Assessment/Summary; modified Teaching/SpecialArrangements
18 Sep 2020 Joshua Daniel modified UnitContent/PrescribedReading

This version: