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
Professor Zhang
Semester 2
Dr Thomas Christy
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
On completion of this subjects, students should be able to:
- 1. Apply the concepts of object-oriented design to the solution of computational problems
- 2. Read and understand a Java program of small to medium complexity
- 3. Write a Java program of small to medium complexity, which contains a number of classes with console user interface
- 4. Be able to apply a range of data structures and algorithms in problem solving
- 5. 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 | No longer available |
OR Equivalent,
OR
Code | Name | Teaching period | Credit Points |
---|---|---|---|
COMP10002 | Foundations of Algorithms |
Semester 2 (On Campus - Parkville)
Semester 1 (On Campus - Parkville)
|
12.5 |
Code | Name | Teaching period | Credit Points |
---|---|---|---|
COMP10001 | Foundations of Computing |
Semester 1 (On Campus - Parkville)
Semester 2 (On Campus - Parkville)
|
12.5 |
Code | Name | Teaching period | Credit Points |
---|---|---|---|
COMP90059 | Introduction to Programming |
Summer Term (On Campus - Parkville)
Semester 1 (On Campus - Parkville)
Semester 2 (On Campus - Parkville)
|
12.5 |
Code | Name | Teaching period | Credit Points |
---|---|---|---|
COMP20005 | Engineering Computation |
Semester 2 (On Campus - Parkville)
Semester 1 (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 Computer Science
- Master of Data Science
Corequisites
None
Non-allowed subjects
Code | Name | Teaching period | Credit Points |
---|---|---|---|
SWEN20003 | Object Oriented Software Development |
Semester 1 (On Campus - Parkville)
Semester 2 (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
Description | Timing | Percentage |
---|---|---|
Five small assignments, assessed in labs throughout semester. requirement 5-10 hours each. Due in weeks 2,4,6,8 and 12. (5% each.) Addressing Intended Learning Outcomes (ILOs) 1, 3, 4.
| Throughout the semester | 25% |
One 2-hour end-of-semester examination. Addressing Intended Learning Outcomes (ILOs) 1, 2, 4, 5
| During the examination period | 60% |
One group project in teams of 2-4, requisiring approximately 20-25 hours of work per person. Due in week 10. Addressing Intended Learning Outcomes (ILOs) 1, 3, 4, 5
| Week 10 | 15% |
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 4 March 2019 to 2 June 2019 Last self-enrol date 15 March 2019 Census date 31 March 2019 Last date to withdraw without fail 10 May 2019 Assessment period ends 28 June 2019 Semester 1 contact information
Professor Zhang
- Semester 2
Coordinator Thomas Christy 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 29 July 2019 to 27 October 2019 Last self-enrol date 9 August 2019 Census date 31 August 2019 Last date to withdraw without fail 27 September 2019 Assessment period ends 22 November 2019 Semester 2 contact information
Dr Thomas Christy
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 Doctor of Philosophy - Engineering Course Master of Philosophy - Engineering Course Master of Data Science Course Ph.D.- Engineering Course Graduate Diploma in Biostatistics Course Master of Biostatistics Specialisation (formal) Spatial Specialisation (formal) Distributed Computing Specialisation (formal) Computing Major Computer Science Specialisation (formal) Software with Business Specialisation (formal) Software Specialisation (formal) Mechatronics - 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
- Available to Study Abroad and/or Study Exchange Students
This subject is available to students studying at the University from eligible overseas institutions on exchange and study abroad. Students are required to satisfy any listed requirements, such as pre- and co-requisites, for enrolment in the subject.
Last updated: 3 November 2022