순서도

섬네일|right|C 언어의 for 루프 순서도
순서도()는 문제 해결을 위한 단계별 접근 방식을 제시하는 다이어그램의 일종이다. 워크플로나 프로세스 또는 알고리즘을 도식적으로 표현한 것으로, 다양한 종류의 상자와 이를 이어주는 화살표를 이용해 주어진 문제에 대한 솔루션 모델을 보여준다.

데이터 흐름은 대체적으로 순서도가 쓰이진 않고 대신 데이터 흐름도가 쓰인다. 순서도는 여러 분야에서 프로세스나 문제의 분석, 디자인, 설계, 문서 작성이나 관리 등으로 활용되고 있다.SEVOCAB: Software and Systems Engineering Vocabulary. Term: Flow chart. Retrieved 31 July 2008.

 기호 
순서도 작성 시 필요한 기호는 국제 표준화 기구 1965년 10월 SC7 총회에서 표준안으로 결의된 기호를 사용한다. 순서도의 기호 사용시에는 몇가지 사용 규칙이 있다.

 기호의 내부에는 처리해야 할 내용이 들어가야 한다.
 순서는 위에서 아래로, 왼쪽에서 오른쪽을 원칙으로 하며 그 외의 경우는 화살표를 사용해야 한다.
 흐름선은 서로 교차해도 무관하며 서로 영향을 주지 않는다.
 흐름선 여러 개가 모여 하나로 합칠 수 있다.
 기호의 모형은 가로, 세로의 비율은 정하지 않으나 잘 구분할 수 있어야 한다.

순서도의 기호들은 총 30개이며 기본 기호, 프로그래밍 관련 기호, 시스템 관련 기호 3가지 종류로 나뉠 수 있다.

 일반적 기호 
 ANSI/ISO 형태 명칭 설명 100px 흐름선 프로세스의 실행 순서를 나타낸다 100px 터미널 하위 프로세스나 프로그램의 시작과 끝을 나타낸다. 100px 처리 데이터의 값, 형태, 장소을 변경하는 한 세트의 실행을 표현한다. 100px 판단 프로그램이 실행되는 두 가지 경로 중에 하나를 결정하는 조건부 실행을 나타낸다. 일반적으로 예/아니오 질의이거나 참/거짓 검사이다. 100px 입력/출력 데이터를 입력하거나 결과를 출력하는 경우와 같이 데이터의 입력과 출력을 나타낸다. 100px 주석 (Comment)  100px 서브루틴 다른 곳에 정의되어 명명된 프로세스를 나타낸다. 50px 페이지 내 연결자정보가 기재된 연결자의 쌍은 순서도의 한 페이지에서 길거나 혼란스러운 선을 대체하며, 내부에 글자가 기재된 작은 원으로 표현된다. 50px 페이지 간 연결자연결하려는 대상이 다른 페이지에 있을 때 사용하는 연결자로, 내부에 정보가 기재된다.

 기타 기호 
형태명칭설명54x54px|Flowchart database데이터 파일 또는 데이터베이스실린더로 표현되는 데이터.64x64px|Flowchart Document문서 단일한 문서64x64px|Flowchart Document multiple 다수의 문서67x67px|Flowchar Manual input메뉴얼 실행 수동으로만 실행되는 경우66x66px|Flowchart manual input 메뉴얼 입력70x70px|Flowchart Preparation준비 또는 초기화

 종류 
순서도의 종류로는 시스템 순서도와 프로그램 순서도가 있으며 프로그램 순서도에는 개략 순서도와 상세 순서도로 나뉘어 진다.

 시스템 순서도 
시스템 순서도는 어떤 작업을 하는지 알려주는 순서도로 자료가 정보로 변환되는 과정을 컴퓨터가 처리하는 과정, 데이터의 흐름을 중심으로 도식화 한 것이다. 데이터 흐름을 중심으로 작성하는 특징으로 인해 데이터가 처리되는 작업 단위로 나타내고 데이터가 변환되는 매체들을 표현하며 프로그램 논리는 작성하지 않는다. 작업 내용을 총괄적으로 검토하고 프로그래밍 작업과 연결시켜줄 때 사용하는 순서도이다.

 프로그램 순서도 
프로그램 순서도는 작업을 어떤 식으로 하는지 표시해주는 순서도로 처리 단위 하나하나 단위로 작성하게 되며 순서도의 설명의 세밀도에 따라 개략 순서도와 상세 순서도로 나뉘어 진다. 프로그램을 작성할 때 일반적으로 쓰는 순서도이다.

개략 순서도는 하나의 업무를 전체적, 종합적으로 나타낸 순서도로 해당 작업의 진행 순서를 표시한다. 프로그램 작성시 개략 순서도를 작성하고 논리적으로 이상이 없는지 검토하게 되면 이어서 상세 순서도를 작성하게 된다.

상세 순서도는 프로그램 내부를 상세히 나타내는 순서도로 컴퓨터의 모든 조작과 자료의 이동 과정을 순서대로 나타내 그대로 코딩할 수 있도록 상세하게 작성한 순서도이다. 프로그램 작성 시 최종 검토 자료로 쓰게 된다.

 순서도 소프트웨어 
최근에는 많은 순서도 소프트웨어가 있다. 아래는 가장 일반적으로 쓰는 프로그램이다.

 무료 프로그램 
 Draw.io: 온라인 순서도 도구.
 GitMind: 온라인 순서도 및 마인드 맵 도구, 무료 순서도 템플릿을 제공한다.

 상용 소프트웨어 
 Creately: 실시간 협업 기능이있는 온라인 다이어그램 도구.
 Lucidchart: 온라인 다이어그램 도구, 실시간 협업 가능하다.
 SmartDraw: 온라인 다이어그램 도구, 다양한 템플릿을 제공한다.
 XMind: 마인드맵, 피시본 다이어그램, 트리 다이어그램, 조직도, 스프레드시트 등을 지원한다.
 Microsoft Visio: 그림이나 도표를 그리는 소프트웨어다.

 인용 

 같이 보기 
 활동 다이어그램
 제어 흐름 그래프
 나시슈나이더만도
 상태도 (오토마타 이론)
 데이터 시각화
 의사코드
 통합 모델링 언어
 워크플로

 외부 링크 

  Flowcharting Techniques  An IBM manual from 1969 (5MB PDF format)
  Advanced Flowchart - Why and how to create advanced flowchart
 흐름도

분류:다이어그램
분류:기술 소통
분류:컴퓨터 프로그래밍
분류:코드 예시에 관한 문서
분류:미국의 발명품
분류:알고리즘 기술 언어
분류:모델링 언어