The University of Western Australia
Computer Science and Software Engineering

Department of Computer Science and Software Engineering

CITS4407 Open Source Tools and Scripting


Welcome to the website for CITS4407 in 2020. All teachings material for the unit will be published here. No teaching materials are published in UWA's LMS (other than the lecture recordings).

This unit introduces students to the philosophy, design, tools and practices that enable and facilitate the success of open source software, which runs much of the world's computer infrastructure. Important topics covered include the use of the shell as a programming language, the use of the file system and pipes to support interprocess communication, fundamental software components, tools supporting the software development and maintenance process, and the importance of consistent interfaces to support software integration.

Exam consultation time:

Via Zoom,

  • Wednesday 3rd June 3pm-5pm
  • Thursday 4th June 2pm-4pm
  • Wednesday 10th June 3pm-5pm
  • Friday 12th June 1pm-3pm

or email for an appointment (please include 'CITS4407' in your email's Subject line).

Our weekly timetable (see UWA Timetable)

Students should participate in the 45-minute lecture each week (starting week 1), and one 2-hour Workshop session each week (starting week 2).

The lectures are recorded, but be aware that recordings sometimes fail. Presence at Workshop sessions is not compulsory Students are encouraged to participate in at least one of these sessions each week to informally assess their progress.

Activity Time Day Location
Lecture (recorded using Zoom) 3pm - 4pm Thursday Will be pre-recorded, no Zoom streaming
Workshop (participate in one each week) 4pm - 6pm Thursday via Zoom
12noon - 2pm (repeat) Friday via Zoom

Learning Outcomes

On completion of this unit, students will be able to:
  1. describe the role of software tools and their integration through scripting languages;
  2. recognise the importance of consistency in software tool interfaces; and
  3. identify and deploy fundamental software components that facilitate software integration and re-use.


The assessment for CITS4407 comprises two practical assignments, and a final examination. All programming work is submitted using cssubmit. As the semester proceeds, your marks will be updated and recorded in csmarks.

Assessment % of final mark Assessment dates Outcomes assessed
Assignment 1 20% 9am Monday 20th April (week 7) 1,2,3
Assignment 2 30% 5pm Friday 29th May (week 12) 1,2,3
Final examination 50% Online, 2 hours in June 2020 1,2,3


Before undertaking this unit, students are strongly encouraged to read the university policies that apply to this unit:

This Page

Written by: [email protected]