Skip to main content

A Tool for Managing Software Development Knowledge

  • Conference paper
  • First Online:
Book cover Product Focused Software Process Improvement (PROFES 2001)

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

Abstract

Software development is a knowledge intensive activity involving the integration of diverse knowledge sources that undergo constant change. Most approaches to knowledge management assume that information exists and is readily sought by software developers, usually through a search tool. In this paper, an approach is presented that actively delivers information through a rule-based system that matches system requirements to experience-based knowledge embedded in work breakdown structures. A reuse-based methodology based on an organizational learning process is used to capture and organize knowledge as it is created. The combination of tool and methodology work together to capture characteristics of individual projects and tailor processes to meet diverse and emerging software development needs. The tool and methodology are demonstrated using two examples of how this technique can be applied.

Acknowledgements

We gratefully acknowledge the efforts a number of graduate students that have helped develop BORE, particularly Kurt Baumgarten, Michelle Conway, and Roger Van Andel. This research was funded by the National Science Foundation (CCR-9502461 and CCR-9988540).

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. V. R. Basili, G. Caldiera, and G. Cantone, “A Reference Architecture for the Component Factory”, ACM Transactions on Software Engineering and Methodology, vol. 1, pp. 53–80, 1992.

    Article  Google Scholar 

  2. V. R. Basili and H. D. Rombach, “Support for Comprehensive Reuse”, Software Engineering Journal, pp. 303–316, 1991.

    Google Scholar 

  3. V. R. Basili and H. D. Rombach, “The TAME Project: Towards Improvement-Oriented Software Environments”, IEEE Transactions on Software Engineering, vol. 14, pp. 758–773, 1988.

    Article  Google Scholar 

  4. D. Batory, G. Chen, E. Robertson, and T. Wang, “Design Wizards and Visual Programming Environments for GenVoca Generators”, Transactions on Software Engineering, vol. 26, pp. 441–452, 2000.

    Article  Google Scholar 

  5. N. Belkin, “Helping People Find What They Don’t Know”, Comm. of the ACM, vol. 43, pp. 58–61, 2000.

    Article  Google Scholar 

  6. F. P. Brooks, “No Silver Bullet: Essence and Accidents of Software Engineering”, Computer, vol. 20, pp. 10–19, 1987.

    Article  Google Scholar 

  7. E. J. Conklin and K. Yakemovic, “A Process-Oriented Approach to Design Rationale”, Human-Computer Interaction, vol. 6, pp. 357–391, 1991.

    Article  Google Scholar 

  8. G. Cugola, “Tolerating Deviations in Process Support Systems via Flexible Enactment of Process Models”, IEEE Transactions on Software Engineering, vol. 24, pp. 982–1000, 1998.

    Article  Google Scholar 

  9. B. Curtis, M. I. Kellner, and J. Over, “Process Modeling”, Communications of the ACM, vol. 35, pp. 75–90, 1992.

    Article  Google Scholar 

  10. B. Curtis, H. Krasner, and N. Iscoe, “A Field Study of the Software Design Process for Large Systems”, Communications of the ACM, vol. 31, pp. 1268–1287, 1988.

    Article  Google Scholar 

  11. P. Devanbu, R. J. Brachman, P. G. Selfridge, and B. W. Ballard, “LaSSIE: A Knowledge-Based Software Information System”, Communications of the ACM, vol. 34, pp. 34–49, 1991.

    Article  Google Scholar 

  12. S. Dunbar, S. Goddard, S. Henninger, and S. Elbaum, “Bootstrapping the Software Design Studio”, Fifth Annual National Collegiate Inventors and Innovators Alliance Naitonal Conference, Washington, DC, pp. 180–188, 2001.

    Google Scholar 

  13. G. Fischer, J. Grudin, A. Lemke, R. McCall, J. Ostwald, B. Reeves, and F. Shipman, “Supporting Indirect Collaborative Design With Integrated Knowledge-Based Design Environments”, Human-Computer Interaction, vol. 7, pp. 281–314, 1992.

    Article  Google Scholar 

  14. G. Fischer, R. McCall, J. Ostwald, B. Reeves, and F. Shipman, “Seeding, Evolutionary Growth and Reseeding: Supporting the Incremental Development of Design Environments”, Proc. Human Factors in Computing Systems (CHI’ 94), Boston, MA, pp. 292–298, 1994.

    Google Scholar 

  15. V. Gruhn and J. Urbainczyk, “Software Process Modeling and Enactmant: An Experience Report Related to Problem Tracking in an Industrial Project”, Proc. 20th International Conference on Software Engineering, pp. 13–21, 1998.

    Google Scholar 

  16. S. Henninger, “Capturing and Formalizing Best Practices in a Software Development Organization”, The Ninth International Conference on Software Engineering and Knowledge Engineering (SEKE’ 97), Madrid, Spain, 1997.

    Google Scholar 

  17. S. Henninger, “Case-Based Knowledge Management Tools for Software Development”, Journal of Automated Software Engineering, vol. 4, pp. 319–340, 1997.

    Article  Google Scholar 

  18. S. Henninger, “Software Process as a Means to Support Learning Software Organizations”, Twenty-fifth Annual NASA Software Engineering Workshop, Greenbelt, MD, 2000.

    Google Scholar 

  19. S. Henninger, “Supporting Software Development with Organizational Memory Tools”, International Journal of Applied Software Technology, vol. 2, pp. 61–84, 1996.

    Google Scholar 

  20. S. Henninger, “Tools Supporting the Creation and Evolution of Software Development Knowledge”, Proceedings of the Automated Software Engineering Conference, Lake Tahoe, NV, pp. 46–53, 1997.

    Google Scholar 

  21. S. Henninger, “Using Software Process to Support Learning Software Organizations”, 1st International Workshop on Learning Software Organizations (LSO 1999), Kaiserlautern, FRG, 1999.

    Google Scholar 

  22. S. Henninger, K. Lappala, and A. Raghavendran, “An Organizational Learning Approach to Domain Analysis”, 17th International Conference on Software Engineering, Seattle, WA, pp. 95–104, 1995.

    Google Scholar 

  23. C. C. Huff, “Elements of a Realistic CASE Tool Adoption Budget”, Communications of the ACM, vol. 35, pp. 45–54, 1992.

    Article  Google Scholar 

  24. J. L. Kolodner, Case-Based Reasoning: Morgan-Kaufman, San Mateo, CA, 1993.

    Google Scholar 

  25. J. L. Kolodner, “Improving Human Decision Making through Case-Based Decision Aiding”, AI Magazine, vol. 12, pp. 52–68, 1991.

    Google Scholar 

  26. J. Lee, “Design Rationale Capture and Use”, AI Magazine, vol. 14, pp. 24–26, 1993.

    Google Scholar 

  27. M. Lindvall and I. Rus, “Process Diversity in Software Development”, IEEE Software, vol. 17, pp. 14–18, 2000.

    Article  Google Scholar 

  28. A. Maclean, V. Bellotti, R. Young, and T. Moran, “Questions, Options, and Criteria: Elements of Design Space Analysis”, Human-Computer Interaction, vol. 6, pp. 201–251, 1991.

    Article  Google Scholar 

  29. T. Moran and J. Carroll, “Design Rationale: Concepts, Techniques, and Use”,. Hillsdale, NJ: Lawrence Erlbaum Associates, 1996.

    Google Scholar 

  30. L. Osterweil, “Software Processes are Software Too”, Ninth International Conference on Software Engineering, Monterey, CA, pp. 2–13, 1987.

    Google Scholar 

  31. M. C. Paulk, B. Curtis, M. Chrissis, and C. V. Weber, “Capability Maturity Model, Version 1.1”, IEEE Software, vol. 10, pp. 18–27, 1993.

    Article  Google Scholar 

  32. L. Terveen and D. Wroblewski, “A Collaborative Interface for Browsing and Editing Large Knowledge Bases”, National Conference of the American Association for AI, Boston, MA, pp. 491–496, 1990.

    Google Scholar 

  33. L. G. Terveen, P. G. Selfridge, and M. D. Long, “Living Design Memory’-Framework, Implementation, Lessons Learned”, Human-Computer Interaction, vol. 10, pp. 1–37, 1995.

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2001 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Henninger, S., Schlabach, J. (2001). A Tool for Managing Software Development Knowledge. In: Bomarius, F., Komi-Sirviö, S. (eds) Product Focused Software Process Improvement. PROFES 2001. Lecture Notes in Computer Science, vol 2188. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-44813-6_18

Download citation

  • DOI: https://doi.org/10.1007/3-540-44813-6_18

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-42571-7

  • Online ISBN: 978-3-540-44813-6

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics