期刊文献+

Software component composition based on ADL and Middleware 被引量:19

Software component composition based on ADL and Middleware
原文传递
导出
摘要 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. However, it pays insufficient attention to the refinement and implementation of the architectural descriptions, and does not provide the necessary capability to automate the transformation or composition to form a final executable application. CBSD provides a bottom-up way by using existing middleware infrastructures. However, these technologies do not take into account the systematic methodology that can guide the CBSD process, especially the component composition at higher abstract levels. We argue that it is a natural solution to combine these two approaches.In this paper, an architecture-based component composition approach is presented. In this way, SA description, using mapping rules and mini-tools to narrow the gap between design and implementation , is used as the blueprint and middleware technology as the runtime scaffold for component composition. Our approach presents an ADL, which supports user-defined connectors and has an extensible framework, to specify software architectures. To map a SA description into implementation, it is necessary to map it first to an OO design model described in UML, then to the final implementation. The architectural description can be mapped into source code or executable code by using some ORB conforming to CORBA standard. Also a toolkit is provided to support this approach efficiently. 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. However, it pays insufficient attention to the refinement and implementation of the architectural descriptions, and does not provide the necessary capability to automate the transformation or composition to form a final executable application. CBSD provides a bottom-up way by using existing middleware infrastructures. However, these technologies do not take into account the systematic methodology that can guide the CBSD process, especially the component composition at higher abstract levels. We argue that it is a natural solution to combine these two approaches.In this paper, an architecture-based component composition approach is presented. In this way, SA description, using mapping rules and mini-tools to narrow the gap between design and implementation , is used as the blueprint and middleware technology as the runtime scaffold for component composition. Our approach presents an ADL, which supports user-defined connectors and has an extensible framework, to specify software architectures. To map a SA description into implementation, it is necessary to map it first to an OO design model described in UML, then to the final implementation. The architectural description can be mapped into source code or executable code by using some ORB conforming to CORBA standard. Also a toolkit is provided to support this approach efficiently.
出处 《Science in China(Series F)》 2001年第2期136-151,共16页 中国科学(F辑英文版)
基金 This work was supported by the 9th State Five-Year Plan, State 863 High-Tech Program, and the National Natural Science Foundation of China It also got support from Bell-Labs China and Software Production Research of Bell-Labs.
关键词 software architecture component composition component-based development software reuse UML CORBA. software architecture, component composition, component-based development, software reuse, UML, CORBA.
  • 相关文献

参考文献21

  • 1[1]Garlan, D., Shaw, M., An introduction to software architecture, in Advances in Software Engineering and Knowledge Engineering, Vol. 2, Singapore: World Scientific, 1993, 1—39.
  • 2[2]Perry, D. E., Wolf, A. L., Foundations for the study of software architecture, ACM SIGSOFT Software Engineering Notes, 1992, 17(4): 40—52.
  • 3[3]Allen, R., Garlan, D., Formalizing architectural connection, in Proceedings of the 16th International Conference on Software Engineering (ICSE 16), Italy, Los Angeles: IEEE Computer Society Press, May, 1994, 71—80.
  • 4[4]Allen, R., Garlan, D., A formal basis for architectural connection, ACM Transactions on Software Engineering and Methodology, July, 1997, 6(3): 213—249.
  • 5[5]Shaw, M., Deline, R., Klein, D.V. et al., Abstractions for software architecture and tools to support them, IEEE Transactions on Software Engineering, 1995, 21(4): 314—335.
  • 6[6]Luckham, D.C., Vera, J., An event-based architecture definition language, IEEE Transactions on Software Engineering, 1995, 21(9): 717—734.
  • 7[7]Garlan, D., Monroe, R. Wile, D., ACME: An architecture description interchange language, in Proceedings of the IBM Centre for Advanced Studies Conference (CASCON'97), Toronto, November 1997, 169—183.
  • 8[8]Dashofy, E. M., Medvidovic, N., Taylor, R. N., Using off-the-shelf middleware to implement connectors in distributed software architectures, in Proceedings of the 21st International Conference on Software Engineering (ICSE 21), Los Angeles: IEEE Computer Society Press, 1999, 3—12.
  • 9[9]Moriconi, M., Qian, X., Riemenschneider, R. A., Correct architecture refinement, IEEE Transactions on Software Engineering, April 1995, 21(4): 356—372.
  • 10[10] Medvidovic, N., Rosenblum, D., Taylor, R., A language and environment for architecture-based software development and evolution, in Proceedings of the 21st International Conference on Software Engineering (ICSE 21), Los Angeles: IEEE Computer Society Press, 1999, 44—53.

同被引文献67

引证文献19

二级引证文献463

相关作者

内容加载中请稍等...

相关机构

内容加载中请稍等...

相关主题

内容加载中请稍等...

浏览历史

内容加载中请稍等...
;
使用帮助 返回顶部