
이 보고서는 AI를 활용하여 소프트웨어 개발을 더 빠르고 효율적으로 만드는 방법에 대해 이야기해요.
특히, 소프트웨어를 만들기 전에 '어떤 기능이 필요하고 어떻게 작동해야 하는지'를 정하는 도메인 모델링이라는 과정을 AI가 어떻게 도울 수 있는지 보여줍니다.
AI를 통해 복잡한 비즈니스 절차를 더 빨리 파악하고 정리할 수 있어요.
이를 통해 개발 과정의 생산성을 크게 높일 수 있습니다.
이 내용은 AI 기술이 소프트웨어 개발 분야에 어떤 변화를 가져올지 궁금한 분들에게 아주 유용할 거예요.

스태판 팔로페가 만든 Clarify라는 도구는 소프트웨어 개발의 첫 단계를 도와줍니다.
이 도구는 마치 이야기를 그림으로 그리듯 비즈니스 프로세스를 시각화해요.
주요 기능으로는 이벤트 스토밍(일의 흐름 파악), 데이터 모델링(필요한 데이터 정리), 그리고 코드 자동 생성이 있어요.
사용자는 시간 흐름에 따라 주요 사건(이벤트)들을 배치하고, 누가 그 사건에 관여하는지(역할) 쉽게 표시할 수 있습니다.
또한, 각 사건에 필요한 정보나 문제점 등을 카드 형태로 추가하여 모델을 더욱 풍부하게 만들 수 있어요.

Clarify에서는 AI 코파일럿의 도움을 받아 도메인 모델을 빠르게 만들 수 있습니다.
마치 숙련된 조수에게 지시하듯, 원하는 비즈니스 과정에 대해 간단히 설명하면 AI가 초안을 만들어줘요.
예를 들어, '영업팀, 영업 관리자, 고객이 참여하는 CRM(고객 관계 관리) 프로세스'를 요청하면 AI가 관련 단계를 자동으로 생성해 줍니다.
AI가 만들어준 모델에는 각 단계에 필요한 정보(카드)와 데이터 구조(데이터 모델)까지 포함되어 있어서 매우 편리해요.
이렇게 AI의 도움을 받으면 짧은 시간 안에 복잡한 워크플로우 모델을 완성할 수 있습니다.
관점 | 구성 요소 | 설명 |
시스템 관점 | 역할 (Who) | 누가 시스템과 상호작용하는가 |
시스템 관점 | 시스템 (System) | 어떤 시스템에서 상호작용이 일어나는가 |
시스템 관점 | 이벤트 (Event) | 상호작용의 결과로 어떤 일이 발생하는가 |
시스템 관점 | 명령 (Command) | 시스템이 어떤 입력을 받는가 |
시스템 관점 | 결과 (Event) | 시스템이 어떤 출력을 내는가 |
활용 | API 정의 | 시스템 간 소통 방식 정의의 기초 자료로 활용 |
AI가 만들어준 도메인 모델을 다른 시각으로 살펴볼 수도 있어요.
마치 건물의 설계도를 층별 또는 배관별로 나눠보듯, 이 도구는 모델을 시스템 관점에서 보여줍니다.
왼쪽에는 누가(역할), 가운데에는 어떤 시스템에서(시스템), 오른쪽에는 어떤 결과가(이벤트) 나타나는지를 한눈에 파악할 수 있어요.
각 시스템이 어떤 명령(Command)을 받고 어떤 결과(Event)를 내는지 명확하게 볼 수 있죠.
이렇게 정리된 정보는 소프트웨어가 다른 시스템과 어떻게 소통할지 정의하는 API를 만드는 데 아주 중요한 기초가 됩니다.

소프트웨어 개발에서 필요한 데이터를 정의하는 것도 중요해요.
Clarify는 이벤트 스토리(Event Story)라는 방식을 사용하여 데이터를 모델링합니다.
이건 마치 '새로운 고객이 담당자에게 언제, 어디서, 어떤 경로로 만들어졌는지'와 같이 이야기를 풀어나가면서 필요한 정보를 찾아내는 방식이에요.
AI에게 이런 이야기를 들려주거나, 직접 입력하면 AI가 이야기 속에서 어떤 정보(엔티티)가 중요한지 추천해 줍니다.
물론 AI의 추천이 완벽하지는 않지만, 데이터 모델링 과정을 훨씬 빠르게 시작하고 필요한 정보를 놓치지 않도록 도와줍니다.

