School of Computer Science

Software Architecture and Distributed Algorithms

Research Group

Home > Projects


Software Architectures for Video Surveillance

  1. Video surveillance is a key technology for enhanced protection of facilities such as airports and power stations from various types of threat. Networks of thousands of IP-based cameras are now possible, but current surveillance methodologies become increasingly ineffective as the number of cameras grows. Constructing software that efficiently and reliably deals with networks of this size is a distributed information processing problem as much as it is a video interpretation challenge. This project is investigating a software architecture approach to the construction of large scale surveillance network software and explores the implications for instantiating surveillance algorithms at such a scale.

Software Architectures for Software Evolution

  1. Ageless Software evolves, to meet new requirements, without reducing its efficiency or understandability. Here we introduce a methodology, called Informed Evolution, for constructing and evolving ageless software. The methodology integrates representations of the software architecture (for structuring) and the system implementation (for behaviour) within the system execution. This project is exploring software architecture approaches to software evolution.  We define evolution patterns as descriptions of change, which make use of both the software architecture and software implementation representations in coordinating the evolution process. We are exploring the use of  language development environments that supports definition of evolution patterns using an evolution control language. An important aspect of software evolution is knowing when to evolve. This project also looks at languages and tools for system profiling and analysis to guide the initiation of software change.

Next Generation Web Applications

  1. The vision of the Semantic Web is to create a universal information space where programs and applications are able to process, and understand the available information. In order to make the Web machine-interpretable, the human readable content needs to be annotated with semantic descriptions. In most cases, this requires the authors of the web content to provide this extra information. This project looks at ways in which this process can be simplified, and the provision of tools and architectures to assist this.

  1. Another aspect of this project looks at support for programming in an open world - closed world assumptions that provide with assurances as to how our programs will behave do not operate in a open world. This project also looks at programming languages and tools to support programming in an open world.

  1. People

  2. Research Projects

  3. Publications

  4. News and Events

  5. Related LInks

  1. School of Computer Science

  2. Plaza Building, University of Adelaide

  3. Ph: +61 8 8303 6173

  4. Fax: +61 8 8303 4366