DOI QR코드

DOI QR Code

Analysis of Cyclomatic Complexity for Web Application

웹 어플리케이션의 순환복잡도 분석

  • 박철 (단국대학교 정보컴퓨터학부) ;
  • 유해영 (단국대학교 정보컴퓨터학부)
  • Published : 2004.08.01

Abstract

Web applications have different structural characteristics from conventional applications with the structural language or object-oriented language or 4GL. A web application typically consists of server-side script elements which run on web sewers, client-side script elements which run on the client web-browser, HTML elements that contains context. Therefore web applications developer concurrently uses 3 or more development language. Cyclomatic Complexity for Web Application(CCWA) metrics reflected composite complexity of each element. In this paper, we applied cyclomatic complexity for web application metrics with Complexity level indicator to web application. We applied it to 10 web applications that were developed in practical business. High complexity web applications classify into four type(MENU, FORM, CTRL, GEN). This paper has contributed to practical use of engineering approach for web application.

웹 어플리케이션은 기존의 구조적 언어, 객체지향 언어 또는 4세대 언어로 개발된 기존의 어플리케이션과는 달리 웹 서버에서 실행되는 서버측 스크립트 요소와 웹 브라우저에서 실행되는 클라이언트 스크립트 요소. 그리고 문서의 내용을 표현하는 HTML 요소들이 결합된 구조를 가지고 있다. 그렇기 때문에 웹 어플리케이션 개발자들은 동시에 3가시 이상의 개발 언어를 사용하여야 한다. 웹 어플리케이션의 순환복잡도 (CCWA : Cyclomatic Complexity for Web Application) 매트릭은 웹 어플리케이션을 구성하고 있는 각 구성 요소들의 복잡도를 복합적으로 측정하도록 고안된 매트릭이다. 본 연구에서는 웹 어플리케이션의 순환복잡도 매트릭을 복잡도 수준 지시자와 함께 사용하여 웹 어플리케이션에 적용한다. 실무에서 개발된 10개의 중 대형 규모의 웹 어플리케이션에 이를 적용하여 기존의 어플리케이션과는 구별되는 복잡한 웹 어플리케이션의 유형을 MENU, FORM, CTRL, GEN의 4가지로 분석하였다. 이러한 분류는 웹 어플리케이션에 대한 공학적 접근에 다양하게 활용될 수 있다.

Keywords

References

  1. 강규욱, 'ASP 어플리케이션의 유지보수를 지원하는 모듈리티 측정도구의 설계와 구현', 석사학위 청구논문, 2000
  2. 강병도, 이미경, '웹 어플리케이션의 효율적인 개발 환경구축에 관한 연구', 정보처리학회논문지D, Vol.1-D, No.3, pp.489-500, June, 2003
  3. 안종근, 유해영, '웹 어플리케이션의 순확복잡도 매트릭에 관한 연구', 정보처리학회논문지D, Vol.9-D, No.3, pp.447-456, June, 2002
  4. 이기열, 이병정, 이숙희, 우치수, '웹 애플리케이션을 위한 복잡도 척도', 정보과학회 학술대회논문집, 2001
  5. 홍의석, 김태균, '혼성 메트릭을 이용한 소프트웨어 개체복잡도 정량화 기법', 정보처리학회논문지D, Vol.8-D, No.3, pp.233-240, June, 2001
  6. A. E. Hatzimanikatis, C. T. Tsalidis and D. Christodoulakis, 'Measuring the Readability and Maintainability of Hyperdocuments,' Software Maintenance Research and Practice, Vol.7, 1995 https://doi.org/10.1002/smr.4360070203
  7. Athula Ginige, 'Workshop on web engineering : Web engineering : managing the complexity of web systems development,' Proceedings of the 14th international conference on Software engineering and knowledge engineering, July, 2002
  8. Boldyreff, Cornelia, Warren, Paul, Gakell, Craig, and Marshall, Angus, 'Web-SEM Project : Establishing Effect Web Site Evaluation Metrics,' Proceedings of 2nd International Workshop on Web Site Evaluation WSE'2000, p.WSE17, 2000
  9. Dennis Kafura, Geereddy. R. Reddy, 'The Use of Software Complexity Metrics in Software Engineering,' IEEE Trans. on Software eng., Vol.SE-13, No.3, 1987
  10. Emilia Mendes, Nile Mosley, 'Comparing Effort Prediction Models for Web Design and Authoring using Boxplots,' IEEE, 2001 https://doi.org/10.1109/ACSC.2001.906632
  11. Devanshu Dhyani, Wee Keong Ng, Sourav S. Bhowmick, A Survey of Web Metrics, 'ACM Computing Surveys(CSUR),' Volume 34, Issue 4(December 2002), pp.469-503, Year of Publication : 2002, ACM Press https://doi.org/10.1145/592642.592645
  12. Diego Bonura, Rosario Culmone, Emanuela Merelli, 'Patterns for web applications,' Proceedings of the 14th international conference on Software engineering and knowledge engineering, July, 2002
  13. D. Lowe, and W., Hall, 'Hypertext and the WebAn Engineering approach,' John Wiley & Sons Ltd., eds., 1998
  14. Linda Rosenberg, Ph. D., Lawrence Hyatt, 'Developing a successful metrics program,' International conference On Software Engineering(IASTED) SanFrancisco CA, Nov., 1997
  15. WebE(Web Engineering) Home : http://aeims.uws.edu.au/WebEhome/
  16. M. Halstead, 'Elements of Software Science,' Elsevier North Holland, New York, 1977

Cited by

  1. Relevance of the Cyclomatic Complexity Threshold for the Web Programming vol.17, pp.6, 2012, https://doi.org/10.9708/jksci.2012.17.6.153
  2. A Quantitative Analysis of the Cyclomatic Complexity of the Web Software vol.19, pp.2, 2014, https://doi.org/10.9708/jksci.2014.19.2.183