A model-based computer-aided prototyping system

Computer aided prototyping systems which allow application domain experts to compose prototypes using domain specific components, semantics, and primitives can reduce the time and effort needed for prototyping considerably.The notion of domain model is introduced as a vehicle for defining, generating, and categorizing domain specific components. Facilities to compose the components generated from the domain model to implement complex functionality are presented.A rapid prototyping system which provides a domain modeling tool and a visual direct manipulation composition tool is described. The main element of the domain modeling tool is a domain modeling language which provides: (i) a class construct to define object, (ii) rule, trigger, event, and relationship constructs to define interactions among objects, and (iii) process, task, and signal constructs to define the activities in the domain.The composition tool is the extension of a visual tool called IntelligentPad (IP) which supports unified data and control flows through a simple paste and connect metaphor. Domain models are translated to generate components, which are then composed using the extended IP.