Abstraction fosters reuse by providing a class of artifacts that can be instantiated or customized to produce a set of artifacts meeting different specific requirements. It is proposed that significant leverage can be obtained by abstracting software system designs and the design process. The result of such an abstraction is a generic architecture and a set of knowledge-based, customization tools that can be used to instantiate the generic architecture. An approach for designing software systems based on the above idea are described. The approach is illustrated through an implemented example, and the advantages and limitations of the approach are discussed
SINAPSE is a domain-specific software design system that generates code from specifications of equat...
This paper advocates that reengineering is an effective means of legacy system evolution. Extracting...
Software system builders are increasingly recognizing the importance of exploiting design knowledge ...
A framework for synthesizing software systems based on abstracting software system designs and the d...
In order to support the synthesis of large, complex software systems, we need to focus on issues per...
Designing software systems, like all design activities, is a knowledge-intensive task. Several studi...
Reuse is as an important approach to conceptual object-oriented design. A number of reusable artifac...
Object-oriented methods aim at providing natural ways for decomposing (or composing) a system into (...
Presented at the 6th AIAA/NASA/USAF/ISSMO Symposium on Multidisciplinary Analysis and Optimization, ...
A high degree of abstraction and capacity for reuse can be obtained in software design through the u...
It is nearly axiomatic, that to take the greatest advantage of the useful features available in a de...
This paper describes a domain-specific software design system based on the concepts of software arch...
The paper addresses the acquisition, organisation and reuse of knowledge in the design of real-time ...
Program design is an area of programming that can benefit significantly from machine-mediated assist...
For a component industry to be successful, we must move beyond the current techniques of black box r...
SINAPSE is a domain-specific software design system that generates code from specifications of equat...
This paper advocates that reengineering is an effective means of legacy system evolution. Extracting...
Software system builders are increasingly recognizing the importance of exploiting design knowledge ...
A framework for synthesizing software systems based on abstracting software system designs and the d...
In order to support the synthesis of large, complex software systems, we need to focus on issues per...
Designing software systems, like all design activities, is a knowledge-intensive task. Several studi...
Reuse is as an important approach to conceptual object-oriented design. A number of reusable artifac...
Object-oriented methods aim at providing natural ways for decomposing (or composing) a system into (...
Presented at the 6th AIAA/NASA/USAF/ISSMO Symposium on Multidisciplinary Analysis and Optimization, ...
A high degree of abstraction and capacity for reuse can be obtained in software design through the u...
It is nearly axiomatic, that to take the greatest advantage of the useful features available in a de...
This paper describes a domain-specific software design system based on the concepts of software arch...
The paper addresses the acquisition, organisation and reuse of knowledge in the design of real-time ...
Program design is an area of programming that can benefit significantly from machine-mediated assist...
For a component industry to be successful, we must move beyond the current techniques of black box r...
SINAPSE is a domain-specific software design system that generates code from specifications of equat...
This paper advocates that reengineering is an effective means of legacy system evolution. Extracting...
Software system builders are increasingly recognizing the importance of exploiting design knowledge ...