EDBT 2026 Demo / reviewers in the wild / expert
William H. Harrison
dblp:53/5572
· DBLP profile ↗
13ranked-venue papers
7as first author
0since 2021 · last 2005
—ORCID · none
Domains — the database's venue-derived domains; a paper can count in several
Software engineering, systems software and programming languages · 12 · 6 first-authorHuman-computer interaction and ubiquitous computing · 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
13 papers |
Requirements engineering and software design · 57% Programming languages and type systems · 18% Software maintenance and evolution · 17% |
Topics — the 18 heaviest of 21, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Requirements engineering and software design › separation of concerns
multi-dimensional separation of concerns |
0.1 | 2 | 2000 | Workshop on multi-dimensional separation of concerns in software engineering · ICSE 2000 N Degrees of Separation: Multi-Dimensional Separation of Concerns · ICSE 1999 |
Requirements engineering and software design
separation of concerns |
0.1 | 2 | 2000 | Workshop on multi-dimensional separation of concerns in software engineering · ICSE 2000 N Degrees of Separation: Multi-Dimensional Separation of Concerns · ICSE 1999 |
Programming languages and type systems
object-oriented programming |
0.0 | 4 | 1995 | Subject-Oriented Composition Rules · OOPSLA 1995 Subject-Oriented Programming (A Critique of Pure Objects) · OOPSLA 1993 Combination of Inheritance Hierarchies · OOPSLA 1992 |
Software maintenance and evolution
software modularization |
0.0 | 1 | 2000 | Workshop on multi-dimensional separation of concerns in software engineering · ICSE 2000 |
Requirements engineering and software design
software architecture |
0.0 | 1 | 1999 | N Degrees of Separation: Multi-Dimensional Separation of Concerns · ICSE 1999 |
Programming languages and type systems › inheritance
inheritance hierarchies |
0.0 | 1 | 1992 | Combination of Inheritance Hierarchies · OOPSLA 1992 |
Software maintenance and evolution
software evolution |
0.0 | 1 | 1999 | N Degrees of Separation: Multi-Dimensional Separation of Concerns · ICSE 1999 |
Software maintenance and evolution
traceability |
0.0 | 1 | 1999 | N Degrees of Separation: Multi-Dimensional Separation of Concerns · ICSE 1999 |
Empirical software engineering › software project management
coordination |
0.0 | 1 | 1990 | Coordinating Concurrent Development · CSCW 1990 |
Programming languages and type systems › module systems
software composition |
0.0 | 1 | 1995 | Subject-Oriented Composition Rules · OOPSLA 1995 |
Compilers and program optimization
optimizing compiler |
0.0 | 2 | 1981 | Position Paper on Optimizing Compilers · POPL 1981 A New Strategy for Code Generation - the General-Purpose Optimizing Compiler · IEEE Trans. Software Eng. 1979 |
Compilers and program optimization
code generation |
0.0 | 2 | 1979 | A New Strategy for Code Generation - the General-Purpose Optimizing Compiler · IEEE Trans. Software Eng. 1979 A New Strategy for Code Generation - The General Purpose Optimizing Compiler · POPL 1977 |
Program analysis › data flow analysis
interprocedural dataflow analysis |
0.0 | 2 | 1979 | A New Strategy for Code Generation - the General-Purpose Optimizing Compiler · IEEE Trans. Software Eng. 1979 A New Strategy for Code Generation - The General Purpose Optimizing Compiler · POPL 1977 |
Compilers and program optimization › compiler optimization
global optimization |
0.0 | 2 | 1979 | A New Strategy for Code Generation - the General-Purpose Optimizing Compiler · IEEE Trans. Software Eng. 1979 A New Strategy for Code Generation - The General Purpose Optimizing Compiler · POPL 1977 |
Compilers and program optimization
compiler optimization |
0.0 | 1 | 1979 | A New Strategy for Code Generation - the General-Purpose Optimizing Compiler · IEEE Trans. Software Eng. 1979 |
Compilers and program optimization
compiler analysis |
0.0 | 1 | 1977 | Compiler Analysis of the Value Ranges for Variables · IEEE Trans. Software Eng. 1977 |
Program analysis › static analysis › abstract interpretation
range analysis |
0.0 | 1 | 1977 | Compiler Analysis of the Value Ranges for Variables · IEEE Trans. Software Eng. 1977 |
Program verification › invariant generation
inductive assertions |
0.0 | 1 | 1977 | Compiler Analysis of the Value Ranges for Variables · IEEE Trans. Software Eng. 1977 |
Methods — techniques the papers use, named apart from their topics
separation of concerns · 0.1aspect-oriented modeling · 0.0merge operator · 0.0extension operator · 0.0conceptual analysis · 0.0intermediate language design · 0.0data flow analysis · 0.0
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2005 | The concern manipulation environmentabstractNo abstract available William Chung, William H. Harrison, Vincent J. Kruskal, Harold Ossher, Stanley M. Sutton Jr., Peri L. Tarr, Matthew Chapman, Andrew Clement, Helen Hawkins, Sian January |
ICSE | 2 |
| 2000 | Workshop on multi-dimensional separation of concerns in software engineeringabstractSeparation of concerns has been central to software engineering for decades, yet its many advantages are still not fully realized. A key reason is that traditional modularization mechanisms do not allow simultaneous decomposition according to multiple kinds of (overlapping and interacting) concerns. This workshop was intended to bring together researchers working on more advanced modularization mechanisms, and practitioners who have experienced the need for them, as a step towards a common understanding of the issues, problems and research challenges. Peri L. Tarr, William H. Harrison, Harold Ossher, Anthony Finkelstein, Bashar Nuseibeh, Dewayne E. Perry |
ICSE | 2 |
| 1999 | N Degrees of Separation: Multi-Dimensional Separation of ConcernsabstractDone well, separation of concerns can provide many software engineering benefits, including reduced complexity, improved reusability, and simpler evolution.The choice of boundaries for separate concerns depends on both requirements on the system and on the kind(s) of decompositionand composition a given formalism supports.The predominant methodologies and formalisms available, however, support only orthogonal separations of concerns, along sdngle dimensions of composition and decomposition.These characteristics lead to a number of well-known and difficult problems.This paper describes a new paradigm for modeling and implementing software artifacts, one that permits separation of overlapping concerns along multiple dimensions of composition and decomposition.This approach addresses numerous problems throughout the software lifecycle in achieving wellengineered, evolvable, flexible software artifacts and traceability across artifacts. Peri L. Tarr, Harold Ossher, William H. Harrison, Stanley M. Sutton Jr. |
ICSE | 3 |
| 1999 | Subject-Oriented Design: Towards Improved Alignment of Requirements, Design, and Codeabstractarticle Free Access Share on Subject-oriented design: towards improved alignment of requirements, design, and code Authors: Siobhán Clarke School of Computer Applications, Dublin City University, Dublin 9, Republic of Ireland School of Computer Applications, Dublin City University, Dublin 9, Republic of IrelandView Profile , William Harrison IBM T.J. Watson Research Center, P.O. Box 704, Yorktown Heights, NY IBM T.J. Watson Research Center, P.O. Box 704, Yorktown Heights, NYView Profile , Harold Ossher IBM T.J. Watson Research Center, P.O. Box 704, Yorktown Heights, NY IBM T.J. Watson Research Center, P.O. Box 704, Yorktown Heights, NYView Profile , Peri Tarr IBM T.J. Watson Research Center, P.O. Box 704, Yorktown Heights, NY IBM T.J. Watson Research Center, P.O. Box 704, Yorktown Heights, NYView Profile Authors Info & Claims ACM SIGPLAN NoticesVolume 34Issue 10Oct. 1999 pp 325–339https://doi.org/10.1145/320385.320420Online:01 October 1999Publication History 94citation1,710DownloadsMetricsTotal Citations94Total Downloads1,710Last 12 Months24Last 6 weeks3 Get Citation AlertsNew Citation Alert added!This alert has been successfully added and will be sent to:You will be notified whenever a record that you have chosen has been cited.To manage your alert preferences, click on the button below.Manage my AlertsNew Citation Alert!Please log in to your account Save to BinderSave to BinderCreate a New BinderNameCancelCreateExport CitationPublisher SiteeReaderPDF Siobhán Clarke, William H. Harrison, Harold Ossher, Peri L. Tarr |
OOPSLA | 2 |
| 1995 | Subject-Oriented Composition RulesabstractSubject-oriented programming supports composition of object-oriented programs or program fragments called subjects. This paper presents an approach to the composition rules used to specify composition details. Rules can be generic, allowing different subrules to be "plugged into" higher-level rules, and they include a means of specifying exceptions to general rules. We give definitions of a number of useful, generic rules, including merge and override, as a first step towards a generally-useful composition rule library. We also outline an object-oriented framework for implementing rules, which we are currently building as part of our support for subject-oriented programming in C++. Harold Ossher, Matthew Kaplan 0003, William H. Harrison, Alexander Katz, Vincent J. Kruskal |
OOPSLA | 3 |
| 1993 | Subject-Oriented Programming (A Critique of Pure Objects)abstractObject-Oriented technology is often described in terms of an interwoven troika of themes: encapsulation, polymorphism, and inheritance.But these themes are firmly tied with the concept of identity.If object-oriented technology is to be successfully scaled from the development of independent applications to development of integrated suites of applica-tions, it must relax its emphasis on the objecf.The technology must recognize more directly that a multiplicity of subjective views delocalizes the concept of object, and must emphasize more the binding concept of identity to tie them together.This paper explores this shift to a style of objectoriented technology that emphasizes the subjective views: Subject-Oriented Programming. William H. Harrison, Harold Ossher |
OOPSLA | 1 |
| 1992 | Combination of Inheritance HierarchiesabstractMaking extensionsto existing systems is a critically important activity in object-oriented pro-existing application.We are in full agreement with Lieberman [7] that one wants a small extension to behavior to require just a small extension to code, and that adding new code is good, whereas modifying existing code is bad.We call this approach "extension-by-addition" [16].gramming.This paper proposes an approach in which extensions of all kinds are clearly separated from the base hierarchy upon which they are built, for ease of distribution and combination.Extensions, including extensions to existing classes, are written in separate, sparse extension hierarchies.The entire system is obtained by combining the extension hierarchies with the base hierarchy.Sequences of successive extensions can be combined using an extension operator, and parallel extensions can be combined using a merge operator, which might identify conflicts that must be reconciled.System building takes place at two levels: combining existing extensions from a library using these operators, and building new extensions when existing ones are not adequate.New extensions built in this way are added to the library, and so should be written to be as general and reusable as possible. Harold Ossher, William H. Harrison |
OOPSLA | 2 |
| 1990 | Coordinating Concurrent DevelopmentabstractDevelopment of any large system or artifact requires the coordination of many developers. Development activities can occur concurrently. The goal of coordination is to enhance, not restrict, developer productivity, while ensuring that concurrent development activities do not clash with one another. William H. Harrison, Harold Ossher, Peter F. Sweeney |
CSCW | 1 |
| 1989 | Good News, Bad News: Experience Building a Software Development Environment Using the Object-Oriented ParadigmabstractThis paper presents our experience building an extendible software development environment using the object-oriented paradigm. We have found that object instances provide a natural way to model program constructs, and to capture complex relationships between different aspects of a software system. The object-oriented paradigm can be efficiently implemented on standard hardware and software, and provides some degree of extendibility without requiring major modifications to the existing implementation. William H. Harrison, John J. Shilling, Peter F. Sweeney |
OOPSLA | 1 |
| 1981 | Position Paper on Optimizing CompilersabstractNo abstract available. William H. Harrison |
POPL | 1 |
| 1979 | A New Strategy for Code Generation - the General-Purpose Optimizing CompilerabstractThis paper presents a systematic approach to the problem of generating good code with a compiler that is easy to construct. A compiler structure is proposed which relies on interprocedural data flow analysis, global optimization, and an intermediate language schema to simplify the task of writing the code generating portions of a compiler without sacrificing code quality. This structure is contrasted with a more conventional structure to explore the reasons why the new structure solves several problems inherent in the conventional structure. Further advantages which accrue from the new structure are also presented. William H. Harrison |
IEEE Trans. Software Eng. | 1 |
| 1977 | A New Strategy for Code Generation - The General Purpose Optimizing CompilerabstractThis paper presents a systematic approach to the problem of generating good code with a compiler that is easy to construct. A compiler structure is proposed which relies on interprocedural data flow analysis, global optimization, and an intermediate language schema to simplify the task of writing the code generating portions of a compiler without sacrificing code quality. This structure is contrasted with a more conventional structure to explore the reasons why the new structure solves several problems inherent in the conventional structure. Further advantages which accrue from the new structure are also presented. William H. Harrison |
POPL | 1 |
| 1977 | Compiler Analysis of the Value Ranges for VariablesabstractPrograms can be analyzed to determine bounds on the ranges of values assumed by variables at various points in the program. This range information can then be used to eliminate redundant tests, verify correct operation, choose data representations, select code to be generated, and provide diagnostic information. Sophisticated analyses involving the proofs of complex assertions are sometimes required to derive accurate range information for the purpose of proving programs correct. The performance of such algorithms may be unacceptable for the routine analysis required during the compilation process. This paper presents a discussion of mechanical range analysis employing techniques practical for use in a compiler. This analysis can also serve as a useful adjunct to the more sophisticated techniques required for program proving. William H. Harrison |
IEEE Trans. Software Eng. | 1 |