{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,10,1]],"date-time":"2025-10-01T16:17:34Z","timestamp":1759335454377},"reference-count":32,"publisher":"Springer Science and Business Media LLC","issue":"2","license":[{"start":{"date-parts":[[2006,5,6]],"date-time":"2006-05-06T00:00:00Z","timestamp":1146873600000},"content-version":"tdm","delay-in-days":0,"URL":"http:\/\/www.springer.com\/tdm"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":["Innovations Syst Softw Eng"],"published-print":{"date-parts":[[2006,7]]},"DOI":"10.1007\/s11334-006-0001-0","type":"journal-article","created":{"date-parts":[[2006,5,5]],"date-time":"2006-05-05T14:24:48Z","timestamp":1146839088000},"page":"65-79","source":"Crossref","is-referenced-by-count":15,"title":["Pattern Componentization: The Factory Example"],"prefix":"10.1007","volume":"2","author":[{"given":"Karine","family":"Arnout","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Bertrand","family":"Meyer","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"297","published-online":{"date-parts":[[2006,5,6]]},"reference":[{"key":"1_CR1","volume-title":"Modern C++ design, generic programming and design patterns applied","author":"A Alexandrescu","year":"2001","unstructured":"Alexandrescu A (2001) Modern C++ design, generic programming and design patterns applied. Addison-Wesley, Reading"},{"key":"1_CR2","first-page":"285","volume-title":"Proceedings of FMCO 2002 (Ist international symposium on formal methods for components and objects, Leiden, The Netherlands, November 2002)","author":"K Arnout","year":"2003","unstructured":"Arnout K, Meyer B (2003) Finding Implicit Contracts in .NET Components. In: de Boer F, Bonsangue M, Graf S, de Roever WP (eds) Proceedings of FMCO 2002 (Ist international symposium on formal methods for components and objects, Leiden, The Netherlands, November 2002), LNCS vol 2852. Springer, Berlin Heidelberg New York, pp 285\u2013318"},{"issue":"11","key":"1_CR3","doi-asserted-by":"crossref","first-page":"48","DOI":"10.1109\/MC.2003.1244535","volume":"36","author":"K Arnout","year":"2003","unstructured":"Arnout K, Meyer B (2003) Uncoverring hidden contracts: the .NET example. IEEE Comput 36(11):48\u201355","journal-title":"IEEE Comput"},{"key":"1_CR4","doi-asserted-by":"crossref","unstructured":"Arnout K, Bezault E (2004) How to get a Singleton in Eiffel? In: Proceedings of TOOLS USA 2003 (44th international conference on the technology of object-oriented languages and systems), Santa Barbara, CA, September 2003, in J Object Technol 3(4), 75\u201395. Available (March 2006) at http:\/\/www.jot.fm\/issues\/issue_2004_04\/article5","DOI":"10.5381\/jot.2004.3.4.a5"},{"key":"1_CR5","unstructured":"Arnout K (2004) From patterns to components, PhD thesis, ETH Zurich. Available (2006) at http:\/\/se.ethz.ch\/ people\/arnout\/patterns\/"},{"key":"1_CR6","doi-asserted-by":"crossref","unstructured":"Arslan V, Nienaltowski P, Arnout K (2003) An object- oriented library for event-driven design. In: B\u00f6sz\u00f6rmenyi L, Schojer P (eds) Proceedings of JMLC (joint modular languages conference), Klagenfurt, Austria, August 2003. LNCS 2789. Springer, Berlin Heidelberg New York, pp 174\u2013183","DOI":"10.1007\/978-3-540-45213-3_22"},{"key":"1_CR7","volume-title":"Testing object-oriented systems, models, patterns and tools","author":"RV Binder","year":"1999","unstructured":"Binder RV (1999) Testing object-oriented systems, models, patterns and tools. Addison-Wesley, Reading"},{"issue":"2","key":"1_CR8","first-page":"18","volume":"11","author":"J Bosch","year":"1998","unstructured":"Bosch J (1998) Design patterns as language constructs. J Object Oriented Programm 11(2): 18\u201332","journal-title":"J Object Oriented Programm"},{"issue":"2","key":"1_CR9","doi-asserted-by":"crossref","first-page":"151","DOI":"10.1147\/sj.352.0151","volume":"35","author":"F Budinski","year":"1996","unstructured":"Budinski F, Finnie M, Yu P, Vlissides J (1996) Automatic code generation from design patterns. IBM Syst J 35(2):151\u2013171 Available (March 2006) at http:\/\/www.research.ibm.com\/designpatterns\/pubs\/codegen.pdf","journal-title":"IBM Syst J"},{"key":"1_CR10","volume-title":"Pattern-oriented software architecture: A system of patterns, Vol 1","author":"F Bushmann","year":"1996","unstructured":"Bushmann F, Meunier R, Rohnert H, Sommerlad P, Stal M (1996) Pattern-oriented software architecture: A system of patterns, Vol 1. Wiley, New York"},{"key":"1_CR11","doi-asserted-by":"crossref","unstructured":"Chambers C, Harrison B, Vlissides J (2000) A debate on language and tool support for design patterns. In Proceedings of POPL 2000 (27th ACM SIGPLAN-SIGACT symposium on principles of programming languages), Boston, ACM Press, pp 277\u2013289","DOI":"10.1145\/325694.325731"},{"issue":"6","key":"1_CR12","first-page":"1999","volume":"12","author":"P Dubois","year":"1999","unstructured":"Dubois P, Howard M, Meyer B, Schweitzer M, Stapf E (1999) From calls to agents. JOOP (J Object Oriented Programm) 12(6): 1999 Available (March 2006) at http:\/\/www.inf.ethz.ch\/~meyer\/publications\/joop\/agent.pdf","journal-title":"JOOP (J Object Oriented Programm)"},{"key":"1_CR13","unstructured":"Eclipse (2006) Aspectj project. Available (March 2006) at http:\/\/www.eclipse.org\/aspectj"},{"key":"1_CR14","unstructured":"ECMA International (2005) ECMA Standard 367: Eiffel: analysis, design and programming language, approved 21 June 2005. (Expected to become ISO standard in 2006)"},{"key":"1_CR15","unstructured":"ETH Zurich (2006) Chair of Software Engineering: AutoTest project pages and articles, available (March 2006) from http:\/\/se.ethz.ch\/people\/leitner\/auto_test\/"},{"key":"1_CR16","unstructured":"ETH Zurich (2006) Chair of software engineering: pattern library and pattern wizard; available (March 2006) from the download page. http:\/\/se.ethz.ch\/download"},{"key":"1_CR17","volume-title":"Design Patterns","author":"E Gamma","year":"1995","unstructured":"Gamma E, Helm R, Johnson R, Vlissides J (1995) Design Patterns. Addison-Wesley, Reading"},{"key":"1_CR18","unstructured":"Hachani O, Bardou D (2003) On Aspect-oriented technology and object-oriented design patterns. In: Proceedings of the workshop on Analysis of Aspect-Oriented Software, held in conjunction with ECOOP 2003 (17th European conference for object-oriented programming), Darmstadt, Germany. Available (March 2006) at www.comp.lancs.ac.uk\/computing\/users\/chitchya\/AAOS2003\/Assets\/hachani_bardou.pdf"},{"key":"1_CR19","doi-asserted-by":"crossref","unstructured":"Hannemann J, Kiczales G (2002) Design pattern implementation in Java and AspectJ. In: OOPSLA 2002 (17th ACM conference on object-oriented programming, systems, languages and applications, Seattle 4\u20138 November 2002, ACM Press, pp 161\u2013173","DOI":"10.1145\/582419.582436"},{"key":"1_CR20","volume-title":"Design patterns and contracts","author":"J-M J\u00e9z\u00e9quel","year":"1999","unstructured":"J\u00e9z\u00e9quel J-M, Train M, Mingins C (1999) Design patterns and contracts. Addison-Wesley, Reading"},{"key":"1_CR21","doi-asserted-by":"crossref","unstructured":"Kennedy A, Syme D (2001) Design and implementation of generics for the .NET common language runtime. In: Proceedings of PLDI 2001 (ACM conference on programming language design and implementation), Snowbird, UT. Available (March 2006) at research.microsoft.com\/projects\/ clrgen\/generics.pdf","DOI":"10.1145\/378795.378797"},{"key":"1_CR22","doi-asserted-by":"crossref","unstructured":"Kiczales G, Lamping J, Mendhekar A, Maeda C, Videira Lopes C, Loingtier J-M, Irwin J (1997) Aspect-oriented programming. ECOOP 1997 (European conference for object-oriented programming), Jyv\u00e4skyl\u00e4, Finland, 9\u201313 June 1997. In: Aksit M, Matsuoka S (eds) LNCS 1241. Springer, Berlin Heidelberg New York, pp 220\u2013242. Available (March 2006, registration required) at http:\/\/www.link.springer.de\/link\/ service\/series\/0558\/papers\/1241\/12410220.pdf","DOI":"10.1007\/BFb0053381"},{"key":"1_CR23","unstructured":"Meyer B (1986) Applying \u2018Design by Contract\u2019. Technical Report TR-EI-12\/CO, Interactive Software Engineering Inc; also in IEEE Comput 25(10):40\u201351"},{"key":"1_CR24","volume-title":"Object-oriented software construction","author":"B Meyer","year":"1988","unstructured":"Meyer B (1988) Object-oriented software construction. Prentice Hall, Eaglewood cliffs"},{"key":"1_CR25","unstructured":"Meyer B (1991) Design by contract. In: Mandrioli D, Meyer B (eds) Advances in object-oriented software engineering, Prentice Hall, pp 1\u201350"},{"key":"1_CR26","volume-title":"Eiffel: the language","author":"B Meyer","year":"1991","unstructured":"Meyer B (1991) Eiffel: the language. Prentice Hall, Eaglewood cliffs (second printing, 1992)"},{"key":"1_CR27","volume-title":"Object-oriented software construction","author":"B Meyer","year":"1997","unstructured":"Meyer B (1997) Object-oriented software construction, 2nd edn. Prentice Hall, Eaglewood cliffs","edition":"2"},{"key":"1_CR28","doi-asserted-by":"crossref","unstructured":"Meyer B (2004) The power of abstraction, reuse and simplicity: an object-oriented library for event-driven design. In: Owe O, Krogdahl S, Lyche T (eds) From object-orientation to formal methods: essays in memory of Ole-Johan Dahl. Lecture notes in computer science, vol 2635. Springer Berlin Heidelberg New York, pp 236\u2013271. Available (March 2006) at http:\/\/se.ethz.ch\/~meyer\/publications\/lncs\/events.pdf","DOI":"10.1007\/978-3-540-39993-3_13"},{"key":"1_CR29","doi-asserted-by":"crossref","unstructured":"Meyer B, Arnout K (2006) Componentization: The example, to appear in Computer (IEEE). Draft available (March 2006) at http:\/\/se.ethz.ch\/~meyer\/publications\/ patterns\/visitor.pdf","DOI":"10.1109\/MC.2006.227"},{"key":"1_CR30","unstructured":"Meyer B (2006) Eiffel sthe language, 3rd edn. Draft available at http:\/\/se.ethz.ch\/~meyer\/ongoing\/etl\/ (in preparation)"},{"key":"1_CR31","unstructured":"Pinto M, Amor M, Fuentes L, Troya JM (2001) Run-time coordination of components: design patterns vs. component & aspect based platforms. In: ASoC workshop (Separation of Concerns), 18\u201322 June 2001, Budapest. Available (March 2006) at http:\/\/www.lcc.uma.es\/~lff\/papers\/ pinto-asoc-eccop01.pdf"},{"key":"1_CR32","volume-title":"Seamless object-oriented software architecture","author":"K Wald\u00e9n","year":"1995","unstructured":"Wald\u00e9n K, Nerson J-M (1995) Seamless object-oriented software architecture. Prentice Hall, Englewood cliffs"}],"container-title":["Innovations in Systems and Software Engineering"],"original-title":[],"language":"en","link":[{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/s11334-006-0001-0.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"text-mining"},{"URL":"http:\/\/link.springer.com\/article\/10.1007\/s11334-006-0001-0\/fulltext.html","content-type":"text\/html","content-version":"vor","intended-application":"text-mining"},{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/s11334-006-0001-0","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2019,6,1]],"date-time":"2019-06-01T13:47:43Z","timestamp":1559396863000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/s11334-006-0001-0"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2006,5,6]]},"references-count":32,"journal-issue":{"issue":"2","published-print":{"date-parts":[[2006,7]]}},"alternative-id":["1"],"URL":"https:\/\/doi.org\/10.1007\/s11334-006-0001-0","relation":{},"ISSN":["1614-5046","1614-5054"],"issn-type":[{"value":"1614-5046","type":"print"},{"value":"1614-5054","type":"electronic"}],"subject":[],"published":{"date-parts":[[2006,5,6]]}}}