소프트웨어 모듈-뷰 복원

Download Report

Transcript 소프트웨어 모듈-뷰 복원

중앙대학교 실시간 응용소프트웨어 연구실
김준석 [email protected]

개발 초기 아키텍쳐는 소프트웨어의 생명주기가 지
남에 따라 노후화 혹은 무질서화 아키텍쳐 복원이
필요
....
2

모듈-뷰 복원을 통한 결함 탐색
◦ 결함이 속한 모듈 결함 예측

소프트웨어 형태 복원
◦ 소프트웨어 품질의 척도
Software
3


소프트웨어 아키텍쳐 모듈-뷰 복원 연구 지원 툴의
부족
기존 연구 지원 툴을 개선 사용자-정의 클러스터링
도구를 제작
Software
Repository
Graph/Matrix
소프트웨어
정보 표현
클러스터링
아키텍쳐
모듈-뷰 복원
4

소프트웨어의 정보파일 입력 지원

다양한 클러스터링 알고리즘 지원

클러스터링 결과값 출력 및 분석 기능
5
클러스터링 알고리즘
Exhaustive Search
Hill-Climbing
자료구조명
설 명
Graph
클러스터 통합 자료구조로 세부 Cluster 리스트,
Node 리스트, Edge 리스트 제공
Cluster
클러스터 자료구조. 클러스터에 포함된 노드간 Edge
리스트와 Node리스트를 제공
Node
그래프를 이루는 최소단위 이며 Node는 현재 속한
Cluster, 현재 Node와 연결된 Node를 제공
Edge
Edge는 Graph에서 Node간의 연결 선을 의미하며
해당 자료구조에서는 시작 노드, 도착 노드를 제공
Genetic Algorithm : GA
품질 평가 메트릭
Intra-edge
C1
Inter-edge
C2
6

Bunch 기능 유지

사용자 정의 측정 모듈
7
1. 클러스터링 수행시 정량적 수행결과 값
2. 클러스터링 군집 정보
8



Bunch의 기본기능 유지
사용자가 목적함수 정의 가능
모듈-뷰 복원 연구자에게 도움

알고리즘 부분 확장
9