COMP6710 Structured Programming
S1S26 units6000-level
This course introduces students to the fundamentals of software development with a substantial group software project at its center. Major foci are data structures, object oriented programming, and an introduction to software engineering. Students will extend their understanding of software productivity tools, using revision control for group work, and be introduced to test-driven development as an integral part of software construction. Students will learn the basics of using an industrial-strength object-oriented programming language, extending their understanding of the imperative programming paradigm with a solid grounding in object-oriented programming. The course includes a deeper treatment of data structures, providing concrete implementations of abstract library collection types. The theory of data structures and their time and space complexity will thus be tied to the practice of using standard collections such as those offered by object-oriented languages. Additionally, the course covers the foundations of software engineering including major development paradigms. The course includes a deeper treatment of data structures, using hash tables, trees and lists, which are used to provide concrete implementations of abstract library collection types. The theory of data structures and their time and space complexity will thus be tied to the practice of using standard collections such as those offered by object oriented languages. The foundations of software engineering including: major development paradigms (such as big plan up front, agile, and formal methods), risk are introduced.
- 2024S1 S2
- 2025S1 S2
- 2026S1 S2
- 2027S1 S2
Prerequisites in 2024
No prerequisites
None: anyone in a postgraduate program can enrol.
Incompatible with COMP6700, COMP1110: you can't count both.
The handbook's wording, and when it changed
You are not able to enrol in this course if you have previously completed COMP6700 or COMP1110 or if you are enrolled in the Master of Computing (Advanced).
You are not able to enrol in this course if you have previously completed COMP1110 OR COMP1140 OR if you are enrolled in the Master of Computing (Advanced).
You are not able to enrol in this course if you are enrolled in the Master of Computing (Advanced). Incompatible with COMP1110 OR COMP1140 OR COMP7710 .
What it leads to in 2024
These courses name COMP6710 in their 2024 prerequisites:
- COMP6300 Computer Organisation and Program Execution
- COMP6310 Systems, Networks and Concurrency
- COMP6320 Artificial Intelligence
- COMP6331 Computer Networks
- COMP6361 Principles of Programming Languages
- COMP6420 Introduction to Data Management, Analysis and Security
- COMP6442 Software Construction
- COMP6464 High Performance Scientific Computing
- COMP6466 Algorithms
- COMP6540 Game Development
- COMP6670 Introduction to Machine Learning
- COMP8110 Managing Software Projects in a System Context
- COMP8350 Sound and Music Computing
- COMP8410 Data Mining
- COMP8420 Neural Networks, Deep Learning and Bio-inspired Computing
- COMP8430 Data Wrangling
- COMP8536 Advanced Topics in Deep Learning for Computer Vision
- COMP8600 Statistical Machine Learning
- COMP8610 Computer Graphics
- COMP8712 Compiler Construction
- COMP8715 Advanced Computing Team Project
- COMP8800 Advanced Computing Research Project
- COMP8830 Computing Internship
- COMP8880 Computational Methods for Network Science
- COMP8910 Data Mining
- COMP8920 Neural Networks, Deep Learning and Bio-inspired Computing
- COMP8930 Data Wrangling
- COMP8960 Statistical Machine Learning
- COMP8980 Computational Methods for Network Science