바오밥나무

비즈니스 프로세스를 그리자. — BPMN 2.0

In Web Posted May 19, 2021
Extra Form
저작자 Hans
출처 https://medium.com/@goldfing/%EB%B9%84%E...30b3295dcf
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

소프트웨어 프로젝트 문서를 작성하면서 사용자가 어떻게 사용하고, 시스템은 어떻게 작동하는지 그림으로 나타내야 할때가 다반사이다.

사용자가 이 시점에서 무엇을 해야하고, 입력받은 시스템은 어떻게 동작해야 하는지 그림으로 그리려면 Flow Chart(1921년부터 사용, 1985년 ISO 표준 제정)와 UML을 많이 사용했을 것이다.

하지만 엔지니어링에 포커스를 둔 Flow Chart와 UML은 어딘가 모르게 3% 정도 부족할때가 생기게 마련이다.(혹시.. 나만 그런가?)

2,005년에 UML의 복잡성을 과감하게 단순화(Simplify)시킨 새로운 표준이 나왔으니 이름하여 BPMN(Business Process Modeling Notation) 1.0이다.

그리고 여러번의 판올림을 하고 나서 2011년에 BPMN 2.0이 제정되었다.

역사는 이쯤에서 하고..

왜 BPMN을 만든 것일까?

단적으로 액티비티 다이어그램이 가진 부족한 점을 보완하기 위함이다. UML은 비즈니스 프로세스보다 소프트웨어 개발 관점에서 바라본다. 그래서 비즈니스 프로세스를 표현하기에는 부족한 면이 있었다. 그래서 비즈니스 프로세스 관점에서 프로세스를 표현하는 접근방식을 취하고 있다.

BPMN의 구성

BPMN은 3가지로 구성되어 있다.

Basic

가장 기초적인 구성이다. 도형도 간단하고 기술자가 아닌 사람들도 10분 정도만 인지하고 바로 적용할 수 있을 정도로 쉽다.

Core

SW 엔지니어들이 보기 시작하는 단계이다. Basic에서 좀더 세분화된 구성이다. 시스템을 구현할때 필요로 하는 Activity에 대한 세부 분류가 표현 가능하고, 예외 처리도 표현 가능하다.

Advaned

실제 코드를 다이어그램으로 표현하는 수준이다. Core보다 더 SW 엔지니어링에 가깝도록 세분화 되어 있다. 이 수준은 BPM 시스템에 구현하면 실제로 동작하는 단계이다.

이 포스팅에서는 가장 많이 사용하는 Element를 기준으로 기술한다.

BPMN의 요소들(Elements of BPMN)

BPMN의 규칙은 아주 간단하다. 무조건 Start로 시작해서 End로 끝내야 한다. 액티비티간에 흐름이 끊어지면 안된다. 이것만 지키면 된다.

시작, 종료를 표기하자.

Flow Dimension(Start, Intermediate, End).png

 

Intermediate는 시작과 종료 중간에 유입되는 이벤트를 나타낸다.

프로세스 액티비티(Activity)를 표기하자.

액티비티의 모양은 모서리가 둥근 사각형이다. 사각형 안에 프로세스명을 기입하면 된다.

 

Activity.png

 

이제는 서로를 이어줘야 할 시간! — Connections

서로를 이어줄때도 규칙과 모양이 다르다.

  • Sequence Flow

프로세스의 흐름을 나타낸다. Activity를 비롯한 Element들을 이어준다. 하지만 나중에 나올 Swimlane을 벗어나지 못한다는 제약사항이 있다. 실선에 색칠된 삼각형으로 표기한다.

 

Sequence Flow.png

 

  • Message Flow

Swimlane간에 전달하는 메시지를 의미한다. 메시지라함은 말(Speak), 시스템 등록같은 다른 사람이나 시스템에 지시와 요청을 전달하는 것을 포괄적으로 나타낸다. 점선에 빈 삼각형 화살표로 표기한다.

 

Message Flow.png

 

  • Association

액티비티와 관련된 산출물을 연결할때 사용한다. 산출물은 말(Speak), 제품, 데이터등 포괄적인 의미를 갖고 있다. 작은 점선으로 표기한다.

 

