COMP 3022 Systems Administration Programming

Credit Points 10

Legacy Code 300165

Coordinator Golenur Huq Opens in new window

Description This subject covers programming techniques and tools used to administer standalone and networked computer systems. The subject focuses on the use of high level interpretive scripting languages to automate everyday administrative tasks, and to monitor and control running systems. Techniques to extend scripting language capabilities by dynamic linking to compiled code are examined, particularly in terms of access to operating system level functions. The subject also examines the use of administrative programs and tools to monitor and adjust system performance and capacity.

School Computer, Data & Math Sciences

Discipline Programming

Student Contribution Band HECS Band 2 10cp

Check your fees via the Fees page.

Level Undergraduate Level 3 subject

Pre-requisite(s) COMP 2019

Incompatible Subjects LGYA 6160 - Script programming

Assumed Knowledge

Students should have a thorough grounding in systems programming and operating systems basics.

Learning Outcomes

On successful completion of this subject, students should be able to:
  1. List and define the key types of system administration tasks that are suitable for full or partial automation programmatically.
  2. Select the most appropriate programming implementation method for a required system administration task from the range: shell scripts, scripting languages, and low level compiled languages; and explain the reasons for the selection.
  3. Write, test and document system administration programs in a scripting language for various administration tasks that are synchronised or asynchronised (serial, parallel, or event driven) in nature.
  4. Write programs to automate tasks like user management, software management, backup & recovery, and system security for both local (centralised) and distributed systems.
  5. Extend the capabilities of a high level scripting language.
  6. Explain the fundamental principles of performance and capacity planning in regards to systems administration.
  7. Write programs to collect performance and capacity data for performance and capacity planning purposes. Explain the meaning and significance of the data collected, recommend system administration actions based on this interpretation, and write programs to implement the recommended actions.
  8. Deliver tested and documented programs with significant complexity within specified project deadlines and in a form that meets IT professional standards.

Subject Content

- The strengths and weaknesses of different programming levels of abstraction, from low level compiled Code to High level interpretative scripts.
- Capabilities and limitations of High level dynamic interpretative languages.
- common systems administration tasks and their potential for automation through scripts, particularly The management of users, system software, security, and backup and recovery.
- using programs to control other programs: under serial, parallel, and event driven models.
- Extending scripting languages through dynamic Linking of compiled code.
- using scripting languages to Monitor and control system performance and capacity.
- CGI scripts for simple Server-side programming.


The following table summarises the standard assessment tasks for this subject. Please note this is a guide only. Assessment tasks are regularly updated, where there is a difference your Learning Guide takes precedence.

Type Length Percent Threshold Individual/Group Task
Laboratory work Practical tasks along with associated project work 40 N Individual
Quizzes Ten quizzes, each quiz contains ten multiple choice questions 10 N Individual
Final examination Two hours, open book 50 N Individual