검색 상세

트랜잭션의 시점, 크기 및 개발자의 숙련도를 고려한 논리적 커플링 측정기법

A Logical Coupling Measurement Method Based on Transaction Time, Size and Expertise of Developer

초록/요약

소프트웨어의 수명이 길어짐에 따라, 소프트웨어 유지보수비용을 줄이기 위한 기법에 대한 연구의 중요도가 높아지고 있다. 소프트웨어 엔티티들간의 커플링(Coupling)정보는 소스코드 분석 및 리팩토링등의 소프트웨어 유지보수에 활동에서 의사결정시 정량적인 근거자료로 유용하게 사용되고 있다. 로지컬커플링(Logical Coupling)은 소프트웨어가 진화하는 과정에서 관측된 엔티티들간의 관계성 정도를 나타낸다. 로지컬 커플링개념이 처음 소개된 이후로, 커플링의 단위를 상세화 하는 연구가 발표됨으로써, 큰 단위의 엔티티간 로지컬커플링으로는 설명할 수 없는 소프트웨어의 특성들이 설명되었다. 하지만, 기존 연구는 프로젝트 구성원들의 성향 및 프로젝트의 특성을 고려하지 못 하였다. 본 연구는 버전관리시스템의 변경기록에 담겨있는 프로젝트 구성원들의 성향과 프로젝트 자체의 특징을 고려한 다중관점 기반의 로지컬커플링 측정기법을 제안하고, 오픈소스프로젝트를 통해 제안하는 기법을 검증하였다.

more

초록/요약

As increases of software life cycle, it has been realized the importance of research methods to reduce maintenance costs of software. Coupling information among software entities is commonly utilized to make decisions on software maintenance activities such as analyzing source code, refactoring, etc. Logical coupling describes the relationship of among entities throughout the software evolution. Since the introduction of logical coupling, with the help of researches that detail coupling unit, it has provided the ease of environment to explain software characteristics which was considered to be difficult by large units of logical coupling. The research proposes a logical coupling measurement method based on transaction time, size and expertise of developer to improve the correctness by considering characteristics of developers and projects reflected in transactions. We evaluate our approach by examining five open source projects. The results show that the method provides more reliable logical coupling data compared to previous methods.

more