Association.png

 

지금까지 나온 Start, Activity와 End만으로도 많은 것을 표현할 수 있다.

 

Simple!!.png

 

“이럴때는 요거, 저럴때는 저거” 분기처리 — Gateway

상황에 따라서 판단해서 분기해야 하는 것은 어디서나 있기 마련이다. 분기없이 흘러가는 프로세스가 완벽하다고 생각한다. 하지만 그런게 과연 있기나 한걸까?

기호는 Flowchart와 동일하게 마름모이고, 표기법은 동일하다.

 

Gateway.png

 

Gateway Sample.png

 

여러 계층을 표현하자. — Pool, Swimlane, Blackbox Pool

우리가 비즈니스 프로세스를 표현할때 하나의 시스템이나 인력으로 처리하는 프로세스는 없다. 99.9%는 없다고 봐도 된다. 연동과 협업을 표현하는 방법은 Swimlane을 사용하자. 수영장에 레인을 생각하면 이해가 빠르다.

 

Pool, Swimlane.png

 

순서대로 살펴보면 첫번째 Vertical Swimlane은 하나의 계층만을 나타낸다. 두번째는 계층안에서 세부적으로 나눌때 레인을 여러개 두는 경우이고, 세번째 블랙박스는 나타내고자 하는 관심이 아닌 계층은 단순하게 블랙박스로 나타내는 것이다.

블랙박스를 나타내는 이유는 아키텍처의 기본인 “관심사의 분리 — Seperate of Concern”를 적용한 것이다.

위의 모든 것을 적용한 다이어그램으로 마치겠다.

 

sample.png

 

마지막으로 주의할 점은 너무 세부적으로 그려야 겠다는 욕심을 버려야 한다는 것이다. 나타내고자하는 의도에 대해서 심사숙고해서 작성하자.


  1. 비즈니스 프로세스를 그리자. — BPMN 2.0

    #Web 읽기
    Read More
  2. Myth #9: 디자인은 독창적이어야 한다

    #UI/UX 읽기
    Read More
  3. Myth #8: 스톡 사진은 사용자 경험을 향상시킨다

    #UI/UX 읽기
    Read More
  4. Myth #7: 그래픽은 페이지 요소를 더 잘 보이게 만든다

    #UI/UX 읽기
    Read More
  5. Service Blueprints: Definition

    #UI/UX 읽기
    Read More
  6. Myth #6: 접근성 좋은 사이트는 추하다

    #UI/UX 읽기
    Read More
  7. Myth #5 : 접근성은 비싸고 어렵다

    #UI/UX 읽기
    Read More
  8. Myth #4: 디자인은 제품을 보기 좋게 만드는 것이다

    #UI/UX 읽기
    Read More
  9. Myth #3: 사람들은 스크롤하지 않는다?

    #UI/UX 읽기
    Read More
  10. Myth #2 모든 페이지는 3회 이내의 클릭으로 사용 가능해야 한다

    #UI/UX 읽기
    Read More
  11. Myth #1 사람들은 웹을 읽는다

    #UI/UX 읽기
    Read More
  12. REST API

    #Web 읽기
    Read More
  13. [번역] 반응형 웹 디자인의 단점

    #Web 읽기
    Read More
  14. 공인 IP, 사설 IP, 고정 IP, 유동 IP

    #Web 읽기
    Read More
  15. Billable Hour 직업의 함정

    #Web 읽기
    Read More
  16. 다국어사이트의 URL주소는 서브 도메인? 아니면 하위 디렉토리?

    #Web 읽기
    Read More
  17. [번역] 빵조각 메뉴: 무엇, 언제, 어떻게

    #UI/UX 읽기
    Read More
  18. [번역] 고통없는 계정 UX에 대한 3가지 법칙 : 로그인

    #UI/UX 읽기
    Read More
  19. [번역] 이 이메일에 회신하지 마시오

    #UI/UX 읽기
    Read More
  20. Survivorship Bias (생존자 편향의 오류)

    #Mkt 읽기
    Read More
목록
Board Pagination Prev 1 2 3 4 5 Next
/ 5