Fully automatic source code analysis tools based on abstract interpretation have become an integral part of the embedded software development process in many companies. And although these tools are of great help in identifying residual errors, they still possess a major drawback: analyzing industrial code comes at the cost of many spurious errors that must be investigated manually. The need for efficient development cycles prohibits extensive manual reviews, however. To overcome this problem, the combination of different software verification techniques has been suggested in the literature. Following this direction, we present a novel approach combining abstract interpretation and source code bounded model checking, where the model checker is used to reduce the number of false error reports. We apply our methodology to source code from the automotive industry written in C, and show that the number of spurious errors emitted by an abstract interpretation product can be reduced considerably.
In this article we propose a technique, called abstract testing, which replaces traditional test cases by abstract test cases. By doing so, fewer test cases are needed, and they are linked more closely to the requirements. Abstract tests can be considered as verification scenarios on the source code level which are derived from the requirements. Checking verification scenarios against the source code is done automatically using a software model checker. We also suggest a migration path from traditional tests to abstract test cases, which provides a smooth transition towards this new technique. Finally, we demonstrate feasibility of abstract testing by a case study from the automotive systems domain.
Abstract-Traditionally, test cases are used to check whether a system conforms to its requirements. However, to achieve good quality and coverage, large amounts of test cases are needed, and thus huge efforts have to be put into test generation and maintenance. We propose a methodology, called Abstract Testing, in which test cases are replaced by verification scenarios. Such verification scenarios are more abstract than test cases, thus fewer of them are needed and they are easier to create and maintain. Checking verification scenarios against the source code is done automatically using a software model checker. In this paper we describe the general idea of Abstract Testing, and demonstrate its feasibility by a case study from the automotive systems domain.
Technology improvements are continuing to expand the capability of coiled tubing directional drilling (CTDD) worldwide. Increased CTDD activity in advanced underbalanced re-entry applications that require precise wellbore (multilateral) placement and real-time monitoring of downhole parameters has led to the development of bottom-hole drilling assemblies (BHAs) with enhanced functionality.
Saudi Aramco identified CTDD as an important technology for redeveloping its gas reserves and is dedicated to expanding the technical limit of CTDD application. Saudi Aramco successfully completed its first underbalanced re-entry coiled tubing drilling (UBCTD) pilot project and is now progressing to consolidate this technology in subsequent UBCTD operations. A great impetus has now been placed on further improving UBCTD project economics through improved operational efficiency and the introduction of new underbalanced coiled tubing drilling techniques and services.
This paper provides an overview of the new Rib Steered Motor (RSM) technology and its potential benefits to UBCTD. It details recent worldwide deployments of the rib steering motor technology focusing on operations in the Kingdom of Saudi Arabia which provide the perfect testing ground when geosteering with RSM. Future advances using UBCTD geosteering technology rely on a close working relationship between the field operator and the service company. Successful application of UBCTD applys to a wide range of mature oil and gas fields for enhancing access to the producing reservoir to drive the economic extraction of additional reserves.
This chapter describes a methodology to support the management of large scale software projects in optimizing product correction effort versus initial development costs over time. The Software Process Model (SPM) represents the implementation of this approach on a level of detail explicitly developed to meet project manager’s demands. The underlying technique used in this approach is based on Dynamic Bayesian Networks (DBNs). The use of Bayesian Networks (BNs) enables the representation of causal relationships among process and product key performance indicators elicited either by data or expert knowledge. DBNs provide an insight into various aspects of SPM over time to assess current as well as predicting future model states. The objective of this chapter is to describe the practical approach to establish SPM as state of the art decision support in an industrial environment.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.