2015년 8월 7일 금요일

Architecture Visualization(아키텍쳐 시각화) Part 1

변화의 충격을 감지해라 - Dependency Structure Matrix

소프트웨어는 사용자에게 유용해야 된다는 명백한 외부적인 관점도 있지만 , 품질이라는 내부적인 관점도 존재합니다 . 즉 소프트웨어가 잘 개발되고 있는지 품질을 파악할 수 있는 지표가 필요합니다 . 이번 연구에서는 소프트웨어의 품질을 평가할 수 있는 몇몇 시각화 기법을 전달합니다 .  

시각화의 필요성 (1000 피트의 관점 )

아키텍처의 품질을 평가하기 위해 , UML 로 그려진 아키텍처 다이어그램을 볼 수 있습니다 . 하지만 아키텍처 다이어그램의 작은 상자들은 전체 시스템을 나타내며 상자 간의 선은 시스템 간의 의존성 , 데이터 흐름 , 버스와 같은 공유자원인지 파악할 수 없습니다 . 이것은 비행기 밖 풍경과 같이 과도하게 추상화되어 있는 30,000 피트의 뷰 입니다 .

반면에 소스코드를 보며 품질을 평가 할 수 있는데 , 이것은 0 피트와 같은 바닥 레벨의 뷰로 비유할 수 있습니다 . 소스 레벨에서는 연관성 있는 몇 개의 객체의 구조도 보지 못할 만큼 많은 정보를 제공합니다 .

이 두 뷰는 소프트웨어 품질에 대한 올바른 정보를 제공하지 못하므로 , 0 피트와 30,000 사이인 , 1000 피트의 뷰를 보아야 합니다 . 1000 피트의 뷰는 메서드 개수 , 클래스 팬 아웃 , 순환 의존도와 같은 다양한 지표와 많은 양의 데이터를 접할 수 있습니다 .

의존성 분석 도구 DSM(Dependency Structure Matrix)

  • DSM 으로 보는 계층화
  • Change Propagator 를 주의해라
  • 의존성을 끊는 방법
  • 실 사례로 보는 DSM


자세히 보기 →

댓글 없음 :

댓글 쓰기