Skip to main content
QUICK REVIEW

[논문 리뷰] A Genetic Algorithm for Software Design Migration from Structured to Object Oriented Paradigm.

Md. Selim, Saeed Siddik|arXiv (Cornell University)|2014. 07. 23.
Software Engineering Research참고 문헌 14인용 수 3
한 줄 요약

이 논문은 최적의 그래프 클러스터링 문제를 해결함으로써 구조적 설계에서 객체지향 설계로의 소프트웨어 설계 이주시킬 수 있도록 자동화하는 유전 알고리즘(GA)을 제안한다. GA는 적합도 기반 부모 선택과 클러스터 요소 교차를 통해 내부 클러스터 간선을 최대화하고 외부 클러스터 간선을 최소화한다. 이로 인해 게으른 방법과 몬테카를로 방법 대비 각각 40% 및 49.5% 향상된 성능을 달성한다.

ABSTRACT

The potential benefit of migrating software design from Structured to Object Oriented Paradigm is manifolded including modularity, manageability and extendability. This design migration should be automated as it will reduce the time required in manual process. Our previous work has addressed this issue in terms of optimal graph clustering problem formulated by a quadratic Integer Program (IP). However, it has been realized that solution to the IP is computationally hard and thus heuristic based methods are required to get a near optimal solution. This paper presents a Genetic Algorithm (GA) for optimal clustering with an objective of maximizing intra-cluster edges whereas minimizing the inter-cluster ones. The proposed algorithm relies on fitness based parent selection and cross-overing cluster elements to reach an optimal solution step by step. The scheme was implemented and tested against a set of real and synthetic data. The experimental results show that GA outperforms our previous works based on Greedy and Monte Carlo approaches by 40% and 49.5%.

연구 동기 및 목표

  • 소프트웨어 설계를 구조적에서 객체지향적 패러다임으로 옮기는 데 소요되는 시간이 오래 걸리는 수작업 과정을 자동화하기 위해.
  • 이차 정수 프로그래밍을 통한 최적의 그래프 클러스터링 문제 해결의 계산적 난이도를 다루기 위해.
  • 근사치 기반의 해법을 개발하여 모듈성, 관리 용이성, 확장성 향상을 위한 근사 최적의 클러스터링을 달성하기 위해.
  • 클러스터링 품질과 효율성 측면에서 기존의 게으른 방법과 몬테카를로 기반 휴리스틱 접근법을 능가하기 위해.

제안 방법

  • 내부 클러스터 간선을 최대화하고 외부 클러스터 간선을 최소화하기 위해 설계 이주 문제를 최적의 그래프 클러스터링 과제로 공식화한다.
  • 적합도 기반 부모 선택을 적용하여 유망한 클러스터 구성의 진화를 이끄는 유전 알고리즘(GA)을 사용한다.
  • 부모 솔루션 간의 클러스터 요소를 교환하는 교차 연산을 사용하여 새로운 후손 솔루션을 생성한다.
  • 소프트웨어 구성 요소의 클러스터 할당을 인코딩하는 크로모좀 유사한 구조로 솔루션을 표현한다.
  • 선택, 교차, 변이를 반복적으로 적용하여 세대에 걸쳐 인구를 진화시켜 최적의 클러스터링에 수렴시킨다.
  • 성능 검증을 위해 실제 및 합성 소프트웨어 설계 그래프 모두에 대해 GA를 테스트한다.

실험 결과

연구 질문

  • RQ1유전 알고리즘이 구조적 설계에서 객체지향 설계로의 소프트웨어 설계 이주 과정에서 최적의 그래프 클러스터링 문제를 효과적으로 해결할 수 있는가?
  • RQ2제안된 GA의 성능은 클러스터링 품질 측면에서 기존의 게으른 방법과 몬테카를로 기반 휴리스틱 접근법과 비교해 어떻게 되는가?
  • RQ3GA는 소프트웨어 설계 그래프에서 내부 클러스터 유대감과 외부 클러스터 분리도를 어느 정도 향상시키는가?

주요 결과

  • 제안된 유전 알고리즘이 이전의 게으른 방법 대비 클러스터링 품질에서 40% 향상되었다.
  • GA는 몬테카를로 기반 방법 대비 솔루션 효과성 측면에서 49.5% 향상된 성과를 달성했다.
  • 실제 및 합성 소프트웨어 설계 데이터셋 전반에서 일관된 성능 향상이 나타났다.
  • 적합도 기반 선택과 클러스터 요소 교차가 최적 솔루션에 대한 수렴을 크게 향상시켰다.
  • 해결 품질은 내부 클러스터 간선을 최대화하고 외부 클러스터 간선을 최소화함으로써 측정되었으며, GA는 뛰어난 성능을 달성했다.

더 나은 연구,지금 바로 시작하세요

논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.

카드 등록 없음 · 무료 플랜 제공

이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.