Advertisement

WIRTSCHAFTSINFORMATIK

, Volume 49, Issue 6, pp 430–438 | Cite as

Verbesserung der Retrievaleffizienz von Softwarekomponentenmärkten

  • Oliver Hummel
  • Colin Atkinson
Article
  • 132 Downloads

Kernpunkte

Softwarekomponentenmärkte konnten sich bisher nicht auf breiter Front durchsetzen. Die Literatur nennt zahlreiche Diffusionsbarrieren, unter anderem ein mangelhaftes Komponentenangebot und schlechte Retrievaleffizienz. Dieser Beitrag begegnet beiden Schwächen unter folgenden veränderten Rahmenbedingungen:
  • Open-Source-Software im WWW eröffnet neue Möglichkeiten zur Komponentensuche: Mehrere Millionen Komponenten sind online verfügbar.

  • Die Suche von Softwarekomponenten im WWW mit spezialisierten Suchmaschinen ist zwar möglich, aber immer noch zu ungenau.

Der Extreme-Harvesting-Ansatz ermöglicht erstmals präzises Komponentenretrieval aus extrem großen Beständen, basierend auf einer Spezifikation aus Komponentenschnittstelle und zugehörigen Testfällen.

Stichworte

komponentenbasierte Softwareentwicklung Komponentenretrieval Wiederverwendung 

Improving the retrieval efficiency of software component markets

Abstract

Component-based software reuse has been widely accepted as a way of making software development faster, better, and cheaper. However, component markets of the kind envisaged for many decades have not yet become a useful tool in mainstream development. In this article, the authors discuss the underlying problems and present a new approach called “Extreme Harvesting” for test-driven component retrieval. They present examples that demonstrate how this concept works “in vitro”, demonstrate its precision with the help of an experiment and discuss further challenges to be solved to make this approach of practical utility.

Keywords

Component-based Software Development Component Retrieval Reuse 

