Verified Emulation of Legacy Mission Computer Systems. Processor obsolescence is a serious maintenance problem for long-lived computer control systems in military aircraft and other critical applications. A promising solution is to interpose an emulator program between the original "legacy" software and a replacement processor. Unfortunately, no techniques exist for accurately verifying that this procedure preserves the original system's functional and timing behaviour. A particular challenge ....Verified Emulation of Legacy Mission Computer Systems. Processor obsolescence is a serious maintenance problem for long-lived computer control systems in military aircraft and other critical applications. A promising solution is to interpose an emulator program between the original "legacy" software and a replacement processor. Unfortunately, no techniques exist for accurately verifying that this procedure preserves the original system's functional and timing behaviour. A particular challenge is that processor emulations involve both legacy code and new subroutines, written in different programming languages. This project will enable verification of safety and mission-critical emulated systems by devising a multilingual modelling and reasoning formalism, based on program refinement theory.Read moreRead less
Cost-effective use of assertions in the verification and validation of distributed and real-time systems. The project will reinforce Australia as a world leader in empirical software engineering and software verification and validation research, thus building on Australia's strengths in ICT research and innovation. Through the involvement of a local software verification and validation company and through industrial case studies, this project will also improve the software verification and valid ....Cost-effective use of assertions in the verification and validation of distributed and real-time systems. The project will reinforce Australia as a world leader in empirical software engineering and software verification and validation research, thus building on Australia's strengths in ICT research and innovation. Through the involvement of a local software verification and validation company and through industrial case studies, this project will also improve the software verification and validation capabilities of local industry, allow them to save software development costs, and improve the quality of the software produced.Read moreRead less
Building dependability into complex, computer-based systems. Air traffic control, telecommunications, defence, power distribution and many other vital infrastructures all rely on complex computer-based systems. Whenever one of these systems fails, it can cause major disruption to society, create large financial losses and even pose risks to life.
This project will integrate and improve methods for modelling and analysing computer-based systems in terms of their requirements and architectures ....Building dependability into complex, computer-based systems. Air traffic control, telecommunications, defence, power distribution and many other vital infrastructures all rely on complex computer-based systems. Whenever one of these systems fails, it can cause major disruption to society, create large financial losses and even pose risks to life.
This project will integrate and improve methods for modelling and analysing computer-based systems in terms of their requirements and architectures, focusing on how to achieve and maintain dependability in the context of on-going change and failure to meet requirements. These methods will be based on sound mathematical foundations and proven engineering approaches applicable to industrial-scale complex systems.Read moreRead less
Combining Time Bands and Teleo-Reactive Programs for Advanced Dependable Real-Time Systems. Society is becoming increasingly reliant on sophisticated real-time computer systems in applications ranging from car stability control to critical infrastructure, such as railway signalling systems. Further, there is a demand for ever greater automation and sophistication in the software controlling these systems. The research challenge in this project is to provide robust implementations of these system ....Combining Time Bands and Teleo-Reactive Programs for Advanced Dependable Real-Time Systems. Society is becoming increasingly reliant on sophisticated real-time computer systems in applications ranging from car stability control to critical infrastructure, such as railway signalling systems. Further, there is a demand for ever greater automation and sophistication in the software controlling these systems. The research challenge in this project is to provide robust implementations of these systems in a way that allows one assess their dependability.
Australia industry is actively working in these areas through companies like Ansaldo Australia, in automated railway systems, and Boeing Australia, in the defence sector.Read moreRead less
A Grid based platform for multi-scaled biological simulation. Heart disease currently affects over 3.5 million Australians. In 2006 it claimed the lives of almost 46,000 Australians (34% of all deaths). We will develop enabling technology that underpins cardiac disease research, offering potential for new treatments and pharmaceutical therapies. Even a small improvement in this area can translate into significant national benefit. Further, the mathematical techniques and software tools we will d ....A Grid based platform for multi-scaled biological simulation. Heart disease currently affects over 3.5 million Australians. In 2006 it claimed the lives of almost 46,000 Australians (34% of all deaths). We will develop enabling technology that underpins cardiac disease research, offering potential for new treatments and pharmaceutical therapies. Even a small improvement in this area can translate into significant national benefit. Further, the mathematical techniques and software tools we will develop, whilst focused on heart tissue, will have broader applicability, and may underpin advancements in other disciplines. Finally, we expect that the software solutions and infrastructure will have both commercial and strategic value in their own right.Read moreRead less
Understanding concurrent programs using rely-guarantee thinking. Multi-core processors are standard in computers and devices (e.g. smart phones) but much of the software available for these machines is either unreliable or does not exploit the available hardware parallelism. This project will devise techniques for designing concurrent software that exploits these platforms while delivering dependable operation.
Practical Tools and Techniques for the Testing of Concurrent Software Components. This project will develop tools and techniques for the practical, systematic testing of concurrent software components. Testing is a major means for ensuring that software performs as expected, but testing concurrent software is poorly understood even though the majority of complex, computer-based systems are concurrent in nature. The complexities arising from the non-deterministic nature of such software means tha ....Practical Tools and Techniques for the Testing of Concurrent Software Components. This project will develop tools and techniques for the practical, systematic testing of concurrent software components. Testing is a major means for ensuring that software performs as expected, but testing concurrent software is poorly understood even though the majority of complex, computer-based systems are concurrent in nature. The complexities arising from the non-deterministic nature of such software means that testing tools and techniques used for simpler, sequential software are inadequate. The outcomes of this project will consist of practical techniques for the effective testing of concurrent software components in general and tools for the testing of Java components in particular.Read moreRead less
Analysing and Generating Fault-Tolerant Real-Time Systems. Safety-critical real-time systems are being deployed increasingly in diverse areas such as controlling critical infrastructure like transportation (e.g., railway signalling) as well as in defence applications (e.g., fly-by-wire). Such systems must be dependable and hence must be built using fault-tolerant strategies.
This project is researching frontier ICT technologies for analysing, designing and generating fault-tolerant systems, con ....Analysing and Generating Fault-Tolerant Real-Time Systems. Safety-critical real-time systems are being deployed increasingly in diverse areas such as controlling critical infrastructure like transportation (e.g., railway signalling) as well as in defence applications (e.g., fly-by-wire). Such systems must be dependable and hence must be built using fault-tolerant strategies.
This project is researching frontier ICT technologies for analysing, designing and generating fault-tolerant systems, concentrating on their software control components.Read moreRead less
Derivation and timing analysis of concurrent real-time software. Safety-critical computer systems are commonly controlled by concurrent real-time software. Assurance of such systems requires rigorous methods for deriving the software and verifying its logical and timing correctness. This project will directly address this problem via a new paradigm for real-time programming that is based on a machine-independent concurrent real-time programming language, that explicitly represents timing deadlin ....Derivation and timing analysis of concurrent real-time software. Safety-critical computer systems are commonly controlled by concurrent real-time software. Assurance of such systems requires rigorous methods for deriving the software and verifying its logical and timing correctness. This project will directly address this problem via a new paradigm for real-time programming that is based on a machine-independent concurrent real-time programming language, that explicitly represents timing deadlines within programs. This allows a partitioning of the development process into a machine-independent phase that derives a program to meet a high-level specification, and a machine-dependent phase that checks that the timing deadlines within the generated machine code are guaranteed to be met.Read moreRead less
Formalizing Software Design Pattern Concepts and Pattern Specifications using Metamodeling. Software design is currently an ad-hoc process that relies too heavily on each designer's personal experience. Software design patterns capture design know-how and make it reusable by identifying the problem and context in which a family of solutions can be applied. This project will use a formal metamodeling approach to define the concepts underlying software design patterns and hence will create precise ....Formalizing Software Design Pattern Concepts and Pattern Specifications using Metamodeling. Software design is currently an ad-hoc process that relies too heavily on each designer's personal experience. Software design patterns capture design know-how and make it reusable by identifying the problem and context in which a family of solutions can be applied. This project will use a formal metamodeling approach to define the concepts underlying software design patterns and hence will create precise and rigorous pattern specifications. Through this approach, we will incorporate patterns into the Unified Modeling Language (UML), the dominant object-oriented modeling language. Our pattern specifications will assist UML tool developers integrate software design patterns into their tools.Read moreRead less