7 results
Search Results
2. Determining an Optimal Time Interval for Testing and Debugging Software.
- Author
-
Singpurwalla, Nozer D.
- Subjects
- *
COMPUTER software , *DEBUGGING , *ELECTRONIC data processing , *COMPUTER programming , *RELIABILITY in engineering , *SOFTWARE engineering - Abstract
In this paper, we describe an approach for addressing the important problem of how long to test and debug software before it is released. Our approach is based on the principles of decision making under uncertainty, and involves a maximization of expected utility. We suggest two plausible forms for the utility function, one based on costs alone and the other involving the realized reliability of the software. Using results from the literature on probabilistic models for software failure, we outline, for the case of single state testing, the ensuing optimization problem which can be addressed using numerical techniques. The sensitivity of our results to the various input parameters is discussed and some directions for future research outlined. [ABSTRACT FROM AUTHOR]
- Published
- 1991
- Full Text
- View/download PDF
3. Formal Verification of Ada Programs.
- Author
-
Guaspari, David, Marceau, Carla, and Polak, Wolfgang
- Subjects
- *
PROGRAMMING languages , *SOFTWARE verification , *ELECTRONIC data processing , *SEQUENTIAL processing (Computer science) , *COMPUTER software , *COMPUTER science - Abstract
This paper describes the Penelope verification editor and its formal basis. Penelope is a prototype system for the interactive development and verification of programs that are written in a rich sub- set of sequential Ada. Because it generates verification conditions incrementally, Penelope can be used to develop a program and its correctness proof in concert. If an already-verified program is modified, one can attempt to prove the modified version by replaying and modifying the original sequence of proof steps. Verification conditions are generated by predicate transformers whose logical soundness can be proven by establishing a precise formal connection between predicate transformation and denotational definitions in the style of continuation semantics. Penelope's specification language, Larch/Ada, belongs to the family of Larch interface languages. It scales up properly, in the sense that we can demonstrate the soundness of decomposing an implementation hierarchically and reasoning locally about the implementation of each node in the hierarchy. [ABSTRACT FROM AUTHOR]
- Published
- 1990
- Full Text
- View/download PDF
4. Using Larch to Specify Avalon/C + + Objects.
- Author
-
Wing, Jeannette M.
- Subjects
- *
C++ , *PROGRAMMING languages , *COMPUTER software , *COMPUTER science , *COMPUTER programmers , *ELECTRONIC data processing - Abstract
This paper gives a formal specification of three base Avalon/C++ classes; recoverable, atomic, and subatomic. Programmers derive from class recoverable to define persistent objects, and from either class atomic or class subatomic to define atomic objects. The specifications, written in Larch, provide the means for showing that classes derived from the base classes implement objects that are persistent or atomic, and thus exemplify the applicability of an existing specification method to specifying "nonfunctional" properties. Writing these format specifications for Avalon/C++'s built-in classes has helped to clarify places in the programming language where features interact, to make unstated assumptions explicit, and to characterize complex properties of objects. [ABSTRACT FROM AUTHOR]
- Published
- 1990
- Full Text
- View/download PDF
5. Chameleon: A System for Solving the Data-Translation Problem.
- Author
-
Mamrak, Sandra A., Kaelbling, Michael J., Nicholas, Charles K., and Share, Michael
- Subjects
- *
ELECTRONIC data processing , *ELECTRONIC records , *RECORDS management , *COMPUTER software , *SOFTWARE engineering , *COMPUTER science - Abstract
There is a need for widespread exchange of electronic documents in domains as diverse as book publishing, automated offices, factories, and research laboratories. The variety of data representations, and the subsequent need for data translation, is a major obstacle to this exchange. This paper describes a comprehensive data translation system with the following characteristics: 1) it is derived from a formal model of the translation task; 2) it supports the building of translation tools; 3) it supports the use of translation tools; and 4) it is accessible to its targeted end-users. A software architecture to achieve the translation capability is fully implemented. Translators have been generated using the architecture, both by the original software developers and by industrial associates who have installed the architecture at their own sites. [ABSTRACT FROM AUTHOR]
- Published
- 1989
- Full Text
- View/download PDF
6. Qualified Data Flow Problems.
- Author
-
Holley, L. Howard and Rosen, Barry K.
- Subjects
- *
DATA flow computing , *ELECTRONIC data processing , *COMPUTER software , *SOFTWARE engineering , *COMPUTER science , *COMPUTER programming - Abstract
It is known that not all paths are possible in the run time control flow of many programs. It is also known that data flow analysis cannot restrict attention to exactly those paths that are possible. It is, therefore, usual for analytic methods to consider all paths. Sharper information can be obtained by considering a recursive set of paths that is large enough to include all possible paths, but small enough to exclude many of the impossible ones. This paper presents a simple uniform methodology for sharpening data flow information by considering certain recursive path sets of practical importance. Associated with each control flow arc there is a relation on a finite set C). The paths that qualify to be considered are (essentially) those for which the com- position of the relations encountered is nonempty. For example, Q might be the set of all assignments of values to each of several bit variables used by a program to remember some facts about the past and branch accordingly in the future. Given any data flow problem together with qualifying relations on Q associated with the control flow arcs, we construct a new problem. Considering all paths in the new problem is equivalent to considering only qualifying paths in the old one. Preliminary experiments (with a small set of real programs) Indicate that qualified analysis is feasible and substantially more informative than ordinary analysis. The methodology also ban beneficial feedback effect on the delicate task of passing from programs to meaningful data flow analysis problems. Even when all paths qualify, unusually sharp information can be obtained by passing from programs to problems in ways suggested by theorems proved here. [ABSTRACT FROM AUTHOR]
- Published
- 1981
7. An Approach to Formal Definitions and Proofs of Programming Principles.
- Author
-
Misra, Jayadev
- Subjects
- *
COMPUTER programming , *COMPUTER algorithms , *ELECTRONIC data processing , *MATHEMATICAL analysis , *COMPUTER science , *COMPUTER software , *SOFTWARE engineering , *ENGINEERING - Abstract
A method for formal description of programming principles is presented in this paper. Programming principles, such as sequential search can be defined and proven even in the absence of an application. We represent a principle as a program scheme which has partially interpreted functions in it. The functions must obey certain input constraints. Use of these ideas in program proving is illustrated with examples. [ABSTRACT FROM AUTHOR]
- Published
- 1978
Discovery Service for Jio Institute Digital Library
For full access to our library's resources, please sign in.