Literatur

  1. [Alpa80]
    Alpar, P.: Computergestützte interaktive Methodenauswahl. FWI-Verlag, Frankfurt 1980.Google Scholar
  2. [ABBK02]
    Atkinson, C.; Bayer, J.; Bunse, C.; Kamsties, E. et al.: Component-based Product Line Engineering with UML. Addison Wesley, New York 2002.CrossRefGoogle Scholar
  3. [BaBM96]
    Basili, V.; Briand, L.; Melo, W.: How reuse influences productivity in object-oriented systems. In: Communications of the ACM 39 (1996) 10, S. 104–116.CrossRefGoogle Scholar
  4. [BaRi99]
    Baeza-Yates, R.; Ribeiro-Neto, B.: Modern Information Retrieval. Addison-Wesley, New York 1999.Google Scholar
  5. [Beck99]
    Beck, K.: Extreme Programming Explained: Embrace Change. Addison-Wesley, New York 1999.Google Scholar
  6. [Broo87]
    Brooks, F. P.: No Silver Bullet — essence and accident in software engineering. In Computer 20 (1987) 4, S. 10–19.CrossRefGoogle Scholar
  7. [ClNo02]
    Clemens, P.; Northrop, L.: Software Product Lines: Practices and Patterns. Addison-Wesley, New York 2002.Google Scholar
  8. [DSWi99]
    D’souza, D.; Wills A.: Objects, Components and Frameworks with UML. The Catalysis Approach. Addison-Wesley, New York, 1999.Google Scholar
  9. [FeLT02]
    Fettke, P.; Loos, P.; v. d. Tann, M.: Entwicklung eines Repositoriums für Fachkomponenten auf Grundlage des Vorschlags der vereinheitlichten Spezifikation von Fachkomponenten — Analyse von Problemen und Diskussion von Lösungsalternativen. In: Modellierung und Spezifikation von Fachkomponenten: 3. Workshop im Rahmen der MKWI 2002, Nürnberg, 2002.Google Scholar
  10. [FrPo94]
    Frakes, W. B.; Pole, T. P.: An empirical study of representation methods for reusable software components. In: IEEE Transactions on Software Engineering 20 (1994) 8, S. 617–630.CrossRefGoogle Scholar
  11. [FrFo96]
    Frakes, W. B.; Fox, C. J.: Quality improvement using a software reuse failure modes model. In: IEEE Transactions on Software Engineering 22 (1996) 4, S. 274–279.CrossRefGoogle Scholar
  12. [GHJV95]
    Gamma, E.; Helm, R.; Johnson, R.; Vlissides, J.: Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley, New York 1995.Google Scholar
  13. [HuAt04]
    Hummel, O.; Atkinson, C.: Extreme Harvesting: Test Driven Discovery and Reuse of Software Components. In: Proceedings of the International Conference on Information Reuse and Integration, Las Vegas 2004, S. 66–72.Google Scholar
  14. [HuAt06]
    Hummel, O.; Atkinson, C.: Using the Web as a Reuse Repository. In: Proceedings of the International Conference on Software Reuse, Torino 2006, S. 298–311.Google Scholar
  15. [IYFY05]
    Inoue, K.; Yokomori, R.; Fujiwara, H.; Yamamoto, T. et al.: Ranking Significance of Software Components Based on Use Relations. In: IEEE Transactions on Software Engineering 31 (2005) 3, S. 213–225.CrossRefGoogle Scholar
  16. [KLMM97]
    Kiczales, G.; Lamping, J.; Mendhekar, A.; Maeda, C. et al.: Aspect-Oriented Programming. In Proceedings of the European Conference on Object-Oriented Programming, 1997.Google Scholar
  17. [LeSW87]
    Lenz, M.; Schmid, H.; Wolf, P. W.: Software reuse through building blocks. In W. Tracz (Hrsg.): Software Reuse: Emerging Technology, Computer Society Press 1987, S. 100–108.Google Scholar
  18. [LeHö07]
    Lewandowski, D.; Höchstötter, N.: Qualitätsmessung bei Suchmaschinen — Systemund nutzerbezogene Evaluationsmaße. Informatik-Spektrum 30 (2007) 3, S. 159–169.CrossRefGoogle Scholar
  19. [MXBK05]
    Mandelin, D.; Xu, L.; Bodik, R.; Kimelman, D.: Jungloid mining: helping to navigate the API jungle. In Proceedings of the Conference on Programming Language Design and Implementation, 2005, S. 48–61.Google Scholar
  20. [McIl68]
    McIlroy, D.: Mass-Produced Software Components. In Proceedings of a conference sponsored by the NATO Science Committee, Garmisch 1968.Google Scholar
  21. [Meye91]
    Meyer, B.: Design by Contract, In Mandrioli, D.; Meyer, B. (Hrsg.): Advances in Object-Oriented Software Engineering, Prentice-Hall, Upper Saddle River 1991.Google Scholar
  22. [Micr06]
    Microsoft: UBR shutdown FAQ. http://uddi.microsoft.com/about/FAQshutdown.htm, 2006, Abruf am 2006-10-09.
  23. [MiMM98]
    Mili, A.; Mili, R.; Mittermeir, R.: A Survey of Software Reuse Libraries. In: Annals of Software Engineering 5 (1998), S. 349–414.CrossRefGoogle Scholar
  24. [NuCh90]
    Nunamaker, J. F.; Chen, M.: Systems Development in Information System Research. In: Proceedings of the Annual International Conference on System Sciences, Hawaii (1990), S. 631–640.Google Scholar
  25. [OMG05]
    OMG: Reusable Asset Specification. http://omg.org/technology/documents/formal/ras.htm, 2005, Abruf am 2006-10-09.
  26. [Parn72]
    Parnas, D. L.: On the Criteria to be Used in Decomposing Systems into Modules. In: Communications of the ACM 15 (1972) 12, S. 1053–1058.CrossRefGoogle Scholar
  27. [PoPi93]
    Podgurski, A.; Pierce, L.: Retrieving Reusable Software by Sampling Behavior. In: ACM Transactions on Software Engineering and Methodology 2 (1993) 3, S. 286–303.CrossRefGoogle Scholar
  28. [Poul99]
    Poulin, J.: Reuse: Been There, Done That. In: Communications of the ACM 42 (1999) 5, S. 98–100.CrossRefGoogle Scholar
  29. [Same97]
    Sametinger, J.: Software Engineering with Reusable Components, Springer, Heidelberg 1997.CrossRefGoogle Scholar
  30. [Seac99]
    Seacord, R.: Software Engineering Component Repositories, In: Proceedings of the ICSE Workshop on Component-Based Software Engineering, Los Angeles 1999.Google Scholar
  31. [Stal02]
    Stal, M.: Web Services: Beyond Component-Based Computing. In: Communications of the ACM 45 (2002) 10, S. 17–76.CrossRefGoogle Scholar
  32. [Szyp02]
    Szyperski, C.: Component Software. Addison-Wesley, New York 2002.Google Scholar
  33. [Turo02]
    Turowski, K. (Hrsg.): Vereinheitlichte Spezifikation von Fachkomponenten: Memorandum des Arbeitskreises Komponentenorientierte betriebliche Anwendungssysteme. Universität Augsburg 2002.Google Scholar
  34. [YeFi05]
    Ye, Y.; Fischer, G.: Reuse-Conducive Development Environments. In: Journal of Automated Software Engineering 12 (2005) 2, S. 199–235.CrossRefGoogle Scholar
  35. [ZaWi95]
    Zaremski, A. M.; Wing, J. M.: Signature Matching: A Tool for Using Software Libraries. In: ACM Transactions on Software Engineering and Methodology 4 (1995) 2, S. 146–170.CrossRefGoogle Scholar

Copyright information

© Vieweg Verlag / Wiesbaden 2007

Authors and Affiliations

  1. 1.Lehrstuhl für SoftwaretechnikUniversität MannheimMannheimGermany

Personalised recommendations