소프트웨어 프로젝트 지연을 무시해서는 안되는 이유

( 2020 년 10 월 23 일)

소프트웨어 제공에서 팀이 직면하는 가장 눈에 띄는 과제를 살펴보고 프로젝트를 추적하기 위해 이러한 문제를 관리 할 수있는 방법에 대한 제안입니다.

오늘날의 비즈니스가 디지털화를 위해 경쟁함에 따라 소프트웨어 개발 팀은 새로운 기능을 고속으로 제공해야하는 압력을 받고 있습니다. . 결과적으로 소프트웨어 프로젝트 지연은 불가피합니다. 이러한 지연이 소프트웨어 개발 수명주기의 “정상적인”부분으로 취급되면 문제가됩니다. 단일 지연이 반드시 더 큰 우려의 원인은 아니지만 반복해서 발생하는 지연은 더 크고 더 위험한 근본 원인의 증상이기 때문에 심각하게 받아 들여야합니다.

소프트웨어 제품 개발은 복잡하고 역동적 인 시스템입니다. 균형이 잘 잡힌 시스템에서 새로운 요청이 제품 백 로그에 추가되면 동일한 속도로 기존 요청이 고객이 사용할 수있는 기능으로 바뀝니다. 들어오는 요청의 속도가 나가는 기능의 속도보다 높으면 시스템의 균형이 맞지 않습니다. 이를 무시하면이 불균형이 더 진행되어 결국 시스템 오류로 이어질 것입니다.

실제로 자주 보는 몇 가지 일반적인 원인은 다음과 같습니다.

너무 낙관적 인 계획

일반적으로 우리는 본질적으로 너무 낙관적이며 특정 기간 동안 할 수있는 일을 과대 평가합니다. 이것이 반드시 나쁜 것은 아닙니다. 하지만 자주 발생한다면 회의 마감일이 심각하게 받아 들여지지 않았 음을 보여줍니다. 중요한 애자일 원칙은 소프트웨어 개발자 만이 노력 추정에 대한 책임과 책임이 있다는 것입니다. 더욱이 각 애자일 팀이 스프린트에서 수행되는 작업과 스프린트 후 수행 된 실제 작업 간의 차이를 추적하는 것이 좋습니다. 목표는 팀이 시간이 지남에 따라 얼마나 정확하게 예측하는지에 대한 진행 상황을 관찰하는 것입니다.

구현의 복잡성 간과

새로운 스프린트 기능을 계획 할 때 구현 중에 발생하는 복잡성을 간과하기 쉽습니다. 그러나 간과 된 복잡성은 복잡한 소프트웨어 설계의 직접적인 결과입니다. 소프트웨어의 구조가 복잡하고 소프트웨어 모듈이 서로 어떻게 의존하는지에 대한 명확한 패턴이없는 경우 소프트웨어의 작동 방식을 잘 이해하는 것이 불가능합니다. 이로 인해 현실적으로 계획하는 것이 불가능합니다. 불행히도 이것은 종종 해결하기가 쉽지 않습니다. 그러나 소프트웨어를 개조하고 개선 할 수있는 실행 가능한 방법을 조사해야합니다.

예기치 않은 우선 순위가 높은 결함

프로덕션의 결함 (기능 버그, 성능 또는 보안 문제)은 확실히 우선 순위가 높으며 즉시 해결해야합니다. 그러나 이러한 종류의 문제가 새로운 기능을 구축하는 데 너무 자주 방해가되는 경우 개선해야 할 사항이 있다는 놀라운 신호입니다. 이는 시간이 지남에 따라 축적 된 상당한 기술적 부채 (예 : 코드 품질 문제)의 증상입니다. 이 기술 부채를 줄이는 것이 우선 순위가 높아야합니다. 그렇지 않으면 시스템 동작과 개발 생산성이 더욱 심각하게 저하 될 가능성이 높습니다.

다른 팀의 의견을 기다리는 중

소프트웨어 제품은 일반적으로 여러 팀에 의해 구축되며 한 팀은 다른 팀에서 필요한 정보를 생성합니다. 작업은 시스템에서 안정적인 정보 흐름을 허용하는 방식으로 팀간에 분산되어야합니다. 다른 팀 대기로 인한 지연은 팀 간의 종속성을 최소화하기 위해 더 나은 팀 구성이 필요함을 나타냅니다. 여기에서 훌륭한 제품 리더를 갖는 것이 핵심입니다. 전체 제품의 진행 상황을 감독하고 우선 순위를 효과적으로 설정하는 사람입니다.

이 목록은 완전하지 않으며 소프트웨어 제공이 지연되는 다른 많은 이유가있을 수 있습니다. 그럼에도 불구하고 잦은 지연은 약간의 속도를 늦추고 문제의 근본 원인을 찾고 시스템의 균형을 되 찾는 신호입니다.

답글 남기기

이메일 주소를 발행하지 않을 것입니다. 필수 항목은 *(으)로 표시합니다