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

Jeffrey Fischer

dblp:17/4723 · DBLP profile ↗
← Back
9ranked-venue papers
8as first author
0since 2021 · last 2017
—ORCID · none

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

Software engineering, systems software and programming languages · 8 · 7 first-authorArtificial intelligence and machine learning · 1 · 1 first-authorTheory of computation · 1 · 1 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
Services computing and microservices · 40% Program verification · 31% Program analysis · 21%
Computer architecture, parallel and distributed computing, and storage systems
2 papers
Distributed systems · 54% Cloud and datacenter computing · 46%

Topics — the 13 heaviest of 15, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Cloud and datacenter computing
cluster resource management and scheduling
0.112012
Engage: a deployment management system · PLDI 2012
Program verification
model checking
0.122008
The Consistency of Web Conversations · ASE 2008
Compositional Verification by Model Checking for Counter-Examples · ISSTA 1996
Program verification
modular verification
0.122008
The Consistency of Web Conversations · ASE 2008
Compositional Verification by Model Checking for Counter-Examples · ISSTA 1996
Services computing and microservices › service composition
web service composition
0.112008
The Consistency of Web Conversations · ASE 2008
Services computing and microservices
long-running transactions
0.112007
Ensuring consistency in long running transactions · ASE 2007
Services computing and microservices
service composition
0.112007
Ensuring consistency in long running transactions · ASE 2007
Distributed systems
consistency models
0.112007
Ensuring consistency in long running transactions · ASE 2007
Distributed systems
transaction processing
0.112007
Ensuring consistency in long running transactions · ASE 2007
Program analysis
data flow analysis
0.112005
Joining dataflow with predicates · ESEC/SIGSOFT FSE 2005
Software maintenance and evolution › software ecosystems
dependency management
0.012012
Engage: a deployment management system · PLDI 2012
Services computing and microservices › service orchestration
BPEL
0.012008
The Consistency of Web Conversations · ASE 2008
Program analysis
static analysis
0.012008
The Consistency of Web Conversations · ASE 2008
Distributed systems
fault tolerance
0.012007
Ensuring consistency in long running transactions · ASE 2007

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

