Laboratory for reliable software




















In the same year as the failure of MGS, Holzmann presented a new approach to critical software development to help reduce risk and provide consistency.

The software development company adapted its existing software code analysis product, CodeSonar, to include verification of The Power of As a static analysis tool, CodeSonar finds problems in software without executing any part of the program.

The tool produces a list of potential violations, including complex programming bugs that can result in system crashes and memory corruption. Compared to traditional software testing methods, CodeSonar checks more code in less time and saves time and expense by finding problems before the software is completed and distributed to users. The design of CodeSonar allows users to configure how thoroughly it performs a check. The tool can warn about every potential issue, only critical violations, or a combination of both.

Users can choose the level of compliance that suits their context. Today, CodeSonar has hundreds of users worldwide, including Fortune companies, startup businesses, educational institutions, and government agencies working on satellites, avionics, industrial controls, medical devices, wireless devices, networking equipment, and consumer electronics.

In response to a widespread medical device recall, the U. In one instance, investigators at the FDA used CodeSonar to help determine the root cause of malfunction in a widely-deployed, commercial infusion pump.

The second rewriting algorithm builds on the first one and synthesizes provably minimal BTT-FSMs from LTL formulae, which can then be used to analyze execution traces online without the need for a rewriting system.

The presented work is part of an ambitious runtime verification and monitoring project at NASA Ames, called Path Explorer, and demonstrates that rewriting can be a tractable and attractive means for experimenting and implementing logics for program monitoring. High-Level Data Races. Monitoring Programs Using Rewriting.

Efficient monitoring of safety properties. The problem of testing whether a finite execution trace of events generated by an executing program violates a linear temporal logic LTL formula occurs naturally in runtime analysis of software. Two efficient algorithms for this problem The first algorithm is implemented by rewriting, and the second synthesizes efficient code from formulae.

Further optimizations of the second algorithm are suggested, reducing space and time consumption. Special operators suitable for writing succinct specifications are discussed and shown to be equivalent to the standard past-time operators. Applying Model Checking in Java Verification. This paper presents our experiences in applying the Java PathFinder Jpf , a recently developed Java to Promela translator, in the search for synchronization bugs in a Chinese Chess game server application written in Java.

We give an We give an overview of Jpf and the subset of Java that it supports and describe an initial effort to abstract and analyze the game server. Finally, we evaluate the results of the effort. This paper describes how two runtime analysis algorithms, an existing data race detection algorithm and a new deadlock detection algorithm, have been implemented to analyze Java programs. Runtime analysis is based on the idea of executing Runtime analysis is based on the idea of executing the program once, and observing the generated run to extract various kinds of information.

This information can then be used to predict whether other different runs may violate some properties of interest, in addition of course to demonstrate whether the generated run itself violates such properties. These runtime analyses can be performed stand-alone to generate a set of warnings. It is furthermore demonstrated how these warnings can be used to guide a model checker, thereby reducing the search space. The described techniques have been implemented in the home grown Java model checker called Java PathFinder.

Ads help cover our server costs. Martech market Marketing automation software can feel clumsy and restraining. All of our solutions come with an interactive, visual editor, giving you the flexibility of programming, without the hassle. Change the way you interact with your customers by bringing together all of your data, and seeing results, in real-time.

Healthcare market Get to the data, quicker. We build solutions using Enso, a powerful visual data processing platform. With a visual editor, analysts can build upon and modify the system without training in programming languages or software development.

Fintech market With an interactive data visualisation, your analysts can dig deep into the data. No more sending the software back to the developers for changes to the model, or parameters. Insights can be instantaneous, with developers and analysts modifying the same code base.

IoT market We can bring all of your devices, services, and systems together in one place, with interactive configuration and management. Get real-time updates from your sensors, and immediately see the results, visualised.



0コメント

  • 1000 / 1000