• Cite Icon9
  • https://doi.org/10.1184/r1/6721169.v1Copy DOI Icon

Proper plugin protocols

  • Jul 1, 2018
  • Figshare
  • Jonathan Aldrich +1 more
Show More
  • Abstract
  • Literature Map
  • References
  • Citations
  • Similar Papers
Abstract

The ability of the software engineering community to achieve high levels of reuse from software frameworks has been tempered by the difficulty in understanding how to reuse them properly. When written correctly, a plugin can take advantage of the framework's code and architecture to provide a rich application with relatively few lines of code. Unfortunately, doing this correctly is difficult because frameworks frequently require plugin developers to be aware of complex protocols between objects, and improper use of these protocols causes exceptions and unexpected behavior at run time. This dissertation introduces collaboration constraints, rules governing how multiple objects may interact in a complex protocol. These constraints are particularly difficult to understand and analyze because they may extend across type boundaries and even programming language boundaries. This thesis improves the state of the art through two mechanisms. First, it provides a deep understanding of these collaboration constraints and the framework designs which create them. Second, it introduces Fusion, an adoptable specification language and static analysis tool, that detects broken collaboration constraints in plugin code and demonstrates how to achieve this goal in a cost-effective manner that is practical for industry use. In this dissertation, I have done an empirical study of framework help forums which showed that collaboration constraints are burdensome for developers, as they take hours or even days to resolve. From this empirical study, I have identified several common properties of collaboration constraints. This motivated a new specification language, called Fusion, that is tailored for specifying collaboration constraints in a practical way. The specification language uses relationships to describe the abstract associations between objects and allows developers to specify collaboration constraints as logical predicates of relationships. Since a relationship is an abstraction above the code, this allows developers to easily specify constraints that cross type and language boundaries. There are three variants of the analysis: a sound variant that has false positives but no false negatives, a complete variant that has false negatives but no false positives, and a pragmatic variant that attempts to balance this tradeoff. In this dissertation, I successfully used Fusion to specify and analyze constraints from examples found in the help forums of the ASP.NET and Spring frameworks. Additionally, I ran Fusion on DaCapo, a 1.5 MLOC DaCapo benchmark for program analysis, to show that Fusion is scalable and provides precise enough results for industry with low specification cost. This dissertation examines many tradeoffs: the tradeoffs of framework designs, the tradeoffs of specification precision, and the tradeoffs of program analysis results are all featured. A central theme of this work is that there is no single right solution to collaboration constraints; there are only solutions that work better for a particular instance of the problem.

Similar Papers
  • Research Article
  • Citations59

Static analysis of source code security: Assessment of tools against SAMATE tests

  • Feb 13, 2013
  • Information and Software Technology
  • Gabriel Díaz +1
  • Conference Article

The consequences of statistical tests on proxy variables, an application to short-TE as an estimation for MEGA-edited GABA

  • Sep 16, 2025
  • Proceedings on CD-ROM - International Society for Magnetic Resonance in Medicine. Scientific Meeting and Exhibition/Proceedings of the International Society for Magnetic Resonance in Medicine, Scientific Meeting and Exhibition
  • Karl Landheer +2
  • Research Article
  • Citations4

DETERMINAÇÃO DA IDADE DE Olivancillaria vesica auricularia (LAMARCK, 1810) (MOLLUSCA: GASTROPODA: OLIVIDAE) NA PRAIA DO CASSINO, RIO GRANDE, RIO GRANDE DO SUL, BRASIL

  • Mar 10, 2017
  • Arquivos de Ciências do Mar
  • Cristina De Almeida Rocha‐Barreira
  • Research Article

تأثیر تنش رطوبتی بر صفات زراعی و مورفولوژیک لاینهای اینبرد نوترکیب گندم

  • Jul 11, 2015
  • SHILAP Revista de lepidopterología
  • حامد نوری زاده +3
  • Research Article
  • Citations66

Reliability of non-lethal surveillance methods for detecting ranavirus infection

  • Jan 01, 2012
  • Diseases of Aquatic Organisms
  • Mj Gray +2
  • Research Article
  • Citations41

The Effect of Testing Reliability on Visual Field Sensitivity in Normal Eyes: The Singapore Chinese Eye Study

  • Aug 30, 2017
  • Ophthalmology
  • Nicholas Y.Q Tan +7
  • Research Article
  • Citations13

Error rates in reporting prostatic core biopsies

  • Mar 25, 2011
  • Histopathology
  • Jon D Oxley +1
  • Research Article
  • Citations22

An Evaluation of Conventional Culture, invA PCR, and the Real-Time PCR iQ-Check Kit as Detection Tools for Salmonella in Naturally Contaminated Premarket and Retail Turkey

  • Feb 01, 2008
  • Journal of Food Protection
  • Chantal W Nde +3
  • Research Article
  • Citations103

Fatigue effects in automated perimetry

  • Mar 15, 1988
  • Applied Optics
  • Chris A Johnson +2
  • Conference Article

A Proposed Figure of Merit for Evaluating the Performance of Radiation Waste Measurement Systems

  • Jan 01, 2011
  • Ronald M Keyser +3
  • Supplementary Content
  • Citations8

Drivers of Departure and Prospecting in Dispersing Juvenile Red Kites (Milvus milvus)

  • Apr 18, 2021
  • Zurich Open Repository and Archive (University of Zurich)
  • Patrick Scherler
  • PDF
  • Research Article
  • Citations55

Deep learning-based solution for smart contract vulnerabilities detection

  • Nov 16, 2023
  • Scientific Reports
  • Xueyan Tang +4
  • PDF
  • Research Article
  • Citations7

Real-World Analysis of the Aging Effects on Visual Field Reliability Indices in Humans

  • Dec 09, 2021
  • Journal of Clinical Medicine
  • Tomoki Shirakami +4
  • Research Article

MP32-18 EVALUATING THE DIAGNOSTIC ACCURACY OF BIPARAMETRIC MAGNETIC RESONANCE IMAGING IN MUSCLE-INVASIVE BLADDER CANCER

  • Apr 01, 2023
  • Journal of Urology
  • Qiang Lv +3
  • Abstract

How do we make the best choice in assays used to monitor HLA antibodies in renal recipients awaiting transplant? A comparison of flowpra beads with luminex single-antigen beads

  • Aug 29, 2015
  • Human Immunology
  • Eileen S Maccann +1
Cactus Communications logo

Copyright 2026 Cactus Communications. All rights reserved.