Core Body of Knowledge for Information Technology Professionals (Skills Assessment for Migration Purposes Only)


Alan Underwood,FACS,PCP
Approved by Council on 20 September 1997
For the Core Body of Knowledge latest version 2008, please click here

The Australian Computer Society Incorporated
PO Box 534 QVB, Sydney NSW 1230
AUSTRAliA
Ph: (02) 9299 3666
Fax: (02) 9299 3997

 
Table of Contents
1. Preamble
2. Introduction
3. The Areas of Knowledge
4. Implementing the Areas of Knowledge
5. Curricula Proposals
5.1 Computer Organisation and Architecture
5.2 Conceptual Modelling
5.3 Database Management
5.4 Data Communications and Networks
5.5 Data Structures and Algorithms
5.6 Discrete Mathematics
5.7 Ethics/Social Implications/Professional Practice
5.8 Interpersonal Communications
5.9 Program Design and Implementation
5.10 Project Management and Quality assurance
5.11 Information Security
5.12 Software Engineering and Methodologies
5.13 Systems Analysis and Design
5.14 Systems Software
6. Acknowledgements
References
Attachment 1 - A Conceptual Model of I.T. RelatedGroups
 
5. Areas of Knowledge

As a guide this section provides brief details for each of the identified areas of knowledge. For each area, a preamble and a list of topics is identified together with the context within which the area of knowledge fits the core body of knowledge. It is emphasised that these details are included in this document for descriptive purposes only. It is expected that the various Australian IT tertiary courses would implement and emphasise different aspects of the material in accord with their academic and equipment strengths.

5.1 Computer Organisation and Architecture

Preamble

This unit encompass organisation of simple computer systems and the way in which hardware provides the basic facilities for the machine. It introduces techniques involved in the programming of input-output operations and the interrupt structure which underlies operating system organisation in uniprocessor systems.

Table of topics

Computer Architecture and Instruction Set Design

Review of Assembly Language Instructions with particular emphasis on instructions used in I/O programming

Interfacing assembly language routines with a high level language (e.g. C)

The Operation of Basic System Utilities - Assembler, linker & Loader

An Introduction to I/O Programming

  • Accessing I/O devices and polled I/O
  • Interrupt driven I/O
  • Interrupt Controllers and the Interrupt Mechanism
  • DMA and IO Channels
Memory
  • An overview of Memory Module Design
  • The principles of operation of Cache Memory
  • The principles of operation of Virtual Memory Systems
The Operation of the CPU
  • Overview of Control Unit Design - Hardwired vs
  • Microprogrammed
  • Arithmetic Logic Unit - Carry Prediction (at gate level)
  • Pipelining - issues involved in Arithmetic and Instruction pipeline design
  • CISC vs RISC
Review of the Implementation of DOS and UNIX File Systems
Context

Through a study of the principle of operation of the various components of a computer system, the students will gain an appreciation of how the hardware will affect the development of software systems.

Students are exposed to the requirements for writing systems level software through the completing of programs which perform input - output operations involving both polled and interrupt driven input.

5.2 Conceptual Modelling

Preamble

This topic deals with practical methods for the derivation of a range of conceptual models and provides some emphasis on the relational model of data.

Table of Topics
Abstraction and Modelling
Abstraction and modelling - classification, classes, types and instances, generalisation, inheritance, association and aggregation. Models as partial views providing particular perspectives - data, processes, objects, events and time, locations, user and organisational structures and roles, motivations and business purposes.
Semantic data modelling
Entity relationship modelling - entity types, relationship types and attribute types
The Relational Data Model
Transforming entity relationship models into relational models
Set theory
Relational structures - domains, base relations, virtual relations, tuples, attributes, candidate, primary and foreign keys
Relational integrity constraints - entity, referential and domain integrity
Relational manipulation operations - relational algebra and calculus
Normalisation
Anomalies caused by redundant data in relations
Functional dependency, normalisation and normal forms
The Structured Query Language
Data definition statements - create, drop, alter
Data manipulation statements - select, update, delete and insert
Access control statements - grant, revoke
Context

This unit introduces the role of conceptual modelling as part of the system development process and introduces the basic notions of abstraction used in all forms of conceptual modelling. It places particular emphasis on modelling the data (static) aspects of applications, using entity relationship models and relational models. Normalisation is introduced as a basis for ensuring that relations do not contain redundant data. The Structured Query Language is introduced as a commonly used language with which to deal with relational databases.

5.3 Database Management

Preamble

This topic deals with the organisation of sets of shared data for efficient query and update. It is necessary to develop an appreciation of the data resource and the issue of managing data. As well as the need to understand the technical background of computer system management of data there is also a need to define data needs, functions of data, user-oriented data languages, and the management of data and information within the organisation.

Table of Topics

