cse4ioo oo programming 2

INTERMEDIATE OBJECT-ORIENTED PROGRAMMING (PG)

CSE4IOO

2016

Credit points: 15

Subject outline

The teaching of object-oriented concepts is continued from the introductory subject CSE4OOF. Students gain more experience with the Java programming language and basic software engineering principles. Topics covered include inheritance (class hierarchies, abstract classes), input/output streams, file operations, exceptions, interfaces, recursion, generics and dynamic data structures (linked lists). Software engineering principles are further developed, including parameters for characterising software quality and testing strategies. Students will continue to practise the identification and analysis of ethical issues that may arise during software development.

SchoolSchool Engineering&Mathematical Sciences

Credit points15

Subject Co-ordinatorKinh Nguyen

Available to Study Abroad StudentsYes

Subject year levelYear Level 4 - UG/Hons/1st Yr PG

Exchange StudentsYes

Subject particulars

Subject rules

Prerequisites CSE4OOF or equivalent AND Enrolment in one of the following courses: SMIT, SMITCN, SMICT, SMCSC, SMBBS, SGBBS, SGIT, SMDS or SGCS.

Co-requisitesN/A

Incompatible subjects CSE3BDS, CSE1IOO AND Students in the following courses are not permitted to enrol: SBCS, SBIT, SBCSGT, SVCSE, SZCSC, SBITP and SBBIY.

Equivalent subjectsN/A

Special conditionsN/A

Graduate capabilities & intended learning outcomes

01. Explain the object-oriented concepts of inheritance and polymorphism, apply them to solve problems in Java, and evaluate the solutions' quality.

Activities:
Programming assignments and written exam/tests

02. Identify exceptional cases in relation to functional correctness and robustness of programs, and apply Java's exception handling mechanisms to develop solutions appropriate to specific levels of control

Activities:
Programming assignments and written exam

03. Use input and output streams provided in the Java standard library (API) to develop solutions for problems that require storing data in text and binary files

Activities:
Programming assignments and written exam

04. Explain how recursion works and develop recursive solutions in Java

Activities:
Written exam/tests

05. Define dynamic data structures and implement the linked list data structure in Java

Activities:
Written exam/tests

06. Design and implement generic methods and classes in Java

Activities:
Written exam

07. Access the Java collections framework in the Java standard library (API) and use the provided generic LinkedList class to solve problems

Activities:
Programming assignments and written exam

08. Explain the difference between white and black box testing and develop white and black box test cases

Activities:
Written exams/tests

Subject options

Select to view your study options…

Start date between: and    Key dates

Melbourne, 2016, Semester 1, Day

Overview

Online enrolmentYes

Maximum enrolment sizeN/A

Enrolment information

Subject Instance Co-ordinatorKinh Nguyen

Class requirements

Computer LaboratoryWeek: 10 - 22
One 2.0 hours computer laboratory per week on weekdays during the day from week 10 to week 22 and delivered via face-to-face.

LectureWeek: 10 - 22
Two 1.0 hours lecture per week on weekdays during the day from week 10 to week 22 and delivered via face-to-face.

PracticalWeek: 10 - 22
One 1.0 hours practical per week on weekdays during the day from week 10 to week 22 and delivered via face-to-face.

Assessments

Assessment elementComments%ILO*
1 programming assignment (word equivalence: 1000)2001, 02, 03
1 progress tests (word equivalence: 250)501, 02, 03, 04, 05, 08
1 real-time programming assignment (word equivalence: 750)Hurdle requirement: In order to pass the subject, students must obtain an overall pass grade, pass the examination and pass the assignment component.1501, 03, 05, 06, 07
one 3-hour written exam6001, 02, 03, 04, 05, 06, 07, 08

Melbourne, 2016, Semester 2, Day

Overview

Online enrolmentYes

Maximum enrolment sizeN/A

Enrolment information

Subject Instance Co-ordinatorKinh Nguyen

Class requirements

Computer LaboratoryWeek: 31 - 43
One 2.0 hours computer laboratory per week on weekdays during the day from week 31 to week 43 and delivered via face-to-face.

LectureWeek: 31 - 43
Two 1.0 hours lecture per week on weekdays during the day from week 31 to week 43 and delivered via face-to-face.

PracticalWeek: 31 - 43
One 1.0 hours practical per week on weekdays during the day from week 31 to week 43 and delivered via face-to-face.

Assessments

Assessment elementComments%ILO*
1 programming assignment (word equivalence: 1000)2001, 02, 03
1 progress tests (word equivalence: 250)501, 02, 03, 04, 05, 08
1 real-time programming assignment (word equivalence: 750)Hurdle requirement: In order to pass the subject, students must obtain an overall pass grade, pass the examination and pass the assignment component.1501, 03, 05, 06, 07
one 3-hour written exam6001, 02, 03, 04, 05, 06, 07, 08