본문 바로가기
MSA해설/MSA 공정

'착수'라는 단계도 있나요?

by kooangelo 2022. 8. 2.

일반적인 SI 프로젝트는 분석, 설계, 개발, 테스트 등의 단계를 두고 진행한다. 각 단계별로 여러 Task가 있고 Task별로 작성해야하는 산출물이 있다. 중대규모 이상의 SI 구축 프로젝트라면 이러한 단계와 Task를 당연히 경험하게되는데 아래와 같은 질문에 대해 생각해 본적 있는지 모르겠다.

 

  • 분석, 설계, 개발, 테스트 각 단계를 몇개월씩 진행해야할지?
  • 설계를 기본설계와 상세설계로 나눌지?
  • 상세설계 및 개발을 여러 Iteration으로 반복적으로 진행할지?
  • 각 단계별 어떤 Task와 산출물이 있는지? 그들간의 관계는?
  • 산출물은 어떤 도구로 작성하는지? 특히 설계 산출물? 설계 도구는?
  • 설계를 전부 작성하는지? 핵심만 하는지? 핵심의 기준은? 누가 검토하는지?
  • 제안할 때 방법론은 그대로 유지하는지? 방법론에 특화된 모델링 기법은? (예 : CBD, MSA 등)
  • 응용팀의 WBS는?
  • 응용팀을 지원하는 PMO나 아키텍처 등의 지원팀 WBS는?
  • 응용총괄은 있는지? 그 역할은? 없다면 누가 대신 할 수 있는지?
    (예 : 응용팀과 아키팀의 조율, 응용파트간의 R&R 정의 등)
  • QA와 모델러의 R&R?
  • 분석, 설계 단계별 Task 및 산출물 관련 표준, 가이드, 교육은?
  • 누가 작성하고 통합하고 검토하고 피드백 하는지?
  • 위의 여러가지 사항에 대해 수행사의 공통된 의견은?
  • 고객사와의 합의는? (방법론, 단계별 기간, Task, 산출물, 도구 등)
  • 각 단계별 또는 Task별 필요한 역할자는? 예 : 설계자 및 개발자 투입 시기 등
  • 설계자와 개발의 적정 비율은?
  • 설계서 작성 수준은? 개발자의와의 Communication 방법은?

만약 위의 여러가지 사항에 대한 준비없이 바로 분석단계가 시작된다면 어떤일이 벌어질까?
그리고 위의 사항을 먼저 인식하고 준비해야하는 역할자(QA, 모델러 등)와 분설계자가 동시에 투입된다면 어떤일이 벌어질까?

위의 여러가지 사항에 대해 고민하는 단계가 바로 '착수'단계이다.
이미 제안단계에서 결정되었거나 제안협상 등 사전단계에서 이미 합의된 내용이 있다면 다행이다.
하지만 위의 모든 사항 또는 관련된 제반사항에 대해 모두 준비하고 분석단계 첫번째 Task를 시작하는 프로젝트는 흔치 않다. 어떤 형태로든 위의 사항에 프로젝트 시작전 준비 및 합의가 필요하다. 그렇지 않으면 어떤일이 벌어질지 직접 체험한다면 잊지 못할 경험이 될 것이다.

 

특히나 MSA 구축 프로젝트라면 다음의 사항에 대해 반드시 '착수'단계에서 고민하고 넘어가야 한다.

 

  • MSA에 대한 필요성에 대해 PM부터 개발자까지 공감하는지 확인하는 Task 필요
  • MSA를 점진적으로 도입할 계획이 있는지? 그렇지 않을 경우의 대안은?
  • MSA 관련 교육 계획 : 누가, 언제, 무엇을, 어떻게 교육할 것인지? 어떻게 참여시킬 것인지?
  • MSA 서비스 정의 워크샾을 할 것인지? 다른 기법은? 이해관계자들 초대는 가능한지?
  • 워크샾 방식, 장소, 준비물 등에 대해 공감하는지?
  • API First Design, 기본설계, 상세설계 및 개발, 관련 설계 도구 등에 대해 수행사 각 파트 뿐 아니라
    고객사까지 합의되었는지?
  • 마지막으로 다시 한번 확인 필요, MSA를 왜 하려는지? 고객사와 수행사의 생각이 같은지? 다르다면 무엇이 다른지?
  • Agile 을 적용할 것인지? 어느 단계부터? Agile 전문가는 준비되어 있는지?
  • DevOps 와 같이 TOBE 서비스별 조직까지 염두해 두고 있는지? (one service per team)
  • ... 등등 MSA 프로젝트라면 위의 내용에 대해 한번 더 생각할 기회가 필요하다


"프로젝트 일정이 빠듯해서 착수같은 단계는 둘 수 없다고 하면 어떻게 하나요?"
최소한 2주라도 그도 안된다면 1주만이라도 잠시 위와 같은 사항에 대해 생각해보고 시작해야한다.
몇개월, 수십개월 진행하는 프로젝트에서 1~2주의 여유도 없다면, 구성원이, 의사결정권자가 그렇게 생각한다면, 그 프로젝트에 투입할지 다시 한번 생각해보는게 좋겠다.