A Method and Tool for Identifying Domain Components Using Object Usage Information

  • Lee, Woo-Jin (Department of Computer Science, Kyungpook National University) ;
  • Kwon, Oh-Cheon (Computer & Software Research Laboratory, ETRI) ;
  • Kim, Min-Jung (Computer & Software Research Laboratory, ETRI) ;
  • Shin, Gyu-Sang (Computer & Software Research Laboratory, ETRI)
  • Received : 2002.06.07
  • Published : 2003.04.30


To enhance the productivity of software development and accelerate time to market, software developers have recently paid more attention to a component-based development (CBD) approach due to the benefits of component reuse. Among CBD processes, the identification of reusable components is a key but difficult process. Currently, component identification depends mainly on the intuition and experience of domain experts. In addition, there are few systematic methods or tools for component identification that enable domain experts to identify reusable components. This paper presents a systematic method and its tool called a component identifier that identifies software components by using object-oriented domain information, namely, use case models, domain object models, and sequence diagrams. To illustrate our method, we use the component identifier to identify candidates of reusable components from the object-oriented domain models of a banking system. The component identifier enables domain experts to easily identify reusable components by assisting and automating identification processes in an earlier development phase.



  1. Objects, Components, and Frameworks with UML - the Catalysis Approach D'Souza, D.F.;Wills, A.C.
  2. The Unified Software Development Process Jacobson, I.;Booch, G.;Rumbaugh, J.
  3. Journal of Korea Information Processing Society Study about a Component Identification Method Based on RUP Choi, M.S.;Yoon, Y.I.;Park, J.N.
  4. Features of Together TogetherSoft
  5. COOL:Joe 2.0 Product Descriptions Computer Associates
  6. About Uniface Compuware
  7. IASTED-AI2002 Development of COBALT (COmponent-Based AppLication deveLopment Tool) for Modeling and Constructing EJB Based Components Kim, M.J.;Lee, W.J.;Shin, G.S.
  8. CORBA Components Object Management Group
  9. Introduction to OMG's Unified Modeling Language (UML$^{TM}$) Object Management Group
  10. Designing Enterprise Application with the Java$^{TM}$ 2 Platform, Enterprise Edition, Version 1.1 Sun
  11. Proc. of the 2002 Int'l Conf. on Software Engineering Research and Practice (SERP'02) An Implementation of the Tool Supporting Design Pattern and Maintaining Alteration of Design Model for EJB Component Design Jeong, Y.J.;Yoon, I.C.;Kim, M.J.;Lee, W.J.;Yoon, S.J.;Choi, Y.J.;Shin, G.S.
  12. Proc. of the EUROMICRO An Approach to Composition of EJB Components Using C2 Style Choi, Yoo-Hee;Kwon, Oh-Cheon;Shin, Gyu-Sang
  13. Enterprise JavaBeans Monson-Haefel, R.
  14. Business Component Factoring: A Comprehensive Overview of Component-Based Development for Enterprise Herzum, P.;Sims, O.
  15. IEEE Computer v.24 no.2 Identifying and Qualifying Reusable Software Components Caldiera, G.;Basili, V.R.
  16. ETRI J. v.24 no.5 A New Robust Watermark Embedding into Wavelet DC Components Joo, Sang-Hyun;Suh, Yong-Ho;Shin, Jae-Ho;Hisakazu kikuchi
  17. Computer v.24 no.2 Identifying and Qualifying Reusable Software Components Caldiera, G.;Basili, V.R.
  18. ICSE2002 Workshop A Product Line Approach through Architecture Reuse of a Component Assembly Process Kwon, Oh-Cheon;Lee, Seung-Yun;Shin, Gyu-Sang