<< >>

Department of Software Development


Profile of the department

The department's mission is internationally recognised excellence and leadership in software engineering education and research, with a focus on intelligent distributed objects.

Programming and software technology subjects have been offered by the department since the early 1980s and the programming courses date back to 1969 when Caulfield offered Australia's first commercial computing degree.

The department can now focus entirely on software engineering issues. Its first-semester undergraduate courses have about 350 new students each year. Higher degree courses are provided for practitioners and academics.

The department is recognised throughout Australia for its dedication to object-oriented software engineering, a rapidly expanding area of software development skills, methods and tools - of high relevance in industry, government and academia.

Teaching

The department seeks to provide courses and student supervision of the highest quality, to undergraduate, postgraduate and professional audiences. It seeks to offer its courses in a variety of ways including on-campus, off-campus and by distance teaching. The department's staff view students as their valued customers, and seek to make courses and student contacts attractive and advanced.

The department contributes in substantial ways to the following courses offered by the faculty:

Research

The department's researchers and scholars seek to advance the state of the art, knowledge and understanding of the discipline with a strong focus on application and practice; to develop cooperative and synergetic research arrangements and teams with academia, industry and government; and to foster educational and research links, nationally and internationally. In these ways the department will enhance the standing of the university.

The overlap areas of object technology, distributed systems and artificial intelligence, ie intelligent distributed objects, are of special interest in the department's research profile. Most of the department's student and grant research projects fall into at least two of these overlapping areas.

Research expertise in intelligent distributed objects has given rise to a number of research scholarships, funded projects and national and international collaboration with industry and academia.

Interest groups centred around object-oriented software engineering, distributed object technology and artificial intelligence shape the department's research culture, seminar series and active working groups. From within these working groups the department leads two faculty initiatives, the Monash Artificial Intelligence Consortium and the Monash Software Engineering Consortium. These research groups also provide the basis for the department's contribution to various regional, national and international working groups, interest groups, conference program committees and journal editorial boards.

The distributed object technology group focuses on parallel and distributed object-oriented methods, languages, systems and standards. Issues related to modeling and developing client-server applications, adaptive parallelism, fault tolerance in distributed systems, interoperability and semantics of objects and processes are at the heart of the projects in this area.

The object-oriented software engineering group focuses on three major aspects of software engineering: formal aspects of software engineering, software architecture and reuse, and software quality metrics and standards conformance. Current research in the group tries to bridge the gap between traditional informal requirements and formal or semi-formal specification. To this end the group studies means of computer supported specification and design, interactive specification acquisition, and reasoning about objects.

The artificial intelligence group works on knowledge-based approaches to engineering large software systems, and on intelligent agents, which combine features of object-oriented and rule-based systems. Current research interests in the group include data mining, knowledge objects and adaptive multimedia material development.

Software development research interests

Artifical intelligence

Artificial intelligence and software engineering: deduction of induction results; interactive programming; practical theorem proving.

Software agents and machine learning: integration of rules and objects; intelligent adaption machines; knowledge discovery; specifying and refining intentional agency; specifying multi-agent test beds. Intelligent multimedia: intelligent hypermedia systems; intelligent text retrieval. Distributed object technology

High-performance object technology: object-oriented concurrency - languages and implementation, applications, reasoning, modelling, tools support.

Distributed systems: adaptive fault tolerance; object request brokers and traders; interoperability; visualisation. Object-oriented software engineering

Formal aspects of software engineering: semantic analysis of object-oriented specification; testing based on formal specifications; requirements capture and conceptualisation; integrating specifications and implementations.

Reuse and re-engineering: object frameworks and restructuring; documentation evolution; object-oriented databases and persistence; class libraries; CASE tools. Object-oriented software process and measurements: design and project metrics; object-oriented complexity.

Collaborative links

The department is committed to working with educational institutions, the computing industry, professional associations, government and standardisation organisations to advance software development ethics and practice.

Members of the department participate in several professional organisations such as the Australian Computer Society (ACS) and its international counterparts, the ACM and IEEE.

The department has strong links with a number of local and national companies and government institutions, particularly through its leadership roles in the:

In these groups the department seeks to promote understanding of public concerns with respect to software technology and dissemination of the values and benefits of software technology.

The department cooperates with several European and North-American universities and research institutes including the German Distant-University Hagen and University Aachen, University Karlsruhe, and the Californian International Computer Science Institute affiliated to the University of California at Berkeley, and the Open University (UK).

The department offers technology transfer packages in the form of industry courses taken on-campus or on-site. These professional courses are offered and packaged through the Pearcey Centre and the department office.

The department also takes a leading role in university initiatives to present and shape the faculty's future teaching and research profile in the areas of software engineering and artificial intelligence, by chairing the Monash Software Engineering Consortium (MSEC) and the Monash Artificial Intelligence Consortium (MAIC), and by networking with the broader community in these areas at a national and international level.

Awards

Prizes and scholarships may be awarded by the department or affiliated companies to outstanding students enrolled under various degrees. Enquiries should be directed to the department office.

Contacts

A list of current student projects and summaries of proposed student projects and corresponding supervisors can be obtained from the World Wide Web (URL: http://www.sd.monash.edu.au) or by contacting the department office on tel: (03) 9903 2787, fax: (03) 9903 1077, or email: office@insect.sd.monash.edu.au. For more information, contact the relevant staff member.

Objectives major in software development

The major in software development is the department's principal undergraduate offering. The major is a sequence of subjects available to students studying for a Bachelor of Computing at Caulfield; the subjects are also available to students in a range of other courses at Caulfield and on other campuses.

The aim of the major is to provide undergraduate students in computing and other disciplines with the intellectual tools to enable them to apply state-of-the-art knowledge, skills, methods and techniques to the design, implementation, maintenance and modification of software systems. It will also provide the theoretical understanding for learning and for using new methods in the future, and the attitude which sees the constant updating of knowledge as required professional behaviour.

On completion of the major in software development, students will be able to:

Students completing this sequence will have knowledge of: They will have an understanding of: They will be able to: They will have developed attitudes which allow them to:


<< >>
Handbook Contents | Faculty Handbooks | Monash University
Published by Monash University, Clayton, Victoria 3168
Copyright © Monash University 1996 - All Rights Reserved - Caution
Authorised by the Academic Registrar December 1996