{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,9,28]],"date-time":"2025-09-28T04:20:44Z","timestamp":1759033244736},"publisher-location":"Berlin, Heidelberg","reference-count":40,"publisher":"Springer Berlin Heidelberg","isbn-type":[{"type":"print","value":"9783642369636"},{"type":"electronic","value":"9783642369643"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2013]]},"DOI":"10.1007\/978-3-642-36964-3_5","type":"book-chapter","created":{"date-parts":[[2013,3,1]],"date-time":"2013-03-01T18:45:56Z","timestamp":1362163556000},"page":"148-183","source":"Crossref","is-referenced-by-count":3,"title":["Language Features for Software Evolution and Aspect-Oriented Interfaces: An Exploratory Study"],"prefix":"10.1007","author":[{"given":"Robert","family":"Dyer","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Hridesh","family":"Rajan","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Yuanfang","family":"Cai","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"297","reference":[{"key":"5_CR1","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"144","DOI":"10.1007\/11531142_7","volume-title":"ECOOP 2005 - Object-Oriented Programming","author":"J. Aldrich","year":"2005","unstructured":"Aldrich, J.: Open Modules: Modular Reasoning About Advice. In: Gao, X.-X. (ed.) ECOOP 2005. LNCS, vol.\u00a03586, pp. 144\u2013168. Springer, Heidelberg (2005)"},{"key":"5_CR2","doi-asserted-by":"crossref","unstructured":"Avgustinov, P., Christensen, A.S., Hendren, L., Kuzins, S., Lhotak, J., Lhotak, O., de Moor, O., Sereni, D., Sittampalam, G., Tibble, J.: abc: an extensible AspectJ compiler. In: AOSD, pp. 87\u201398 (2005)","DOI":"10.1145\/1052898.1052906"},{"key":"5_CR3","doi-asserted-by":"crossref","unstructured":"Baldwin, C.Y., Clark, K.B.: Design Rules. The Power of Modularity, vol.\u00a01. MIT Press (2000)","DOI":"10.7551\/mitpress\/2366.001.0001"},{"key":"5_CR4","doi-asserted-by":"crossref","unstructured":"Bockisch, C., Haupt, M., Mezini, M., Ostermann, K.: Virtual machine support for dynamic join points. In: AOSD 2004, pp. 83\u201392 (2004)","DOI":"10.1145\/976270.976282"},{"issue":"6","key":"5_CR5","first-page":"476","volume":"20","author":"S.R. Chidamber","year":"1994","unstructured":"Chidamber, S.R., Kemerer, C.F.: A metrics suite for object oriented design. IEEE TSE\u00a020(6), 476\u2013493 (1994)","journal-title":"IEEE TSE"},{"key":"5_CR6","unstructured":"Dyer, R., Bagherzadeh, M., Rajan, H., Cai, Y.: A preliminary study of quantified, typed events. In: ESCOT 2010 (2010)"},{"key":"5_CR7","doi-asserted-by":"crossref","unstructured":"Dyer, R., Rajan, H.: Nu: a dynamic aspect-oriented intermediate language model and virtual machine for flexible runtime adaptation. In: AOSD 2008, pp. 191\u2013202 (2008)","DOI":"10.1145\/1353482.1353505"},{"key":"5_CR8","doi-asserted-by":"crossref","unstructured":"Dyer, R., Rajan, H.: Supporting dynamic aspect-oriented features. ACM Transactions on Software Engineering and Methodology (TOSEM)\u00a020(2) (2010)","DOI":"10.1145\/1824760.1824764"},{"key":"5_CR9","doi-asserted-by":"crossref","unstructured":"Dyer, R., Rajan, H., Cai, Y.: An exploratory study of the design impact of language features for aspect-oriented interfaces. In: AOSD 2012, pp. 143\u2013154 (2012)","DOI":"10.1145\/2162049.2162067"},{"issue":"1-3","key":"5_CR10","doi-asserted-by":"publisher","first-page":"14","DOI":"10.1016\/j.scico.2007.02.003","volume":"69","author":"T. Ekman","year":"2007","unstructured":"Ekman, T., Hedin, G.: The JastAdd system \u2014 modular extensible compiler construction. Sci. Comput. Program.\u00a069(1-3), 14\u201326 (2007)","journal-title":"Sci. Comput. Program."},{"key":"5_CR11","unstructured":"Fenton, N.E., Pfleeger, S.L.: Software Metrics: A Rigorous and Practical Approach. Course Technology (1998)"},{"key":"5_CR12","doi-asserted-by":"crossref","unstructured":"Ferrari, F., Burrows, R., Lemos, O., Garcia, A., Figueiredo, E., Cacho, N., Lopes, F., Temudo, N., Silva, L., Soares, S., Rashid, A., Masiero, P., Batista, T., Maldonado, J.: An exploratory study of fault-proneness in evolving aspect-oriented programs. In: ICSE 2010, pp. 65\u201374 (2010)","DOI":"10.1145\/1806799.1806813"},{"key":"5_CR13","doi-asserted-by":"crossref","unstructured":"Figueiredo, E., Cacho, N., Sant\u2019Anna, C., Monteiro, M., Kulesza, U., Garcia, A., Soares, S., Ferrari, F., Khan, S., Castor Filho, F., Dantas, F.: Evolving software product lines with aspects: an empirical study on design stability. In: ICSE (2008)","DOI":"10.1145\/1368088.1368124"},{"key":"5_CR14","doi-asserted-by":"crossref","unstructured":"Filho, F.C., Cacho, N., Figueiredo, E., Maranh\u0101o, R., Garcia, A., Rubira, C.M.F.: Exceptions and aspects: The devil is in the details. In: FSE (2006)","DOI":"10.1145\/1181775.1181794"},{"key":"5_CR15","doi-asserted-by":"crossref","unstructured":"Garcia, A., Sant\u2019Anna, C., Figueiredo, E., Kulesza, U., Lucena, C., von Staa, A.: Modularizing design patterns with aspects: a quantitative study. In: AOSD, pp. 3\u201314 (2005)","DOI":"10.1145\/1052898.1052899"},{"key":"5_CR16","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"176","DOI":"10.1007\/978-3-540-73589-2_9","volume-title":"ECOOP 2007 \u2013 Object-Oriented Programming","author":"P. Greenwood","year":"2007","unstructured":"Greenwood, P., Bartolomei, T., Figueiredo, E., Dosea, M., Garcia, A., Cacho, N., Sant\u2019Anna, C., Soares, S., Borba, P., Kulesza, U., Rashid, A.: On the Impact of Aspectual Decompositions on Design Stability: An Empirical Study. In: Ernst, E. (ed.) ECOOP 2007. LNCS, vol.\u00a04609, pp. 176\u2013200. Springer, Heidelberg (2007)"},{"key":"5_CR17","unstructured":"Hirschfeld, R.: Aspect-oriented programming with AspectS. In: Net. Object Days 2002 (2002)"},{"key":"5_CR18","doi-asserted-by":"crossref","unstructured":"Hoffman, K.J., Eugster, P.: Towards reusable components with aspects: an empirical study on modularity and obliviousness. In: 30th International Conference on Software Engineering (ICSE), pp. 91\u2013100 (2008)","DOI":"10.1145\/1368088.1368102"},{"key":"5_CR19","doi-asserted-by":"crossref","unstructured":"Inostroza, M., Tanter, E., Bodden, E.: Join point interfaces for modular reasoning in aspect-oriented programs. In: ESEC\/FSE, pp. 508\u2013511 (2011)","DOI":"10.1145\/2025113.2025205"},{"key":"5_CR20","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"327","DOI":"10.1007\/3-540-45337-7_18","volume-title":"ECOOP 2001 - Object-Oriented Programming","author":"G. Kiczales","year":"2001","unstructured":"Kiczales, G., Hilsdale, E., Hugunin, J., Kersten, M., Palm, J., Griswold, W.G.: An Overview of AspectJ. In: Lindskov Knudsen, J. (ed.) ECOOP 2001. LNCS, vol.\u00a02072, pp. 327\u2013353. Springer, Heidelberg (2001)"},{"key":"5_CR21","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., Lamping, J., Mendhekar, A., Maeda, C., Lopes, C., Loingtier, J.M., Irwin, J.: Aspect-Oriented Programming. In: Ak\u015fit, M., Matsuoka, S. (eds.) ECOOP 1997. LNCS, vol.\u00a01241, pp. 220\u2013242. Springer, Heidelberg (1997)"},{"key":"5_CR22","doi-asserted-by":"crossref","unstructured":"Kiczales, G., Mezini, M.: Aspect-oriented programming and modular reasoning. In: 27th International Conference on Software Engineering (ICSE), pp. 49\u201358 (2005)","DOI":"10.1145\/1062455.1062482"},{"key":"5_CR23","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"195","DOI":"10.1007\/11531142_9","volume-title":"ECOOP 2005 - Object-Oriented Programming","author":"G. Kiczales","year":"2005","unstructured":"Kiczales, G., Mezini, M.: Separation of Concerns with Procedures, Annotations, Advice and Pointcuts. In: Gao, X.-X. (ed.) ECOOP 2005. LNCS, vol.\u00a03586, pp. 195\u2013213. Springer, Heidelberg (2005)"},{"key":"5_CR24","doi-asserted-by":"crossref","unstructured":"Kulesza, U., Sant\u2019Anna, C., Garcia, A., Coelho, R., von Staa, A., Lucena, C.: Quantifying the effects of aspect-oriented programming: A maintenance study. In: International Conference on Software Maintenance (ICSM), pp. 223\u2013233 (2006)","DOI":"10.1109\/ICSM.2006.48"},{"key":"5_CR25","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"2","DOI":"10.1007\/978-3-540-45070-2_2","volume-title":"ECOOP 2003 - Object-Oriented Programming","author":"H. Masuhara","year":"2003","unstructured":"Masuhara, H., Kiczales, G.: Modeling Crosscutting in Aspect-Oriented Mechanisms. In: Cardelli, L. (ed.) ECOOP 2003. LNCS, vol.\u00a02743, pp. 2\u201328. Springer, Heidelberg (2003)"},{"key":"5_CR26","doi-asserted-by":"crossref","unstructured":"Ongkingco, N., Avgustinov, P., Tibble, J., Hendren, L., de Moor, O., Sittampalam, G.: Adding Open Modules to AspectJ. In: AOSD 2006, pp. 39\u201350 (2006)","DOI":"10.1145\/1119655.1119664"},{"issue":"12","key":"5_CR27","doi-asserted-by":"publisher","first-page":"1053","DOI":"10.1145\/361598.361623","volume":"15","author":"D.L. Parnas","year":"1972","unstructured":"Parnas, D.L.: On the criteria to be used in decomposing systems into modules. Communications of the ACM\u00a015(12), 1053\u20131058 (1972)","journal-title":"Communications of the ACM"},{"key":"5_CR28","doi-asserted-by":"crossref","unstructured":"Popovici, A., Alonso, G., Gross, T.: Just-in-time aspects: efficient dynamic weaving for Java. In: AOSD 2003, pp. 100\u2013109 (2003)","DOI":"10.1145\/643603.643614"},{"key":"5_CR29","doi-asserted-by":"crossref","unstructured":"Popovici, A., Gross, T., Alonso, G.: Dynamic weaving for aspect-oriented programming. In: AOSD 2002, pp. 141\u2013147 (2002)","DOI":"10.1145\/508397.508404"},{"key":"5_CR30","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"155","DOI":"10.1007\/978-3-540-70592-5_8","volume-title":"ECOOP 2008 \u2013 Object-Oriented Programming","author":"H. Rajan","year":"2008","unstructured":"Rajan, H., Leavens, G.T.: Ptolemy: A Language with Quantified, Typed Events. In: Vitek, J. (ed.) ECOOP 2008. LNCS, vol.\u00a05142, pp. 155\u2013179. Springer, Heidelberg (2008)"},{"key":"5_CR31","doi-asserted-by":"crossref","unstructured":"Rajan, H., Sullivan, K.J.: Eos: instance-level aspects for integrated system design. In: ESEC\/FSE, pp. 297\u2013306 (2003)","DOI":"10.1145\/949952.940111"},{"key":"5_CR32","doi-asserted-by":"crossref","unstructured":"Rajan, H., Sullivan, K.J.: Classpects: unifying aspect- and object-oriented language design. In: ICSE, pp. 59\u201368 (2005)","DOI":"10.1145\/1062455.1062483"},{"key":"5_CR33","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"155","DOI":"10.1007\/11880240_12","volume-title":"Model Driven Engineering Languages and Systems","author":"A. Rashid","year":"2006","unstructured":"Rashid, A., Moreira, A.: Domain Models Are NOT Aspect Free. In: Wang, J., Whittle, J., Harel, D., Reggio, G. (eds.) MoDELS 2006. LNCS, vol.\u00a04199, pp. 155\u2013169. Springer, Heidelberg (2006)"},{"key":"5_CR34","doi-asserted-by":"crossref","unstructured":"Soares, S., Laureano, E., Borba, P.: Implementing distribution and persistence aspects with AspectJ. In: 17th Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA), pp. 174\u2013190 (2002)","DOI":"10.1145\/582435.582437"},{"key":"5_CR35","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"171","DOI":"10.1007\/11557432_13","volume-title":"Model Driven Engineering Languages and Systems","author":"F. Steimann","year":"2005","unstructured":"Steimann, F.: Domain Models Are Aspect Free. In: Briand, L.C., Williams, C. (eds.) MoDELS 2005. LNCS, vol.\u00a03713, pp. 171\u2013185. Springer, Heidelberg (2005)"},{"key":"5_CR36","doi-asserted-by":"crossref","unstructured":"Steimann, F., Pawlitzki, T., Apel, S., Kastner, C.: Types and modularity for implicit invocation with implicit announcement. ACM TOSEM 20(1) (2010)","DOI":"10.1145\/1767751.1767752"},{"key":"5_CR37","unstructured":"St\u00f6rzer, M., Koppen, C.: PCDiff: Attacking the fragile pointcut problem. In: European Interactive Workshop on Aspects in Software (September 2004)"},{"key":"5_CR38","doi-asserted-by":"crossref","unstructured":"Sullivan, K.J., Griswold, W.G., Cai, Y., Hallen, B.: The structure and value of modularity in software design. In: ESEC\/FSE (2001)","DOI":"10.1145\/503222.503224"},{"key":"5_CR39","doi-asserted-by":"crossref","unstructured":"Sullivan, K.J., Griswold, W.G., Rajan, H., Song, Y., Cai, Y., Shonle, M., Tewari, N.: Modular aspect-oriented design with XPIs. ACM TOSEM\u00a020(2) (2010)","DOI":"10.1145\/1824760.1824762"},{"key":"5_CR40","unstructured":"Young, T.: Using AspectJ to Build a Software Product Line for Mobile Devices. Master\u2019s thesis, UBC (2005)"}],"container-title":["Lecture Notes in Computer Science","Transactions on Aspect-Oriented Software Development X"],"original-title":[],"link":[{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-642-36964-3_5","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2019,5,11]],"date-time":"2019-05-11T09:23:53Z","timestamp":1557566633000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/978-3-642-36964-3_5"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2013]]},"ISBN":["9783642369636","9783642369643"],"references-count":40,"URL":"https:\/\/doi.org\/10.1007\/978-3-642-36964-3_5","relation":{},"ISSN":["0302-9743","1611-3349"],"issn-type":[{"type":"print","value":"0302-9743"},{"type":"electronic","value":"1611-3349"}],"subject":[],"published":{"date-parts":[[2013]]}}}