This Small Business Innovation Research Program (SBIR) Phase I project is to design and develop an automatic conformance checking solution that can quickly detect inconsistencies between virtual devices and hardware prototypes. Computer and consumer electronics manufacturers are facing increasingly complex hardware designs, and lengthy, painstaking software and hardware integration processes. To address tight time-to-market deadlines, many manufacturers develop software drivers over virtual devices before hardware is available. However, to realize the benefits of early software development, it is critical to ensure consistency between the virtual and physical devices, so that software developed over the virtual device will work on the physical device when it becomes available. This project will study and design tools to help discover and report inconsistencies to developers, with the goal of reducing testing and development effort, while improving product quality.
The broader impact/commercial potential of this project is to provide software tools to ensure the effectiveness of early software development. Computer device manufacturers are targeting fast-evolving segments, such as the mobile market, and face intense competition. To remain competitive, manufacturers are eager to adopt new technologies, such as virtual prototyping, to enable early software development. Conformance checking helps detect the inconsistencies between virtual and physical hardware, and thus helps cut product time-to-market. This project will also benefit vendors that build virtual prototyping platforms by extending the current feature set with conformance checking. The addition of these features will enable the full power of early software development using virtual prototyping, and will encourage more users to use their products.
This SBIR Phase I project enhances virtual prototyping, an emerging industrial movement for early software development, especially in the mobile and embedded markets. In response to increasing competition and extremely tight deadlines, mobile manufacturers and system builders develop virtual devices to mimic hardware that is not available. They can then design software over these virtual devices before the physical devices are made available and mass manufactured. The research outcome for this SBIR project improves the quality of virtual prototyping, enabling efficient and effective early software development with virtual devices. Quality, effectiveness, and efficiency are achieved with software tools, which can generate high coverage test cases, visualize test coverage, check conformance between virtual devices and early physical device prototypes, and bridge virtual devices across platforms. This project produces a set of software tools that enhance virtual prototyping. This set includes a software tool that generates test cases for devices and device drivers, a software tool that monitors driver and device interaction, and a software tool that visualizes the code coverage of test cases. By the end of this SBIR Phase I project, a leading hardware manufacturer had already started deploying these software tools. Developers benefit from the software tool's ability to automatically generate test cases for devices and device drivers, and its ability to automatically highlight the inconsistencies between virtual and physical prototypes. Managers of the development team benefit from the software tool's ability to visualize software test coverage, and its ability to measure similarity between the virtual and physical devices. Both abilities increase the efficiency of product development and improve product quality for mobile and embedded devices developed under tight deadlines.