Studying online

There are now 2 possible online modes for units:

Units with modes Online timetabled and Online flexible are available for any student to self-enrol and study online.

Click on an offering mode for more details.

Unit Overview

Description

This unit introduces the language structures and techniques needed to write well-structured programs in the object-oriented paradigm using the Java programming language. In particular, the process of developing appropriate classes, objects and methods to solve simple computational problems underlies the entire unit. Core computer programming topics such as the use of variables, primitive and reference data types, expressions, control structures involving selection and repetition, method decomposition and parameter passing are all covered in this context. Algorithmic techniques such as iteration, sorting, searching along with programming practices such as error handling, testing, debugging and documentation are introduced. The unit also covers advanced topics such as association, inheritance and interface. A strong focus is placed on the practical application of these concepts and techniques to produce working programs in computer laboratories. The rationale for using the object-oriented paradigm, and in particular the language Java, is covered in detail. No prior knowledge of computing or programming is assumed.

Credit
6 points
Offering
AvailabilityLocationMode
Not available in 2025UWA (Perth)Face to face
Outcomes

Students are able to (1) interpret the behaviour of simple Java programs; (2) implement Java classes from specifications; (3) apply the object-oriented principles of information hiding and program by contract; (4) make effective use of software development tools to write, test, debug and document Java programs; (5) use a software engineering process to develop small Java programs; and (6) critique the quality of Java programs using criteria such as readability, encapsulation, cohesion and coupling.

Assessment

Indicative assessments in this unit are as follows: (1) mid-semester test; (2) programming exercises; and (3) a final examination. Further information is available in the unit outline.



Student may be offered supplementary assessment in this unit if they meet the eligibility criteria.

Unit Coordinator(s)
TBA
Unit rules
Prerequisites
Enrolment in
a UWA College course and Mathematics Applications or equivalent
Incompatibility
CITS1001 Software Engineering with Java
  • The availability of units in Semester 1, 2, etc. was correct at the time of publication but may be subject to change.
  • All students are responsible for identifying when they need assistance to improve their academic learning, research, English language and numeracy skills; seeking out the services and resources available to help them; and applying what they learn. Students are encouraged to register for free online support through GETSmart; to help themselves to the extensive range of resources on UWA's STUDYSmarter website; and to participate in WRITESmart and (ma+hs)Smart drop-ins and workshops.
  • Visit the Essential Textbooks website to see if any textbooks are required for this Unit. The website is updated regularly so content may change. Students are recommended to purchase Essential Textbooks, but a limited number of copies of all Essential Textbooks are held in the Library in print, and as an ebook where possible. Recommended readings for the unit can be accessed in Unit Readings directly through the Learning Management System (LMS).
  • Contact hours provide an indication of the type and extent of in-class activities this unit may contain. The total amount of student work (including contact hours, assessment time, and self-study) will approximate 150 hours per 6 credit points.