소프트웨어공학 시퀀스 다이어그램

객체 간 상호작용을 시간 순서에 따라 시각화하는 시퀀스 다이어그램(Sequence Diagram)에 대해 정리했다.

복잡한 로직의 흐름을 파악하는 데 효과적이다.

상호작용 시각화

로그인 과정을 예로 객체 간 데이터 송수신 순서를 도식화했다.

[ User ]        [ LoginController ]        [ UserService ]        [ DB ]
   |                    |                     |              |
   |---(1) login(id,pw)-->|                     |              |
   |                    |----(2) checkUser()-->|              |
   |                    |                     |---(3) Query-->|
   |                    |                     |<--(4) Result--|
   |                    |                     |              |
   |                    |<---(5) UserInfo ----|              |
   |                    |<--(6) Success/Fail---|              |

화살표는 메시지 흐름을 의미한다.

시간 흐름에 따라 요청이 컨트롤러, 서비스, DB를 거쳐 반환되는 과정을 보여준다.

이를 통해 설계 단계에서 로직 결함이나 불필요한 호출을 발견하여 최적화할 수 있다.

시퀀스 다이어그램 구성 요소

  • 생명선(Lifeline): 객체의 존재 기간을 나타내는 수직 점선이다.
  • 메시지 화살표: 객체 간 상호작용을 나타낸다.
    실선은 동기 호출, 점선은 응답을 의미한다.

  • 활성창(Activation Bar): 객체가 연산을 수행 중인 구간을 표시한다.

설계 정교화

시퀀스 다이어그램은 로직의 타당성을 검토하는 과정이다.

팀 내 로직 공유와 비즈니스 프로세스 정리에 유용하다.

로직을 체계적으로 조립하여 설계의 완성도를 높일 수 있는 것 같다.

Author avatar

웨이호프

WordPress creator and blogger.

View all posts