Exploratory Software Development with Class Libraries
Software development based on the classical software life-cycle proves inadequate for many ambitious projects. Exploratory software development is an alternative way of building software systems by eliminating deficiencies of the conventional software life cycle. Instead of exactly defining the various phases of the life cycle, exploratory software development takes small development steps, whereby a single step results in an extension or an improvement of the existing system.
The object-oriented programming paradigm has resulted in increased reuse of existing software components. Therefore, class libraries will become very important in the near future. Exploratory software development is very well suited to this situation and thus provides a major step forward in economically developing software systems.
In this paper we depict deficiencies of the classical software life cycle, present the exploratory software development strategy, and especially illustrate exploratory software development in combination with the reuse of class libraries.
KeywordsSoftware Development Exploratory Approach Software Maintenance Class Library High Abstraction Level
Unable to display preview. Download preview PDF.
- 1.Bischofberger W., Kolb D., Pomberger G., Pree W., Schlemm H.: Prototyping-Oriented Software Development-Concepts and Tools, Structured Programming, Vol. 12, No. 1, New York, 1991Google Scholar
- 2.Boehm B. W.: Software Engineering, in Classics in Software Engineering, Yourdon N.E. Editor, pp. 325–361, Yourdon Press, 1979.Google Scholar
- 3.Booch G.: Object-Oriented Development, IEEE Transactions on Software Engineering, Vol. SE-12, No. 2, February 1986.Google Scholar
- 4.Budde R., et al (Editors): Approaches to Prototyping, Springer-Verlag, 1984.Google Scholar
- 5.Cameron J.: JSP & JSD: The Jackson Approach to Software Development, IEEE Computer Society Press, 1989.Google Scholar
- 6.Coad P., Yourdon E.; Object-Oriented Analysis, Yourdon Press Computing Series, Prentice Hall, 1990.Google Scholar
- 8.Meyer B.: Object-Oriented Software Construction, Prentice Hall, 1988.Google Scholar
- 9.Pomberger G.: Software Engineering and Modula-2, Prentice Hall, 1986.Google Scholar
- 10.Pree W.: Object-Oriented Software Development Based on Clusters: Concepts, Consequences and Examples, TOOLs Pacific (Technology of Object-Oriented Languages and Systems), pp. 111–117, 1991.Google Scholar
- 11.Rumbaugh J., et al: Object-Oriented Modeling and Design, Prentice Hall, 1991.Google Scholar
- 12.Sametinger J.: A Tool for the Maintenance of C++ Programs, Proceedings of the Conference on Software Maintenance, San Diego, CA, pp. 54–59, 1990.Google Scholar
- 13.Sandberg D.W.: Smalltalk and Exploratory Programming, ACM Sigplan Notices, Vot. 22, No. 10, 1987.Google Scholar
- 14.Stritzinger A.: Reusable Software Components and Application Frameworks—Concepts, Design Principles and Implications, to be published in VWGÖ, Vienna, 1992.Google Scholar