ABSTRACT
Although software reuse can improve both the quality and productivity of software development, it will not do so until software developers stop believing that it is not worth their effort to find a component matching their current problem. In addition, if the developers do not anticipate the existence of a given component, they will not even make an effort to find it in the first place.
Even the most sophisticated and powerful reuse repositories will not be effective if developers don't anticipate a certain component exists, or don't deem it worthwhile to seek for it. We argue that this crucial barrier to reuse is overcome by integrating active information delivery, which presents information without explicit queries from the user, and reuse repository systems. A prototype system, CodeBroker, illustrates this integration and raises several issues related to software reuse.
- 1.Basili, V., L. Briand, and W. Melo, "How Reuse Influences Productivity in Object-Oriented Systems," Commun. of the ACM, 39(10), 104-116 (1996). Google ScholarDigital Library
- 2.Bradshaw, J.M., An Introduction to Software Agents, in Software Agents, J.M. Bradshaw, Editor. 1997, AAAI Press: Menlo Park, CA. p. 1-46. Google ScholarDigital Library
- 3.Brooks, F.P.J., The Mythical Man-Month: Essays on Software Engineering. 20th Anniversary ed., Addison- Wesley (1995). Google ScholarDigital Library
- 4.Burton, B., et at., "The Reusable Software Library," IEEE Software, 4(4), 25-33 (1987).Google ScholarDigital Library
- 5.Devanbu, P., et at., "LASSIE: A Knowledge-Based SoRware Information System," Commun. of the ACM, 34(5), 34-49 (1991). Google ScholarDigital Library
- 6.Diaz, R.P. and P. Freeman, "Classifying Software for Reusability," IEEE Software, 4(1), 6-16 (1987).Google ScholarDigital Library
- 7.Engelbart, D.C., "Knowledge-Domain Interoperability and an Open Hyperdocument System," Proc. Computer Supported Cooperative Work 1990, 143-156, (1990), New York, NY. Google ScholarDigital Library
- 8.Etzkorn, L.H. and C.G. Davis, "Automatically Identifying Reusable OO Legacy Code," IEEE Computer, 30(10), 66-71 (1997). Google ScholarDigital Library
- 9.Fichman, R.G. and C.E. Kemerer, "Object Technology and Reuse: Lessons from Early Adopters," 1EEE Software, 14(10), 47-59 (1997). Google ScholarDigital Library
- 10.Fischer, G., "Cognitive View of Rense and Redesign," IEEE Software, Special Issue on Reusability, 4(4), 60-72 (1987).Google ScholarDigital Library
- 11.Fischer, G., "Beyond 'Couch Potatoes': From Consumers to Designers," Prec. 1998 Asia-Pacific Computer and Human Interaction, 2-9, (1998), Kanagawa, Japan. Google ScholarDigital Library
- 12.Fischer, G., "User Modeling: The Long and Winding Road," Prec. User Modeling 1999, 349-355, (1999), Banff, Canada. Google ScholarDigital Library
- 13.Fischer, G., S. Henninger, and D. Redmiles, "Cognitive Tools for Locating and Comprehending Software Objects for Reuse," Prec. 13th 1CSE, 318-328, (1991), Austin, TX USA. Google ScholarDigital Library
- 14.Fischer, G., A.C. Lemke, and C. Rathke, "From Design to Redesign," Prec. 9thlCSE, 369-376, (1987), Monterey, CA. Google Scholar
- 15.Fischer, G., A.C. Lemke, and T. Schwab, "Knowledge-Based Help Systems," Prec. Human Factors in Computing Systems 1985, 161-167, (1985), San Francisco, CA. Google ScholarDigital Library
- 16.Fischer, O., et al.,Embedding Critics in Design Environments, in Readings in Intelligent User Interfaces, M.T. Maybury and W. Wahlster, Editors. 1998, Morgan Kaufraann Publisher, p. 537-559. Google ScholarDigital Library
- 17.Fischer, G., et al., "Beyond Object-Oriented Development: Where Current Object-Oriented Approaches Fall Short," Human-Computer Interaction, Special lssue on Object- Oriented Design, 10(1), 79-119 (1995). Google ScholarDigital Library
- 18.Fischer, G. and B.N. Reeves, Beyond Intelligent Interfaces: Exploring, Analyzing and Creating Success Models of Cooperative Problem Solving, in Readings in Human- Computer Interaction: Toward the Year 2000, R. Baecker, et al., Editors. 1995, Morgan Kaufmann Publishers: San Franciseo, CA. p. 822-831. Google ScholarDigital Library
- 19.Frakes, W.B. and C.J. Fox, "Quality Improvement Using a Set, rare Reuse Failure Modes Models," 1EEE Trans. Soft. Eng., 22(4), 274-279 (1996). Google ScholarDigital Library
- 20.Frakes, W.B. and T.P. Pole, "An Empirical Study of Representation Methods for Reusable Software Components," 1EEE Trans. Soft. Eng., 20(8), 617-630 (1994). Google ScholarDigital Library
- 21.Graham, I., "Reuse: A Key to Successful Migration," Object Magazine, 5(6), 82-83 (1995).Google Scholar
- 22.Grudin, J., "Groupware and Social Dynamics: Eight Challenges for Developers," Commun. of the ACM, 37(1), 92-105 (1994). Google ScholarDigital Library
- 23.Henninger, S., "An Evolutionary Approach to Construeting Effective Software Reuse Repositories," ACM Trans. Soft. Eng. Meth., 6(2), 111-140 (1997). Google ScholarDigital Library
- 24.Isoda, S., "Experiences of a Software Reuse Project," ,Z. of Systems and Software , 30, 171-186 (1995). Google ScholarDigital Library
- 25.Kintsch, W., Comprehension: A Paradigm for Cognition., Cambridge University Press: Cambridge, England (1998).Google Scholar
- 26.Krueger, C.W., "Software Reuse," ACM Computing Surveys, 24(2), 131-183 (1992). Google ScholarDigital Library
- 27.Landaner, T.K. and S.T. Dumais, "A Solution to Plato's Problem: The Latent Semantic Analysis Theory of Acquisition, Induction and Representation of Knowledge," Psychological Review, 104(2), 211-240 (1997).Google ScholarCross Ref
- 28.Maarek, Y.S., D.M. Berry, and G.E. Kaiser, "An Information Retrieval Approach for Automatically Constructing Software Libraries," 1EEE Trans. Soft. Eng., 17(8), 800-813 (1991). Google ScholarDigital Library
- 29.Michail, A. and D. Notkin, "Assessing Software Libraries by Browsing Similar Classes, Functions and Relationships," Prec. 21st 1CSE, 463-472, (1999), Los Angeles, CA. Google ScholarDigital Library
- 30.Mili, H., F. Mili, and A. Mili, "Reusing Software: Issues and Research Directions," 1EEE Trans. Soft. Eng., 21(6), 528-562 (1995). Google ScholarDigital Library
- 31.Norman, D.A., Cognitive Engineering, in User Centered System Design, New Perspectives on Human-Computer Interaction, D.A. Norman and S.W. Draper, Editors. 1986, Lawrence Erlbaum Associates, Inc.: HiUsdale, NJ. p. 31-61.Google ScholarCross Ref
- 32.O'Reilly, T., "Lessons from Open-Source Software Development," Commun. of the ACM, 42(4), 33-37 (1999). Google ScholarDigital Library
- 33.Reisberg, D., Cognition., W. W. Norton & Company: New York, NY (1997).Google Scholar
- 34.Rosenbaum, S. and B. DuCastel, "Managing Software Reuse--An Experience Report," Prec. 17th ICSE, 105-111, (1995), Seattle, Washington. Google ScholarDigital Library
- 35.Simon, H.A., The Sciences of the Artificial. Third ed., The MIT Press: Cambridge, MA (1996). Google ScholarDigital Library
- 36.Tracz, W., "The 3 Cons of Software Reuse," Prec. 3rd Annual Workshop on Institutionalizing Software Reuse (W1SR '90), (1990), Syracuse, NY.Google Scholar
- 37.WiUiams, M.D., et al., "RABBIT: Cognitive Science in Interface Design," Prec. 4th Annual Conference of the. Cognitive Science Society, 82-85, (1982), Ann Arbor, MI.Google Scholar
- 38.Ye, Y. and G. Fischer, "Promoting Reuse with Active Reuse Repository Systems," Prec. 6th International Conference on Software Reuse, 302-317, (2000), Vienna, Austria. Google ScholarDigital Library
- 39.Zaremski, A.M. and J.M. Wing, "Signature Matching: A Tool for Using Software Libraries," ACM Trans. Soft. Eng. Meth., 4(2), 146-170 (1995). Google ScholarDigital Library
- 40.Zaremski, A.M. and J.M. Wing, "Specification Matching of Software Components," ACM Trans. Soft. Eng. Meth., 6(4), 333-369 (1997). Google ScholarDigital Library
Index Terms
- Integrating active information delivery and reuse repository systems
Recommendations
Integrating active information delivery and reuse repository systems
Although software reuse can improve both the quality and productivity of software development, it will not do so until software developers stop believing that it is not worth their effort to find a component matching their current problem. In addition, ...
Role and relevance of reuse repository facilitating software development
This paper discusses the role and relevance of reuse repositories and how software reuse influences software development. Reuse repositories are designed to increase the possibility of locating reusable components at a centralized location to ease ...
An Active and Adaptive Reuse Repository System
HICSS '01: Proceedings of the 34th Annual Hawaii International Conference on System Sciences ( HICSS-34)-Volume 9 - Volume 9Although software reuse repository systems have been an active research area for more than a decade, one important aspect has not been given enough attention: If software developers make no attempt to reuse, repository systems offer no help and reuse ...
Comments