'반복적 개발 방법론'의 의미 제대로 이해하기

우리는 대부분 처음 무언가를 만들어 보게 됩니다. 이전에 만들어 봤던 것과 완전히 다른 경우도 많고 꽤 다른 경우가 대부분이죠. 이런 경우에 가장 안전한 개발 방법은 무엇일까요? 저의 경험 상 가장 좋은 답은 반복적 개발 방법론을 적용하는 것이었습니다.

 

여기서 반복이 무엇일까요?

매일 아침에 모여서 스크럼을 진행하고, 3주 간격으로 스프린트를 반복하는 것이 '반복'일까요? 특정한 기능 구현 시 업무를 1/4씩 나누어서 4번에 걸쳐서 나누어서 기능을 개발하는 것이 여기서 말하는 반복일까요?

 

제가 생각하는 올바른 반복이란?

한 번의 반복 후에 고객이 사용 가능한 산출물을 만들어 내고, 해당 산출물을 고객에게 전달하여 반응을 확인하고, 다음 반복에서는 기존 산출물 대비 완성도를 높인 산출물을 만들어 내어서, 여러 번의 반복을 거쳐서 이상적인 모습에 점점 가까운 산출물을 만들어 내는 것을 말합니다.

 

여기서 주의 깊게 보셔야 하는 문장은 '고객이 사용 가능한 산출물을 만들어 내고' 입니다. 

 

이를 설명하기 위해 풍경 수채화 그리기와 스크래치 페인팅의 사례를 비교하여 보았습니다.

이 두가지 그림 그리기 예시에서 가장 큰 차이는 중간 산출물의 특징입니다. 

풍경 수채화 그리기 방식은 첫 단계 산출물부터 전체적인 모양새가 보이기 때문에 작가가 무엇을 그리고 있는 지 확실히 알 수 있습니다. 그림을 감상하는 입장에서 작가가 무엇을 그리고 있는 지를 이해하기 쉽습니다. 그렇기 때문에 작가와 감상자가 의견을 나누기도 수월합니다. 반면에 스크래치 페인팅 예시의 방식은 최종 산출물의 모습을 중간 단계에서 예측하기가 상대적으로 어렵습니다. 1번 단계에서 밑그림이 있기는 하지만 작가 본인이 사용하기 위한 목적이기 때문에 감상자 입장에서는 이 그림의 완성본이 어떻게 될 것이다라는 예측을 하기가 어렵습니다. 이에 따라 앞선 사례와는 다르게 관련한 대화를 나누기도 어려운 편입니다.풍경 수채화 그리기 방식, 중간 산출물이 사용자가 보고 이해할 수 있고 심지어 사용할 수 있는 방식이고 이것이 말하고자 하는 방식과 가깝다고 생각되네요. 


고객이 원하는 제품을 정확하게 만들어 내는 방법입니다.

그것의 핵심은 사용 가능한 중간 산출물을 만들어 내는 것이고, 그것은 기존과는 다른 방식의 프로젝트 계획이 필요합니다. 본문에는 자동차를 만들어 내는 과정을 예시로 설명하고 있습니다. 바퀴->프레임->새시 를 만들어서 조립하는 방식과, 스케이트보드->자전거->오토바이->자동차로 발전시켜 나아가는 방식입니다. 전자의 방식은 최종 산출물까지 고객이 사용해볼 수 있는 여지는 없지만, 후자는 중간 중간에 사용자가 사용이 가능합니다. 약간 부족하지만 좋은 피드백을 받을 수 있는 기회가 분명히 존재합니다.


본문에는 느려보이는 이 방식이 왜 결국은 더 빠른 지도 설명하고 있습니다. 작은 실수를 여러번 반복하면서 목표 지점에 다다른 경우와, 한번에 큰 실수를 깨닫고 마지막에 큰 수정을 해야하는 경우를 비교했습니다. 작은 실수를 다른 말로 바꾸면 작은 고객 피드백입니다. 큰 실수는 큰 고객 컴플레인이고요. 무엇이 더 좋은 방식인지는 굳이 설명하지 않아도 될 듯 하네요.


반복적인 개발 방법론은 다소 생소한 제품을 처음부터 개발하는 경우에 적합하다고 서두에 말씀 드렸습니다. 이런 경우에 막막한 마음을 다스리는 방법 중 하나는 반복적인 개발 계획을 수립하여 진행하는 것이고 이를 실행에 옮기는 좋은 방법은 중간 산출물의 모습을 잘 설계하는 것에 있습니다. 지금 본인이 담당하고 있는 과제에서 풍경 수채화 그리기 방식 처럼 단계적으로 중간 산출물을 만들 수는 없을까를 상상해 보세요. 그려지는 중간 산출물이 있다면 그 생각을 팀과 공유하고 그 산출물을 만들기 위한 task를 분리한 후 해당 task들을 우선적으로 진행하여 고객에게 전달 가능한 중간 산출물을 만들어 보세요.

 

우리 팀과 당신의 팀 모두 적은 시간에 훌륭한 결과물을 만들어 내는 팀이 되길 기원합니다.


https://techbizinsight.tistory.com/62


애자일의 핵심, '반복적 개발'의 의미 제대로 이해하기

I'm MK: 기술로 바라보는 미래

애자일의 핵심, '반복적 개발'의 의미 제대로 이해하기

다음 내용이 궁금하다면?

또는

이미 회원이신가요?

2023년 12월 29일 오전 8:34

댓글 0

    함께 읽은 게시물

    ⟪UX 디자이너가 사라지고 있다⟫

    ... 더 보기

    LinkedIn

    lnkd.in

    LinkedIn