Generators synthesize software systems by composing components from reuse libraries. In general, not all syntactically correct compositions are semantically correct. In this paper, we present domain-independent algorithms for the GenVoca model of software generators to validate component compositions. Our work relies on attribute grammars and offers powerful debugging capabilities with explanation-based error reporting. We illustrate our approach by showing how compositions are debugged by a GenVoca generator for container data structures.
|
1524
|
Object-Oriented Modelling and Design
– Rumbaugh, Blaha, et al.
- 1991
|
|
586
|
The x-Kernel: An architecture for implementing network protocols
– Hutchinson, Peterson
- 1991
|
|
484
|
Foundations for the study of software architecture
– Perry, Wolf
- 1992
|
|
472
|
An introduction to software architecture
– Garlan, Shaw
- 1994
|
|
307
|
The design and implementation of hierarchical software systems with reusable components
– Batory, O’Malley
- 1992
|
|
231
|
Architectural mismatch or why it’s hard to build systems out of existing parts
– Garlan, Allen, et al.
- 1995
|
|
187
|
On the Design and Development of Program Families
– Parnas
|
|
148
|
File-system development with stackable layers
– Heidemann, Popek
- 1994
|
|
126
|
Putting theories together to make specifications
– Burstall, Goguen
- 1977
|
|
121
|
Principles of parameterized programming
– Goguen
- 1989
|
|
93
|
The Inscape environment
– PERRY
- 1989
|
|
91
|
GENESIS: An Extensible Database Management System
– Batory, Barnett, et al.
- 1988
|
|
75
|
Scalable software libraries
– Batory, Singhal, et al.
- 1993
|
|
71
|
The library scaling problem and the limits of concrete component reuse
– Biggerstaff
- 1994
|
|
70
|
Design Maintenance Systems
– Baxter
- 1992
|
|
65
|
Attribute Grammars: Definition, Systems and Bibliography
– Deransart, Jourdan, et al.
- 1988
|
|
55
|
Software Interconnection Models
– Perry
- 1987
|
|
46
|
Software Construction Using Components
– Neighbors
- 1980
|
|
44
|
The Domain-Specific Software Architecture Program (CMU/SEI-92-SR-009
– Mettala, Granham
- 1992
|
|
41
|
LILEANNA: A parameterized programming language
– Tracz
- 1993
|
|
40
|
Correctness and composition of software architectures
– Moriconi, Qian
- 1994
|
|
38
|
DSSAADAGE: An Environment for Architecture-based Avionics Development
– Coglianese, Szymanski
- 1993
|
|
37
|
What is style
– Garlan
- 1995
|
|
27
|
DTRE - A Semi-Automatic Transformation System
– Blaine, Goldberg
- 1991
|
|
27
|
Reengineering a Complex Application Using a Scalable Data Structure Compiler
– Batory, Thomas, et al.
- 1994
|
|
23
|
Component-based software using RESOLVE
– Sitaraman, Weide
- 1994
|
|
18
|
Draco-Puc: A Technology Assembly for Domain Oriented Software Development
– Leite, Sant’anna, et al.
- 1994
|
|
18
|
The logic of propagation in the Inscape environment
– Perry
- 1989
|
|
17
|
Design Patterns: MicroArchitectures for Reusable Object-Oriented Design
– Gamma, Helm, et al.
- 1994
|
|
17
|
A Prototype Domain Modeling Environment for Reusable Software Architectures
– Gomaa, Sugumaran, et al.
- 1994
|
|
15
|
Hybrid Domain-Specific Kits for a Flexible Software Factory," sAC'94
– Griss, Wentzel
- 1994
|
|
14
|
Modeling the Storage Architectures of Commercial Database Systems
– Batory
- 1985
|
|
13
|
DaTE: The Genesis DBMS Software Layout Editor
– Batory, Barnett
- 1992
|
|
11
|
Implementing a Domain Model for Data Structures
– Batory, Singhal, et al.
- 1992
|
|
11
|
The genvoca model of software system generators
– Batory, Singhal, et al.
- 1994
|
|
11
|
Synthesis Operational Scenarios
– Weiss
- 1990
|
|
9
|
An Architecture-driven, Business-specific, and Component-based Approach to Software Engineering
– Ning, Miriyala, et al.
- 1994
|
|
6
|
Documenting Frameworks using Patterns", OOPSLA
– Johnson
- 1992
|
|
6
|
Constraint Propagation in Software Libraries of Transformation Systems
– Katz, Volper
- 1992
|
|
5
|
Variational Attribute Grammars for Computer Aided Design." ADAGE-MIT94 -01
– McAllester
- 1996
|
|
5
|
et al., "Scalable Software Libraries
– Batory
- 1993
|
|
5
|
et al, "Architectural Mismatch or Why It's Hard to Build Systems out of Existing Parts
– Garlan
- 1995
|
|
4
|
et al., "Models for Domains and Architectures: A Prescription for Systematic Software Reuse", AIAA Computing in Aerospace
– Cohen
- 1995
|
|
4
|
et al., "Exploiting Style
– Garlan
- 1994
|
|
4
|
Models for Domains and Architectures: A Prescription for Systematic Software Reuse
– Cohen, Krut, et al.
- 1995
|
|
2
|
Reusing and Interconnecting Software Components", Computer
– Goguen
- 1986
|
|
1
|
Module Interconnection Lagnuages
– Prieto-Daz, Neighbors
- 1986
|
|
1
|
Parameterized Programming", Workshop on Reusability
– Goguen
- 1983
|
|
1
|
Component-Based Softwaer using RESOLVE
– Sitaraman, Weide
- 1994
|
|
1
|
et al., "A Prototype Domain Modeling Environment for reusable Software Architectures", ICSR
– Gomaa
- 1994
|