Proceedings of the 21st International Conference on Software Engineering 1999
DOI: 10.1145/302405.302457
|View full text |Cite
|
Sign up to set email alerts
|

N degrees of separation

Abstract: Done well, separation of concerns can provide many software engineering benefits, including reduced complexity, im-

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1
1

Citation Types

1
31
0
2

Year Published

2004
2004
2018
2018

Publication Types

Select...
7
2

Relationship

0
9

Authors

Journals

citations
Cited by 739 publications
(34 citation statements)
references
References 19 publications
1
31
0
2
Order By: Relevance
“…Feature-oriented programming (FOP) (Batory et al [2004], Kästner et al [2008) is a compositional approach for implementing SPLs in which code fragments are associated with product features and assembled to implement a particular configuration of features. Other compositional approaches use aspects (Kästner et al [2007], Aracic et al [2006]), mixins (Smaragdakis and Batory [2002]), hyperslices (Tarr et al [1999]) or traits (Ducasse et al [2006]) to implement product line variability (see Lopez-Herrejon et al [2005] as well as Bettini et al [2013c] for a discussion of some of them with respect to FOP).…”
Section: Feature-oriented Programming (Fop)mentioning
confidence: 99%
“…Feature-oriented programming (FOP) (Batory et al [2004], Kästner et al [2008) is a compositional approach for implementing SPLs in which code fragments are associated with product features and assembled to implement a particular configuration of features. Other compositional approaches use aspects (Kästner et al [2007], Aracic et al [2006]), mixins (Smaragdakis and Batory [2002]), hyperslices (Tarr et al [1999]) or traits (Ducasse et al [2006]) to implement product line variability (see Lopez-Herrejon et al [2005] as well as Bettini et al [2013c] for a discussion of some of them with respect to FOP).…”
Section: Feature-oriented Programming (Fop)mentioning
confidence: 99%
“…This vision is built on the fundamental principles of separation of concerns (SoC) [6], i.e., the ability to focus on a concern while temporarily forgetting other ones, as well as encapsulation and information hiding [26], but also on more recent advances in software engineering regarding model-driven engineering (MDE, e.g., OMG's MDA [25]) and how to encapsulate crosscutting concerns with aspect technology [31]. While the latter two are relatively young, enabling technologies for this vision, SoC, encapsulation, and information hiding have a long history of success from procedures (hiding algorithms behind signatures) to objects (hiding data and associated behavior behind interfaces) and from components (hiding collaborating objects behind provided and required interfaces) to aspects (encapsulating crosscutting concerns).…”
Section: Vision: Concern-oriented Requirements Reusementioning
confidence: 99%
“…The analysis is made in light of the contribution that type classes can be expected to bring to software extension and software integration. To drive the analysis, Lämmel and Ostermann used formulations of a number of extension or integration problems, namely the expression problem [63,64], the framework integration problem [66], the tyranny of dominant decomposition [3], scattering and tangling [2] and the component integration problem [67]. By means of an analysis of the published state of the art, Lämmel and Ostermann concluded that type classes provide a principled mechanism for software extension and integration from which useful insights can be derived.…”
Section: Other Assessment Approachesmentioning
confidence: 99%
“…Aspect-oriented programming (AOP) is an emerging programming model primarily focused on the modularization of crosscutting concerns [1][2][3][4][5]. AOP is undergoing maturation, and many aspectoriented programming languages (AOPLs) have been proposed [6].…”
Section: Introductionmentioning
confidence: 99%