{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,2,5]],"date-time":"2026-02-05T10:08:34Z","timestamp":1770286114737,"version":"3.49.0"},"publisher-location":"Berlin, Heidelberg","reference-count":32,"publisher":"Springer Berlin Heidelberg","isbn-type":[{"value":"9783540291381","type":"print"},{"value":"9783540319771","type":"electronic"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2005]]},"DOI":"10.1007\/11561347_10","type":"book-chapter","created":{"date-parts":[[2005,10,3]],"date-time":"2005-10-03T12:41:30Z","timestamp":1128343290000},"page":"125-140","source":"Crossref","is-referenced-by-count":114,"title":["FeatureC++: On the Symbiosis of Feature-Oriented and Aspect-Oriented Programming"],"prefix":"10.1007","author":[{"given":"Sven","family":"Apel","sequence":"first","affiliation":[]},{"given":"Thomas","family":"Leich","sequence":"additional","affiliation":[]},{"given":"Marko","family":"Rosenm\u00fcller","sequence":"additional","affiliation":[]},{"given":"Gunter","family":"Saake","sequence":"additional","affiliation":[]}],"member":"297","reference":[{"key":"10_CR1","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"137","DOI":"10.1007\/11407386_11","volume-title":"Software Engineering and Middleware","author":"S. Apel","year":"2005","unstructured":"Apel, S., B\u00f6hm, K.: Towards the Development of Ubiquitous Middleware Product Lines. In: Gschwind, T., Mascolo, C. (eds.) SEM 2004. LNCS, vol.\u00a03437, pp. 137\u2013153. Springer, Heidelberg (2005)"},{"key":"10_CR2","doi-asserted-by":"crossref","unstructured":"Apel, S., et al.: FeatureC++: Feature-Oriented and Aspect-Oriented Programming in C++. Technical report, Department of Computer Science, Otto-von-Guericke University, Magdeburg, Germany (2005)","DOI":"10.1007\/11561347_10"},{"key":"10_CR3","doi-asserted-by":"crossref","unstructured":"Batory, D., et al.: Creating Reference Architectures: An Example from Avionics. In: Symposium on Software Reusability (1995)","DOI":"10.1145\/211782.211786"},{"key":"10_CR4","doi-asserted-by":"crossref","unstructured":"Batory, D., Liu, J., Sarvela, J.N.: Refinements and Multi-Dimensional Separation of Concerns. In: ACM SIGSOFT (2003)","DOI":"10.1145\/940071.940079"},{"key":"10_CR5","doi-asserted-by":"crossref","unstructured":"Batory, D., Sarvela, J.N., Rauschmayer, A.: Scaling Step-Wise Refinement. IEEE TSE\u00a030(6) (2004)","DOI":"10.1109\/TSE.2004.23"},{"key":"10_CR6","doi-asserted-by":"crossref","unstructured":"Batory, D., Thomas, J.: P2: A Lightweight DBMS Generator. Journal of Intelligent Information Systems\u00a09(2) (1997)","DOI":"10.1023\/A:1008617930959"},{"key":"10_CR7","doi-asserted-by":"crossref","unstructured":"Cardone, R., et al.: Using Mixins to Build Flexible Widgets. In: AOSD (2002)","DOI":"10.1145\/508386.508395"},{"key":"10_CR8","doi-asserted-by":"crossref","unstructured":"Cardone, R., Lin, C.: Comparing Frameworks and Layered Refinement. In: ICSE (2001)","DOI":"10.1109\/ICSE.2001.919102"},{"key":"10_CR9","doi-asserted-by":"crossref","unstructured":"Colyer, A., Clement, A.: Large-Scale AOSD for Middleware. In: AOSD (2004)","DOI":"10.1145\/976270.976279"},{"key":"10_CR10","unstructured":"Colyer, A., Rashid, A., Blair, G.: On the Separation of Concerns in Program Families. Technical report, Computing Department, Lancaster University (2004)"},{"key":"10_CR11","volume-title":"Generative Programming: Methods, Tools, and Applications","author":"K. Czarnecki","year":"2000","unstructured":"Czarnecki, K., Eisenecker, U.: Generative Programming: Methods, Tools, and Applications. Addison-Wesley, Reading (2000)"},{"key":"10_CR12","volume-title":"A Discipline of Programming","author":"E.W. Dijkstra","year":"1976","unstructured":"Dijkstra, E.W.: A Discipline of Programming. Prentice-Hall, Englewood Cliffs (1976)"},{"key":"10_CR13","unstructured":"Eisenecker, U.W., Blinn, F., Czarnecki, K.: A Solution to the Constructor-Problem of Mixin-Based Programming in C++. In: Workshop on C++ Template Programming (2000)"},{"key":"10_CR14","doi-asserted-by":"crossref","unstructured":"Findler, R., Flatt, M.: Modular Object-Oriented Programming with Units and Mixins. In: ICFP (1998)","DOI":"10.1145\/289423.289432"},{"key":"10_CR15","doi-asserted-by":"crossref","unstructured":"Kendall, E.A.: Role Model Designs and Implementations with Aspect-Oriented Programming. In: OOPSLA (1999)","DOI":"10.1145\/320384.320423"},{"key":"10_CR16","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"220","DOI":"10.1007\/BFb0053381","volume-title":"ECOOP \u201997 - Object-Oriented Programming","author":"G. Kiczales","year":"1997","unstructured":"Kiczales, G., et al.: Aspect-Oriented Programming. In: Aksit, M., Matsuoka, S. (eds.) ECOOP 1997. LNCS, vol.\u00a01241, pp. 220\u2013242. Springer, Heidelberg (1997)"},{"key":"10_CR17","doi-asserted-by":"crossref","unstructured":"Laddad, R.: AspectJ in Action \u2013 Practical Aspect-Oriented Programming. Manning Publication Co. (2003)","DOI":"10.1109\/MS.2003.1241372"},{"key":"10_CR18","doi-asserted-by":"crossref","unstructured":"Lieberherr, K.: Controlling the Complexity of Software Designs. In: ICSE (2004)","DOI":"10.1109\/ICSE.2004.1317408"},{"key":"10_CR19","doi-asserted-by":"crossref","unstructured":"Lieberherr, K., Lorenz, D.H., Ovlinger, J.: Aspectual Collaborations: Combining Modules and Aspects. The Computer Journal (Special issue on AOP), 46(5) (2003)","DOI":"10.1093\/comjnl\/46.5.542"},{"key":"10_CR20","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"169","DOI":"10.1007\/11531142_8","volume-title":"ECOOP 2005 - Object-Oriented Programming","author":"R. Lopez-Herrejon","year":"2005","unstructured":"Lopez-Herrejon, R., Batory, D., Cook, W.: Evaluating Support for Features in Advanced Modularization Technologies. In: Black, A.P. (ed.) ECOOP 2005. LNCS, vol.\u00a03586, pp. 169\u2013194. Springer, Heidelberg (2005)"},{"key":"10_CR21","unstructured":"Lopez-Herrejon, R.E., Batory, D.: Improving Incremental Development in AspectJ by Bounding Quantification. In: Software Engineering Properties and Languages for Aspect Technologies (2005)"},{"key":"10_CR22","unstructured":"Loughran, N., et\u00a0al.: Supporting Product Line Evolution with Framed Aspects. In: AOSD ACP4IS Workshop (2004)"},{"key":"10_CR23","doi-asserted-by":"crossref","unstructured":"McDirmid, S., Hsieh, W.: Aspect-Oriented Programming in Jiazzi. In: AOSD (2003)","DOI":"10.1145\/643603.643611"},{"key":"10_CR24","doi-asserted-by":"crossref","unstructured":"Mezini, M., Ostermann, K.: Variability Management with Feature-Oriented Programming and Aspects. In: ACM SIGSOFT (2004)","DOI":"10.1145\/1029894.1029915"},{"key":"10_CR25","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"89","DOI":"10.1007\/3-540-47993-7_4","volume-title":"ECOOP 2002 - Object-Oriented Programming","author":"K. Ostermann","year":"2002","unstructured":"Ostermann, K.: Dynamically Composable Collaborations with Delegation Layers. In: Magnusson, B. (ed.) ECOOP 2002. LNCS, vol.\u00a02374, p. 89. Springer, Heidelberg (2002)"},{"key":"10_CR26","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"214","DOI":"10.1007\/11531142_10","volume-title":"ECOOP 2005 - Object-Oriented Programming","author":"K. Ostermann","year":"2005","unstructured":"Ostermann, K., Mezini, M., Bockisch, C.: Expressive Pointcuts for Increased Modularity. In: Black, A.P. (ed.) ECOOP 2005. LNCS, vol.\u00a03586, pp. 214\u2013240. Springer, Heidelberg (2005)"},{"key":"10_CR27","doi-asserted-by":"crossref","unstructured":"Parnas, D.L.: Designing Software for Ease of Extension and Contraction. IEEE TSE\u00a0SE-5(2) (1979)","DOI":"10.1109\/TSE.1979.234169"},{"key":"10_CR28","doi-asserted-by":"crossref","unstructured":"Rajan, H., Sullivan, K.J.: Classpects: Unifying Aspect- and Object-Oriented Language Design. In: ICSE (2005)","DOI":"10.1145\/1062455.1062483"},{"key":"10_CR29","unstructured":"Singhal, V., Batory, D.: P++: A Language for Large-Scale Reusable Software Components. In: Workshop on Software Reuse (1993)"},{"key":"10_CR30","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"163","DOI":"10.1007\/3-540-44815-2_12","volume-title":"Generative and Component-Based Software Engineering","author":"Y. Smaragdakis","year":"2001","unstructured":"Smaragdakis, Y., Batory, D.: Mixin-Based Programming in C++. In: Butler, G., Jarzabek, S. (eds.) GCSE 2000. LNCS, vol.\u00a02177, p. 163. Springer, Heidelberg (2001)"},{"key":"10_CR31","doi-asserted-by":"crossref","unstructured":"Smaragdakis, Y., Batory, D.: Mixin Layers: An Object-Oriented Implementation Technique for Refinements and Collaboration-Based Designs. In: ACM TOSEM, vol. 11(2) (2002)","DOI":"10.1145\/505145.505148"},{"key":"10_CR32","doi-asserted-by":"crossref","unstructured":"Tarr, P., et al.: N Degrees of Separation: Multi-Dimensional Separation of Concerns. In: ICSE (1999)","DOI":"10.1145\/302405.302457"}],"container-title":["Lecture Notes in Computer Science","Generative Programming and Component Engineering"],"original-title":[],"link":[{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/11561347_10.pdf","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2020,11,17]],"date-time":"2020-11-17T19:50:54Z","timestamp":1605642654000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/11561347_10"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2005]]},"ISBN":["9783540291381","9783540319771"],"references-count":32,"URL":"https:\/\/doi.org\/10.1007\/11561347_10","relation":{},"ISSN":["0302-9743","1611-3349"],"issn-type":[{"value":"0302-9743","type":"print"},{"value":"1611-3349","type":"electronic"}],"subject":[],"published":{"date-parts":[[2005]]}}}