데이터 흐름 다이어그램(DFD)은 정보 시스템 또는 비즈니스 프로세스를 통한 데이터의 흐름을 시각적으로 표현한 것입니다. DFD는 복잡한 시스템을 더 쉽게 이해할 수 있게 해주며 소프트웨어 엔지니어링, 시스템 분석, 프로세스 개선, 비즈니스 관리 및 애자일 소프트웨어 개발에 널리 사용되는 리소스입니다.
데이터 흐름 다이어그램은 그래픽 기호를 사용하여 데이터가 시스템에 들어오는 시점부터 나갈 때까지의 경로, 프로세스 및 스토리지 저장소를 설명합니다. 이 시각적 모델은 전문가가 기존 시스템과 프로세스의 효율성과 효과를 개선하고 새로운 시스템을 만들 수 있는 방법을 파악하는 데 도움이 됩니다.
예를 들어 보험금 청구 프로세스의 DFD는 보험금 청구가 어떻게 진행되는지 시각화할 수 있습니다.
분석가는 DFD를 검토하여 프로세스의 병목 현상을 파악하고, 사기가 발생할 가능성이 있는 영역을 탐지하고, 이해 관계자가 프로세스를 이해하도록 돕고, 설계를 개선할 수 있습니다.
1970년대에 소프트웨어 엔지니어인 Larry Constantine과 Ed Yourdon은 그들의 저서 "Structured Design"에서 데이터 흐름 다이어그램을 소개했습니다. 이들은 소프트웨어 절차에 초점을 맞추는 대신 소프트웨어 시스템 내에서 데이터가 이동하는 방식에 기반하여 DFD를 구축했습니다.
컴퓨터 과학자인 Tom DeMarco, Chris Gane, Trish Sarson은 오늘날에도 여전히 사용되는 표준화된 데이터 흐름 기호와 표기법을 개발하여 DFD를 대중화하는 데 기여했습니다.
처음에 데이터 흐름 다이어그램은 주로 소프트웨어 엔지니어링 분야에서 사용되었습니다. 비즈니스 프로세스와 워크플로를 이해하고 개선하는 데 도움이 된다는 것이 발견되면서 비즈니스 전문가들이 이를 사용하기 시작했습니다.
1990년대에 통합 모델링 언어(UML)가 도입되면서 소프트웨어 프로그래머들은 더는 소프트웨어 엔지니어링을 위한 데이터 흐름 다이어그램에만 의존하지 않게 되었습니다. UML 다이어그램은 복잡한 객체 지향 시스템의 구조와 동작에 대한 복잡하고 상세한 보기를 제공합니다.
오늘날 DFD는 주로 UML 다이어그램 및 순서도를 보완하는 도구로 사용되며 소프트웨어 개발 중에 높은 수준의 시스템 개요를 제공합니다.
데이터 흐름 다이어그램은 복잡한 시스템이나 프로세스를 통한 정보 흐름을 더 쉽게 이해할 수 있도록 해주기 때문에 중요합니다. DFD는 전체 시스템의 구성 요소를 시각화하여 사용자에게 다음과 같은 도움을 줄 수 있습니다.
DFD에는 다음과 같은 4가지 주요 구성 요소가 있습니다.
이는 DFD에서 데이터 흐름의 시작점과 종료점입니다. 외부 엔티티는 DFD의 가장자리에 배치되어 전체 시스템 또는 프로세스에 대한 정보의 입력 및 출력을 나타냅니다.
외부 엔티티는 사람, 조직 또는 시스템일 수 있습니다. 예를 들어 고객은 구매 및 판매 영수증 수령 프로세스를 모델링하는 DFD의 외부 엔티티일 수 있습니다. 외부 엔티티는 터미네이터(terminator), 행위자(actor), 소스(sources) 및 싱크(sink)라고도 합니다.
프로세스는 데이터를 변경하거나 변환하는 활동입니다. 이러한 활동에는 계산, 정렬, 유효성 검사, 리디렉션 또는 데이터 흐름의 해당 세그먼트를 진행하는 데 필요한 기타 변환이 포함될 수 있습니다. 예를 들어 신용카드 결제 인증은 고객의 구매 DFD 내에서 발생하는 프로세스입니다.
데이터 흐름은 정보가 외부 엔티티, 프로세스, 데이터 저장소 간에 이동할 때 사용하는 경로를 말합니다. 예를 들어 전자 상거래 DFD에서 로그인 자격 증명을 입력하는 사용자를 인증 게이트웨이와 연결하는 경로는 데이터 흐름이 될 수 있습니다.
원, 타원, 화살표, 직사각형과 같은 표준화된 기호와 표기는 DFD 구성 요소를 시각적으로 표현하는 데 사용됩니다. 오늘날 데이터 흐름 다이어그램 템플릿에는 Yourdon 및 Coad 방법론과 Gane 및 Sarson 방법론이라는 두 가지 일반적인 표기법이 사용됩니다. 두 시스템 모두 이를 만든 컴퓨터 과학자의 이름을 따서 명명되었습니다.
이 방법론은 프로세스와 데이터 저장소를 나타내는 데 사용하는 기호는 다르지만 그 외에는 동일합니다.
시스템이나 프로세스에 대해 서로 다른 관점을 제공하는 두 가지 유형의 DFD, 즉 논리적 DFD와 물리적 DFD가 있습니다.
논리적 DFD는 기술 또는 구현 세부 정보를 다루지 않고 비즈니스 또는 시스템 프로세스를 수행하는 데 필요한 데이터 흐름에 대한 높은 수준의 보기를 제공합니다. 필요한 데이터와 비즈니스 목표를 달성하기 위해 데이터가 프로세스를 통해 어떻게 이동하는지에 초점을 맞추고 있습니다.
논리적 DFD는 물류창고에서의 주문 처리, 온라인 구매 고객, 의료 시설에서의 환자 입원과 같은 비즈니스 활동을 나타낼 수 있습니다.
물리적 DFD는 필요한 소프트웨어, 하드웨어 및 파일을 포함하여 시스템 또는 프로세스의 구현을 시각화합니다. 물리적 DFD는 시스템 또는 프로세스의 기본 기술, 절차 및 운영에 중점을 둡니다.
물리적 DFD는 공급망 소프트웨어가 창고에서 재고를 유지하는 방법 또는 전자 의료 기록이 병원 시스템을 통해 안전하게 이동하는 방법과 같은 복잡한 시스템 및 워크플로를 나타내는 데 자주 사용됩니다.
데이터 흐름 다이어그램은 시스템이나 프로세스에 대해 점진적으로 더 많은 세부 정보를 표시하기 위해 여러 DFD 레벨로 만들어지기도 합니다. 이 계층화된 접근 방식은 단순한 상위 수준의 보기에서 시작하여 하위 수준의 DFD가 프로세스와 하위 프로세스로 더 깊이 들어가면서 더욱 복잡해집니다.
"컨텍스트 다이어그램"이라고도 하는 레벨 0 DFD는 전체 시스템을 단일 프로세스로 시각화하는 고급 보기입니다. 가장 간단하고 기본적인 레벨입니다. 기술력이나 직무에 관계없이 보는 모든 사람이 쉽게 이해할 수 있어야 합니다.
레벨 1 DFD는 상위 레벨 프로세스의 구성 요소를 더 자세히 살펴봅니다. 컨텍스트 수준 DFD에서 단일 프로세스였던 것이 기능 및 데이터 흐름 경로에 대한 자세한 정보를 제공하는 하위 프로세스로 세분화됩니다.
레벨 2는 새로운 하위 프로세스와 데이터 흐름 및 데이터 저장소와의 상호 작용 및 관계를 추가하여 훨씬 더 세분화된 세부 정보를 제공합니다. 이 레벨은 시스템 또는 프로세스의 내부 작업에 대한 매우 복잡한 보기를 제공합니다.
DFD는 접근하기 쉽고 이해하기 쉽도록 고안되었기 때문에 레벨 2의 복잡성을 뛰어넘는 것은 드문 일입니다. 그러나 매우 복잡한 시스템에는 데이터 프로세스 또는 시스템의 모든 측면을 매핑하는 레벨 3 DFD의 정교한 세부 사항이 필요할 수 있습니다.
대부분의 데이터 흐름 다이어그램은 동일한 기본 규칙을 따릅니다.
탁월한 고객 및 직원 경험을 제공하기 위해 데이터 사일로를 제거하고, 복잡성을 줄이며, 데이터 품질을 개선하는 데이터 전략을 구축하세요.
watsonx.data를 사용하면 오픈, 하이브리드 및 관리형 데이터 저장소를 통해 데이터의 위치와 관계없이 모든 데이터로 분석과 AI를 확장할 수 있습니다.
IBM Consulting을 통해 엔터프라이즈 데이터의 가치를 실현하여 비즈니스 이점을 제공하는 인사이트 중심의 조직을 구축하세요.