{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,10,24]],"date-time":"2026-10-24T18:13:08Z","timestamp":1792865588426,"version":"4.5.0"},"edition-number":"1","reference-count":28,"publisher":"Wiley","isbn-type":[{"value":"9780471383932","type":"print"},{"value":"9780470050118","type":"electronic"}],"license":[{"start":{"date-parts":[[2007,12,14]],"date-time":"2007-12-14T00:00:00Z","timestamp":1197590400000},"content-version":"tdm","delay-in-days":0,"URL":"http:\/\/doi.wiley.com\/10.1002\/tdm_license_1.1"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":[],"abstract":"<jats:title>Abstract<\/jats:title><jats:p>Component\u2010based software engineering (CBSE) is becoming an accepted engineering discipline for promoting software reuse throughout the software engineering lifecycle. Beyond software reuse, CBSE also offers a promising way to manage the complexity and evolution of the development process through a unique means of encapsulation and separation of concerns at different abstraction levels.<\/jats:p><jats:p>This article begins with a description of the key characteristics of a software component and then provides a survey of the major component models based on those key characteristics. The latter part of this article discusses the existing engineering issues in CBSE and examines the major research projects that are addressing the challenges. Finally, this article explores recent software engineering technology toward automation in CBSE, which promises to offer yet another channel for boosting the productivity of software development.<\/jats:p>","DOI":"10.1002\/9780470050118.ecse066","type":"other","created":{"date-parts":[[2007,12,6]],"date-time":"2007-12-06T17:49:24Z","timestamp":1196963364000},"source":"Crossref","is-referenced-by-count":0,"title":["Component\u2010Based Software Engineering"],"prefix":"10.1002","author":[{"given":"Fei","family":"Cao","sequence":"first","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Jeff","family":"Gray","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Barrett R.","family":"Bryant","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]}],"member":"311","published-online":{"date-parts":[[2007,12,14]]},"reference":[{"key":"e_1_2_7_2_1_1","first-page":"138","article-title":"Mass\u2010produced software components","author":"McIlroy D.","year":"1969","journal-title":"Software Engineering Concepts and Techniques, 1968 NATO Conference on Software Engineering"},{"key":"e_1_2_7_2_2_1","doi-asserted-by":"crossref","unstructured":"P.Devanbu S.Karstu W.Melo andW.Thomas Analytical and empirical evaluation of software reuse metrics Proc. of 18th International Conference on Software Engineering (ICSE) IEEE Computer Society 1996:189\u2013199.","DOI":"10.1109\/ICSE.1996.493415"},{"key":"e_1_2_7_2_3_1","volume-title":"Component Based Software Engineering: Putting the Pieces Together","author":"Heineman G. T.","year":"2001"},{"key":"e_1_2_7_2_4_1","volume-title":"Large\u2010Scale Component\u2010Based Development","author":"Brown A. W.","year":"2000"},{"key":"e_1_2_7_2_5_1","volume-title":"Component Software","author":"Szyperski C.","year":"2002"},{"key":"e_1_2_7_2_6_1","doi-asserted-by":"publisher","DOI":"10.1002\/cpe.707"},{"key":"e_1_2_7_2_7_1","volume-title":"UML Components","author":"Cheesmana J.","year":"2001"},{"key":"e_1_2_7_2_8_1","volume-title":"Foundations of Component\u2010Based Systems","author":"Leavens G. T.","year":"2000"},{"key":"e_1_2_7_2_9_1","volume-title":"Essential .NET Volume 1: The Common Language Runtime","author":"Box D.","year":"2003"},{"key":"e_1_2_7_2_10_1","volume-title":"Generative Programming: Methods, Tools, and Applications","author":"Czarnecki K.","year":"2000"},{"key":"e_1_2_7_2_11_1","doi-asserted-by":"crossref","DOI":"10.21236\/ADA235785","volume-title":"Feature\u2010oriented domain analysis (FODA) feasibility study, Technical Report, CMU\/SEI\u201090\u2010TR\u201021, Software Engineering Institute, Carnegie Mellon University","author":"Kang K. C.","year":"1990"},{"key":"e_1_2_7_2_12_1","unstructured":"F.Cao Z.Huang B. R.Bryant C. C.Burt R. R.Raje A. M.Olson andM.Auguston Automating feature\u2010oriented domain analysis Proc. of International Conference on Software Engineering Research and Practice (SERP) CSREA Press 2003. pp.944\u2013949"},{"key":"e_1_2_7_2_13_1","volume-title":"Technical Report, CMU\/SEI\u201096\u2010TR\u2010010, Software Engineering Institute, Carnegie Mellon University","author":"Whithey J.","year":"1996"},{"key":"e_1_2_7_2_14_1","doi-asserted-by":"crossref","unstructured":"G.Kiczales J.Lamping A.Mendhekar C.Maeda C. V.Lopes J.\u2010M.Loingtier andJ.Irwin Aspect\u2010oriented programming Proc. European Conference on Object\u2010Oriented Programming (ECOOP) 220\u2013242 1997.","DOI":"10.1007\/BFb0053381"},{"key":"e_1_2_7_2_15_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.entcs.2004.02.070"},{"key":"e_1_2_7_2_16_1","doi-asserted-by":"publisher","DOI":"10.1145\/383845.383864"},{"key":"e_1_2_7_2_17_1","doi-asserted-by":"publisher","DOI":"10.1142\/S0218194000000341"},{"key":"e_1_2_7_2_18_1","volume-title":"Technical Report #93\u201003\u201005, Department of Computer Science and Engineering, University of Washington","author":"Chambers C.","year":"1993"},{"key":"e_1_2_7_2_19_1","doi-asserted-by":"publisher","DOI":"10.1145\/242224.242473"},{"key":"e_1_2_7_2_20_1","volume-title":"Design Patterns, Elements of Reusable Object\u2010Oriented Software","author":"Gamma E.","year":"1995"},{"key":"e_1_2_7_2_21_1","doi-asserted-by":"publisher","DOI":"10.1016\/S0164-1212(02)00038-9"},{"key":"e_1_2_7_2_22_1","unstructured":"S.\u2010H.Liu F.Cao B. R.Bryant J. G.Gray R. R.Raje A.Olson andM.Auguston Quality of service\u2010driven requirements analyses for component composition: a two\u2010level grammar approach Proc. of the 17th International Conference on Software Engineering and Knowledge Engineering (SEKE) 731\u2013734 2005."},{"key":"e_1_2_7_2_23_1","volume-title":"Building Web Services with Java","author":"Graham S.","year":"2002"},{"key":"e_1_2_7_2_24_1","volume-title":"Software Factories: Assembling Applications with Patterns, Models, Frameworks, and Tools","author":"Greenfield J.","year":"2004"},{"key":"e_1_2_7_2_25_1","volume-title":"Model Driven Architecture: Applying MDA to Enterprise Computing","author":"Frankel D.","year":"2003"},{"key":"e_1_2_7_2_26_1","volume-title":"Service\u2010Oriented Software System Engineering: Challenges and Practices","author":"Olson A. M.","year":"2004"},{"key":"e_1_2_7_2_27_1","doi-asserted-by":"crossref","unstructured":"R. R.Raje UMM: Unified Meta\u2010object Model for open distributed systems Proc. IEEE International Conference of Algorithms and Architecture for Parallel Processing IEEE Computer Society 454\u2013465 2000.","DOI":"10.1142\/9789812792037_0041"},{"issue":"10","key":"e_1_2_7_2_28_1","first-page":"1645","article-title":"A non\u2010invasive approach to assertive and autonomous dynamic component composition in service\u2010oriented paradigm","volume":"11","author":"Cao F.","year":"2005","journal-title":"J. Univer. Comp. Sci."}],"container-title":["Wiley Encyclopedia of Computer Science and Engineering"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/onlinelibrary.wiley.com\/doi\/pdf\/10.1002\/9780470050118.ecse066","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,1,23]],"date-time":"2025-01-23T09:18:42Z","timestamp":1737623922000},"score":1,"resource":{"primary":{"URL":"https:\/\/onlinelibrary.wiley.com\/doi\/10.1002\/9780470050118.ecse066"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2007,12,14]]},"ISBN":["9780471383932","9780470050118"],"references-count":28,"alternative-id":["10.1002\/9780470050118.ecse066","10.1002\/9780470050118"],"URL":"https:\/\/doi.org\/10.1002\/9780470050118.ecse066","archive":["Portico"],"relation":{},"subject":[],"published":{"date-parts":[[2007,12,14]]}}}