{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,10,15]],"date-time":"2025-10-15T16:53:26Z","timestamp":1760547206192},"reference-count":41,"publisher":"Wiley","issue":"8","license":[{"start":{"date-parts":[[2002,6,21]],"date-time":"2002-06-21T00:00:00Z","timestamp":1024617600000},"content-version":"vor","delay-in-days":0,"URL":"http:\/\/onlinelibrary.wiley.com\/termsAndConditions#vor"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":["Softw Pract Exp"],"published-print":{"date-parts":[[2002,7,10]]},"abstract":"<jats:title>Abstract<\/jats:title><jats:p>Enterprise frameworks are a special class of application frameworks. They are distinguished from other application frameworks in terms of scale and focus. In terms of focus, application frameworks typically cover one particular aspect of an application, either a domain\u2010dependent aspect (e.g., billing in a web\u2010based customer\u2010to\u2010business ordering system), or a computational infrastructure aspect such as distribution, man\u2010machine interface, or persistence, etc. Generally, an application framework alone delivers no useful end\u2010user function. With infrastructure frameworks, we still have to plug in domain functionalities, while with domain frameworks, we need to set\u2010up the infrastructure. In contrast, enterprise frameworks embody a reference architecture for an entire application, covering both the infrastructure aspects of the application, and much of the domain\u2010specific functionality. Instantiating an enterprise framework is nothing short of application engineering, where the architecture and many of the components are reusable. While creativity and continual improvement may be the major ingredients for building a good application framework, anything related to enterprise frameworks, be it building, documenting, or instantiating them, is complex and requires careful design and planning. In this paper, we identify the issues involved in building, using, and maintaining enterprise frameworks, both from research and practical perspective. Copyright \u00a9 2002 John Wiley &amp; Sons, Ltd.<\/jats:p>","DOI":"10.1002\/spe.460","type":"journal-article","created":{"date-parts":[[2002,10,6]],"date-time":"2002-10-06T11:32:01Z","timestamp":1033903921000},"page":"801-831","source":"Crossref","is-referenced-by-count":10,"title":["Enterprise frameworks: issues and research directions"],"prefix":"10.1002","volume":"32","author":[{"given":"Hafedh","family":"Mili","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Mohamed","family":"Fayad","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Davide","family":"Brugali","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"David","family":"Hamu","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Dov","family":"Dori","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"311","published-online":{"date-parts":[[2002,6,21]]},"reference":[{"key":"e_1_2_1_2_2","doi-asserted-by":"publisher","DOI":"10.1145\/351936.351951"},{"key":"e_1_2_1_3_2","first-page":"523","volume-title":"Building Application Frameworks\u2014Object\u2010Oriented Foundations of Framework Design","author":"Mili H","year":"1999"},{"key":"e_1_2_1_4_2","volume-title":"Software Architecture in Practice","author":"Bass L","year":"1998"},{"key":"e_1_2_1_5_2","volume-title":"Software Architecture: Perspectives on an Emerging Discipline","author":"Shaw M","year":"1996"},{"key":"e_1_2_1_6_2","doi-asserted-by":"publisher","DOI":"10.1093\/logcom\/5.2.227"},{"key":"e_1_2_1_7_2","doi-asserted-by":"publisher","DOI":"10.1080\/095119296131454"},{"key":"e_1_2_1_8_2","doi-asserted-by":"publisher","DOI":"10.4018\/jdm.2001010101"},{"key":"e_1_2_1_9_2","volume-title":"Object\u2010Process Methodology\u2014A Holistic Systems Paradigm","author":"Dori D","year":"2001"},{"key":"e_1_2_1_10_2","volume-title":"Component Software: Beyond Object\u2010Oriented Programming","author":"Szyperski C","year":"1999"},{"key":"e_1_2_1_11_2","doi-asserted-by":"publisher","DOI":"10.1145\/383694.383713"},{"key":"e_1_2_1_12_2","doi-asserted-by":"publisher","DOI":"10.1145\/502269.502308"},{"key":"e_1_2_1_13_2","doi-asserted-by":"publisher","DOI":"10.1145\/352183.352200"},{"key":"e_1_2_1_14_2","first-page":"39","article-title":"Enterprise component models in color","author":"Coad P","year":"1999","journal-title":"Software Development"},{"key":"e_1_2_1_15_2","volume-title":"Java Modeling in Color with UML: Enterprise Components and Process","author":"Coad P","year":"1999"},{"key":"e_1_2_1_16_2","volume-title":"Analysis Patterns: Reusable Object Models","author":"Fowler M","year":"1997"},{"key":"e_1_2_1_17_2","doi-asserted-by":"publisher","DOI":"10.1145\/1017510.1017511"},{"key":"e_1_2_1_18_2","unstructured":"Lefebvre\u00c9.How to improve MIS planning.PhD Thesis University of Grenoble 1996."},{"key":"e_1_2_1_19_2","volume-title":"Reuse\u2010Based Software Engineering: Techniques, Organizations, and Controls","author":"Mili H","year":"2001"},{"key":"e_1_2_1_20_2","doi-asserted-by":"crossref","unstructured":"Van HilstM NotkinD.Using role components to implement collaboration\u2010based designs.Proceedings of OOPSLA'96 San\u2010Jose CA 6\u201310 October 1996;359\u2013359.","DOI":"10.1145\/236338.236375"},{"key":"e_1_2_1_21_2","unstructured":"MiliH MiliA.Architectural frameworks.Frameworks Components and Architectures Fayad ME Garlan D Pree W (eds.). To appear."},{"key":"e_1_2_1_22_2","unstructured":"MiliH PachetF.Metamodeling for multidimensional reuse.Proceedings of the Maghrebian Conference on Software Engineering and AI (MCSEAI'2000) F\u00e8s Morocco 1\u20133 November;29\u201339."},{"key":"e_1_2_1_23_2","doi-asserted-by":"crossref","unstructured":"HarrisonW OssherH.Subject\u2010oriented programming: A critique of pure objects.Proceedings of OOPSLA'93 Washington DC October1993;411\u2013428.","DOI":"10.1145\/167962.165932"},{"key":"e_1_2_1_24_2","doi-asserted-by":"crossref","unstructured":"OssherH KaplanM HarrisonW KatzA KruskalV.Subject\u2010oriented composition rules.Proceedings of OOPSLA'95 Austin TX 15\u201319 October 1995;235\u2013250.","DOI":"10.1145\/217839.217864"},{"key":"e_1_2_1_25_2","unstructured":"TarrP OssherH HarrisonW SuttonSJr.N degrees of separation: Multi\u2010dimensional separation of concerns.Proceedings of the 21st International Conference on Software Engineering (ICSE'99) 1999."},{"key":"e_1_2_1_26_2","series-title":"Lecture Notes in Computer Science","volume-title":"Proceedings of the European Conference on Object\u2010Oriented Programming (ECOOP)","author":"Kiczales G","year":"1997"},{"key":"e_1_2_1_27_2","unstructured":"MiliH DarghamJ MiliA CherkaouiO GodinR.View programming for the decentralized development of OO programs.Proceedings of TOOLS USA'99 Santa\u2010Barbara CA 1\u20135 August 1999."},{"key":"e_1_2_1_28_2","unstructured":"MiliH McheickH DarghamJ SadouS.CorbaViews: Distributing objects with views.Proceedings of AICCSA2001 Beirut Lebanon 26\u201328 June2001;35\u201343."},{"key":"e_1_2_1_29_2","doi-asserted-by":"publisher","DOI":"10.1109\/52.469757"},{"key":"e_1_2_1_30_2","first-page":"169","volume-title":"Building Application Frameworks\u2014Object\u2010Oriented Foundations of Framework Design","author":"Aksit M","year":"1999"},{"key":"e_1_2_1_31_2","first-page":"353","volume-title":"Building Application Frameworks\u2014Object\u2010Oriented Foundations of Framework Design","author":"Schmid HA","year":"2001"},{"key":"e_1_2_1_32_2","unstructured":"KangK CohenS HessJ NovakW PetersonA.Feature\u2010oriented domain analysis (FODA) feasibility study.Technical Report CMU\/SEI\u201090\u2010TR\u2010021.www.sei.cmu.edu\/publications\/documents\/90.reports\/90.tr.021.html."},{"key":"e_1_2_1_33_2","volume-title":"Software Reuse: Architecture, Process and Organization for Business Success","author":"Jacobson I","year":"1998"},{"key":"e_1_2_1_34_2","volume-title":"Implementing Application Frameworks: Object\u2010Oriented Frameworks at Work","author":"Fayad M","year":"1999"},{"key":"e_1_2_1_35_2","volume-title":"Building Application Frameworks: Object\u2010Oriented Foundations of Framework Design","author":"Fayad M","year":"1999"},{"key":"e_1_2_1_36_2","volume-title":"Domain Specific Application Frameworks: Experience by Industry","author":"Fayad M","year":"1999"},{"key":"e_1_2_1_37_2","unstructured":"Pree.1999."},{"key":"e_1_2_1_38_2","volume-title":"Software Engineering Economics","author":"Boehm B","year":"1981"},{"key":"e_1_2_1_39_2","doi-asserted-by":"publisher","DOI":"10.1145\/280324.280340"},{"key":"e_1_2_1_40_2","doi-asserted-by":"publisher","DOI":"10.1145\/262793.262806"},{"key":"e_1_2_1_41_2","volume-title":"Domain Specific Application Frameworks: Experience by Industry","author":"Capobianchi R","year":"1999"},{"key":"e_1_2_1_42_2","doi-asserted-by":"publisher","DOI":"10.1109\/6.476732"}],"container-title":["Software: Practice and Experience"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/api.wiley.com\/onlinelibrary\/tdm\/v1\/articles\/10.1002%2Fspe.460","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/onlinelibrary.wiley.com\/doi\/pdf\/10.1002\/spe.460","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2023,9,12]],"date-time":"2023-09-12T22:23:07Z","timestamp":1694557387000},"score":1,"resource":{"primary":{"URL":"https:\/\/onlinelibrary.wiley.com\/doi\/10.1002\/spe.460"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2002,6,21]]},"references-count":41,"journal-issue":{"issue":"8","published-print":{"date-parts":[[2002,7,10]]}},"alternative-id":["10.1002\/spe.460"],"URL":"https:\/\/doi.org\/10.1002\/spe.460","archive":["Portico"],"relation":{},"ISSN":["0038-0644","1097-024X"],"issn-type":[{"value":"0038-0644","type":"print"},{"value":"1097-024X","type":"electronic"}],"subject":[],"published":{"date-parts":[[2002,6,21]]}}}