Metamorphic slices and their applications in fault localization. The main purpose of this project is to enhance the quality of software. The expected outcomes include the delivery of new cost-effective methods to debug software, and the extension of current debugging methods to be applicable in wider contexts.
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
Mapping the Effectiveness of Automated Software Testing. This project aims to help software engineers build complex software systems in far more reliable and cost-effective ways. It takes an interdisciplinary approach by applying machine learning techniques to automatically test complex software systems. Expected outcomes include a novel methodology for assessing the strengths and weaknesses of test suites generated by automated software testing techniques and the approaches required for generat ....Mapping the Effectiveness of Automated Software Testing. This project aims to help software engineers build complex software systems in far more reliable and cost-effective ways. It takes an interdisciplinary approach by applying machine learning techniques to automatically test complex software systems. Expected outcomes include a novel methodology for assessing the strengths and weaknesses of test suites generated by automated software testing techniques and the approaches required for generating high-quality test cases. Such advances are urgently needed to avoid disasters when deploying software systems in the real world.Read moreRead less
Metamorphic Testing: An In-Depth Study to Enhance the Failure-Detection Capability of Software Testing Without an Oracle. Nowadays, software is pervasive and ubiquitous. It plays a significant role in the daily lives of all kinds of people. The Australian software industry has bloomed in recent years. Our research results will improve the cost-effectiveness of software development, thereby upgrading the nation's software productivity and quality. These factors are conducive to the export of soft ....Metamorphic Testing: An In-Depth Study to Enhance the Failure-Detection Capability of Software Testing Without an Oracle. Nowadays, software is pervasive and ubiquitous. It plays a significant role in the daily lives of all kinds of people. The Australian software industry has bloomed in recent years. Our research results will improve the cost-effectiveness of software development, thereby upgrading the nation's software productivity and quality. These factors are conducive to the export of software produced by Australians and helpful in raising our nation's competitive advantage towards the goal of becoming a leading nation in the software industry among Asia-Pacific countries.Read moreRead less
A Comprehensive Testing Methodology for Embedded Software. Embedded systems are a bedrock technology for many high-technology industries. They are used in many safety-critical situations, such as medical devices and car control systems, amongst hundreds of other applications. Unfortunately, current practice still sometimes results in disastrous mistakes remaining undetected, leading to multi-million dollar losses and in some cases even deaths. Improved testing methods for these systems offer ....A Comprehensive Testing Methodology for Embedded Software. Embedded systems are a bedrock technology for many high-technology industries. They are used in many safety-critical situations, such as medical devices and car control systems, amongst hundreds of other applications. Unfortunately, current practice still sometimes results in disastrous mistakes remaining undetected, leading to multi-million dollar losses and in some cases even deaths. Improved testing methods for these systems offer the potential of reducing such catastrophic losses. Improved embedded system testing techniques can offer Australia a competitive advantage in this strategically important industry. We will work to distribute our results to the Australian embedded systems community.Read moreRead less
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
Viewable Measures for Component-Based Software Engineering. Software costs over US$300 billion per year worldwide with around 70% of large projects failing to complete in time. Reliable estimation of development effort is a great challenge in Software Engineering. This project aims to develop a reliable multi-dimensional software size measure and an effort estimation model for a new method of development called component based software engineering. We will validate our results theoretically and ....Viewable Measures for Component-Based Software Engineering. Software costs over US$300 billion per year worldwide with around 70% of large projects failing to complete in time. Reliable estimation of development effort is a great challenge in Software Engineering. This project aims to develop a reliable multi-dimensional software size measure and an effort estimation model for a new method of development called component based software engineering. We will validate our results theoretically and test it against empirical data from software industry. We will provide novel visualization techniques to comprehend measurements of large systems. The outcomes will help software projects better estimate deadlines and budgets thus reducing costs significantly.Read moreRead less
Failure-Based Testing: An In-Depth Theoretical and Experimental Study. Nowadays, software is pervasive and ubiquitous. It plays a significant role in the daily lives of all kinds of people. The Australian software industry has bloomed in recent years. Our research results will improve the cost-effectiveness of software development, thereby upgrading the nation's software productivity and quality. These factors are conducive to the export of software produced by Australians and helpful in raising ....Failure-Based Testing: An In-Depth Theoretical and Experimental Study. Nowadays, software is pervasive and ubiquitous. It plays a significant role in the daily lives of all kinds of people. The Australian software industry has bloomed in recent years. Our research results will improve the cost-effectiveness of software development, thereby upgrading the nation's software productivity and quality. These factors are conducive to the export of software produced by Australians and helpful in raising our nation's competitive advantage towards the goal of becoming a leading nation in the software industry among Asia-Pacific countries.Read moreRead less
Enhanced Random Testing - Towards Better Cost Effectiveness and Fault Detection Capabilities. Nowadays, software is pervasive and ubiquitous. It plays a significant role in the modern daily life of all kinds of people. The Australian software industry has bloomed in recent years. Our research results will improve the cost-effectiveness of software development, thereby will upgrade the nation's software productivity and quality. These factors are conducive to the export of software produced by Au ....Enhanced Random Testing - Towards Better Cost Effectiveness and Fault Detection Capabilities. Nowadays, software is pervasive and ubiquitous. It plays a significant role in the modern daily life of all kinds of people. The Australian software industry has bloomed in recent years. Our research results will improve the cost-effectiveness of software development, thereby will upgrade the nation's software productivity and quality. These factors are conducive to the export of software produced by Australians, helpful in raising our nation's competitive advantage in the software industry towards the goal of becoming a leading nation among the Asia-Pacific countries in the software industry.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