소프트웨어 아키텍처 다이어그램 도구 D2를 개발하는 테라스트럭(Terrastruct)이 자사의 핵심 자동 레이아웃 알고리즘인 TALA(Terrastruct's AutoLayout Algorithm)를 오픈소스(MPL-2.0 라이선스)로 공개했습니다. TALA는 소프트웨어 아키텍처 다이어그램에 특화된 새로운 알고리즘으로, 복잡한 시스템을 시각적으로 명확하게 표현하는 데 중점을 둡니다. 이는 개발자와 설계자가 다이어그램을 수동으로 배치하는 데 드는 시간과 노력을 크게 줄여줄 것으로 기대됩니다.
TALA는 기존의 방향성 비순환 그래프(DAG) 기반 레이아웃 엔진(Dagre, ELK 등)과 달리, 화이트보드에 그리는 방식과 유사한 직교(orthogonal) 레이아웃을 주로 생성합니다. 이 알고리즘은 다양한 그래프 드로잉 연구 논문의 아이디어와 독자적인 기술을 결합하여 대칭성, 노드 간 중간 거리, 흐름, 유사 노드 클러스터링 등 여러 미학적 목표를 동시에 고려합니다. 특히 TALA의 독특한 기능은 노드의 위치와 크기를 부분적으로 사용자 정의할 수 있다는 점입니다. 특정 노드의 좌표를 고정하고 나머지는 TALA가 자동으로 배치하게 할 수 있어, AI 에이전트가 2D 공간에서 노드를 배치하고 TALA가 경로를 처리하는 하이브리드 방식의 활용 가능성을 제시합니다.
TALA의 오픈소스 전환은 다이어그램 자동화 분야에 새로운 활력을 불어넣을 것으로 보입니다. 개발자들은 이제 TALA를 자신의 프로젝트에 통합하거나 개선하여 더욱 다양한 형태의 다이어그램을 생성할 수 있게 됩니다. 다만, TALA는 알고리즘에 무작위성이 있어 노드를 추가할 경우 다이어그램 전체가 크게 바뀔 수 있고, 대규모 다이어그램에서는 실행 시간이 길어질 수 있다는 단점도 있습니다. 그럼에도 불구하고, 소프트웨어 아키텍처 다이어그램의 시각적 품질을 높이고 제작 효율성을 개선하려는 시도에 TALA는 강력한 도구로 자리매김할 것입니다.