Handbook home
Programming and Software Development (COMP90041)
Graduate courseworkPoints: 12.5On Campus (Parkville)
About this subject
- Overview
- Eligibility and requirements
- Assessment
- Dates and times
- Further information
- Timetable(opens in new window)
Contact information
Semester 1
Semester 1
A/Prof Rui Zhang
email: rui.zhang@unimelb.edu.au
Semester 2
Dr Peter Schachte
email: schachte@unimelb.edu.au
Semester 2
Semester 1
A/Prof Rui Zhang
email: rui.zhang@unimelb.edu.au
Semester 2
Dr Thomas Christy
email: thomas.christy@unimelb.edu.au
Overview
Availability | Semester 1 Semester 2 |
---|---|
Fees | Look up fees |
AIMS
The aims for this subject is for students to develop an understanding of approaches to solving moderately complex problems with computers, and to be able to demonstrate proficiency in designing and writing programs. The programming language used is Java.
INDICATIVE CONTENT
Topics covered will include:
- Java basics
- Console input/output
- Control flow
- Defining classes
- Using object references
- Programming with arrays
- Inheritance
- Polymorphism and abstract classes
- Exception handling
- UML basics
- Interfaces
- Generics.
Intended learning outcomes
INTENDED LEARNING OUTCOMES (ILO)
On completion of this subject the student is expected to:
- Apply the concepts of object-oriented design to the solution of computational problems
- Read and understand a Java program of small to medium complexity
- Write a Java program of small to medium complexity, which contains a number of classes with console user interface
- Understand basic concepts of computer science: data structures and algorithms
- Understand the process and methods of software design and implementation using Java programming language.
Generic skills
On completion of this subject students should have developed the following skills:
- Understand major concepts of object-oriented programming and design including classes, objects, encapsulation, inheritance and polymorphism
- Design, implement and test a program for small and medium size problems in the Java programming language.
Last updated: 3 November 2022
Eligibility and requirements
Prerequisites
Code | Name | Teaching period | Credit Points |
---|---|---|---|
ISYS90088 | Introduction to Application Development | Semester 2 (On Campus - Parkville) |
12.5 |
or Equivalent
OR
Code | Name | Teaching period | Credit Points |
---|---|---|---|
COMP90059 | Introduction to Python Programming | Summer Term (On Campus - Parkville) |
12.5 |
OR
Admission to one of the following courses:
- Master of Information Technology
- Master of Engineering (Software)
- Master of Engineering (Software with Business)
- Master of Engineering (Mechatronics)
- Graduate Diploma in Science (Computer Science)
- Master of Data Science
Corequisites
None
Non-allowed subjects
Code | Name | Teaching period | Credit Points |
---|---|---|---|
SWEN20003 | Object Oriented Software Development |
Semester 2 (On Campus - Parkville)
Semester 1 (On Campus - Parkville)
|
12.5 |
Inherent requirements (core participation requirements)
The University of Melbourne is committed to providing students with reasonable adjustments to assessment and participation under the Disability Standards for Education (2005), and the Assessment and Results Policy (MPF1326). Students are expected to meet the core participation requirements for their course. These can be viewed under Entry and Participation Requirements for the course outlines in the Handbook.
Further details on how to seek academic adjustments can be found on the Student Equity and Disability Support website: http://services.unimelb.edu.au/student-equity/home
Last updated: 3 November 2022
Assessment
Additional details
- Project assignments will be done during the semester and are requiring approximately 50-55 hours of work in total (40%).
- One 2-hour end-of-semester examination (60%). Intended Learning Outcomes (ILOs) 1, 2, 4 and 5 are addressed in the lectures, laboratory exercises, project assignments and the end-of-semester examination.
Hurdle requirement: To pass the subject, students must obtain at least:
- 50% overall
- 20/40 in the project assignments
- 30/60 in the end-of-semester written examination.
ILOs 2 and 3 are addressed in the laboratory exercises and project assignment.
Last updated: 3 November 2022
Dates & times
- Semester 1
Principal coordinator Rui Zhang Mode of delivery On Campus (Parkville) Contact hours 36 hours, comprising of one, 2-hour lecture and one, 1-hour lab per week Total time commitment 200 hours Teaching period 26 February 2018 to 27 May 2018 Last self-enrol date 9 March 2018 Census date 31 March 2018 Last date to withdraw without fail 4 May 2018 Assessment period ends 22 June 2018 Semester 1 contact information
Semester 1
A/Prof Rui Zhang
email: rui.zhang@unimelb.edu.auSemester 2
Dr Peter Schachte
email: schachte@unimelb.edu.au - Semester 2
Principal coordinator Peter Schachte Mode of delivery On Campus (Parkville) Contact hours 36 hours, comprising of one, 2-hour lecture and one, 1-hour lab per week Total time commitment 200 hours Teaching period 23 July 2018 to 21 October 2018 Last self-enrol date 3 August 2018 Census date 31 August 2018 Last date to withdraw without fail 21 September 2018 Assessment period ends 16 November 2018 Semester 2 contact information
Semester 1
A/Prof Rui Zhang
email: rui.zhang@unimelb.edu.auSemester 2
Dr Thomas Christy
email: thomas.christy@unimelb.edu.au
Time commitment details
200 hours
Last updated: 3 November 2022
Further information
- Texts
Prescribed texts
None
- Subject notes
LEARNING AND TEACHING METHODS
The subject comprises a weekly 2 hour lecture followed and a 1 hour laboratory exercise. Weekly readings are assigned from the textbook, and weekly laboratory exercises are assigned. Additionally, a significant amount of project work is assigned.
INDICATIVE KEY LEARNING RESOURCES
At the beginning of the year, the coordinator will propose a textbook on Java programming which will be made available through University Book Shop and library. The current suggested textbook is Walter Savitch: Absolute Java. Pearson Education International. 4th Edition (or 5th Edition).
CAREERS / INDUSTRY LINKS
The IT industry is a large and steadily growing industry. Programming skills are essential for working in the IT industry, for example in software development companies, website development companies, telecommunication companies and game development companies. Most large companies have an IT department for managing their software or server. Programming skills are also necessary for employees in such IT departments.
- Related Handbook entries
This subject contributes to the following:
Type Name Course Master of Philosophy - Engineering Course Graduate Diploma in Biostatistics Course Master of Biostatistics Course Master of Data Science Course Doctor of Philosophy - Engineering Course Ph.D.- Engineering Course Master of Information Systems Specialisation (formal) Computing Specialisation (formal) Distributed Computing Major Computer Science Informal specialisation Computer Science Specialisation (formal) Spatial Specialisation (formal) Health Specialisation (formal) Software with Business Specialisation (formal) Mechatronics Specialisation (formal) Software - Available through the Community Access Program
About the Community Access Program (CAP)
This subject is available through the Community Access Program (also called Single Subject Studies) which allows you to enrol in single subjects offered by the University of Melbourne, without the commitment required to complete a whole degree.
Entry requirements including prerequisites may apply. Please refer to the CAP applications page for further information.
Additional information for this subject
Subject coordinator approval required
Last updated: 3 November 2022