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

John Potter

dblp:08/6873 · DBLP profile ↗
← Back
24ranked-venue papers
0as first author
0since 2021 · last 2013
0000-0001-8762-944XORCID · corroborated

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

Software engineering, systems software and programming languages · 17Security and privacy · 3Systems, architecture and hardware · 1Graphics, computer vision, multimedia, augmented reality and games · 1Applied, interdisciplinary, general and emerging computing · 1

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
4 papers
Programming languages and type systems · 69% Concurrent programming · 17% Compilers and program optimization · 9%
Computer architecture, parallel and distributed computing, and storage systems
1 paper
Embedded and real-time systems · 67% Distributed systems · 33%

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

TopicWeightPapersLastEvidence papers
Programming languages and type systems
type systems
0.122006
Protecting representation with effect encapsulation · POPL 2006
Ownership Types for Flexible Alias Protection · OOPSLA 1998
Programming languages and type systems › computational effects
effect systems
0.112006
Protecting representation with effect encapsulation · POPL 2006
Concurrent programming
concurrency bugs
0.012000
Exclusion for composite objects · OOPSLA 2000
Concurrent programming
synchronization
0.012000
Exclusion for composite objects · OOPSLA 2000
Compilers and program optimization › parallel program optimization › synchronization optimization
synchronization elimination
0.012000
Exclusion for composite objects · OOPSLA 2000
Programming languages and type systems › type systems
ownership types
0.011998
Ownership Types for Flexible Alias Protection · OOPSLA 1998
Programming languages and type systems › type systems
soundness
0.011998
Ownership Types for Flexible Alias Protection · OOPSLA 1998
Operating systems › real-time systems
real-time operating systems
0.011996
Operating system extensions for dynamic real-time application · RTSS 1996
Embedded and real-time systems › real-time scheduling
admission control
0.011996
Operating system extensions for dynamic real-time application · RTSS 1996
Embedded and real-time systems
real-time scheduling
0.011996
Operating system extensions for dynamic real-time application · RTSS 1996
Distributed systems
resource monitoring
0.011996
Operating system extensions for dynamic real-time application · RTSS 1996

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