큰 소프트웨어를 작고 독립적인 부분(마이크로서비스)으로 나누는 것은 요즘 개발 방식의 중요한 특징이에요.
Clarify 도구는 만든 도메인 모델을 바탕으로 어떤 부분을 서비스로 분리할지 쉽게 정할 수 있도록 도와줍니다.
예를 들어, '고객 관리'와 관련된 부분들을 하나의 서비스로 묶고 싶다면, 그 부분만 따로 떼어내는 작업을 할 수 있어요.
이렇게 분리된 서비스들은 각자 자신만의 영역(바운디드 컨텍스트)을 가지게 되는데, 이는 다른 서비스와의 경계를 명확히 하는 데 도움이 됩니다.
도구는 분리된 서비스가 다른 서비스와 어떻게 데이터를 주고받아야 하는지(통합 지점)도 보여줘서 편리해요.
![DevBegin > [영상분석] DDD & Domain Modeling Using AI to Accelerate Design > image-2025-7-4_21-46-5.png](/download/attachments/112034063/image-2025-7-4_21-46-5.png?version=1&modificationDate=1751633238797&api=v2)
도메인 모델링을 마치면, 이제 실제로 작동하는 소프트웨어를 만들 차례예요.
Clarify는 완성된 도메인 모델을 바탕으로 API 코드를 자동으로 생성해주는 기능을 제공합니다.
원하는 프로그래밍 언어나 프레임워크를 선택하면, 도구가 모델에 정의된 내용을 기반으로 기본적인 코드 구조를 만들어줘요.
이렇게 생성된 코드는 완벽하지는 않더라도 즉시 실행해보고 작동하는지 확인할 수 있는 수준입니다.
이를 통해 개발자는 모델링 결과물을 바탕으로 빠르게 코드 구현을 시작할 수 있으며, 기본적인 부분은 자동화하여 시간을 절약할 수 있습니다.
구분 | 장점 | 한계 |
AI 활용 | • 복잡한 개념 빠르게 학습 | • 생성 모델의 불완전성 |
AI 도구를 사용하는 것은 분명 많은 장점이 있지만, 현재의 한계도 명확히 인지해야 합니다.
장점으로는 복잡한 개념을 빠르게 배우고 작업 속도를 높이는 데 효과적이라는 점이 있습니다.
하지만 AI가 생성한 모델이 항상 완벽하거나 원하는 결과와 정확히 일치하지는 않아요.
또한, AI에 너무 의존하면 개발자와 비즈니스 담당자 간의 직접적인 소통이 줄어들 위험도 있습니다.
AI 모델 자체에 편향성이 있을 수 있다는 점도 고려해야 할 부분입니다.
Clarify와 같은 AI 도구는 다양한 상황에서 유용하게 활용될 수 있습니다.
컨설턴트는 워크샵을 준비할 때, 익숙하지 않은 도메인(업무 영역)에 대해 빠르게 파악하고 예시 모델을 만드는 데 사용할 수 있어요.
이렇게 미리 준비된 모델은 워크샵 참가자들의 이해를 돕고 논의를 촉진하는 데 효과적입니다.
주니어 개발자나 컨설턴트의 경우, 이 도구를 통해 다양한 도메인의 기본적인 프로세스를 빠르게 학습하고 실무 경험을 쌓는 데 도움을 받을 수 있습니다.
즉, AI 도구는 숙련된 전문가부터 초심자까지 학습과 실무 효율을 높이는 조력자 역할을 할 수 있습니다.
![DevBegin > [영상분석] DDD & Domain Modeling Using AI to Accelerate Design > image-2025-7-4_21-47-11.png](/download/attachments/112034063/image-2025-7-4_21-47-11.png?version=1&modificationDate=1751633238768&api=v2)
AI 도구는 아직 발전할 부분이 많이 남아있어요.
현재 모델을 수정하고 코드를 다시 생성하는 방식에서 나아가, 코드 수정 내용이 모델에 자동으로 반영되는 양방향 기능이 필요합니다.
또한, 기존 코드를 분석해서 자동으로 모델을 만들어주는 코드 역설계 기능도 유용할 것으로 예상됩니다.
이러한 기능 개선을 위해서는 실제 사용자의 경험과 피드백이 매우 중요해요.
사용자들의 의견을 통해 도구의 장단점을 파악하고, 실제 개발 과정에서 어떤 점이 더 필요한지 알 수 있기 때문입니다.