There exist many solutions to solve a given design problem, and it is difficult to capture the essence of a solution and make it reusable for future designs. Furthermore, many variations of a given solution may exist, and choosing the best alternative depends on application-specific high-level goals and non-functional requirements. This paper proposes Concern-Oriented Software Design, a modelling technique that focuses on concerns as units of reuse. A concern groups related models serving the same purpose, and provides three interfaces to facilitate reuse. The variation interface presents the design alternatives and their impact on non-functional requirements. The customization interface of the selected alternative details how to adapt the generic solution to a specific context. Finally, the usage interface specifies the provided behaviour. We illustrate our approach by presenting the concern models of variations of the Observer design pattern, which internally depends on the Association concern to link observers and subjects.

-- DanielAmyot - 16 Mar 2014


FormForVirtualLibrary edit

Title Concern-Oriented Software Design
Authors O. Alam, J. Kienzle, G. Mussbacher
Type Conference
Conference/Journal Title 16th Int. Conf. on Model-Driven Engineering Languages and Systems (MODELS 2013)
Volume/Number LNCS 8107
Editors A. Moreira et al.
Publisher Springer
Month September
Year 2013
Pages 604-621
DOI 10.1007/978-3-642-41533-3_37
Keywords Concerns, Interface, Reuse, Feature Model, Goal Model, GRL, RAM
Topic revision: r1 - 16 Mar 2014, DanielAmyot
This site is powered by FoswikiCopyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding Foswiki? Send feedback