적합한 데이터 흐름도 소프트웨어를 사용하면 데이터 흐름을 손쉽게 파악할 수 있습니다. 이 가이드에서는 데이터 흐름도의 정의, 역사와 기호 및 표기법 등 데이터 흐름도에 관하여 알아야 할 모든 사항을 설명합니다. 또한 DFD의 여러 레벨, 논리적 DFD와 물리적 DFD의 차이와 DFD를 만드는 방법에 관한 팁도 알아봅니다.
4 분 읽기
직접 DFD를 만들고 싶으신가요? Lucidchart를 사용해보세요. 빠르고 사용이 쉬우며 100% 무료입니다.
데이터 흐름도란?
데이터 흐름도(DFD)는 프로세스나 시스템의 정보 흐름을 나타냅니다. DFD는 직사각형, 원형이나 화살표와 같은 정의된 기호와 함께 짧은 텍스트 라벨을 사용하여 데이터 입력, 출력, 저장 지점 및 각 도착지 사이의 경로를 표시합니다. 데이터 흐름 차트는 손으로 그린 단순한 프로세스 개요부터 데이터 취급 방식을 훨씬 더 심도 있게 분석하는 심층적이고 다층적인 DFD까지 다양합니다. DFD는 기존의 시스템을 분석하거나 새로운 시스템을 모델링할 때 사용할 수 있습니다. DFD는 다른 유용한 다이어그램과 차트처럼 말로 설명하기 어려운 것들을 시각적으로 나타낼 수 있으며, 개발자부터 CEO까지 기술 인력과 비기술 인력 모두가 쉽게 이해할 수 있습니다. 이것이 바로 DFD가 오랫동안 인기를 끄는 이유입니다. DFD는 데이터 흐름 소프트웨어와 시스템에 효과적인 반면, 오늘날에는 대화형, 실시간 또는 데이터베이스 지향적인 소프트웨어나 시스템을 시각화하는 용도로는 잘 사용되지 않습니다.
DFD의 역사
데이터 흐름도는 1970년대 말에 컴퓨터 분야의 선구자인 Ed Yourdon과 Larry Constantine의 저서 구조화된 설계에서 소개되면서 널리 사용되기 시작했습니다. 이 두 학자는 David Martin과 Gerald Estrin의 '데이터 흐름 그래프' 연산 모델에 기반하여 데이터 흐름도를 고안했습니다. 구조화된 설계 개념은 소프트웨어 엔지니어링 필드에서 각광을 받았으며, 이와 함께 DFD 방법론도 인기를 끌기 시작했습니다. DFD는 비즈니스 분석에 응용되면서 학계보다는 경영업계에서 더 큰 인기를 얻었습니다.
또한 다음의 두 가지 관련 개념이 이에 기여했습니다.
- Yourdon과 Peter Coad가 애플리케이션 또는 시스템 설계 방법으로 제안한 개체지향적 분석 및 설계(OOAD).
- 정보시스템 분석 및 설계를 위한 폭포수 방식인 구조화된 시스템 분석 및 설계 방법(SSADM). 이 엄격한 문서화 접근법은 스크럼 및 동적 시스템 개발 방법(DSDM)과 같은 최첨단 애자일 접근법과 대조됩니다.
이와 같은 DFD 방법론의 부상에 기여한 또 다른 전문가는 Tom DeMarco, Chris Gane과 Trish Sarson이었습니다. 이 세 전문가는 서로 짝을 지어 데이터 흐름도에 사용되는 여러 기호와 표기법을 정의했습니다.
DFD에서 사용되는 기호와 표기법
일반적으로 사용되는 두 가지 시스템은 다음과 같이 고안한 사람들의 이름을 따 명명되었습니다.
- Yourdon과 Coad
- Yourdon과 DeMarco
- Gane과 Sarson
이들이 고안한 기호의 주요한 차이점은 Yourdon-Coad와 Yourdon-DeMarco는 원으로 프로세스를 나타내는 반면, Gane과 Sarson은 모서리가 둥근 직사각형(마름모꼴이라고도 함)으로 프로세스를 나타낸다는 것입니다. 다른 기호 조합도 사용되므로, 다른 사람과 소통하고 협업할 때 일관되고 명확한 도형과 표기법을 사용해야 합니다.
어느 협약의 DFD 규칙 또는 가이드라인을 사용하든, 기호는 데이터 흐름도의 4가지 구성 요소를 나타냅니다.
외부 개체:
다이어그램에 묘사된 시스템과 통신하며 데이터를 전송하거나 수신하는 외부 시스템. 시스템에서 수신하거나 발신하는 정보의 출처이자 목적지입니다. 외부 개체는 외부 조직이나 인물, 컴퓨터 시스템이나 비즈니스 시스템일 수 있으며, '터미네티어', '출처', '싱크' 또는 '행위자'라고도 합니다. 보통 다이어그램의 가장자리에 그립니다.프로세스:
데이터를 변경하여 출력을 도출하는 모든 프로세스. 프로세스는 연산을 수행하거나, 논리에 따라 데이터를 정렬하거나, 비즈니스 규칙에 따라 데이터 흐름의 방향을 정할 수 있습니다. "결제를 제출한다"와 같은 짧은 라벨을 사용하여 프로세스를 설명합니다.데이터 저장:
추후 사용할 정보를 보관하는 파일이나 리포지토리를 의미합니다. 데이터베이스 테이블이나 멤버십 양식 등이 이에 해당합니다. 각 데이터 저장은 "주문"과 같은 간단한 라벨을 수신합니다.데이터 흐름:
외부 개체, 프로세스와 데이터 저장 사이를 오가는 데이터의 경로. 다른 구성 요소 사이의 인터페이스를 나타내며, 화살표로 표시됩니다. 보통 "쳥구 상세 정보"와 같은 짧은 데이터 이름이 쓰인 라벨이 첨부되어 있습니다.
표기법 |
Yourdon과 Coad |
Gane과 Sarson |
---|---|---|
외부 개체 | ||
프로세스 |