내셔널 지오그래픽의 MegaStructures 시리즈를 본 후 , 대규모 프로젝트가 얼마나 빨리 완료되는지 놀랐습니다. 일단 예비 작업 (디자인, 사양 등)이 종이에 완성되면, 거대한 프로젝트를 실현하는 데 몇 년 또는 몇 달이 걸립니다 .
예를 들어, Airbus A380은 "공식적으로 2000 년 12 월 19 일에 발사되었습니다"및 "2005 년 3 월 초에" 항공기는 이미 테스트되었습니다. 거대한 유조선, 고층 빌딩 등도 마찬가지입니다.
이것을 소프트웨어 산업의 지연과 비교할 때, 대부분의 IT 프로젝트가 왜 그렇게 느리거나 더 정확하게, 왜 충분한 규모의 사람들에게 같은 규모로 빠르고 완벽하게 실패 할 수 없는지 궁금하지 않습니다.
Airbus A380과 같은 프로젝트는 다음을 모두 제공합니다.
예상치 못한 주요 위험 :이 항공기는 최초의 항공기는 아니지만 기술의 한계를 뛰어 넘고 있으며 소규모 항공사에게는 잘 작동하는 것이 물리적 제약으로 인해 큰 항공기에는 적합하지 않을 수 있습니다. 같은 방식으로 아직 사용되지 않은 새로운 기술이 사용됩니다. 예를 들어 Boeing 747이 완료된 1969 년에는 사용할 수 없었기 때문입니다.
일반적으로 인적 자원 및 관리와 관련된 위험 : 프로젝트 중간에 사람들이 휴가, 휴가 중이기 때문에 사람에게 접근 할 수 없음, 일반적인 인적 오류 등
이러한 위험으로 인해 사람들은 여전히 짧은 기간에 대형 여객기와 같은 프로젝트를 달성 하고 있으며 배송 지연에도 불구하고 이러한 프로젝트는 여전히 큰 성공을 거두었습니다.
소프트웨어 개발과 관련하여 프로젝트는 기술적으로나 관리 측면에서 여객기만큼 크거나 복잡하지 않으며 실제 세계에서 예측할 수없는 위험이 약간 줄어 듭니다.
그럼에도 불구하고 대부분의 IT 프로젝트는 느리고 늦 으며, 더 많은 개발자를 프로젝트에 추가하는 것은 해결책이 아닙니다 (10 명의 개발자 팀에서 2 천명으로 이동하면 때로는 프로젝트를 더 빨리, 때로는 제공하지 않을 수 있으며 때로는 완료하지 않을 위험이 있습니다).
여전히 제공되는 버그는 많은 버그를 포함 할 수 있으며 연속적인 서비스 팩과 정기적 인 업데이트가 필요합니다 (원래 제품의 버그를 패치하고 항공기 충돌을 방지하기 위해 매주 두 번 모든 Airbus A380에 "업데이트 설치"를 상상하십시오).
그러한 차이점을 어떻게 설명 할 수 있습니까? 소프트웨어 개발 산업이 너무 젊어서 단일 프로젝트에서 수천 명의 사람들을 관리 할 수 없어서 규모가 크고 결함이없는 제품을 매우 빠르게 제공 할 수 없기 때문입니까?