{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2024,9,4]],"date-time":"2024-09-04T12:42:19Z","timestamp":1725453739376},"publisher-location":"Berlin, Heidelberg","reference-count":25,"publisher":"Springer Berlin Heidelberg","isbn-type":[{"type":"print","value":"9783642305634"},{"type":"electronic","value":"9783642305641"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2012]]},"DOI":"10.1007\/978-3-642-30564-1_9","type":"book-chapter","created":{"date-parts":[[2012,5,25]],"date-time":"2012-05-25T11:29:12Z","timestamp":1337945352000},"page":"132-147","source":"Crossref","is-referenced-by-count":1,"title":["On the Automated Modularisation of Java Programs Using Service Locators"],"prefix":"10.1007","author":[{"given":"Syed Muhammad Ali","family":"Shah","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Jens","family":"Dietrich","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Catherine","family":"McCartin","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"297","reference":[{"key":"9_CR1","unstructured":"CrocoPat, http:\/\/code.google.com\/p\/crocopat\/"},{"key":"9_CR2","unstructured":"JDepend Dependency Analyser, http:\/\/clarkware.com\/software\/JDepend.html"},{"key":"9_CR3","unstructured":"Project jigsaw, http:\/\/openjdk.java.net\/projects\/jigsaw\/"},{"key":"9_CR4","unstructured":"Restructure101. Headway software technologies, http:\/\/www.headwaysoftware.com\/products\/?code=Restructure101"},{"key":"9_CR5","unstructured":"Bad smell identification for software refactoring (2007), http:\/\/www.jdeodorant.org"},{"key":"9_CR6","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"117","DOI":"10.1007\/978-3-540-71289-3_10","volume-title":"Fundamental Approaches to Software Engineering","author":"M. Bach","year":"2007","unstructured":"Bach, M., Forster, F., Steimann, F.: Declared Type Generalization Checker: An Eclipse Plug-In for Systematic Programming with More General Types. In: Dwyer, M.B., Lopes, A. (eds.) FASE 2007. LNCS, vol.\u00a04422, pp. 117\u2013120. Springer, Heidelberg (2007)"},{"key":"9_CR7","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"1","DOI":"10.1007\/978-3-540-24769-2_1","volume-title":"Software Architecture","author":"W. Bischofberger","year":"2004","unstructured":"Bischofberger, W., K\u00fchl, J., L\u00f6ffler, S.: Sotograph - A Pragmatic Approach to Source Code Architecture Conformance Checking. In: Oquendo, F., Warboys, B.C., Morrison, R. (eds.) EWSA 2004. LNCS, vol.\u00a03047, pp. 1\u20139. Springer, Heidelberg (2004)"},{"key":"9_CR8","series-title":"CRPIT","first-page":"31","volume-title":"Australasian Database Conference, ADC 2012","author":"J. Dietrich","year":"2012","unstructured":"Dietrich, J., McCartin, C.: Scalable motif detection and aggregation. In: Australasian Database Conference, ADC 2012. CRPIT, vol.\u00a0124, pp. 31\u201340. ACS, Melbourne (2012), http:\/\/crpit.com\/confpapers\/CRPITV124Dietrich.pdf"},{"key":"9_CR9","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"135","DOI":"10.1007\/978-3-642-13821-8_11","volume-title":"Research into Practice \u2013 Reality and Gaps","author":"J. Dietrich","year":"2010","unstructured":"Dietrich, J., McCartin, C., Tempero, E., Shah, S.M.A.: Barriers to Modularity - An Empirical Study to Assess the Potential for Modularisation of Java Programs. In: Heineman, G.T., Kofron, J., Plasil, F. (eds.) QoSA 2010. LNCS, vol.\u00a06093, pp. 135\u2013150. Springer, Heidelberg (2010)"},{"key":"9_CR10","unstructured":"Dietrich, J., McCartin, C., Tempero, E., Shah, S.M.A.: On the existence of high-impact refactoring opportunities in programs. In: Australasian Computer Science Conference, ACSC, Australia (2012), http:\/\/crpit.com\/confpapers\/CRPITV122Dietrich.pdf"},{"key":"9_CR11","volume-title":"Patterns of Enterprise Application Architecture","author":"M. Fowler","year":"2002","unstructured":"Fowler, M.: Patterns of Enterprise Application Architecture. Addison-Wesley Longman Publishing Co., Inc., Boston (2002)"},{"key":"9_CR12","unstructured":"Fowler, M.: Inversion of control containers and the dependency injection pattern (2004), http:\/\/martinfowler.com\/articles\/injection.html#InversionOfControl"},{"key":"9_CR13","doi-asserted-by":"crossref","unstructured":"GoBner, J., Mayer, P., Steimann, F.: Interface utilization in the java development kit. In: Proceedings of the 2004 ACM Symposium on Applied Computing, SAC 2004, pp. 1310\u20131315. ACM, New York (2004)","DOI":"10.1145\/967900.968165"},{"key":"9_CR14","unstructured":"Martin, R.: Object oriented design quality metrics: An analysis of dependencies. Report on object analysis and design (1994), http:\/\/www.objectmentor.com\/resources\/articles\/oodmetrc.pdf"},{"key":"9_CR15","doi-asserted-by":"publisher","first-page":"382","DOI":"10.1145\/949344.949446","volume-title":"Companion of the 18th Annual ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, OOPSLA 2003","author":"P. Mayer","year":"2003","unstructured":"Mayer, P.: Analyzing the use of interfaces in large OO projects. In: Companion of the 18th Annual ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, OOPSLA 2003, pp. 382\u2013383. ACM, New York (2003)"},{"key":"9_CR16","unstructured":"Mayer, P., Meissner, A., Steimann, F.: A visual interface for type-related refactorings. In: WRT 2007, pp. 5\u20136 (2007)"},{"key":"9_CR17","first-page":"35","volume-title":"Proceedings of the 29th Australasian Computer Science Conference, ACSC 2006","author":"H. Melton","year":"2006","unstructured":"Melton, H., Tempero, E.: Identifying refactoring opportunities by identifying dependency cycles. In: Proceedings of the 29th Australasian Computer Science Conference, ACSC 2006, vol.\u00a048, pp. 35\u201341. Australian Computer Society, Inc., Darlinghurst (2006)"},{"key":"9_CR18","doi-asserted-by":"publisher","first-page":"66","DOI":"10.1145\/170791.170804","volume-title":"Proceedings of the 1993 ACM Conference on Computer Science, CSC 1993","author":"W.F. Opdyke","year":"1993","unstructured":"Opdyke, W.F., Johnson, R.E.: Creating abstract superclasses by refactoring. In: Proceedings of the 1993 ACM Conference on Computer Science, CSC 1993, pp. 66\u201373. ACM, New York (1993)"},{"key":"9_CR19","volume-title":"Object-Oriented Design Heuristics","author":"A.J. Riel","year":"1996","unstructured":"Riel, A.J.: Object-Oriented Design Heuristics. Addison-Wesley, Boston (1996)"},{"key":"9_CR20","unstructured":"Sakkinen, M.: Disciplined Inheritance. In: ECOOP 1989: Proceedings of the 1989 European Conference on Object-Oriented Programming, pp. 39\u201356 (1989)"},{"key":"9_CR21","doi-asserted-by":"crossref","unstructured":"Steimann, F., Mayer, P., MeiBner, A.: Decoupling classes with inferred interfaces. In: Proceedings of the 2006 ACM Symposium on Applied Computing, SAC 2006, pp. 1404\u20131408. ACM, New York (2006)","DOI":"10.1145\/1141277.1141604"},{"key":"9_CR22","first-page":"13","volume-title":"Proceedings of the 2nd International Conference on Principles and Practice of Programming in Java, PPPJ 2003","author":"F. Steimann","year":"2003","unstructured":"Steimann, F., Siberski, W., Kuhne, T.: Towards the systematic use of interfaces in java programming. In: Proceedings of the 2nd International Conference on Principles and Practice of Programming in Java, PPPJ 2003, pp. 13\u201317. Computer Science Press, Inc., New York (2003)"},{"key":"9_CR23","first-page":"205","volume-title":"Structured design","author":"W. Stevens","year":"1979","unstructured":"Stevens, W., Myers, G., Constantine, L.: Structured design, pp. 205\u2013232. Yourdon Press, Upper Saddle River (1979)"},{"key":"9_CR24","doi-asserted-by":"publisher","first-page":"315","DOI":"10.1145\/1028976.1029003","volume-title":"Proceedings of the 19th Annual ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, OOPSLA 2004","author":"M. Streckenbach","year":"2004","unstructured":"Streckenbach, M., Snelting, G.: Refactoring class hierarchies with kaba. In: Proceedings of the 19th Annual ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, OOPSLA 2004, pp. 315\u2013330. ACM, New York (2004)"},{"key":"9_CR25","doi-asserted-by":"publisher","first-page":"13","DOI":"10.1145\/949305.949308","volume-title":"Proceedings of the 18th Annual ACM SIGPLAN Conference on Object-Oriented Programing, Systems, Languages, and Applications, OOPSLA 2003","author":"F. Tip","year":"2003","unstructured":"Tip, F., Kiezun, A., B\u00e4umer, D.: Refactoring for generalization using type constraints. In: Proceedings of the 18th Annual ACM SIGPLAN Conference on Object-Oriented Programing, Systems, Languages, and Applications, OOPSLA 2003, pp. 13\u201326. ACM, New York (2003)"}],"container-title":["Lecture Notes in Computer Science","Software Composition"],"original-title":[],"link":[{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-642-30564-1_9","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2019,6,29]],"date-time":"2019-06-29T00:10:21Z","timestamp":1561767021000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/978-3-642-30564-1_9"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2012]]},"ISBN":["9783642305634","9783642305641"],"references-count":25,"URL":"https:\/\/doi.org\/10.1007\/978-3-642-30564-1_9","relation":{},"ISSN":["0302-9743","1611-3349"],"issn-type":[{"type":"print","value":"0302-9743"},{"type":"electronic","value":"1611-3349"}],"subject":[],"published":{"date-parts":[[2012]]}}}