static type checking · 0.1ownership structure · 0.1real-time process abstraction · 0.0overrun management · 0.0method-level algebra of exclusion · 0.0
YearPublicationVenuePosition
2013 Structural Lock Correlation with Ownership Types
Yi Lu 0003, John Potter, Jingling Xue
ESOP2
2012 Ownership Types for Object Synchronisation
Yi Lu 0003, John Potter, Jingling Xue
APLAS2
2012 A Type and Effect System for Determinism in Multithreaded Programs
Yi Lu 0003, John Potter, Chenyi Zhang 0001, Jingling Xue
ESOP2
2009 Ownership Downgrading for Ownership Types
Yi Lu 0003, John Potter, Jingling Xue
APLAS2
2009 Search Space Reduction Technique for Distributed Multiple Sequence Alignment
abstract
To take advantage of the various high performance computer (HPC) architectures for multithreaded and distributed computing, this paper parallelizes the dynamic programming algorithm for multiple sequence alignment (MSA). A novel definition of a hyper-diagonal through a tensor space is used to reduce the search space. Experiments demonstrate that scoring less than 1% of the search space produces the same optimal results as scoring the full search space. The alignment scores are often better than other heuristic methods and are capable of aligning more divergent sequences.
Manal Helal, Lenore M. Restifo Mullin, John Potter, Vitali Sintchenko
NPC3
2007 Aligning the Map Requirements Modelling with the B-method for Formal Software Development
abstract
We present a software development approach that aligns a requirements elicitation technique with a formal method of software specification abstraction. The goal/strategy modeling technique Map augmented with Jackson's context diagrams (representing environment) is used to elicit requirements and the B-method is used to translate Map requirements into formal specifications. Comprehensive tool support allows the B-method to refine and implement the specification correctly. Our approach brings improvement to an approach that uses generic requirements for rigorous software development. The resulting specification model bridges the gap between software requirements and formal specifications and supports automatic refinement of strategic requirements into software code. To illustrate how our approach bridges this gap, we discuss the Point of Sale (PoS) requirements model of Seven Eleven Japan (SEJ).
Abdul Babar, Vladimir Tosic, John Potter
APSEC3
2007 Validity Invariants and Effects
Yi Lu 0003, John Potter, Jingling Xue
ECOOP2
2007 Interprocedural side-effect analysis for incomplete object-oriented software modules
Jingling Xue, Phung Hua Nguyen, John Potter
J. Syst. Softw.3
2006 On Ownership and Accessibility
Yi Lu 0003, John Potter
ECOOP2
2006 Protecting representation with effect encapsulation
abstract
Representation exposure is a well-known problem in the object-oriented realm. Object encapsulation mechanisms have established a tradition for solving this problem based on a principle of reference containment. This paper proposes a novel type system which is based on a different principle, we call effect encapsulation, which confines side effects, rather than object references, according to an ownership structure. Compared to object encapsulation, effect encapsulation liberates us from the restriction on object referenceability and offers more flexibility. In this paper, we show that effect encapsulation can be statically type checked.
Yi Lu 0003, John Potter
POPL2
2005 A Type System for Reachability and Acyclicity
Yi Lu 0003, John Potter
ECOOP2
2005 Exclusion requirements and potential concurrency for composite objects
Abdelsalam Shanneb, John Potter, James Noble 0001
Sci. Comput. Program.2
2001 Simple Ownership Types for Object Containment
Dave Clarke 0001, James Noble 0001, John Potter
ECOOP3
2001 A graphical definition of authorization schema in the DTAC model
abstract
The specification of constraint languages for access control models has proven to be difficult but remains necessary for safety and for mandatory access control policies. While the authorisation relation $(Subject \times Object \rightarrow \pow Right)$ defines the authorised permissions an authorisation schema defines how the various concepts (such as subjects, users, roles, labels) are combined to form a complete access control model.
Jonathon Tidswell, John Potter
SACMAT2
2000 Exclusion for composite objects
abstract
Designing concurrent object-oriented programs is hard. Correct programs must coordinate multiple threads accessing composite objects, using low-level mechanisms such as locks and read-write sets. Efficient programs must balance the complexity and overhead of the coordination mechanisms against the increased performance possible through concurrency. A method-level algebra of exclusion provides a succinct description of the conditions under which a thread must be excluded from a component of a composite object. Using the algebra, programmers can check whether their programs meet their exclusion requirements, can eliminate redundant exclusion controls, and can remove synchronisation overhead by reducing concurrency.
James Noble 0001, David Holmes, John Potter
OOPSLA3
1998 A Dynamically Typed Access Control Model
Jonathon Tidswell, John Potter
ACISP2
1998 Flexible Alias Protection
James Noble 0001, Jan Vitek, John Potter
ECOOP3
1998 Ownership Types for Flexible Alias Protection
abstract
Object-oriented programming languages allow inter-object aliasing. Although necessary to construct linked data structures and networks of interacting objects, aliasing is problematic in that an aggregate object's state can change via an alias to one of its components, without the aggregate being aware of any aliasing.Ownership types form a static type system that indicates object ownership. This provides a flexible mechanism to limit the visibility of object references and restrict access paths to objects, thus controlling a system's dynamic topology. The type system is shown to be sound, and the specific aliasing properties that a system's object graph satisfies are formulated and proven invariant for well-typed programs.
Dave Clarke 0001, John Potter, James Noble 0001
OOPSLA2
1997 An Approach to Dynamic Domain and Type Enforcement
Jonathon Tidswell, John Potter
ACISP2
1997 A Flexible Service Selection Model for Enterprise Distributed Systems
abstract
A common problem in distributed systems is the selection of a particular service instance from a set of possible services. In this paper, we identify the kinds of information required to select services within enterprise distributed systems and present a flexible mechanism for selecting services. This mechanism enables clients to build complex queries that are able to utilise script-based interaction with service instances. The use of scripts allows the selection of particular services based on their internal state and permits services to tailor their responses based on the particular client.
Geoffrey H. Outhred, John Potter
EDOC2
1996 The Matilda Data Model and its Implications
David Lowe 0003, Athula Ginige, Mark Sifer, John Potter
MMM4
1996 Operating system extensions for dynamic real-time application
abstract
Current general purpose operating systems are unable to support a new class of applications that have the same requirements as conventional applications but with additional real-time constraints. We introduce a new real-time process abstraction to model such applications. We show how an operating system can support these processes by having an admission policy to ensure that all of the processes' timing requirements can be met, by monitoring the behavior of the processes to ensure that one process cannot interfere with another by exceeding its allocated resources, and by scheduling the processes to meet their requirements. We also introduce a model for managing processes that overrun. Many of the issues involved in the design and implementation of these components are discussed in this paper.
Steven Sommer, John Potter
RTSS2
1995 Scalability for Graph-Based Case Tools
abstract
Software engineering is particularly concerned with the construction of large systems. Existing software engineering tools tend to be adequate for medium-sized systems, but not as useful for large and very large systems. This paper presents a model viewing system as the basis for graph-based CASE tools which overcomes this lack of scalability. With existing commercial tools the number of user steps to browse or edit a model increases with the size of the model. With the approach of this paper, the number of steps remains constant regardless of the model size. In fact, only one step is required for operations such as adding a flow between two processes anywhere in the model, or moving a submodel to a new parent. This paper outlines the approach with a structured analysis example, provides a formal description of the model viewing system, and discusses some limitations.
Mark Sifer, John Potter
Int. J. Softw. Eng. Knowl. Eng.2
1994 Scalability for graph based CASE tools
abstract
Software engineering is particularly concerned with the construction of large systems. Existing software engineering tools tend to be adequate for medium size systems, but not as useful for large and very large systems. This paper presents a model viewing system as the basis for graph based CASE tools which overcomes this lack of scalability. With existing commercial tools the number of user steps to browse or edit a model increases with the size of the model. With the approach of this paper the number of steps remains constant regardless of the model size. In fact, only one step is required for operations such as adding a flow between two processes anywhere in the model, or moving a submodel to a new parent. This paper outlines the approach with a structured analysis example, provides a formal description of the model viewing system, and discusses some limitations.>
Mark Sifer, John Potter
APSEC2