This Article 
   
 Share 
   
 Bibliographic References 
   
 Add to: 
 
Digg
Furl
Spurl
Blink
Simpy
Google
Del.icio.us
Y!MyWeb
 
 Search 
   
Reuse of software through generation of partial systems
March 1986 (vol. 12 no. 3)
pp. 402-416
One approach to improving software productivity is the development and reuse of general software for a given application area to avoid development of code. Frequently, for a particular application a partial system that supports only a subset of the capabilities of a general program system is sufficient. The problem of constructing partial systems is addressed, where the program of a partial system is obtained by selecting only those code segments of the complete program that implement the capabilities needed. A heuristic for determining fragments of a program system, which can serve as the building blocks for the programs of partial systems, is presented. The notion of “B-program” is introduced: a B-program contains in addition to the fragments themselves for each fragment substitute code and control information specifying the set of partial systems the fragment is relevant for. A representation of B-programs as a string is given, such that generating a partial system consists in scanning this string and selecting substrings. A formal model for this type of program generation is developed: a B-program is viewed as an ordered tree with the substrings of the complete program as its leaves and the fragments as its nonleaf vertices; a “relevance” mapping indicates for each fragment vertex f, whether or not f is relevant for a particular partial system; a mapping σ associates with each fragment f its substitute. Generation of a partial system is defined in terms of preorder traversal of a subtree of the B-program. B-program reduction is dealt with: transformations for the elimination of superfluous vertices are presented, the issue of uniqueness and the problem of constructing a minimal reduced B-program are discussed.
Index Terms:
Indexes,Algorithm design and analysis,Computer aided software engineering,Software systems,reuse of software,Code fragments,code selection,customizing,general software,generic systems,program generation,program tailoring
Citation:
"Reuse of software through generation of partial systems," IEEE Transactions on Software Engineering, vol. 12, no. 3, pp. 402-416, March 1986, doi:10.1109/TSE.1986.6312882
Usage of this product signifies your acceptance of the Terms of Use.