skip to main content
article

STCIM: a dynamic granularity oriented and stability based component identification method

Published:01 May 2006Publication History
Skip Abstract Section

Abstract

Among recent developments in the field of software reuse has been the increasing reuse of coarse-grained components, and it has been proved that granularity has great impact on component's reuse performance. However, previous studies have ignored rigorous and effective methods to support coarse-grained component identification and design, particularly granularity optimization design. In this paper, a stability-based component identification method, STCIM, is presented to resolve this problem. First a feature-oriented component model and the corresponding component granularity metrics are briefly presented. By establishing mappings between business model space and component space, component design process may be regarded as the process of decomposition, abstraction and composition of business model elements, with four different mapping strategies discussed to obtain dynamic component granularities. Furthermore, it is thought that component granularity is closely correlative to the stability of business models: the more stable the business model, the larger the corresponding component granularity may be. A metrics for model stability with three factors, i.e., number of isomers, stability entropy and isomer similarity, is presented, and the corresponding component identification algorithm based on Most Stable Set is discussed in details. Finally a practical case is described to validate the method in this paper.

References

  1. Szyperski, C.(2002): Component software: Beyond Object--Oriented Programming (2nd). Addison -- Wesley, New York, NY. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. Mili, H., A. Mili, S. Yacoub, and E. Addy(2002): Reuse--Based Software Engineering: Techniques, Organization, and Controls. John Wiley and Sons Ltd., New York, NY. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. Papazoglou, M. P. and D. Georgakopoulos(2003): Service--Oriented Computing. Communications of the ACM. 46, 10, pp.25--28. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Cioch, F. A., J. M. Brabbs, and L. Sieh(2000): The impact of software architecture reuse on development processes and standards. The Journal of Systems and Software. 50, 3, 221--236. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Helton, D(1998): The Impact of Large-Scale Component and Framework Application Development on Business. In Proceedings of the 3rd International Workshop on Component--Oriented Programming. Technical Report 17/99, Department of Software Engineering and Computer Science, University of Karlskrona/Ronneby. 163--164.Google ScholarGoogle Scholar
  6. Lee J. K., S. J. Jung, S. D. Kim, W. Hyun, and D. H. Han(2001): Component Identification Method with Coupling and Cohesion. In Proceedings of 8th Asia - Pacific Software Engineering Conference. IEEE Computer Society, 79--86. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Stojanovic, Z., A. N. W. Dahanayake, and H. G. Sol(2004): Modeling and Design of Service-Oriented Architecture. In Proceedings of the 2004 IEEE International Conference on Systems, Man and Cybernetics: Impacts of Emergence Cybernetics and Human-Machine Systems. IEEE Computer Society, 4147--4151.Google ScholarGoogle Scholar
  8. Ali, A(2001): A Domain--Language Approach to Designing Dynamic Enterprise Component--Based Architectures to Support Business Services. In Proceedings of the 39th International Conference and Exhibition on Technology of Object--Oriented Languages and Systems (TOOLS39). IEEE Computer Society, 130--142. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Roscaa, D. and C. Wild(2002): Towards a flexible deployment of business rules. Expert Systems with Applications. 23, 4, 385--394.Google ScholarGoogle ScholarCross RefCross Ref
  10. Herzum, P. and O. Sims(1999): Business Component Factory. John Wiley&Sons, Inc. New York, NY.Google ScholarGoogle Scholar
  11. Somjit, A. and B. Dentcho(2003): Development of industrial information systems on the Web using business components. Computer in Industry. 50, 2, 231--250. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Jia, Y(2002): The evolutionary component--based software reuse approach. PhD Dissertation, Graduation School of Chinese Academy of Sciences.Google ScholarGoogle Scholar
  13. Ai, P( 2002): Research on the Formal Method of Description for the Flexible Component Composition and its Application to the Water Resource Domain. PhD Dissertation, Hohai University.Google ScholarGoogle Scholar
  14. Tang, C. J(2001): A software synthesis methodology for developing component--based applications. PhD Dissertation of Syracuse University. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Xu, W., B. L. Yin, and Z. Y. Li(2003): Research on the business component design of enterprise information system. Journal of Software. 14, 7, 1213--1220.Google ScholarGoogle Scholar
  16. Harsu, M(2002): A survey on domain engineering. Report 31, Institute of Software Systems, Tampere University of Technology.Google ScholarGoogle Scholar
  17. SEI(2005): Domain Engineering: A Model--Based Approach. http://www.sei.cmu.edu/domain-engineering/domain_engineering.html.Google ScholarGoogle Scholar
  18. Kang, K. C., S. G. Cohen, J. A. Hess, W. E. Novak, and A. S. Peterson(1990): Feature--oriented domain analysis(FODA) feasibility study. Technical Report CMU/SEI-90-TR-021, Software Engineering Institute, Carnegie--Mellon University.Google ScholarGoogle Scholar
  19. Kang, K. C., S. Kim, J. Lee, and K. Lee(1999): Feature--oriented engineering of PBX software for adaptability and reuseability. Software -- Practice and Experience. 29, 10, 875--896. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. Simos, M., D. Creps, C. Klingler, L. Levine, and D. Allemang(1996): Organization domain modeling (ODM) guidebook, version 2.0. Technical Report STARS-VC-A025/001/00, Lockheed Martin Tactical Defence Systems.Google ScholarGoogle Scholar
  21. Jacobson, I., M. Griss, and P. Jonsson(1997): Software Reuse: Architecture, Process and Organization for Business Success. Addison--Wesley, New York, NY. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. OMG(2003): MDA Guide Version 1.0.1, http://www.omg.org/cgi-bin/doc?omg/03-06-01.Google ScholarGoogle Scholar
  23. Martin, R. C(2002): Agile software development: principles, patterns, and practices. Prentice Hall, New York, NY. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. Lee, S. D. and Y. J. Yang(1998): COMO: A UML--based component development methodology. In Proceedings of the 6th Asia Pacific Software Engineering Conference. Takamatsu: IEEE Computer Society, 54--63 Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. Gansan, R. and S. Senguota(2001): O2BC: A technique for the design of component--based applications. In Proceedings of the 39th International Conference and Exhibition on Technology of Object--Oriented Language and Systems. IEEE Computer Society, 46--55. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. Li, G. and M. Z. Jin(2000): A design method for reusable components. Journal of Computer Research & Development. 37, 5, 609--615.Google ScholarGoogle Scholar
  27. Online Dictionary(2005): http://www.seslisozluk.com/?word=stability.Google ScholarGoogle Scholar
  28. Alli, A., Z. Hussein, and A. James(2002): Externalizing Component Manners to Achieve Greater Maintainability through a Highly Re--configurable Architectural Style. In Proceedings of 2002 International Conference on Software Maintenance. IEEE Computer Society, 628--637. Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. Fayad, M. E(2002): Accomplishing Software Stability. Communications of the ACM. 45, 1, 111--115. Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. ISIXSIGMA LLC(2005): http://www.isixsigma.com/dictionary/Process_Stability-453.htm.Google ScholarGoogle Scholar
  31. Bahsoon, R. and W. Emmrich(2004): Evaluating architectural stability with real options theory. In Proceedings of the 20th IEEE International Conference on Software Maintenance. IEEE Computer Society, 11--14. Google ScholarGoogle ScholarDigital LibraryDigital Library
  32. Fayad, M. E(2002): How to Deal with Software Stability. Communications of the ACM. 45, 4, 109--112. Google ScholarGoogle ScholarDigital LibraryDigital Library
  33. Grosser, D., H. A. Sahraoui, and P. Valtchev(2002): Predicting software stability using Case--Based Reasoning. In Proceedings of 17th IEEE International Conference on Automated Software Engineering. IEEE Computer Society, 295--298. Google ScholarGoogle ScholarDigital LibraryDigital Library
  34. Mohagheghi, P., R. Conradi, O. M. Killi, and H. Schwarz(2004): An Empirical Study of Software Reuse vs. Defect--Density and Stability. In Proceedings of the 26th International Conference on Software Engineering. IEEE Computer Society, 282--291. Google ScholarGoogle ScholarDigital LibraryDigital Library
  35. Hamza, H. S(2004): SODA: A Stability--Oriented Domain Analysis Method. In Proceedings of the 19th annual ACM SIGPLAN conference on Object--oriented programming systems, languages, and applications. ACM, 220--221. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. STCIM: a dynamic granularity oriented and stability based component identification method

                Recommendations

                Comments

                Login options

                Check if you have access through your login credentials or your institution to get full access on this article.

                Sign in

                Full Access

                PDF Format

                View or Download as a PDF file.

                PDF

                eReader

                View online with eReader.

                eReader