Demonstration venue · read-only. Every page can be browsed; the buttons that would change it are switched off. Create an account to run TaxoReview on your own data. A simulation from public publication records: the people listed were not invited and did not agree to review.
? Tutorial for this page

Ralph D. Jeffords

dblp:73/3636 · DBLP profile ↗
← Back
11ranked-venue papers
7as first author
0since 2021 · last 2012
—ORCID · none

Domains — the database's venue-derived domains; a paper can count in several

Software engineering, systems software and programming languages · 9 · 6 first-authorTheory of computation · 6 · 4 first-author

Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.

Software engineering, system software, and programming languages
5 papers
Program verification · 68% Requirements engineering and software design · 32% Compilers and program optimization · 1%
Computer architecture, parallel and distributed computing, and storage systems
1 paper
Parallel and multicore computing · 100%

Topics — the 11 heaviest of 12, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Program verification
refinement
0.112009
A Formal Method for Developing Provably Correct Fault-Tolerant Systems Using Partial Refinement and Composition · FM 2009
Requirements engineering and software design
requirements specification
0.122003
A strategy for efficiently verifying requirements · ESEC / SIGSOFT FSE 2003
Automatic Generation of State Invariants from Requirements Specifications · SIGSOFT FSE 1998
Program verification
modular verification
0.012003
A strategy for efficiently verifying requirements · ESEC / SIGSOFT FSE 2003
Program verification › modular reasoning
rely-guarantee reasoning
0.012003
A strategy for efficiently verifying requirements · ESEC / SIGSOFT FSE 2003
Program verification
invariant generation
0.011998
Automatic Generation of State Invariants from Requirements Specifications · SIGSOFT FSE 1998
Requirements engineering and software design › inconsistency management
consistency checking
0.011996
Automated Consistency Checking of Requirements Specifications · ACM Trans. Softw. Eng. Methodol. 1996
Requirements engineering and software design › formal specification
formal requirements specification
0.011996
Automated Consistency Checking of Requirements Specifications · ACM Trans. Softw. Eng. Methodol. 1996
Requirements engineering and software design › requirements analysis
requirements specification analysis
0.011996
Automated Consistency Checking of Requirements Specifications · ACM Trans. Softw. Eng. Methodol. 1996
Compilers and program optimization › parsing
LR(k) parsers
0.011977
Parallel Decomposition of LR(k) Parsers (Extended Abstract) · ICALP 1977
Compilers and program optimization
parsing
0.011977
Parallel Decomposition of LR(k) Parsers (Extended Abstract) · ICALP 1977
Parallel and multicore computing
parallel algorithms
0.011977
Parallel Decomposition of LR(k) Parsers (Extended Abstract) · ICALP 1977

Methods — techniques the papers use, named apart from their topics

