A Method of Domain Analysis and Design for Component-based Software Development

컴포턴트 기반 소프트웨어 개발을 위한 도메인 분석 및 설계 방법

  • 하현주 (삼성전자 정보통신총괄 통신연구소 연구소) ;
  • 문미경 (부산대학교 컴퓨터공학과) ;
  • 염근혁 (부산대학교 컴퓨터공학과)
  • Published : 2001.10.01

Abstract

Component-based software development (CBSD) is a method for building large software system by integrating previously-existing software components. Software development method using components has several advantages such that reducing time to delivery and development costs, and increasing productivity etc. But integrating components developed from multiple vendors is too difficult As a result it is required the understanding on the context of use to develop reusable components. The context of use for software component of determined by software architecture. Therefore, it is possible to develop an application based on components if is based on software architecture. Also, it is essential to consider domain concepts for CBSD. To increase the reusability of components. we should develop components in a domain which is a set of related systems. In this paper, we proposed a domain architecture development methodology that supports component-based software development. Domain architecture that represents components and their relationship is produced through domain analysis and design process. We believe that component development methodology using proposed domain architecture can efficiently develop highly reusable components as well as easily develop and application using information acquired from domain architecture.

CBSD(Component-Based Software Development)는 이미 존재하는 소프트웨어 컴포턴트를 조립함으로써 시스템을 개발하는 방법이다. 컴포턴트를 이용하여 시스템을 개발하는것을 개발시간과 비용을 줄이고, 생산성을 향상시키는 등 여러 가지 장점을 가진다. 그러나 여러 벤더에 의해 개발된 컴포넌트를 조립하는 것은 쉬운 일이 아니다. 이를 위해 컴포넌트가 어떤 문맥에서 사용되는지 이해하는것이 필요하며, 이 문맥은 아키텍쳐에 의해 결정된다. 따라서 컴포넌트 기반의 어플리케이션 개발은 아키텍쳐를 기반으로 하였을 때 가능하다. 또한 컴포넌트 기반 어플리케이션 개발을 위해서는 도메인 개념이 필수적이다 컴포넌트의 재상용을 높이기 위해서 관련된 시스템의 집합인 도메인에서 컴포넌트를 개발해야 한다. 본 논문에서는 컴포넌트 기반 어플리케이션 개발을 지원하는 도메인 아키텍쳐 개발방법을 제안한다. 도메인 아키텍쳐는 도메인 분석 및 설계과정에서 생성되는 것으로 컴포넌트와 그들간의 관계를 표현한다. 도메인 아키덱쳐를 이용하여 컴포넌트를 개발함으로써 재사용성이 높은 컴포넌트를 효율적으로 개발할수 있을 뿐만 아니라, 어플리케이션 개발 시 도메인에서 제공하는 정보를 이용하여 쉽게 어플리케이션을 개발할수 있다.

Keywords

References

  1. SEI in Carnegie Mellon University, 'Component-Based Software Development / COTS Integration,' http://www.sci.cmu.edu/str/descriptions/cbsd_body.html
  2. Short, K., 'Component Based Development and Object Modeling,' Sterling Software, 1997
  3. Ran, A., 'Software Isn't Built From Lego Blocks,' Proceedings of the fifth Symposium on Software Reusability, pp, 164-169, 1999
  4. D'souza, D. F. and Wills, A. C, Objects, Components, and Frameworks with UML, Addison-Wesley, 1998
  5. Harmon, P., 'Visual Modeling Tolls, Case Vendors, and Component Methods,' Component Development Strategies, June 1999
  6. Klingler, C.D., 'DAGAR: A Process for Domain Architecture Definition and Asset Implementation..' In Proceedings of ACM TriAda, pp, 231-245, 1996 https://doi.org/10.1145/240678.240723
  7. Kang, K. C., 'Feature-Oriented Domain Analysis for Software Reuse,' Joint Conference on Software Engineering, Nov 17-19, pp. 389-395, 1993
  8. Kang, K. C., Kim, S., Lee J.,and Kim, K., 'FORM: A Feature-Oriented Ruse Method with Domain Specific Reference Architectures,' Pohang University of Science and Technology(POSTECH), 1998
  9. Simos, M., 'Organization Domain Modeling(ODM) Formalizing the Core Domain Modeling Life Cycle,' SSR'95, pp. 196-205, 1995
  10. Creps D., Klingler, C., Levine, L., and Allemang, D., 'Organization Domain Modeling(ODM) Guide- book Version 2.0,' Software Technology for Adaptable, Reliable Systems (STARS), 1996
  11. SEI in Carnegie Mellon University, 'Domain Engineering: A Model-Based Approach,' http://www.sei.cmu.edu/activities/domain-engineering/index.html
  12. Jacobson, I., Booch, G., and Rumbaugh, J., The Unified Software Development Process, Addison-Wesley, 1999
  13. Eriksson, H. and Penker, M., UML Toolkit, Wiley, 1998
  14. Kruchten, P., 'Architectural Blueprints-The '4+1' View Model of Software Architecture,' IEEE Software, pp. 42-50, November 1995
  15. Han, J., 'An Approach to Software Component Specification,' International Workshop on Component-Based Software Engineering, pp. 97-102 , 1999
  16. OMG, 'Unified Modeling Language Specification Version 1.3,' http://www.omg.org, March 1999
  17. Bennett, S., McRobb, S., and Farmer, R, Object-Oriented Systems Analysis and Design, McGRAW-HILL, 1999
  18. Egyed, A., Mehta, N., and Medvidovic, N., 'Software Connectors and Refinement in Family Architectures,' USC Center for Software Engineering, http://sunset.usc.edu. 1999
  19. 고속도로정보통신공단, 'ITS란 무엇인가', http://www.hitelecom.co.kr/sayub/yuji/index.htm
  20. ITS Korea, 'ITS 구성', http://www.itskorea.or.kr/main.html
  21. Casey, R. F., Labell, L. N., LoVecchio, J. A., Ow, R. S., Royal, J. W., Schwenk, J. C. Carpenter, E. J., Moniz, L., Schweiger, C. L., and Marks, B., 'Advanced Public Transportation Systems : The State of the Art Update '98,' U.S. Department of Transportation, January 1998