In our computerised society no modern scientist, engineer or business person should be without a knowledge of computers. First-year computer science is a general introduction to computing and is suitable either for
The sequence of both CSE1301 which
covers basic programming skills and CSE1303 which extends those programming
skills is highly recommended for all students, whether or not they intend to
become computer scientists.
Computer science is a broad discipline, encompassing software design and
programming, the actual computer machinery, the theoretical foundations, and
all the applications of computing which pervade our modern society. Knowing the
internal working of the machine leads to better programming. Knowing the theory
of computing allows clearer thinking. This means computer scientists are able
to apply their computing knowledge and general analytic skills to a wide range
of tasks.
Computer scientists have a wide choice of career options; they can become
programming specialists, systems designers, consultants or project managers.
They can work in software development, customer support, industrial process
control, information retrieval, or with communication networks. Computer
scientists produce animations for the film industry (from Star Wars to
Jurassic Park or Independence Day), support space shuttle
missions, and work on exciting projects such as unlocking the human genetic
code, virtual reality, and artificial intelligence.
Graduates who have completed a major sequence in computer science are eligible
for level-one membership of the Australian Computer Society.
To obtain a major sequence in computer science students should take:
In addition students should take twelve points of approved mathematics or equivalent.
Computer science subjects will change to a six-point structure in 1999. With this change students undertaking second year in 1999 and intending to major in computer science are recommended to take either a sixteen-point sequence:
or the new eighteen-point second-year core
(see above).
Students undertaking third year in 1999 and intending to major in computer
science are recommended to take the new twenty-four-point third-year structure
(see above).
First-year
coordinator: Associate Professor Ingrid Zukerman
The first-year subjects serve both as a general introduction to computer
science and as a prerequisite for further studies. Thus they may be taken
either by students wishing to major in computer science or by students whose
major interest is in some other branch of science.
The first-semester subject CSE1301 covers basic programming skills and gives an
introduction to computer science. The second-semester subject CSE1303 develops
the understanding of algorithms, data structures, and computer systems.
Second-year
coordinator: Dr Ronald Pose
Second year aims to develop a firm foundation in the fundamental concepts of
computer science, namely operating systems, formal methods, algorithm
development and software engineering. In addition, it introduces new topics to
broaden the student's view of computation and its applications.
Third-year
coordinator: Dr Graham Farr
Students wishing to study a major sequence in computer science must take at
least one project (CSE3301 or CSE3302) and at least eighteen points of
additional third-year computer science subjects. These eighteen points may not
include another project. It is recommended that students complete CSE3305
Formal methods II and CSE3322 Programming languages and implementation. Note:
Students intending to undertake CSE3302 (Software engineering project) in
second semester will need to complete CSE3308 (Software engineering: analysis
and design) in first semester.
Students intending to proceed to honours should ensure that they have
sufficient breadth to undertake the honours coursework units offered each year.
It is recommended that in addition to the core project these students take
CSE3305 (Formal methods II), CSE3322 (Programming languages and
implementation), and three other third-year computer science electives.
Honours coordinator: Dr Ann Nicholson
Selected
students achieving an average of a credit or better result in third-year
computer science can choose to take an honours year in computer science. This
honours degree is suitable for good students who want to gain a deeper
understanding of computer science.
An honours degree in computer science opens many career opportunities. Students
with honours are particularly sought after by employers, and can choose from
more interesting research and development positions because of their extra
skills and proven abilities. An honours degree also leads on to postgraduate
study which is necessary for an academic career or a career in industrial
research.
To be admitted to the honours year, students require an average of a credit or
better result in twenty-four points of third-year computer science subjects,
including the project. Students should ensure that they have sufficient
background to undertake the honours coursework units offered each year (see
third-year entry above). Entry to the honours year may be subject to quota
restrictions.
Each honours student undertakes a substantial individual project which may be
selected from a list suggested by the school or of the student's own devising,
subject to approval. The project, worth twenty points, includes writing a
thesis and giving an oral presentation. In addition students must take
sufficient coursework units, each worth four points, to give a total of
forty-eight points. Assessment is typically by practical work, written work
and/or examination. Subject to approval by the coordinator, the student may
replace two of these units with other subjects such as mathematics, electrical
engineering, accounting or third-year computer science. It is compulsory for
all students to take the communication and research skills unit.
The School of Computer Science and Software Engineering organises a regular
series of seminars, often including interstate and overseas visiting computer
scientists. All honours students should attend these seminars. Attendance at
all seminars is a prerequisite for passing the honours course.
Units taught in the honours year vary from year to year depending on the
research interests of the staff. The following is a list of units taught in
1998: advanced object-oriented idioms in C++; natural language processing;
machine learning; neural network fundamentals; communication and research
skills; telecommunications; modelling, animating and rendering: advanced topics
in graphics; learning and prediction; cryptography and security; pattern
recognition and image processing; parallel systems; advanced digital design;
video coding and compression; formal methods in software engineering.