BackEnd/기타

[IntelliJ] IntelliJ 에서 DSM을 이용하여 패키지 간 의존성 확인하기

샤아이인 2022. 8. 1.

 

1. DSM 이란?

DSM은 모듈 간의 관계를 2차원 매트릭에 나타낸 테이블.

테이블을 통해서 모듈 간의 의존관계 / 의존 강도 / 순환 사이클 등을 확인할 수 있다.

 

DSM을 읽는 방법은 열을 기준으로 읽으시면 됩니다.   

“1번은 3번에 Dependency(의존성)을 가진다 , 3번은 1번, 2번에 의존성을 가진다”라고 읽으면 됩니다.

 

2. Layered Architectur

레이어드 아키텍처를 DSM으로 확인해보면 다음과 같은 구조를 가지게 될 것입니다.

위의 계층이 아래쪽 계층에만 의존하기 때문이다.

 

3. Intellij 에서 사용

IntelliJ에서는 Ultimate 버전에 한해서 DSM 플러그인이 기본적으로 제공된다.

메뉴 Code -> Analyze Code -> Dependency Matrix

 

이후 다음과 같이 DSM을 확인할 수 있다.

나의 코드에서는 member 패키지 -> auth 패키지에 대한 의존성만 있고, 역방향 의존성은 다 없애버렸는데, 

이때 auth -> member의 의존이 진짜 다 사라졌는지 한눈에 확인할 수 있었다.

 

4. 출처

https://v0o0v.tistory.com/4

 

DSM을 이용하여 IntelliJ 에서 패키지 간 의존성 확인하기

DSM(Dependency Structure Matrix) 프로젝트를 진행 할 때 정적으로 아키텍처를 점검해야 하는 경우가 종종 있다. 이때 여러 툴을 사용하는데 DSM을 사용하면 모듈간의 의존성을 한눈에 확인할 수 있다. DSM

v0o0v.tistory.com

https://architecture101.blog/2009/11/02/dependency-structure-matrix/

 

어디가 꼬여 있는거야? 누가좀 가르켜줘 – Dependency Structure Matrix

내가 설계한 시스템을 과연 개발자가 잘 만들고 있을까?   제대로 된 방향으로 가고 있을까?   우리 시스템이 어디가 꾜여있진 않을까?  진척율을 짝짝 올라가 양은잘 맞추는거 같은데..? 만약

architecture101.blog

 

댓글