Assessing software libraries by browsing similar classes, functions and relationships
Published 16 May 1999Open access
Amir Michail, David Notkin
Citations42
Generate an AI Snapshot to get a quick, structured summary of this paper.
Study Snapshot
ObjectiveStudy objective
MethodsResearch methodology
PopulationPopulation studied
Sample sizeSample sizes
OutcomesStudy outcomes here
ResultsStudy results comes here
LimitationsResearch study limitations comes here
A concise AI-generated summary of the paper will appear here once you click Generate AI Snapshot.
TL;DR
This paper shows how matching of similar components (such as classes and functions) across libraries can be done, different than the traditional component retrieval problem in which components are returned that best match a user's query.
Abstract
Comparing and contrasting a set of software libraries is useful for reuse related activities such as selecting a library from among several candidates or porting an application from one library to another. The current state of the art in assessing libraries relies on qualitative methods.
Keywords
Computer Science
Design Patterns: Elements of Reusable Object-Oriented Software
21,864 Citations1994Erich Gamma, Richard F. Helm +2 more
The book is an introduction to the idea of design patterns in software engineering, and a catalog of twenty-three common patterns, which most experienced OOP designers will find out they've known about patterns all along.
Information Retrieval: Data Structures and Algorithms
2,428 Citations1992William B. Frakes, Ricardo Baeza‐Yates
For programmers and students interested in parsing text, automated indexing, its the first collection in book form of the basic data structures and algorithms that are critical to the storage and retrieval of documents.
IEEE SoftwareClassifying Software for Reusability
693 Citations1987Rubén Prieto-Díaz, Peter Freeman
The faceted scheme described here is a partial solution to the classification and retrieval problem of software component reuse.
Journal of DocumentationON THE SPECIFICATION OF TERM VALUES IN AUTOMATIC INDEXING
577 Citations1973G. Salton, Chul‐Su Yang
It is shown that the standard theories for the specification of term values (or weights) are not adequate, and new techniques are introduced for the assignment of weights to index terms, based on the characteristics of individual document collections.
ACM Transactions on Software Engineering and MethodologySpecification matching of software components
519 Citations1997Amy Moormann Zaremski, Jeannette M. Wing
This work uses formal specifications to describe the behavior of software components and, hence, to determine whether two components match, and gives precise definitions of not just exact match, but, more relevantly, various flavors of relaxed match.
International Conference on Software EngineeringSAAM: a method for analyzing the properties of software architectures
483 Citations1994Rick Kazman, Len Bass +2 more
Software reflexion models
475 Citations1995Gail C. Murphy, David Notkin +1 more
An approach is developed that helps an engineer use a high-level model of the structure of an existing software system as a lens through which to see a model of that system's source code.
IEEE Transactions on Software EngineeringAn information retrieval approach for automatically constructing software libraries
445 Citations1991Yoelle Maarek, Daniel M. Berry +1 more
A technology for automatically assembling large software libraries which promote software reuse by helping the user locate the components closest to her/his needs is described.
Journal of DocumentationUSING PROBABILISTIC MODELS OF DOCUMENT RETRIEVAL WITHOUT RELEVANCE INFORMATION
436 Citations1979W. Bruce Croft, David J. Harper
This paper considers the situation where no relevance information is available, that is, at the start of the search, based on a probabilistic model, and proposes strategies for the initial search and an intermediate search.
ComputerDesign recovery for maintenance and reuse
363 Citations1989Ted J. Biggerstaff
The author explains the concept of design recovery, proposes an architecture to implement the concept, illustrates how the architecture operates, describes progress toward implementing it, and compares this work with other similar work such as reverse engineering and program understanding.
IEEE Transactions on Software EngineeringAn empirical study of representation methods for reusable software components
236 Citations1994William B. Frakes, Thomas Pole
An empirical study of methods for representing reusable software components using four different representation methods: attribute-value, enumerated, faceted, and keyword using Proteus, a reuse library system that supports multiple representation methods.
ComputerManaging object oriented framework reuse
107 Citations1996S. Sparks, Kevin M. Benner +1 more
This work has found that framework-based reuse offers many more benefits with the right management approach, and describes the lessons it learned when building the Knowledge-Based Software Assistant/Advanced Development Model.
View extraction and view fusion in architectural understanding
97 Citations2002Rick Kazman, S. Jeromy Carrière
This paper presents a workbench for architectural extraction called Dali, and shows how Dali supports flexible extraction and fusion of architectural information.
Integrating information retrieval and domain specific approaches for browsing and retrieval in object-oriented class libraries
74 Citations1991Richard F. Helm, Yoelle Maarek
This work describes how the integration of information retrieval techniques based on document analysis, and domain specific approaches based on code analysis, permits the construction of class retrieval tools based on natural language queries, and new kinds of browsing toolsbased on class functionality rather than inheritance.
Manipulating recovered software architecture views
51 Citations1997Alexander Yeh, David R. Harris +1 more
This paper automatically combine and/or simplify views to produce hierarchies, hybrids, and abstractions, and takes advantage of the source code fragments underlying the views to cross-reference between parts from different views.
On the retrieval of reusable software components
35 Citations2002P. Chen, Rolf Hennicker +1 more
The authors suggest a model for the retrieval of reusable components utilizing the search techniques in database management systems using ASL and Telos to overcome some of the main problems with respect to retrieval.
COMPCONSoftware Reuse Through Information Retrieval.
30 Citations1987William B. Frakes, Brian A. Nejmeh
Illustrating object-oriented library reuse by example: a tool-based approach
3 Citations2002Amir Michail, David Notkin
The authors present a tool-based approach that examines how example programs reuse a particular library, and can facilitate reuse by guiding the developer towards important library classes of general utility.