theorem proving · 0.0model checking · 0.0state machine analysis · 0.0formal semantics · 0.0finite-state automaton · 0.0parser decomposition · 0.0
YearPublicationVenuePosition
2012 Direct generation of invariants for reactive models
abstract
Recently, software practitioners, using model-based engineering and similar methods, have begun developing software from models. After creating a model of the required system behavior, a developer can obtain assurance of the model by validating that it captures the intended behavior and verifying that it satisfies critical properties. Invariants are important to both validation, as a check that the model's behavior matches the intended behavior, and verification, as auxiliaries in proving critical system properties, either automatically or with human guidance. A common approach to discovering invariants is to propose and then check candidate invariants. In contrast, our invariant generation techniques deduce invariants directly from the specification of a model. This paper presents more powerful versions of our earlier techniques for invariant generation and illustrates their utility for a real-world AirLock system.
Elizabeth I. Leonard, Myla Archer, Constance L. Heitmeyer, Ralph D. Jeffords
MEMOCODE4
2010 Model-based construction and verification of critical systems using composition and partial refinement
Ralph D. Jeffords, Constance L. Heitmeyer, Myla Archer, Elizabeth I. Leonard
Formal Methods Syst. Des.1
2009 A Formal Method for Developing Provably Correct Fault-Tolerant Systems Using Partial Refinement and Composition
Ralph D. Jeffords, Constance L. Heitmeyer, Myla Archer, Elizabeth I. Leonard
FM1
2007 RE Theory Meets Software Practice: Lessons from the Software Development Trenches
abstract
Based on our recent experience in four projects, each focused on either security-critical or safety-critical software, this paper evaluates several notions, widely held by RE researchers, for their utility in practical software development. It describes four notions which in our view work in practice and five others which do not.
Constance L. Heitmeyer, Ralph D. Jeffords, Ramesh Bharadwaj, Myla Archer
RE2
2005 Extended abstract: formal verification of architectural patterns in support of dependable distributed systems
abstract
Building robust, secure distributed systems in the presence of transient faults, node failures, and changes in network topology poses a multitude of challenges. To meet current engineering challenges such as pervasive and ubiquitous computing, one must adopt model-driven approaches to build distributed applications. We propose the synchronous paradigm for component integration and coordination: developers use an abstraction that respects the synchrony hypothesis, i.e., each external event is processed by the system completely before the arrival of the next event. Based on the synchronous model, the Secure Operations Language (SOL) is designed as a verifiable language for the integration of high assurance systems.
Ralph D. Jeffords, Ramesh Bharadwaj
MEMOCODE1
2004 Using invariants to optimize formal specifications before code synthesis
abstract
Formal specifications of required system behavior can be analyzed, verified, and validated, giving high confidence that the specification captures the desired behavior Transferring this confidence to the system implementation depends on a formal link between requirements and implementation. The automatic generation of probably correct code provides just such a link. While optimization is usually performed on code to achieve efficiency, we propose to optimize the formal specification before generating code, thus providing optimization independent of the particular code generation method. This paper investigates the use of invariants in optimizing code generated from formal specifications in the software cost reduction (SCR) tabular notation. We show that invariants (1) provide the basis for simplifying expressions that otherwise cannot be improved using traditional compiler optimization techniques, and (2) allow detection and elimination of parts of the specification that would lead to unreachable code.
Ralph D. Jeffords, Elizabeth I. Leonard
MEMOCODE1
2003 A strategy for efficiently verifying requirements
abstract
This paper describes a compositional proof strategy for verifying properties of requirements specifications. The proof strategy, which may be applied using either a model checker or a theorem prover, uses known state invariants to prove state and transition invariants. Two proof rules are presented: a standard incremental proof rule analogous to Manna and Pnueli's incremental proof rule and a compositional proof rule. The advantage of applying the compositional rule is that it decomposes a large verification problem into smaller problems which often can be solved more efficiently than the larger problem. The steps needed to implement the compositional rule are described, and the results of applying the proof strategy to two examples, a simple cruise control system and a real-world Navy system, are presented. In the Navy example, compositional verification %based on the compositional proof using either theorem proving or model checking was three times faster than verification %model checking using based on the standard incremental (noncompositional) rule. In addition to the two above rules for proving invariants, a new compositional proof rule is presented for circular assume-guarantee proofs of invariants. While in principle the strategy and %the rules described for proving invariants may be applied to any state-based specification with parallel composition of components, the specifications in the paper are expressed in the SCR (Software Cost Reduction) tabular notation, the auxiliary invariants used in the proofs are automatically generated invariants, and the verification is supported by the SCR tools.
Ralph D. Jeffords, Constance L. Heitmeyer
ESEC / SIGSOFT FSE1
2001 An Algorithm for Strengthening State Invariants Generated from Requirements Specifications
abstract
In earlier work (Jeffords and Heitmeyer, 1998) we developed a fixpoint algorithm for automatically generating state invariants, properties that hold in each reachable state of a state machine model, from state-based requirements specifications. Such invariants are useful both in validating requirements specifications and as auxiliary lemmas in proofs that a requirements specification satisfies other invariant properties. This paper describes a new related algorithm that strengthens state invariants generated by our initial algorithm and demonstrates the new algorithm on a simplified version of an automobile cruise control system. The paper concludes by describing how the two algorithms were used to generate state invariants from a requirements specification of a cryptographic device and how the invariants in conjunction with a theorem prover were used to prove formally that the device satisfies a set of critical security properties.
Ralph D. Jeffords, Constance L. Heitmeyer
RE1
1998 Automatic Generation of State Invariants from Requirements Specifications
abstract
Automatic generation of state invariants, properties that hold in every reachable state of a state machine model, can be valuable in software development. Not only can such invariants be presented to system users for validation, in addition, they can be used as auxiliary assertions in proving other invariants. This paper describes an algorithm for the automatic generation of state invariants that, in contrast to most other such algorithms, which operate on programs, derives invariants from requirements specifications. Generating invariants from requirements specifications rather than programs has two advantages: 1) because requirements specifications, unlike programs, are at a high level of abstraction, generation of and analysis using such invariants is easier, and 2) using invariants to detect errors during the requirements phase is considerably more cost-effective than using invariants later in software development. To illustrate the algorithm, we use it to generate state invariants from requirements specifications of an automobile cruise control system and a simple control system for a nuclear plant. The invariants are derived from specifications expressed in the SCR (Software Cost Reduction) tabular notation.
Ralph D. Jeffords, Constance L. Heitmeyer
SIGSOFT FSE1
1996 Automated Consistency Checking of Requirements Specifications
abstract
This article describes a formal analysis technique, called consistency checking , for automatic detection of errors, such as type errors, nondeterminism, missing cases, and circular definitions, in requirements specifications. The technique is designed to analyze requirements specifications expressed in the SCR (Software Cost Reduction) tabular notation. As background, the SCR approach to specifying requirements is reviewed. To provide a formal semantics for the SCR notation and a foundation for consistency checking, a formal requirements model is introduced; the model represents a software system as a finite-state automation which produces externally visible outputs in response to changes in monitored environmental quantities. Results of two experiments are presented which evaluated the utility and scalability of our technique for consistency checking in real-world avionics application. The role of consistency checking during the requirements phase of software development is discussed.
Constance L. Heitmeyer, Ralph D. Jeffords, Bruce G. Labaw
ACM Trans. Softw. Eng. Methodol.2
1977 Parallel Decomposition of LR(k) Parsers (Extended Abstract)
David B. Benson, Ralph D. Jeffords
ICALP2