Reusable Software Component Retrieval: Part I - PowerPoint PPT Presentation

About This Presentation
Title:

Reusable Software Component Retrieval: Part I

Description:

Reusable Software Component Retrieval: Part I. 4. 15/08/2004 ... ORCA (Object Reuse Classification Analyzer); AMHYRST (Automated Hypertext Reuse Search Tool) ... – PowerPoint PPT presentation

Number of Views:82
Avg rating:3.0/5.0
Slides: 27
Provided by: tacianaamo
Category:

less

Transcript and Presenter's Notes

Title: Reusable Software Component Retrieval: Part I


1
Reusable Software Component Retrieval Part I
  • Taciana Amorim Vanderlei
  • tav_at_cin.ufpe.br

2
Content
  • Motivation
  • Component Retrieval - Historic
  • Conclusion
  • References

3
Motivation
Browsing
4
Motivation
5
Motivation
Searching
6
Component Retrieval - Historic
  • McIllroy, 1967
  • Proposed the idea of a software components
    catalog from which software parts could be
    assembled, much as is done with mechanical and
    electronic components.

To reuse a software component, you first have to
find it.
7
Component Retrieval - Historic
  • Prieto-Diaz, R. and P. Freeman, 1987
  • Proposes a faceted classification scheme based on
    reusability-related attributes and a selection
    mechanism as a partial solution to the software
    reuse problem.
  • Prieto-Diaz, R., 1991
  • But was in decade of 90, with Prieto-Diaz, that
    the research became more intensive
  • Support reuser's selection process and
    development of a standard vocabulary for software
    attributes.

8
Decade of 90
  • Retrieval methods
  • Enumerated classification
  • Inflexibility
  • Problems with understanding large hierarchies.
  • Faceted classification
  • Flexible
  • Precise
  • Better suited for large, continuously expanding
    collection
  • Hard for users to find the right combination of
    terms.
  • Free-text indexing (automatic indexing).
  • Simple to build and retrieval
  • Need large bodies of text to become statistically
    accurate.

9
Decade of 90
  • Controlled vocabulary
  • Faceted classification
  • Indexing.
  • Uncontrolled vocabulary
  • Free-text indexing.

10
Component Retrieval - Historic
  • Y.S. Maarek, D. M. Berry, and G.E. Kaiser, 1991
  • GURU
  • A tool that automatically assembles conceptually
    structured software libraries from a set of
    unindexed and unorganized software components.
  • Free-text indexing approach - cost,
    transportability and scalability.

11
Component Retrieval - Historic
  • R. D. Banker, R. J. Kauffman, and D. Zweig,
    1993
  • A repository-based integrated CASE tool called
    High Productivity Systems (HPS)
  • First Boston Corporation and Carter Hawley Hale
    Information Services.
  • Productivity and quality.
  • Defray the costs of the construction and testing
  • Speed the implementation of new systems
  • Be leveraged across projects and areas of the
    firm in support of multiple businesses.

12
Component Retrieval - Historic
  • S. Henninger, 1994
  • Constructing effective queries is as important as
    or more important than the retrieval algorithm
    used.
  • CodeFinder
  • Retrieval system that combines retrieval by
    reformulation and spreading activation to help
    users find information
  • Reduces the vocabulary problem.

13
Component Retrieval - Historic
  • S. Henninger, 1994
  • Gráfico
  • Desenhar Círculo
  • (x,y,raio,raio interno)
  • Anel
  • Rosquinha
  • Pneu
  • Direção

14
Component Retrieval - Historic
  • The probability of two people choosing the same
    keyword for the objects is between 10 and 20.
    Using 15 aliases will achieve 6080 agreement,
    and 30 aliases can get up to 90 agreement
    Furnas et al., 1987.
  • One of the problems with an unlimited aliasing
    approach is the potential of precision problems
    Gomez et al., 1990.

15
Component Retrieval - Historic
  • Amy Moormann Zaremski and Jeannette M., 1995
  • Signature matching
  • Complementary approach to more-traditional
    information retrieval techniques
  • Method for organizing, navigating through, and
    retrieving from software libraries.

16
Component Retrieval - Historic
  • J. M. Neighbors, 1996
  • General techniques for finding the locus of a
    component in an existing large system.
  • Extracted either by hand or by an advanced
    knowledge-based system.
  • Reported techniques that worked on only three
    systems.
  • Draco, a knowledge-based forward engineering
    system.

17
Component Retrieval - Historic
  • Isakowitz, T. and R. J. Kauffman, 1996
  • Conceptual and architectural bases for specifying
    a repository search tool which automates the
    process of repository search.
  • The tools combine two different capabilities
  • ORCA (Object Reuse Classification Analyzer)
  • AMHYRST (Automated Hypertext Reuse Search Tool).

