Course Title: Advanced Programming Techniques
Credit Points: 12.00
Course Code |
Campus |
Career |
School |
Learning Mode |
Teaching Period(s) |
COSC1076 |
City Campus |
Undergraduate |
140H Computer Science & Information Technology |
Face-to-Face |
Sem 1 2006, Sem 2 2006, Sem 1 2007, Sem 2 2007, Sem 1 2008, Sem 2 2008, Sem 2 2009, Sem 1 2010, Sem 2 2010, Sem 1 2011, Sem 2 2011, Sem 1 2012, Sem 2 2012, Sem 1 2013, Sem 2 2013, Sem 1 2014, Sem 2 2014, Summer2015, Sem 2 2015, Sem 1 2016 |
COSC1076 |
City Campus |
Undergraduate |
140H Computer Science & Information Technology |
Face-to-Face or Internet |
Sem 1 2009 |
COSC1076 |
City Campus |
Undergraduate |
171H School of Science |
Face-to-Face |
Sem 2 2017, Sem 1 2018, Sem 2 2018, Sem 1 2019, Sem 2 2019, Sem 1 2020, Sem 2 2020, Sem 1 2021 |
COSC1076 |
City Campus |
Undergraduate |
175H Computing Technologies |
Face-to-Face |
Sem 1 2022, Sem 1 2023, Sem 1 2024 |
COSC2082 |
RMIT University Vietnam |
Undergraduate |
140H Computer Science & Information Technology |
Face-to-Face |
Viet2 2007, Viet3 2007, Viet2 2008, Viet3 2008, Viet1 2009, Viet2 2009, Viet3 2009, Viet1 2010, Viet2 2010, Viet3 2010, Viet1 2011, Viet2 2011, Viet3 2011, Viet1 2012, Viet2 2012, Viet3 2012, Viet1 2013, Viet2 2013, Viet3 2013 |
COSC2082 |
RMIT University Vietnam |
Undergraduate |
171H School of Science |
Face-to-Face |
Viet1 2018, Viet3 2018, Viet3 2020, Viet3 2021 |
COSC2082 |
RMIT University Vietnam |
Undergraduate |
175H Computing Technologies |
Face-to-Face |
Viet1 2022, Viet3 2022, Viet2 2023, Viet3 2023 |
COSC2136 |
Open Learning Australia |
Non Award |
171H School of Science |
Distance / Correspondence |
OUASP2UG21, OUASP4UG21 |
COSC2136 |
Open Learning Australia |
Non Award |
175H Computing Technologies |
Distance / Correspondence |
OUASP4UG23 |
COSC2207 |
City Campus |
Postgraduate |
140H Computer Science & Information Technology |
Face-to-Face |
Sem 1 2006, Sem 1 2007, Sem 2 2007, Sem 1 2008, Sem 2 2008, Sem 1 2009, Sem 2 2009, Sem 1 2010, Sem 2 2010, Sem 1 2011, Sem 2 2011, Sem 1 2012, Sem 2 2012, Sem 1 2013, Sem 2 2013, Summer2015, Sem 2 2015 |
COSC2233 |
Taylors College KL |
Undergraduate |
140H Computer Science & Information Technology |
Face-to-Face |
Offsh 3 10, Offsh 1 11 |
Course Code |
Campus |
Career |
School |
Learning Mode |
Teaching Period(s) |
COSC2696 |
OUA CSP |
Undergraduate |
171H School of Science |
Internet |
OUACSP2021 (All) |
Course Coordinator: Xiaodong Li
Course Coordinator Phone: -
Course Coordinator Email: xiaodong.li@rmit.edu.au
Course Coordinator Location: 14.08.14
Course Coordinator Availability: By email
Pre-requisite Courses and Assumed Knowledge and Capabilities
Enforced Pre-requisite courses
Successful completion of:
COSC1295 - Advanced Programming (Course ID 004316)
OR
COSC1073 / COSC2081 / COSC2135 / COSC2681 - Programming 1 (Course ID 004065)
OR
COSC1284 - Programming Techniques (Course ID 004301)
OR
COSC2395 - Programming 1 (Course ID 038974)
OR
COSC2801 - Programming Bootcamp 1 (Course ID 054079)
OR
COSC2799 - IT Studio 1 (Course ID 054074)
Note: it is a condition of enrolment at RMIT that you accept responsibility for ensuring that you have completed the prerequisite/s and agree to concurrently enrol in co-requisite courses before enrolling in a course.
For your information go to RMIT Course Requisites webpage.
Course Description
This course teaches programming principles, skills and practices for modern software development, continuing the study of software design and development in pre-requisite courses. Concepts in this include dynamic memory management, advanced typing and polymorphism, automated build systems, defensive programming, debugging, testing, and adherence to modern coding standards and practices. This course uses the C++ programming language for the practical implementation and practice of these concepts. This course may serve as a foundation for further studies in Computer Science and Software Engineering.
Objectives/Learning Outcomes/Capability Development
This course contributes to the following program learning outcomes in
o BP215 Bachelor of Information Technology (Games and Graphics Programming),
o BH107 Bachelor of Engineering (Telecommunications Engineering) (Honours)
and is an option course in several postgraduate programs:
On successful completion of this course you should be able to:
Overview of Learning Activities
Learning activities may include:
Overview of Learning Resources
You may make use of computer laboratories, remote school servers, and relevant provided software. You may also provide your own computing resources and will be supported in the use of specified C++ development resources. However, the marking of assessment tasks will be conducted using School resources, thus you must ensure your code correctly compiles and runs using the School resources.
You will be able to access course information and learning materials through the RMIT Canvas learning management system.
Lists of relevant reference texts, resources in the library and freely accessible Internet sites will be provided.
Overview of Assessment
Note: This course has no hurdle requirements.
The assessment tasks are in two schedules: A and B. You will be advised at the start of the teaching period which of the two schedules apply for any given teaching period and location.
Schedule A Assignment 1: Programming Assignment (individual) Weight: 30% Description: The development and analysis of a computer program that implements a simple algorithm. Practice writing error-free software, testing, debugging and memory management. Learning outcomes: CLOs 1, 2, 3, 4, 6 Assignment 2: Programming Assignment (a group of 4 max) Weight: 45% Description: The development and analysis of a computer program that implements a command-line game. Practice advanced software engineering techniques and data structures. Learning outcomes: CLOs 1, 2, 3, 4, 5, 6 Assignment 3: Programming Exercise (individual) Weight: 25% Description: Programming questions are given to each student from a question bank. Duration is set to 24 hours. Learning outcomes: CLOs 1, 2, 3, 4 |
Schedule B Assignment 1: Programming assignment (individual) Weight: 35% Description: The development and analysis of a computer program that implements a simple algorithm. Practice writing error-free software, testing, debugging and memory management. Learning outcomes: CLOs 1, 2, 3, 4, 6 Assignment 2: Programming assignment (a group of 4 max) Weight: 40% Description: The development and analysis of a computer program that implements a command-line game. Practice advanced software engineering techniques and data structures. Learning outcomes: CLOs 1 ,2, 3, 4, 5, 6 Assignment 3: Programming Exercise (individual) Weight: 25% Description: Programming questions are given to each student from a question bank. Duration is set to 24 hours. Learning outcomes: CLOs 1, 2, 3, 4 |