| D. Batory, "Intelligent Components and Software Generators", Software Quality Institute Symposium on Software Reliability, Austin, Texas, April, 1997. |
....then be put together in an exponential number of legal configurations. The selection of components adapts the library functionality to the needs of a specific application. Several concrete technologies for implementing factored libraries have been proposed in the past. Application generators [2][5], template libraries [21] and binary components are among them. In this paper, we show that standard Unix dynamic libraries are a good architecture for factored or layered development. Using dynamic libraries to represent library components has the advantages of language independence (components ....
....is exponential in the number of components in the library. Each of the combinations is not burdened by unneeded features, yet can be as powerful as needed for the specific application. For instance, a composition of components A, B, and E (henceforth denoted A[B[E] using GenVoca layer notation [5]) is effected by appropriately setting the LD PRELOAD variable: setenv LD PRELOAD DLIBHOME A.so DLIBHOME B.so DLIBHOME E.so The order of composition could also be important: compositions of the same components in a different order could result into different, but equally valid ....
D. Batory, "Intelligent Components and Software Generators", Software Quality Institute Symposium on Software Reliability, Austin, Texas, April, 1997.
....unpredictable; they do not scale up. In addition, they conflict with other software engineering concerns like maintenance and extensibility. In order to get the best of both worlds, there has been a major research effort aimed at achieving efficient generation and composition of building blocks [3, 4]. However, these approaches are also specific to the architectures and the domains of components. Moreover, they do not fully exploit all integration opportunities. We propose a systematic method to improve the efficiency of software architectures, known as program specialization. Program ....
....link time, opening session initialization time, and runtime. In practice, the later adaptation is needed, the more difficult it is to implement it efficiently. Currently, some software engineering environments can generate code from a flexible specification, especially in the domain of libraries [3, 4]. However, the generated code may still contain aspects of the software architecture in the specification. These techniques are also ad hoc in that they are specific to a given architecture. Furthermore, they only address compile time code generation. Actually, the central idea in optimizing ....
Don Batory. Intelligent components and software generators. In Proceedings of the Software Quality Institute Symposium on Software Reliability, Austin, Texas, April 1997. Also available as Technical Report 97-06, Department of Computer Sciences, University of Texas at Austin, February 1997.
....level. Nevertheless, the model does not specify a particular form for these entities. Thus, GenVoca components could correspond to language modules, classes, binary objects (e.g. COM or CORBA components) etc. Generally, the spectrum of GenVoca implementations varies along two axes [Bat97] components may be either compositional or transformational, and either dynamic or static. Compositional components define the source code that an application will execute; transformational components define code that, when executed, will generate the source code that an application will ....
D. Batory, "Intelligent Components and Software Generators", Software Quality Institute Symposium on Software Reliability, Austin, Texas, April, 1997.
....generative reuse provides good documentation of the domain effect. Domain specific generatorbased experiments have been able to reduce the proportion of hand written code to one third or one quarter of conventional development and the TTM by a comparable amount. Batory et al. 1993; Singhal 1996; Batory 1997d] Other reuse experiments that emphasize domain specific componentry have reported reductions of programming effort of between 60 and 80 . The HP instrumentation experiment is a case in point reporting that 60 of the code in the product that shipped in Feb 92 was reused code. Of course, this is ....
....equivalently as good as manually created code because builders of reusable components can afford to put a large amount of effort into the local optimizations within the individual components. These highly optimized components are then used within many different application programs. Batory 1993; Batory 1997d] From a practical standpoint, this is a far more effective deployment of optimization efforts than having many programmers redundantly optimizing each separate application program. In theory, optimizations made by programmers have the potential to provide better overall performance because they ....
[Article contains additional citation context not shown here]
Batory, D. (1997d), "Intelligent Components and Software Generators," Invited presentation to the Software Quality Institute Symposium on Software Reliability, Austin, Texas, April 1997. Technical Report 97-06, Department of Computer Sciences, University of Texas at Austin.
....hand written component libraries, offer a scalable way to produce customized software [Bat93, Big94] The declarative way in which P3 users specify very complex container and cursor implementations through component composition leads to scalable families of customized data structures. As shown in [Bat97c], significant increases in productivity and major cost reductions both in maintenance and experimentation with different container implementations can result from generators. While we have not yet used P3 in a sophisticated Java application, we have performed preliminary benchmarks on P3 generated ....
D. Batory, "Intelligent Components and Software Generators", Software Quality Institute Symposium on Software Reliability, Austin, Texas, April 1997.
....contrary to hand written component libraries, offer a scalable way to produce customized software [Bat93, Big94] The declarative way in which P3 users specify container and cursor implementations through component composition leads to huge families of customized data structures. As shown in [Bat97b], significant increases in productivity and major cost reductions both in maintenance and experimentation with different container implementations can result from generators. While we have not yet used P3 in a sophisticated Java application, we have per DS Component Semantics malloc elements ....
D. Batory, "Intelligent Components and Software Generators", Software Quality Institute Symposium on Software Reliability, Austin, Texas, April 1997.
No context found.
D. Batory, "Intelligent Components and Software Generators", Software Quality Institute Symposium on Software Reliability, Austin, Texas, April 1997.
....contrary to hand written component libraries, offer a scalable way to produce customized software [Bat93, Big94] The declarative way in which P3 users specify container and cursor implementations through component composition leads to scalable families of customized data structures. As shown in [Bat97c], significant increases in productivity and major cost reductions both in maintenance and experimentation with different container implementations can result from generators. While we have not yet used P3 in a sophisticated Java application, we have performed preliminary benchmarks on P3 generated ....
D. Batory, "Intelligent Components and Software Generators", Software Quality Institute Symposium on Software Reliability, Austin, Texas, April 1997.
....is comparable or substantially better than that of expert coded software. Productivity increases range from a factor of 4 (where new components have to be written) to several orders of magnitude (where all components are available) Further, an 8 fold reduction in errors has been reported. See [Bat97b] for details. There are problems and limitations with every approach, and GenVoca is no exception. Both technical and nontechnical issues abound. Experience has revealed no technical show stoppers ; to be sure, there are plenty of interesting technical challenges, but these are solvable. The ....
D. Batory, "Intelligent Components and Software Generators", Software Quality Institute Symposium on Software Reliability, Austin, Texas, April 1997.
....contrary to hand written component libraries, offer a scalable way to produce customized software [Bat93, Big94] The declarative way in which P3 users specify container and cursor implementations through component composition leads to scalable families of customized data structures. As shown in [Bat97c], significant increases in productivity and major cost reductions both in maintenance and experimentation with different container implementations can result from generators. While we have not yet used P3 in a sophisticated Java application, we have performed preliminary benchmarks on P3 generated ....
D. Batory, "Intelligent Components and Software Generators", Software Quality Institute Symposium on Software Reliability, Austin, Texas, April 1997.
....implementations do not rely on object oriented techniques (inheritance) Instead, powerful parameterization (e.g. 14] and software generators (e.g. 3] 15] have been employed to produce target applications from components. The spectrum of GenVoca implementations varies along two axes [4]: components may be either compositional or transformational, and either dynamic or static. Compositional components define the source code that an application will execute; transformational components define code that, when executed, will generate the source code that an application will ....
D. Batory, "Intelligent Components and Software Generators", Software Quality Institute Symposium on Software Reliability, Austin, Texas, April 1997.
Online articles have much greater impact More about CiteSeer.IST Add search form to your site Submit documents Feedback
CiteSeer.IST - Copyright Penn State and NEC