18
Component Retrieval - Historic
  • 60 of software reuse involved objects
    written and reused by the same developer, and
    85-90 of software reuse involved objects
    constructed by members of a project team within
    the same application. Isakowitz, T. and R. J.
    Kauffman, 1996

19
Component Retrieval - Historic
  • H. Mili , E. Ah-Ki , R. Godin and H. Mcheick,
    1997
  • Implementation and experimental comparison of two
    such methods
  • Free-text based retrieval
  • Keyword-based retrieval methods.
  • ClassServer, an experimental library tool
    developed at the University of Québec at Montréal
    to explore issues in software reuse.

20
Component Retrieval - Historic
  • Document retrieval experiments have shown that
    controlled vocabulary-based indexing and
    retrieval yielded better recall and precision
    than plain-text search, although the difference
    hardly justifies the extra costs involved in the
    first one.
  • The significant difference is recall performance.

21
Component Retrieval - Historic
  • Problems with repository of software reuse
  • Costly classification
  • Domain analysis efforts.
  • Henninger S., 1997
  • Utilizes minimal repository structure
  • Improves the repository while people use it
  • Best results.
  • PEEL semiautomatically identify reusable
    components.
  • CodeFinder

22
Conclusion
  • For a reuse library tool to be successful, the
    cost of reusing has to be perceived by potential
    reusers as being significantly less than that of
    developing from scratch Scott N. Woodfield,
    David W. Embley, and Del T. Scott, 1987, and the
    cost of performing searches is only one of
    several costs associated with an instance of
    reuse H. Mili, F. Mili, and A. Mili, 1995.

23
References
  • Prieto-Diaz, R. and P. Freeman, Classifying
    Software for Reusability, IEEE Software, Vol. 4,
    No. 1, January 1987, pp.6-16.
  • Prieto-Diaz, R., Implementing Faceted
    Classification for Software Reuse,
    Communications of the ACM, Vol. 34, No. 5, May
    1991, pp. 88-97.
  • G. Caldiera and V. Basili, Identifying and
    Qualifying Reusable Software Componente, IEEE
    Computer, Vol. 24, No. 2, February 1991, pp.
    61-71.
  • Y.S. Maarek, D. M. Berry, and G.E. Kaiser, An
    Information Retrieval Approach for Automatically
    Constructing Software Libraries, IEEE
    Transactions on Software Engineering, Vol. 17,
    No. 8, August 1991, pp. 800-813.

24
References
  • R. D. Banker, R. J. Kauffman, and D. Zweig,
    Repository Evaluation of Software Reuse, IEEE
    Transactions on Software Engineering, Vol.19, No.
    4, April 1993, pp. 379-389.
  • S. Henninger, "Using Iterative Refinement to Find
    Reusable Software," IEEE Software, Vol. 11, No.
    5, September 1994, pp. 48-59.
  • Amy Moormann Zaremski , Jeannette M. Wing,
    Signature matching a tool for using software
    libraries, ACM Transactions on Software
    Engineering and Methodology (TOSEM), v.4 n.2,
    p.146-170, April 1995.
  • J. M. Neighbors, "Finding Reusable Software
    Components in Large Systems," 3rd Working
    Conference on Reverse Engineering (WCRE '96),
    p.2, November 1996, Monterey, CA.
  • Isakowitz, T., R. J. Kauffman, "Supporting Search
    for Reusable Software Objects," IEEE Transactions
    on Software Engineering, Vol. 22, No. 6, July
    1996, pp. 407-423.

25
References
  • Hafedh Mili , Estelle Ah-Ki , Robert Godin ,
    Hamid Mcheick, Another nail to the coffin of
    faceted controlled-vocabulary component
    classification and retrieval, ACM SIGSOFT
    Software Engineering Notes, v.22 n.3, p.89-98,
    May 1997.
  • Henninger, S., An Evolutionary Approach to
    Constructing Effective Software Reuse
    Repositories, ACM Transactions on Software
    Engineering and Methodology (TOSEM), v.6 n.2,
    p.111-140, April 1997.
  • Scott N. Woodfield, David W. Embley, and Del T.
    Scott, Can Programmers Reuse Software, IEEE
    Software, pp. 52-59, July 1987.
  • Hafedh Mili, Fatma Mili, and Ali Mili, Reusing
    Software Issues and Research Directions, IEEE
    Transactions on Software Engineering, vol. 21,
    no. 6, pp. 528-562, June 1995.

26
Reusable Software Component Retrieval Part I
  • Questions?
Write a Comment
User Comments (0)
About PowerShow.com