Extended IPO technique for Code Refactoring

코드 리팩토링을 위한 확장된 IPO 기법

  • Park, Jae-Jin (Dept. of Computer Engineering, Chungbuk National University) ;
  • Lee, Jae-Wook (Dept. of Computer Engineering, Chungbuk National University) ;
  • Hong, Jang-Eui (Dept. of Computer Engineering, Chungbuk National University)
  • 박재진 (충북대학교 컴퓨터 공학과) ;
  • 이재욱 (충북대학교 컴퓨터 공학과) ;
  • 홍장의 (충북대학교 컴퓨터 공학과)
  • Published : 2012.06.22

Abstract

긴 파라미터 리스트(Long parameter list)는 소프트웨어 코드의 품질을 저해시키는 Bad Smell들 중 하나로써, 코드에 대한 이해도를 떨어뜨리고 코드의 변경을 어렵게 한다는 문제점이 있다. 이러한 문제를 해결하는 기법들 중 하나인 IPO(Introduce Parameter Object) 기법은 함께 사용되는 빈도가 높은 파라미터들을 하나의 클래스로 만든 후에 관련된 기능들을 해당 클래스의 메소드로 추출하여 사용하므로 코드의 중복을 막아 재사용성을 높이고 코드에 대한 이해도를 높일 수 있다. 하지만 IPO 기법의 주된 관심사는 파라미터 그룹의 발생 빈도에 초점을 두고 있으며, 커플링에 대한 고려가 충분히 이루어지지 않는다. 따라서 본 연구에서는 IPO 기법과 커플링의 관계를 분석하여 IPO 기법이 커플링까지 고려할 수 있도록 확장된 IPO기법을 제안한다. 제안된 기법은 기존의 기법에 비해 더 낮은 커플링을 달성하여 고품질의 코드를 얻을 수 있다.

Keywords

Acknowledgement

Supported by : 한국연구재단