피드로 돌아가기
Diagram as Code with draw.io
Dev.toDev.to
Infrastructure

TSX 기반 Diagram as Code 도입을 통한 draw.io 아키텍처 최신화 자동화

Diagram as Code with draw.io

mrduguo2026년 5월 25일3intermediate

Context

수동 드로잉 기반의 아키텍처 다이어그램은 시스템 변경 시 업데이트 지연으로 인한 정보 불일치 문제 발생. 시각적 요소의 수동 배치를 통한 유지보수 비용 증가 및 다이어그램의 최신성 유지 실패라는 기술적 한계 직면.

Technical Solution

  • Diagram as Code 개념을 적용하여 TSX 기반의 선언적 아키텍처 정의 구조 설계
  • Tree 구조의 Shape 컴포넌트를 통한 계층적 시스템 모델링 구현
  • _dependsOn 및 _dependsBy 속성을 활용한 컴포넌트 간 의존성 관계 명시 및 자동 엣지 생성
  • _direction 속성을 통한 수직/수평 레이아웃 제어 로직 적용
  • React의 Named Component 패턴을 도입하여 각 인프라 역할에 따른 시맨틱한 추상화 계층 구축
  • 표준 .drawio 파일 포맷을 출력값으로 채택하여 기존 draw.io 생태계와의 호환성 확보

- 인프라 변경 사항을 코드 리뷰 프로세스에 통합하여 다이어그램 최신성 검증 - 반복되는 인프라 패턴을 커스텀 컴포넌트로 모듈화하여 다이어그램 작성 생산성 제고 - 수동 레이아웃 조정 대신 의존성 기반의 자동 배치 전략 검토

원문 읽기
Diagram as Code with draw.io | Devpick