Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.5555/381473.381501acmconferencesArticle/Chapter ViewAbstractPublication PagesicseConference Proceedingsconference-collections
Article

Exploiting the map metaphor in a tool for software evolution

Published: 01 July 2001 Publication History
  • Get Citation Alerts
  • Abstract

    Software maintenance and evolution are the dominant activities in the software lifecycle. Modularization can separate design decisions and allow them to be independently evolved, but modularization often breaks down and complicated global changes are required. Tool support can reduce the costs of these unfortunate changes, but current tools are limited in their ability to manage information for large-scale software evolution. In this paper we argue that the map metaphor can serve as an organizing principle for the design of effective tools for performing global software changes. We describe the design of Aspect Browser, developed around the map metaphor, and discuss a case study of removing a feature from a 500,000 line program written in Fortran and C.

    References

    [1]
    A. V. Aho. Pattern matching in strings. In R. V. Book, editor, Formal Language Theory: Perspectives and Open Problems, pages 325-347. Academic Press, New York, 1980.
    [2]
    L. A. Belady and M. M. Lehman. A model of large program development. IBM Systems Journal, 15(3):225-252, 1976. Reprinted in M. M. Lehman, L. A. Belady, editors, Program Evolution: Processes of Software Change, Ch. 8, APIC Studies in Data Processing No. 27. Academic Press, London, 1985.
    [3]
    R. W. Bowdidge and W. G. Griswold. How software tools organize programmer behavior during the task of data encapsulation. Empirical Software Engineering, 2(3):221-267, April 1997.
    [4]
    S. G. Eick, J. L. Steffen, and Jr. E. E. Sumner. Seesoft-a tool for visualizing line-oriented software statistics. IEEE Transactions on Software Engineering, 18(11):957-968, November 1992.
    [5]
    Y. Kato W. G. Griswold and J. J. Yuan. Experimental study on scalability of tools utilizing information transparency. In International Conference on Software, 2000 IFIP World Computer Congress, pages 877-882, August 2000.
    [6]
    G. Kiczales, J. Lamping, A. Mendhekar, C. Maeda, C. Lopes, J. M. Loingtier, and J. Irwin. Aspect-oriented programming. In 11th European Conference on Object-Oriented Programming, pages 220-242. Springer-Verlag, June 1997.
    [7]
    A. M. MacEachren. How Maps Work: Representation, Visualization, and Design. Guilford Press, New York, 1995.
    [8]
    N. Miyake. Constructive interaction and the iterative process of understanding. Cognitive Science, 10(2):151-177, 1986.
    [9]
    H. A. Muller, S. R. Tilley, M. A. Orgun, B. D. Corrie, and N. H. Madhavji. A reverse engineering environment based on spatial and visual software interconnection models. In Proceedings of the SIGSOFT '92 Fifth Symposium on Software Development Environments, pages 88-98, December 1992.
    [10]
    G. C. Murphy and D. Notkin. Lightweight source model extraction. In ACM SIGSOFT '95 Symposium on the Foundations of Software Engineering, pages 116-127, October 1995.
    [11]
    G. C. Murphy, D. Notkin, and K. Sullivan. Software reflexion models: bridging the gap between source and high-level models. In ACM SIGSOFT '95 Symposium on the Foundations of Software Engineering, pages 18-28, October 1995.
    [12]
    R. O'Callahan and D. Jackson. Lackwit: A program understanding tool based on type inference. In Proceedings of the 19th International Conference on Software Engineering, pages 338-348, May 1997.
    [13]
    J. Preece. Human Computer Interaction. Addison-Wesley Publishing Company, Menlo Park, California, 1994.
    [14]
    A. H. Robinson, J. L. Morrison, P. C. Muehrcke, A. J. Kimerling, and S. C. Guptill. Elements of Cartography. Wiley, New York, 6th edition, 1995.
    [15]
    M. B. Rosson and J. M. Carroll. Active programming strategies in reuse. In ECOOP '93, 7th European Conference on Object-Oriented Programming, pages 4-20, 1993.
    [16]
    R. K. Yin. Case Study Research: Design and Methods. Sage Publications, Newbury Park, CA, 1989.
    [17]
    J. J. Yuan. Using the map metaphor to assist cross-cutting software changes. Masters Thesis, University of California, San Diego, Department of Computer Science and Engineering, April 2000.

    Cited By

    View all
    • (2023)CIDFuzzIET Software10.1049/sfw2.1212517:3(301-315)Online publication date: 6-Apr-2023
    • (2014)Assessing modularity using co-change clustersProceedings of the 13th international conference on Modularity10.1145/2577080.2577086(49-60)Online publication date: 22-Apr-2014
    • (2014)Understanding understanding source code with functional magnetic resonance imagingProceedings of the 36th International Conference on Software Engineering10.1145/2568225.2568252(378-389)Online publication date: 31-May-2014
    • Show More Cited By

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    cover image ACM Conferences
    ICSE '01: Proceedings of the 23rd International Conference on Software Engineering
    July 2001
    844 pages
    ISBN:0769510507

    Sponsors

    Publisher

    IEEE Computer Society

    United States

    Publication History

    Published: 01 July 2001

    Check for updates

    Qualifiers

    • Article

    Conference

    ICSE01
    Sponsor:
    ICSE01: 23rd International Conference on Software Engineering
    May 12 - 19, 2001
    Ontario, Toronto, Canada

    Acceptance Rates

    ICSE '01 Paper Acceptance Rate 47 of 268 submissions, 18%;
    Overall Acceptance Rate 276 of 1,856 submissions, 15%

    Upcoming Conference

    ICSE 2025

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)4
    • Downloads (Last 6 weeks)2
    Reflects downloads up to 10 Aug 2024

    Other Metrics

    Citations

    Cited By

    View all
    • (2023)CIDFuzzIET Software10.1049/sfw2.1212517:3(301-315)Online publication date: 6-Apr-2023
    • (2014)Assessing modularity using co-change clustersProceedings of the 13th international conference on Modularity10.1145/2577080.2577086(49-60)Online publication date: 22-Apr-2014
    • (2014)Understanding understanding source code with functional magnetic resonance imagingProceedings of the 36th International Conference on Software Engineering10.1145/2568225.2568252(378-389)Online publication date: 31-May-2014
    • (2011)Using metaphors from natural discussion to improve the design of arcumProceedings of the 3rd ACM SIGPLAN workshop on Evaluation and usability of programming languages and tools10.1145/2089155.2089165(39-44)Online publication date: 24-Oct-2011
    • (2011)Aspect recommendation for evolving softwareProceedings of the 33rd International Conference on Software Engineering10.1145/1985793.1985843(361-370)Online publication date: 21-May-2011
    • (2011)Analyzing the discipline of preprocessor annotations in 30 million lines of C codeProceedings of the tenth international conference on Aspect-oriented software development10.1145/1960275.1960299(191-202)Online publication date: 21-Mar-2011
    • (2010)Clone region descriptorsACM Transactions on Software Engineering and Methodology10.1145/1767751.176775420:1(1-31)Online publication date: 6-Jul-2010
    • (2008)A theory of aspects as latent topicsACM SIGPLAN Notices10.1145/1449955.144980743:10(543-562)Online publication date: 19-Oct-2008
    • (2008)A theory of aspects as latent topicsProceedings of the 23rd ACM SIGPLAN conference on Object-oriented programming systems languages and applications10.1145/1449764.1449807(543-562)Online publication date: 19-Oct-2008
    • (2008)Promoting developer-specific awarenessProceedings of the 2008 international workshop on Cooperative and human aspects of software engineering10.1145/1370114.1370130(61-64)Online publication date: 13-May-2008
    • Show More Cited By

    View Options

    Get Access

    Login options

    View options

    PDF

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    Media

    Figures

    Other

    Tables

    Share

    Share

    Share this Publication link

    Share on social media