Workflow워크플로우는 앞에서 프로젝트 생성 시 잠깐 보셨을텐데, 일반적으로 사용하는 프로세스와 같은 의미라고 생각하시면 됩니다. 예를 들어 현실에서의 결재라인이죠. 아시다시피, 프로세스는 각 업무별로 진행되는 과정이 다릅니다. 기획팀 내부의 일을 처리하는데 개발팀의 프로세스를 탈 필요가 없는 것처럼요. 이에 따라 각 이슈타입별로 다른 워크플로우를 설정할 수 있게되어있습니다. 다음 그림과 같이, 프로젝트를 생성 시 각 프로젝트별로 기본적으로 워크플로우가 따로 생성되어지는 것을 확인할 수 있습니다. 

보시면 현재 사용하고 있는 워크플로우, 마지막 수정일자, 할당되어있는 scheme, 워크플로우의 단계(상태레벨이 몇 개인지), 워크플로우 수정이 있습니다. View를 눌러보시면 다음과 같이 해당 워크플로우가 어떻게 동작하는지를 확인할 수 있죠. Diagram 형태로도, Text형태로도 볼 수 있으며 필요 시 잘 구성된 워크플로우를 Export하여 타 시스템에서도 써먹을 수 있습니다. 

본제로 돌아와서, 앞서 만든 WCS(Web Customer Support)프로젝트에 새로운 워크플로우를 추가해보겠습니다. 우측 상단의 Add Workflow를 클릭 시 다음과 같은 팝업이 생성되며, 이름을 지정 후 Add를 클릭합니다. 안타깝게도 여기선 한글은 지원하지 않으므로 영어로 만드셔야하며, 차후 워크플로우가 늘어날 경우 보기에 어려워지므로 반드시 이름을 구분이 쉽도록 명확히 지정하셔야합니다. 본 문서에서는 앞에서 만든 Web Bug타입의 워크플로우를 생성할 것이므로 다음과 같이 만들어보겠습니다.

그럼 다음과 같이 아주 심플한 워크플로우가 생성됩니다.

상태가 오픈만 있으므로, Fix라는 상태를 하나 생성해봅니다. 방법은 Add status를 클릭하면되며, 기존에 존재하는 상태를 선택하거나 새로운 상태를 생성할 수 있습니다. Fixed의 경우 없었던 상태이므로 다음처럼 new status라는 내용이 나오며 엔터키로 입력 후 Add를 클릭합니다. 

그럼 다음과 같이 다시 팝업이 생성되며, 카테고리를 지정하도록 나옵니다. Fixed의 경우 Done으로 분류될 것이기에 

Done으로 선택 후 Create를 눌러줍니다.안타깝지만 카테고리의 경우, 시스템에 하드코딩되어있는 부분이기에 간단히 추가는 어려우며 본 문서에서는 넘어가겠습니다. (필요 시 구글신에게 물어보세요)

아무튼 만들어지면 뭔가 오른쪽에 빨간색 느낌표와 함께 워닝이 뜹니다. 

이는 해당 스테이터스로 이동할 수 있는 연결이 없다는 의미인데 여기서 Add Transition을 눌러주셔도 되고 다음과 같이 스테이터스에 마우스를 올릴 시 나타나는 원형에서 드래그하여 타 스테이터스로 이동 시 새로운 팝업이 생성됩니다. 

위처럼 어떤 상태로부터 어떤 상태로 이동할 것인지, 그리고 그 이름은 무엇이 될 것인지를 지정합니다. 

여기선 open에서 fixed상태로 이동할 것이므로 간단히 fix라고 하겠습니다. Screen의 경우, 상태를 Open에서 Fixed로 이동할 때 특정 팝업창을 띄울 것인지 여부를 정하는 내용으로Screen은 이 다음에 설명드릴 내용으므로 여기선 기본인 None으로 설정합니다. 
그럼 이렇게 Transition이 추가됩니다. 

샘플 워크플로우이기도 하고 상태가 많으면 귀찮으므로 이 워크플로우를 사용하도록 하고 넘어가도록 하겠습니다. 농담도 들어있었지만 실제로 새로 Jira를 도입 시 워크플로우를 최대한 간소화하는 것은 굉장히 중요합니다. 처음에 의욕이 앞서서 많은 복잡다단한 절차를 만들어도, 실제 사용자들이 사용하기엔 어렵고 불편하기에 접근이 어렵기 때문이죠. 반드시 필요한 절차가 아닐 경우, 사용에 익숙해진 이후에 도입해도 늦지 않습니다. 

Workflow Schemes앞에서 만든 워크플로우를 써먹기 위해선 이 Scheme을 지정해야합니다. Workflow scheme도 워크플로우와 같이 프로젝트 생성 시 기본적으로 생성됩니다. 
필요 시 우측 상단의 Add Workflow Scheme버튼을 눌러서 새로 생성이 가능합니다만, Workflow와 다른 점은 여러 개를 만들어봐야 실제로 사용할 것은 하나라는 점을 상기하셔야합니다. 
앞에서도 설명드렸지만, 결국 Jira의 프로젝트 설정이란, 여기서 만들어진 Scheme들에 Associate되는 형태로써 한 번에 하나의 Scheme설정만 적용받기 때문이죠. 
따라서 원래는 새로운 Scheme을 추가할 필요는 없지만, 그래도 처음 사용자를 위한 문서이니 한 번 추가해보겠습니다. Add Workflow Scheme버튼을 클릭 후 다음처럼 새로운 Scheme을 생성합니다. 

그럼 이런 화면이 나오며, 해당 워크플로우 이름이 마음에 안들 경우 수정할 수도 있습니다. 워크플로우를 추가하기 위해, Add Workflow를 클릭 후 Add Existing을 클릭해줍니다. 

여기선 앞에서 만든 Web Bug워크플로우를 선택 후, next를 눌러줍니다. 

그리고 이 워크플로우를 적용받을 이슈타입을 선택합니다. Web Bug타입용으로 만든 워크플로우이므로 해당 타입을 선택 후 마무리합니다.

그럼 이렇게 Workflow Scheme에 워크플로우가 추가된 것을 볼 수 있습니다. 의미는 Web Bug이슈타입은 새로 추가한 워크플로우를, 그 외의 모든 이슈타입은 jira의 기본 워크플로우를 타라는 의미죠. 현재는 해당 Scheme이 어떤 프로젝트에서도 쓰이지 않기 때문에 Inactive에 분류되어있는 것을 볼 수 있으며, 프로젝트에서 해당 Scheme을 사용 시 자동으로 Active로 이동됩니다. 

중요한 것으로 만약 사용 중인 워크플로우를 수정 시, 다음처럼 경고창이 발생하며 경고창에서 꼭 Publish를 눌러주시기 바랍니다. 그렇지 않으면 적용이 안되거든요.

여기까지 Workflow에 대해서 기술하였고 다음 문서에서는 Screen으로 넘어가도록하겠습니다. 

오픈소스컨설팅의 마스코트, 열린이입니다! :)

Leave a Reply

Your email address will not be published. Required fields are marked *