{"title":"ABC:在整个生命周期中支持软件架构","authors":"Hong Mei","doi":"10.1109/SEFM.2004.3","DOIUrl":null,"url":null,"abstract":"How to compose prefabricated components is a key issue in component-based reuse. Research on software architecture (SA) and component based software development (CBSD) provides two hopeful solutions from different perspectives. SA provides a top-down approach to realizing component-based reuse, but doesn't pay enough attention to the refinement and implementation of the architectural descriptions, thus not fully able to automate the transformation or composition to form an executable application. CBSD provides a bottom-up way by using existing middleware infrastructures, but this technology is not able to guide systematically the CBSD process, especially the component composition at higher abstract levels. Naturally, a promising solution is to combine the above two approaches to realize component-based reuse. From the above discussion, we argue that SA should play a centric role in the whole software lifecycle, that is, SA description is used as the blueprint and middleware technology as the runtime scaffold for component composition, maintenance and evolution. To demonstrate the philosophy, we propose a software reuse methodology, which is called ABC (Architecture Based Component Composition) (Mei et al., 2001). ABC introduces software architectures into each phase of software life cycle, takes SA as the blueprint of system development, shortens the distance between high-level design and implementation by supporting tools and mapping mechanisms, realizes the automated system composition and deployment on runtime component operating platforms, and makes architecture available at runtime for software maintenance and evolution.","PeriodicalId":207271,"journal":{"name":"Proceedings of the Second International Conference on Software Engineering and Formal Methods, 2004. SEFM 2004.","volume":"16 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2004-09-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"11","resultStr":"{\"title\":\"ABC: supporting software architectures in the whole lifecycle\",\"authors\":\"Hong Mei\",\"doi\":\"10.1109/SEFM.2004.3\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"How to compose prefabricated components is a key issue in component-based reuse. Research on software architecture (SA) and component based software development (CBSD) provides two hopeful solutions from different perspectives. SA provides a top-down approach to realizing component-based reuse, but doesn't pay enough attention to the refinement and implementation of the architectural descriptions, thus not fully able to automate the transformation or composition to form an executable application. CBSD provides a bottom-up way by using existing middleware infrastructures, but this technology is not able to guide systematically the CBSD process, especially the component composition at higher abstract levels. Naturally, a promising solution is to combine the above two approaches to realize component-based reuse. From the above discussion, we argue that SA should play a centric role in the whole software lifecycle, that is, SA description is used as the blueprint and middleware technology as the runtime scaffold for component composition, maintenance and evolution. To demonstrate the philosophy, we propose a software reuse methodology, which is called ABC (Architecture Based Component Composition) (Mei et al., 2001). ABC introduces software architectures into each phase of software life cycle, takes SA as the blueprint of system development, shortens the distance between high-level design and implementation by supporting tools and mapping mechanisms, realizes the automated system composition and deployment on runtime component operating platforms, and makes architecture available at runtime for software maintenance and evolution.\",\"PeriodicalId\":207271,\"journal\":{\"name\":\"Proceedings of the Second International Conference on Software Engineering and Formal Methods, 2004. SEFM 2004.\",\"volume\":\"16 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2004-09-28\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"11\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"Proceedings of the Second International Conference on Software Engineering and Formal Methods, 2004. SEFM 2004.\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1109/SEFM.2004.3\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings of the Second International Conference on Software Engineering and Formal Methods, 2004. SEFM 2004.","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/SEFM.2004.3","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 11
摘要
预制构件的组成是构件复用中的一个关键问题。软件体系结构(SA)和基于组件的软件开发(CBSD)的研究从不同的角度提供了两种有希望的解决方案。SA提供了一种自顶向下的方法来实现基于组件的重用,但是没有对体系结构描述的细化和实现给予足够的关注,因此不能完全自动化转换或组合以形成可执行的应用程序。CBSD通过使用现有的中间件基础设施提供了一种自底向上的方式,但是这种技术不能系统地指导CBSD过程,特别是在更高抽象级别上的组件组合。自然,一个很有前景的解决方案是结合上述两种方法来实现基于组件的重用。从上面的讨论中,我们认为SA应该在整个软件生命周期中扮演中心角色,也就是说,SA描述被用作蓝图,中间件技术被用作组件组合、维护和发展的运行时支架。为了证明这一理念,我们提出了一种软件重用方法,称为ABC(基于架构的组件组合)(Mei et al., 2001)。ABC将软件架构引入到软件生命周期的各个阶段,以SA作为系统开发的蓝图,通过支持工具和映射机制缩短高级设计与实现之间的距离,在运行时组件操作平台上实现系统的自动化组合和部署,并使架构在运行时可用于软件的维护和演进。
ABC: supporting software architectures in the whole lifecycle
How to compose prefabricated components is a key issue in component-based reuse. Research on software architecture (SA) and component based software development (CBSD) provides two hopeful solutions from different perspectives. SA provides a top-down approach to realizing component-based reuse, but doesn't pay enough attention to the refinement and implementation of the architectural descriptions, thus not fully able to automate the transformation or composition to form an executable application. CBSD provides a bottom-up way by using existing middleware infrastructures, but this technology is not able to guide systematically the CBSD process, especially the component composition at higher abstract levels. Naturally, a promising solution is to combine the above two approaches to realize component-based reuse. From the above discussion, we argue that SA should play a centric role in the whole software lifecycle, that is, SA description is used as the blueprint and middleware technology as the runtime scaffold for component composition, maintenance and evolution. To demonstrate the philosophy, we propose a software reuse methodology, which is called ABC (Architecture Based Component Composition) (Mei et al., 2001). ABC introduces software architectures into each phase of software life cycle, takes SA as the blueprint of system development, shortens the distance between high-level design and implementation by supporting tools and mapping mechanisms, realizes the automated system composition and deployment on runtime component operating platforms, and makes architecture available at runtime for software maintenance and evolution.