도형을 이용하는 순서도, 도움이 돼?

2011.07.08 14:55 컴퓨터/컴퓨터 이야기

며칠 전, Falinux Forum에 이런 글을 올렸습니다. 일반적으로 사용하는 순서도가 과연 도움이 되느냐 하는 질문과 경험을 비추어 볼 때 작업 중에는 별로 도움이 안 되고, 고작 납품 때 함께 제출되는 첨부 파일 용도 외에는 소용이 없더라 하는 얘기였습니다. 순서도를 제대로 이용하지 못하는 것인지 몰라도 도형으로 작성되는 순서도는 정말이지 저를 괴롭히는 문서 파일일 뿐 작업에 도움 받지를 못합니다.

물론, 만들어진 순서도는 인수인계를 받는 분이나 관리자의 이해를 돕겠지만, 그렇다고 하더라도 순서도는 매우 비효율적이라도 생각합니다. 아래의 순서도를 보시죠. 매우 낯이 익은 모습으로 작성되어 있습니다.

 

글씨를 작게 줄이고 도형을 줄여도 A4 한 장에 출력할 수 있는 내용은 매우 적습니다. 그림으로 그렸으니 이해하기 쉬울까요? 저는 그렇게 생각하지 않습니다. 위처럼 간단한 경우에는 쉬울지 모르지만, 조금만 복잡해 지면 마치 전자 회로 같이 보입니다. 나중에는 이해 하기 위해 순서도를 분석해야 합니다. 이해하기 위해 만들어진 자료가 분석이 필요하다고 한다면 과연 순서도가 제 구실을 한다고 할 수 있을까요?

도형을 이용하는 순서도는 작성하기 어려울 뿐 아니라 수정하는 데에도 매우 많은 시간과 노력이 들어 간다는 치명적인 문제점을 가지고 있습니다. 가뜩이나 프로그램 짜기도 힘들어 죽겠는데, 하루가 멀다 하고 계속 바뀌는 코드를 순서도와 일치 시켜야 한다면, 아무리 부지런한 사람도 포기할 것입니다. 결국 일이 끝나고 나서야 문서 제출용으로 만들 수 밖에 없습니다.

그러나 순서도와 같이 작업의 흐름을 보여 주는 방법은 반드시 필요합니다. 혼자 작업 때뿐만 아니라 공동 작업할 때에는 프로젝트라는 배가 산으로 가지 않게 하기 위해서는 반드시 필요한 내용입니다.

그렇다면 작성하기 쉽고 이해하기 쉬우면서, 그러니까 어떻게 하면 효율적인 작업 흐름도를 작성할 수 있을까요? 저는 예전에 "마소"라는 애칭으로 불렸던 Microsoftware 라는 잡지 책에 소개된 탑다운 방식을 사용하고 있습니다. 어느 분이 만드셨는지 지금은 기억도 안 나지만, 이렇게 좋은 방법을 왜 널리 퍼지지 않는지 모르겠습니다.

바로 아래와 같이 작성하는 방법입니다. 아마, 알고 계시는 분도 많으실 것입니다. 그러나 다른 분이 사용하는 모습을 본 적이 없습니다.

더 많은 내용을 입력할 수 있고 무엇을 어떻게 처리하는지 알 수 있을 뿐 더러 프로그램 코드에 바로 적용할 수 있습니다. 내용 추가나 삭제도 매우 편합니다. 물론 수고로운 부분이 없는 것은 아니지만, 기존의 도형을 이용하는 순서도 보다는 매우 편하지요.

그러나 워드에서 블록 묶음을 보여 주는 직선과 열을 맞추어 입력하는 것은 쉬운 일이 아니지요. 그래서 저는 워드의 표 기능을 이용하고 있습니다.

Falinux 포럼에도 이 글을 올렸지만, 다시 jwmx 에 올리는 이유는 다른 분의 아이디어를 구하고 싶어서 입니다. 어떻게 하시나요? 도형을 이용하는 순서도를 사용하시나요? 아니면 순서도 없이 코딩을 문서 수준으로 작성하시나요? 사용하시는 아이디어를 나누어 주세요. ^^

신고
이 댓글을 비밀 댓글로
    • seed
    • 2011.07.08 15:27 신고
    흠... 저 같은 경우는 NS차트를 많이 이용했습니다. 도형을 이용한 순서도는 좀 길어지면 역시 복잡해 뵈더군요...
    • NS챠트를 사용하시는군요. NS챠트도 플로우보다는 효율이 좋겠습니다. 그런데 워드로 작업하기가 어렵지 않나요? ^^;
  1. 도형을 이용하는 이유는 도형 자체가 주는 의미로 쉽게 이해시키기 위함이 아닐까 싶기도 해요.
    저는 그냥 다 귀찮아서 네모로 다 통일해서 쓰기는 하지만 말이죠 -.-;
    • 하하, 맞습니다. 저도 왠만하면 네모로 합니다. 그런데 제출용은 구색을 갖추어야 하기 때문에 또 하나의 일이 되고 맙니다. ^^
    • 자쿠
    • 2011.07.08 19:43 신고
    트리구조로 문서 작성할땐 프리마인드라는 마인드맵 제작 프로그램 쓰면 편합니다. 다른 양식으로 내보내기도 지원되구요
  2. 저도 역시 순서도보다는 수도코드에 한표!
  3. 확실히 누가 머래도...
    텍스트 기반이 비교도 편하고 버전관리가 편하죠.

    일부에서는 visio 등을 이용한다는데 말이죠 ^^;
    • realbj
    • 2011.07.09 21:15 신고
    저는 위의 내용에다가 앞에다가 번호를 매깁니다.

    1 자기진단기능 실행
    1-1 테스트 1번을 실행할지 질의
    1-2-1 OK 눌렀을때

    이런 식으로요.. 그럼 번호를 통해서 실행 단위를 어느 정도 구분하기 쉽더라구요

    [], {} 인 경우에는 가끔 순서를 세야 하지만 번호로 구분하면 작성할땐 약간 귀찮지만 내용이 길때는 구분하기가 용이 하더라구요

    번호도 글을 작성 할 때마다 메기기도 하지만 다 작성하고 검토하면서
    번호 적는 것도 괜찮더라구요 엑셀을 이용하면 더욱 쉽구요..
    • 오우~ 매우 훌륭한 아이디어 입니다. 저도 그렇게 사용해야 겠습니다. 알려 주셔서 감사합니다. ^^
    • 다크
    • 2011.07.11 13:44 신고
    저는 기획자인데요...
    프로그래머에게 순서도를 그려주는것이 이해에 도움이 되는지 의문이었는데,
    이 글이 많은 도움이 되네요. ^^
    감사합니다.
    • dmasi
    • 2011.08.07 01:42 신고
    탑다운이라 -ㅁ-;; 베이직 생각나네요.

    제 경우엔 기능을 서술해두는 정도로 만족합니다. 어짜피 탑다운 보고 있을 정도라면 소스를 바로 보는쪽이 빠를듯 하네요. 순서도의 목적이라면 시퀸스 다이어그램쪽이 낫다고 봅니다. 그리다 보면 생각지 못한 로직오류를 미리 발견하거나 보완도 할 수 있구요.
    • 네, 저 같은 경우도 어렵게 너무 복잡하게 만들어 놓아도 나중에는 전혀 다른 프로젝트가 되는 경우가 있어서 간단히 기술합니다. ^^