File Processing
I/O operations
physical and logical files
buffer management
File Structure Concepts
file access
performance issues
indexed files
B-trees
indexed sequential access
B+trees
VSAM files
hashing
Schema Architecture
fact based
relational
hierarchical
network
Query Languages
foundations
query processing and optimisation
Concurrency Control
Crash Recovery and Transaction Management

5.4 Data Communications and Networks

Preamble

This unit describes the role of data communications in a modern technological environment and examines the design, implementation and management of data communications networks. It covers basic concepts and terminology; the International Standards Organisation reference model for open systems interconnection; communications equipment, software and services; network architectures; an overview of local area networks; Telstra facilities.

Table of topics

  • Signals, Impairments and Media
  • Communications Techniques
  • link Control and Efficiency
  • Networking
  • Local Area Networks
  • Wide Area Networks
  • Network Management
  • Network Security
  • Network Applications

Context

Telecommunications is an increasingly important aspect of information technology -local, metropolitan and wide-area networks are shrinking the business world and all companies, regardless of their size, have become aware of the need to exchange electronic data across organisational and geographic boundaries.

5.5 Data Structures and Algorithms

Preamble

This unit deals with specific classes of problems and their efficient solutions. It includes algorithm design, complexity analysis, efficiency measurement and proof of correctness. Data structures should cover the storage and manipulation of data within memory and on external storage devices. There should be a coverage of simple and complex/structured data types, abstract data structures and file organisation and access methods. The unit is not specific to any programming language or paradigm.

Table of topics
Data Types
Simple data types
Numeric, text
Structured data types
Arrays, records
Abstract data types
Stacks, queues, linked lists, trees
File Organisation and Processing
serial/sequential files, indexed files, hash- addressed files
sequential and direct access methods
Typical Operations on Data Structures
construction
sorting, searching, indexing
updating - additions/deletions/amendments
Implementation/Representation
internal representation of data types
file index structures
treatment of collisions and overflow
Context

The study of these topics should be related to the storage, manipulation and retrieval of data in typical working situations. There is no implied bias towards, for example, commercial as opposed to technical/scientific applications. The purpose of the unit is to ensure that an IT professional is aware of the alternatives available for data storage, processing and retrieval and their respective advantages and disadvantages and is able to choose an appropriate solution for a given problem situation.

While a detailed understanding of the algorithms associated with these procedures is essential, there is no presumption that a candidate has the knowledge of any specific programming language in which to implement them.

5.6 Discrete Mathematics

Preamble

A study of discrete mathematics is an essential complement to any studies in information technology

Table of topics
Computer Arithmetic
Numbering systems e.g., decimal, binary, octal and hexadecimal
Set Theory
Definitions and notation
Venn diagrams
Set operations
The algebra of sets
Enumeration techniques
permutations and combinations
Inclusion/exclusion principle
Multinomial coefficients
Logic
Simple and compound propositions
Proposotional calculus
Truth tables
Properties of logic
Boolean Algebra
Axioms
Functions and their determination
Switching circuits and properties
Normal forms
Simplification of Boolean functions and networks
Graph Theory
Graphs
Euler and Hamiltonian graphs
Isomorphisms and isomorphic graphs
Planar graphs
Applications
Matrix Theory
Definition of a matrix
Basic operations and the algebra of matrices
Applications

Context

This unit is intended to consolidate mathematical knowledge necessary in areas of computing which require mathematical skills. It introduces students to selected topics in discrete mathematics essential to computing and computing applications.

5.7 Ethics/Social Implications/Professional Practice

Preamble

This unit covers the body of ideas and commonly held principles that broadly apply to ethical behaviour in the IT environment. The intent is to expose students to standards of professional behaviour and to encourage a commitment to developing a personal ethical framework. The unit has several purposes including:

  1. An introduction to and critical review of the IT profession's Code of Ethics and Code of Conduct governing the behaviour of IT professionals;
  2. A broad understanding of the impact of IT on society;
  3. The importance of knowing one's belief system and values when reasoning confronting issues at the work place as a professional.
Table of topics
Introduction
What's Ethics got to do with me?
Social Issues
Culture and heritage
Culture and technology
Global issues
Organisational issues
Application of technology in Australian business
Ethical issues in private and public sectors
Technology
Belief Systems
The law and computer crime
Reliability, safety in software systems
Individual
Responsibility - personal and community
IT Professional Codes
ACS Code of Ethics
ACS Code of Conduct
Context

The intent of this unit is to expose students to existing standards of professional behaviour and to encourage in them a feeling and personal responsibility towards a commitment to developing a personal ethical framework. It is unlikely that the topic can be treated as a theory unit. Case studies and current media related articles featuring potential ethical situations/dilemmas should be used to authenticate and support the unit's objectives.

© Copyright 1995- 2010 Australian Computer Society Inc.