데이터 흐름도란?

DFD가 필요한 이유는 무엇인가요?

DFD는 처음이며, 더 자세히 알아보고 싶어요.
Lucidchart에서 직접 DFD를 만들고 싶어요.

적합한 데이터 흐름도 소프트웨어를 사용하면 데이터 흐름을 손쉽게 파악할 수 있습니다. 이 가이드에서는 데이터 흐름도의 정의, 역사와 기호 및 표기법 등 데이터 흐름도에 관하여 알아야 할 모든 사항을 설명합니다. 또한 DFD의 여러 레벨, 논리적 DFD와 물리적 DFD의 차이와 DFD를 만드는 방법에 관한 팁도 알아봅니다.  

4 분 읽기

직접 DFD를 만들고 싶으신가요? Lucidchart를 사용해보세요. 빠르고 사용이 쉬우며 100% 무료입니다.

DFD 만들기

데이터 흐름도란?

데이터 흐름도(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가지 구성 요소를 나타냅니다.

  1. 외부 개체:

    다이어그램에 묘사된 시스템과 통신하며 데이터를 전송하거나 수신하는 외부 시스템. 시스템에서 수신하거나 발신하는 정보의 출처이자 목적지입니다. 외부 개체는 외부 조직이나 인물, 컴퓨터 시스템이나 비즈니스 시스템일 수 있으며, '터미네티어', '출처', '싱크' 또는 '행위자'라고도 합니다. 보통 다이어그램의 가장자리에 그립니다.
  2. 프로세스:

    데이터를 변경하여 출력을 도출하는 모든 프로세스. 프로세스는 연산을 수행하거나, 논리에 따라 데이터를 정렬하거나, 비즈니스 규칙에 따라 데이터 흐름의 방향을 정할 수 있습니다. "결제를 제출한다"와 같은 짧은 라벨을 사용하여 프로세스를 설명합니다.
  3. 데이터 저장:

    추후 사용할 정보를 보관하는 파일이나 리포지토리를 의미합니다. 데이터베이스 테이블이나 멤버십 양식 등이 이에 해당합니다. 각 데이터 저장은 "주문"과 같은 간단한 라벨을 수신합니다.
  4. 데이터 흐름:

    외부 개체, 프로세스와 데이터 저장 사이를 오가는 데이터의 경로. 다른 구성 요소 사이의 인터페이스를 나타내며, 화살표로 표시됩니다. 보통 "쳥구 상세 정보"와 같은 짧은 데이터 이름이 쓰인 라벨이 첨부되어 있습니다.

표기법

Yourdon과 Coad

Gane과 Sarson

외부 개체
Yourdon과 Coad 외부 개체
Gane과 Sarson 외부 개체
프로세스
Yourdon과 Coad 프로세스
Gane과 Sarson 프로세스
데이터 저장
Yourdon과 Coad 데이터 저장
Gane과 Sarson 데이터 저장
데이터 흐름
Yourdon과 Coad 데이터 흐름
Gain과 Sarson 데이터 흐름

더 자세히 알아보고 싶으신가요? 모든 다이어그램 기호 및 표기법과 사용법은 여기서 확인할 수 있습니다.

DFD의 규칙 및 팁

  • 각 프로세스에는 하나 이상의 입력과 출력이 있어야 합니다.
  • 각 데이터 저장에는 하나 이상의 데이터 흐름 입력과 데이터 흐름 출력이 있어야 합니다.
  • 시스템에 저장된 데이터는 프로세스를 거쳐야 합니다.
  • DFD의 모든 프로세스는 다른 프로세스나 데이터 저장으로 이어집니다.

직접 DFD를 만들고 싶으신가요? Lucidchart를 사용해보세요. 빠르고 사용이 쉬우며 100% 무료입니다.

DFD 만들기

DFD 레벨과 레이어: 맥락도에서 유사 부호까지

데이터 흐름도에서는 레벨과 레이어를 사용하여 특정 개체를 집중적으로 조명함으로써 훨씬 더 많은 상세 정보를 살펴볼 수 있습니다.  DFD 레벨에는 0, 1 또는 2의 숫자가 지정되며, 간혹 레벨 3 이상이 지정되기도 합니다. 필요한 상세 정보 레벨은 달성하려는 내용의 범위에 따라 달라집니다.

  • DFD 레벨 0은 맥락도라고도 합니다. 맥락도는 분석 또는 모델링의 대상인 시스템 전체나 프로세스의 기본적인 개요를 나타내며, 시스템을 외부 개체와의 관계와 함께 하나의 개략적인 프로세스로 한눈에 보여주도록 디자인되었습니다. 맥락도는 이해관계자, 비즈니스 분석가, 데이터 분석가와 개발자를 비롯한 광범위한 대상이 쉽게 이해할 수 있어야 합니다. 
맥락도
  • DFD 레벨 1은 맥락도의 여러 부분을 보다 자세하게 분석한 도표입니다. 여기서는 맥락도의 개략적인 프로세스를 하위 프로세스로 나누어 분석하면서 시스템이 수행하는 주요 기능을 강조합니다. 
레벨 1 다이어그램
  • DFD 레벨 2는 레벨 1의 부분을 더 심층적으로 분석합니다. 시스템의 기능을 필요한 만큼 자세하게 설명하기 위해 더 많은 텍스트가 포함될 수 있습니다.
레벨 2 다이어그램
  • 레벨 3~4 및 그 이상의 전개도 가능하나, 레벨 3 이상으로 전개되는 경우는 드뭅니다. 이렇게 하는 경우 도표가 복잡해져서 효과적으로 의사소통하고 비교하고 모델링하기가 어려울 수 있습니다.

DFD 레이어를 사용하여 연속 레벨을 다이어그램에서 직접 중첩하여 도표를 더욱 깔끔하게 정리하고 상세 분석에 더욱 쉽게 액세스할 수 있도록 할 수 있습니다.

DFD를 충분히 상세하게 만들면 개발자와 디자이너가 유사 부호(영어와 코딩 언어의 조합)를 작성하는 데 DFD를 사용할 수도 있습니다.  유사 부호는 실제 코드의 개발을 촉진합니다.

DFD 사용 예시

데이터 흐름도는 여러 분야에서 다양한 시스템의 분석이나 모델링에 적합합니다.

소프트웨어 엔지니어링 분야의 DFD:

1970년대에 데이터 흐름도가 급부상한 분야가 바로 소프트웨어 엔지니어링입니다. DFD는 기술개발 시 코딩 전에 더 많은 조사를 실시하는 더욱 집중적인 접근법을 제공할 수 있습니다.

비즈니스 분석 분야의 DFD:

비즈니스 분석가들은 DFD를 사용하여 기존 시스템을 분석하고 비효율적인 부분을 찾습니다. 프로세스를 다이어그램으로 나타내면 자칫 놓치거나 온전히 이해하기 힘든 단계를 발견할 수 있습니다.

비즈니스 프로세스 재설계 분야의 DFD:

 비즈니스 프로세스에서 더욱 효율적이고 효과적인 데이터 흐름을 모델링하는 데 DFD를 사용할 수 있습니다. BPR은 1990년대에 운영 비용을 절감하고, 고객 서비스를 개선하고 시장 경쟁력을 제고하기 위해 개척되었습니다.

애자일 개발 분야의 DFD:

비즈니스 및 기술 요건을 시각화하고 이해하며 다음 단계를 계획하는 데 DFD를 사용할 수 있습니다. DFD는 신속한 개발에 집중하기 위한 간단하지만 강력한 의사소통 및 협업 도구로 기능하기도 합니다.

시스템 구조 분야의 DFD:

모든 시스템이나 프로세스는 기술적 및 비기술적 방식에 따라 점진적 상세 수준으로 분석하여 개선할 수 있습니다.

DFD와 통합 모델링 언어(UML)의 비교

DFD는 시스템의 데이터 흐름을 나타내며, UML은 객체지향 소프트웨어 설계에서 더욱 자세한 보기를 제공하기 위해 사용되는 모델링 언어입니다. 물론 DFD는 좋은 시작점으로 기능할 수 있으나, 실제로 시스템을 개발할 개발자는 클래스 다이어그램이나 구조도와 같은 UML 다이어그램을 사용하여 원하는 특수함을 달성합니다.

논리적 DFD와 물리적 DFD의 비교

데이터 흐름도는 논리적 DFD와 물리적 DFD, 이 두 가지 분류로 나눌 수 있습니다. 논리적 DFD는 비즈니스의 운영에 필수적인 데이터 흐름을 나타냅니다. 이 DFD는 시스템의 작동 방식이나 작동 원리가 아닌 비즈니스와 필요한 정보를 집중적으로 보여줍니다. 반면, 물리적 DFD는 현재 시스템이 실제로 구현된 방식이나 추후 구현될 방식을 나타냅니다. 예를 들어, 논리적 DFD에서 프로세스는 비즈니스 활동인 반면, 물리적 DFD에서 프로세스는 프로그램과 수동 절차입니다.

더 자세히 알아보고 싶으신가요? 논리적 DFD와 물리적 DFD를 자세히 비교한 내용을 살펴보세요.

데이터 흐름도를 만드는 방법

Lucidchart를 사용하여 온라인에서 직접 DFD를 만들어보세요. Lucidchart의 DFD 예시와 특수 표기법을 사용하여 시스템의 데이터 흐름을 시각적으로 나타내세요. Lucidchart의 데이터 흐름도 작성기는 간단하지만 강력한 기능을 자랑합니다. 우선 템플릿으로 시작하여 Lucidchart의 도형을 사용해 비즈니스의 프로세스, 데이터 저장, 데이터 흐름과 외부 개체를 맞춤 설정해보세요.


유용한 리소스

Lucidchart를 사용하면 빠르고 쉽게 데이터 흐름도를 그릴 수 있습니다. 지금 바로 무료 평가판을 다운로드하여 만들고 협업해보세요. 

직접 DFD를 만들고 싶으신가요? Lucidchart를 사용해보세요. 빠르고 사용이 쉬우며 100% 무료입니다.

시작하기

  • 가격
  • 개인
  • 엔터프라이즈
  • 영업팀에 문의하기
개인정보 보호정책법률적인쿠키 설정쿠키 정책
  • linkedin
  • twitter
  • instagram
  • facebook
  • youtube
  • glassdoor
  • tiktok

© 2024 Lucid Software Inc.