Skip to main content

Intelligent support for retrieval and synthesis of patterns for object-oriented design

  • Session 2a: Automated Design
  • Conference paper
  • First Online:
Conceptual Modeling — ER '97 (ER 1997)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 1331))

Included in the following conference series:

Abstract

Several decades of software engineering research confirm that effective reuse is the only realistic approach to meeting the ever-increasing demands on the software industry. Over the last few years, object-oriented paradigm has emerged as the natural foundational technology for reuse approaches, leading to the development of a number of reusable artifacts at different levels of abstraction and granularity. This research focuses on artifacts at one level: ‘patterns’. Patterns are groups of objects with stereotypical properties and responsibilities that can be applied by analogy to different domains. In this paper, we present a methodology for automating design of object-oriented systems based on intelligent retrieval and synthesis of reusable patterns. The methodology itself has an object-oriented flavor. It uses a set of techniques and rules aided by heuristics from natural language processing, automated reasoning and learning that are activated, as needed. Effectiveness of the methodology is evaluated using measures such as recall, precision, coverage and spuriousness.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Adler, R. 1995. Emerging Standards for Component Software. In IEEE Computer. March. Pp. 68–77.

    Google Scholar 

  2. Barnes, B. and T. Bollinger. 1991. Making Reuse Cost-Effective. In IEEE Software. January. Pp. 13–24.

    Google Scholar 

  3. Boehm, B. 1987. Improving Software Poductivity. In IEEE Software. Sept. Pp. 43–57.

    Google Scholar 

  4. Booch, G. 1995. Object-Oriented Analysis and Design. Benjamin-Cummings.

    Google Scholar 

  5. Coad, P. et al. 1995. Strategies and Patterns Handbook: Hypertext Edition Version 2.0a. Object International, Inc. Available at http://www.oi.com

    Google Scholar 

  6. Coplien, J. 1996. Patterns. SIGS White Paper Series. ACM Press.

    Google Scholar 

  7. Cox, B. 1990. Planning the Software Industrial Revolution. In IEEE Software. November. Pp. 25–33.

    Google Scholar 

  8. Curtis, B. 1989. Cognitive Issues in Reusing Software Artifacts. In Software Reusability, V II. ed. T. Biggerstaff and A. Perlis, Addison Wesley 1989, pp. 269–287.

    Google Scholar 

  9. DEC 1991. VAX VMS Software Source Book. Digital Equipment Corp., Maynard, Mass.

    Google Scholar 

  10. Frakes, W. B. and B. A. Nejmeh. 1990. An Information System for Software Reuse. In Software Reuse: Emerging Technology. IEEE CS Press. Pp. 142–151.

    Google Scholar 

  11. Gamma, E. et al. 1995. Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley Reading, MA.

    Google Scholar 

  12. Garey, M. and D. Johnson. 1979. Computers and Intractabilty. Freeman. SanFrancisco, CA.

    Google Scholar 

  13. Glass, R., and 1. Vessey. 1996. Contemporary Application-Domain Taxonomies. In IEEE Software. July. Pp. 63–76.

    Google Scholar 

  14. Karlsson, E. et al 1995. Editor. Software Reuse. A Holistic Approach. John Wiley & Sons, Inc.

    Google Scholar 

  15. Krueger, C. 1993. Software Reuse. In ACM Computing Surveys. Vol. 24. No. 2. June. Pp. 131–184.

    Google Scholar 

  16. Lea, D. 1994. Christopher Alexander: An introduction for 00 Designers. In Software Engineering Notes. Vol. 19. no. 1. Jan. Pp. 39–46.

    Google Scholar 

  17. Lenat, D. et al. 1990, CYC: Toward programs with common sense. In Communications of the ACM. Special Issue on Natural Language Processing. Vol. 33. No. 8. Aug. Pp. 30–49

    Google Scholar 

  18. Lowry, M., and R. McCartney. 1991. eds. Automating Software Design. AAAI Press/MIT Press.

    Google Scholar 

  19. Merriam-Webster. 1987. The Merriam-Webster Thesaurus. Pocket Books. 1978.

    Google Scholar 

  20. Mili, H. et al. 1994. Practitioner and Softclass: A Comparative Study of Two Software Reuse Research Projects. In Journal of Systems and Software. Vol. 27. May.

    Google Scholar 

  21. Mili, H. et al. 1995. Reusing Software: Issues and Research Directions. In IEEE Transactions on Software Engineering. June. Pp. 528–562.

    Google Scholar 

  22. MIL 1997. List of StopWords. Available at http://arcspk.beivoir.army.mil/moreplus/docs/help/Natural_Language_Search.html

    Google Scholar 

  23. MIT 1996. The DaVinci Initiative. Available at http://ganesh.mit.edu/

    Google Scholar 

  24. Pree, W. 1995. Design Patterns for Object-Oriented Software Development. Addison-Wesley.

    Google Scholar 

  25. Prieto-Diaz, R. and P. Freeman. 1987. Classifying Software for Reusability. In IEEE Software. Jan. Pp. 6–16.

    Google Scholar 

  26. Reifer Consultants 1990. Productivity and Quality Survey. El Segundo, CA.

    Google Scholar 

  27. Setliff, D. et al. 1993. Practical Software Synthesis. In IEEE Software. May. Pp. 6–10.

    Google Scholar 

  28. Shicheng, P., R. Hennicker, M. Jarke. 1993. On the Retrieval of Reusable Components. In Selected Papers from Second International Workshop on Software, Reusability Advances in Software. Italy, March 24–26.

    Google Scholar 

  29. SIC 1987. Standard Industrial Classification Manual. Office of Management and Budget.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

David W. Embley Robert C. Goldstein

Rights and permissions

Reprints and permissions

Copyright information

© 1997 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Purao, S., Storey, V.C. (1997). Intelligent support for retrieval and synthesis of patterns for object-oriented design. In: Embley, D.W., Goldstein, R.C. (eds) Conceptual Modeling — ER '97. ER 1997. Lecture Notes in Computer Science, vol 1331. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-63699-4_4

Download citation

  • DOI: https://doi.org/10.1007/3-540-63699-4_4

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-63699-1

  • Online ISBN: 978-3-540-69630-8

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics