Fujitsu Develops Software Verification Technology for Practical-use Web Applications.
This new technology has been developed based on verification technology called "model checking", that has been conventionally used for small-scale embedded software. It enables exhaustive and automatic testing that completely covers various scenarios and input data by users, for practical-use web applications such as purchase order systems, and can thereby contribute significantly to the development of high-quality systems.
As Internet technology is becoming more widespread, increasingly more companies are utilizing web applications to create internal mission-critical systems, such as purchase order systems or inventory management systems. Furthermore, in conjunction with the highly dynamic nature of businesses, enterprise systems are becoming larger and more complex, thus requiring more aggressive lead-times for development and testing. Given these circumstances, there is a need for technology capable of ensuring software quality to satisfy customer requirements.
In order to assure quality of web applications, testing is conducted to verify that the developed web application functions properly in accordance with its business specifications. Conventional testing necessitated significant manual effort, as a developer needed to review business specifications and determine which parameters to verify, then create test scenarios and test data in order to test those parameters, and then finally perform rigorous testing. It is generally known that even if such testing is conducted, 0.122 errors per 1,000 steps(1) will remain. This is attributable to the fact that it is highly difficult to avoid errors when depending solely on manual efforts, as it is extremely difficult to thoroughly cover all conceivable test scenarios.
Newly Developed Technology
In order to overcome these difficulties, building on formal verification that had been conventionally used for small-scale programs, Fujitsu Laboratories developed new technology that enables automatic and exhaustive testing of large practical-use Java-based web applications to verify their functionality with respect to the transaction specifications.
Key features of this new technology are as follows:
1. Automatic verification of business specifications for Java programs
A business specification is described using a simple specification language, that covers a large number of conceivable test scenarios and test data. Following the specification, an engine based on this new technology automatically verifies whether the program operates according to its transaction specifications. As a result, program developers are freed from the burden of developing detailed test scenarios or test data.
2. Verification of practical-use web applications
The new technology divides the web application into three parts: screen processing, transaction processing, and database processing; then it extracts just the transaction processing part and verifies it. This enables efficient verification of practical-use web applications, by limiting the scope of verification.
3. Enables thorough, exhaustive verification
By executing tests on variables, without instantiating concrete test data for those variables, the new technology enables exhaustive verification that is equivalent to testing all input variations, thereby making it possible to detect errors that were previously hard to detect through conventional testing methods.
As a world's first, Fujitsu Laboratories applied formal verification(2) to business specifications of practical-use Java-based web applications written. The verification system is based on Java PathFinder(3), the open source verification tool developed by NASA Ames Research Center(4). Collaborating with NASA Ames Research Center, Fujitsu Laboratories has enhanced the functionality of Java PathFinder in order to develop this verification system.
In an experiment in which this technology was used, it was verified that over 1,000 test scenarios were exhaustively generated for each function of a web application, compared to just approximately 30 test scenarios that had been created when using conventional manual test methods. It was also confirmed that 30% to 50% of the testing process could be automated. Furthermore, this technology offers consistent and high-quality results for practical-use web applications, as there is no need for program developers to manually create test scenarios for each function.
Fujitsu Laboratories plans to conduct testing for an actual project, and will continue with research targeting practical use of this technology.
 0.122 errors per 1,000 steps: Source: "Software Development Data White Book 2007", Software Engineer Information Technology Promotion Agency, Japan. "Step" refers to a figure used to measure program size.
 Formal Verification: A verification method to prove the accuracy of software by mathematical means.
 Java PathFinder: A verification tool (model checking) for Java.
For more information: http://javapathfinder.sourceforge.net/
 NASA Ames Research Center: As one of NASA's research centers, Ames Research Center provides research leadership in space-related technologies including astrobiology, robotic lunar exploration, technologies for manned space flight, the search for habitable planets, supercomputing, intelligent/adaptive systems, advanced thermal protection, and airborne astronomy. For more information: http://www.nasa.gov/centers/ames/home/index.html
About Fujitsu Laboratories
Founded in 1968 as a wholly owned subsidiary of Fujitsu Limited, Fujitsu Laboratories Limited is one of the premier research centers in the world. With a global network of laboratories in Japan, China, the United States and Europe, the organization conducts a wide range of basic and applied research in the areas of Multimedia, Personal Systems, Networks, Peripherals, Advanced Materials and Electronic Devices. For more information, please see: http://jp.fujitsu.com/group/labs/en/
About Fujitsu Laboratories of America
Fujitsu Laboratories of America, Inc. is a wholly owned subsidiary of Fujitsu Laboratories Ltd. (Japan), focusing on research on advanced VLSI CAD, Internet, and interconnect technologies. Conducting research in an open environment, it contributes to the global research community and the working IT industry. It is headquartered in Sunnyvale, CA. For more information, see: http://www.fla.fujitsu.com
Source: Fujitsu Ltd
Press Contacts Fujitsu Limited Public and Investor Relations http://www.fujitsu.com/global/news/contacts/ Technical Contacts Fujitsu Laboratories Ltd. Software & Solutions Laboratories Software Innovation Lab. Tel: +81-44-754-2675 E-mail:email@example.com
Japan Corporate News Network. All rights reserved.