constraint solving · 0.3set consistency · 0.1self-cancellation · 0.1conversation automata · 0.1compositional analysis · 0.1symbolic execution · 0.1model checking · 0.1strengthening assertions · 0.0interface extraction · 0.0counter-example checking · 0.0
YearPublicationVenuePosition
2017 Programming by Composing Filters
abstract
We present a formal model for event-processing pipelines. Event-processing pipelines appear in a large number of domains, from control of cyber-physical systems (CPS), to large scale data analysis, to Internet-of-things applications. These applications are characterized by stateful transformations of event streams, for example, for the purposes of sensing, computation, and actuation of inner control loops in CPS applications, and for data cleaning, analysis, training, and querying in data analytics applications. Our formal model provides two abstractions: streams of data, and stateful, probabilistic, filters, which transform input streams to output streams probabilistically. Programs are compositions of filters. The filters are scheduled and run by an explicit, asynchronous, scheduler. We provide a transition system semantics for such programs based on infinite-state Markov decision processes. We characterize when a program is scheduler-independent, that is, provides the same observable behavior under every scheduler, based on local commutativity.
Jeffrey Fischer, Rupak Majumdar
LPAR1
2012 Engage: a deployment management system
abstract
Many modern applications are built by combining independently developed packages and services that are distributed over many machines with complex inter-dependencies. The assembly, installation, and management of such applications is hard, and usually performed either manually or by writing customized scripts. We present Engage, a system for configuring, installing, and managing complex application stacks. Engage consists of three components: a domain-specific model to describe component metadata and inter-component dependencies; a constraint-based algorithm that takes a partial installation specification and computes a full installation plan; and a runtime system that co-ordinates the deployment of the application across multiple machines and manages the deployed system. By explicitly modeling configuration metadata and inter-component dependencies, Engage enables static checking of application configurations and automated, constraint-driven, generation of installation plans across multiple machines. This reduces the tedious manual process of application configuration, installation, and management.
Jeffrey Fischer, Rupak Majumdar, Shahram Esmaeilsabzali
PLDI1
2009 Fine-Grained Access Control with Object-Sensitive Roles
Jeffrey Fischer, Daniel Marino, Rupak Majumdar, Todd D. Millstein
ECOOP1
2008 A Theory of Role Composition
abstract
We study the access control integration problem for web services. Organizations frequently use many services, each with its own access control policies, which must interoperate while maintaining secure access to information. The integration problem is to take the set of such services and to find a globally consistent access control policy that ensures that the system composed from the services does not have any authorization failures or information disclosures. We give a sound and complete algorithm for access control integration by reducing the problem to Boolean constraint solving. We have implemented ROLEMATCHER, a tool to infer global role-based access control schemas for a set of services, and show on examples that it can quickly infer global roles for composed systems, or determine the absence of a globally consistent role schema.
Jeffrey Fischer, Rupak Majumdar
ICWS1
2008 The Consistency of Web Conversations
abstract
We describe BPELCheck, a tool for statically analyzing interactions of composite Web services implemented in BPEL. Our algorithm is compositional, and checks each process interacting with an abstraction of its peers, without constructing the product state space. Interactions between pairs of peer processes are modeled using conversation automata which encode the set of valid message exchange sequences between the two processes. A process is consistent if each possible conversation leaves its peer automata in a state labeled as consistent and the overall execution satisfies a user-specified predicate on the automata states. We have implemented BPELCheck in the Enterprise Service Pack of the NetBeans development environment. Our tool handles the major syntactic constructs of BPEL, including sequential and parallel composition, exception handling, flows, and Boolean state variables. We have used BPELCheck to check conversational consistency for a set of BPEL processes, including an industrial example.
Jeffrey Fischer, Rupak Majumdar, Francesco Sorrentino 0002
ASE1
2007 Ensuring consistency in long running transactions
abstract
Flow composition languages permit the construction of long-running transactions from collections of independent atomic services. Due to environmental limitations, such transactions usually cannot be made to conform to standard ACID semantics. We propose set consistency, a powerful, yet intuitive, notion of consistency for long-running transactions. Set consistency considers the collection of permanent (non-intermittent) changes made by a process, when viewed at the end of its execution. Consistency requirements for such collections of changes are specified as predicates over the atomic actions of a process. Set consistency generalizes self-cancellation, a standard consistency requirement for long-running transactions, where failed processes are responsible for undoing any partially completed work. Set consistency can also express strictly stronger requirements, such as mutual exclusion or dependency.
Jeffrey Fischer, Rupak Majumdar
ASE1
2007 Tasks: language support for event-driven programming
abstract
The event-driven programming style is pervasive as an efficient method for interacting with the environment. Unfortunately, the event-driven style severely complicates program maintenance and understanding, as it requires each logical flow of control to be fragmented across multiple independent callbacks.
Jeffrey Fischer, Rupak Majumdar, Todd D. Millstein
PEPM1
2005 Joining dataflow with predicates
abstract
Dataflow analyses sacrifice path-sensitivity for efficiency and lead to false positives when used for verification. Predicate refinement based model checking methods are path-sensitive but must perform many expensive iterations to find all the relevant facts about a program, not all of which are naturally expressed and analyzed using predicates. We show how to join these complementary techniques to obtain efficient and precise versions of any lattice-based dataflow analysis using predicated lattices. A predicated lattice partitions the program state according to a set of predicates and tracks a lattice element for each partition. The resulting dataflow analysis is more precise than the eager dataflow analysis without the predicates.In addition, we automatically infer predicates to rule out imprecisions. The result is a dataflow analysis that can adaptively refine its precision. We then instantiate this generic framework using a symbolic execution lattice, which tracks pointer and value information precisely. We give experimental evidence that our combined analysis is both more precise than the eager analysis in that it is sensitive enough to prove various properties, as well as much faster than the lazy analysis, as many relevant facts are eagerly computed, thus reducing the number of iterations.This results in an order of magnitude improvement in the running times from a purely lazy analysis.
Jeffrey Fischer, Ranjit Jhala, Rupak Majumdar
ESEC/SIGSOFT FSE1
1996 Compositional Verification by Model Checking for Counter-Examples
abstract
Many concurrent systems are required to maintain certain safety and liveness properties. One emerging method of achieving confidence in such systems is to statically verify them using model checking. In this approach an abstract, finite-state model of the system is constructed; then an automatic check is made to ensure that the requirements are satisfied by the model. In practice, however, this method is limited by the state space explosion problem.We have developed a compositional method that directly addresses this problem in the context of multi-tasking programs. Our solution depends on three key space-saving ingredients: (1) checking for counter-examples, which leads to simpler search algorithms; (2) automatic extraction of interfaces, which allows a refinement of the finite model --- even before its communicating partners have been compiled; and (3) using propositional "strengthening assertions" for the sole purpose of reducing state space.In this paper we present our compositional approach, and describe the software tools that support it.
Tevfik Bultan, Jeffrey Fischer, Richard Gerber 0001
ISSTA2