소프트웨어 개발 프로젝트에서 상황별로 가장 적합한 방법론을 선택하는 기준이 궁금합니다

최근 들어 다양한 개발 방법론이 현업에서 활용되고 있는데 각 프로젝트의 규모나 성격에 따라 어떤 방식을 도입하는 것이 가장 효율적인지 고민이 됩니다. 전통적인 방식인 폭포수 모델은 단계별로 명확한 산출물이 보장된다는 장점이 있지만 변화하는 요구사항에 유연하게 대처하기 어렵다는 단점이 있는 것 같습니다. 반면에 애자일 방식은 빠른 피드백과 유연성을 제공하지만 소규모 팀이 아닌 대규모 엔터프라이즈급 프로젝트에서도 그 관리 효율성이 유지될 수 있을지 의문이 생깁니다.

특히 최근에는 데브옵스나 린 방식처럼 개발과 운영의 경계를 허무는 접근법도 많이 언급되는데 실제 실무 환경에서는 이러한 방법론들을 어떻게 조합하거나 커스터마이징해서 사용하는지 궁금합니다. 단순히 유행을 따르기보다는 프로젝트의 예산이나 마감 기한 그리고 참여하는 인력의 숙련도 등을 고려했을 때 가장 합리적인 방법론 결정 체계나 체크리스트가 있다면 알고 싶습니다. 실무자분들께서는 새로운 프로젝트를 시작할 때 어떤 프로세스를 거쳐 개발 방법론을 확정하시는지 소중한 경험과 의견을 공유 부탁드립니다.

1개의 답변이 있어요!

  • 안녕하세요. 김재훈 전문가입니다.

    프로젝트 방법론을 결정할 때는 요구사항의 명확성과 기술적 복잡도를 축으로 하는 스테이스 매트릭스를 활용하고 고정된 대규모 공공 금융 프로젝트는 폭포수 모델을 시장 변화에 민감한 서비스 개발은 애자일 모델을 선택하되 대규모 엔터프라이즈 환경에서는 SAFe나 LeSS 같은 확장 프레임워크로 관리 효율을 보완합니다 실무에선느 인력의 숙련도가 높고 마감이 촉박할 수록 낭비를 제거하는 린사고 방식을 접목하고 지속적인 배포가 필요한 데브옵스 파이프라인을 구축하는 등 단일 방법론에 매몰되기 보다 예산과 상화에 맞춰 하이브리드 형태로 커스터마이징 하는 것이 일반적이라고 합니다