Variability modeling techniques are used to specify variable aspects of members of a family of related software artifacts. Instances of variability models are then used to effici...
Object-oriented frameworks are a popular mechanism for building and evolving large applications and software product lines. This paper describes an alternative approach to softwar...
Aspect-oriented programming languages provide new composition mechanisms for improving the modularity of crosscutting concerns. Implementations of such language support use advanc...
We address the problem of realizing communicative plans in graphics. Our approach calls for mapping communicative goals to conceptual tasks and then using task-based graphic desig...
Developers have long used pictures to aid design activities and there has been a lot of interest in standard notations for design. We have developed delegation diagrams, a graphic...