요약: 소프트웨어 프로젝트의 효과적인 관리는 프로젝트의 성패에 매우 중요한 역할을 한다. 소프트웨어 프로젝트에는 몇 가지 위험이 있습니다. 이 기사에서는 이러한 위험을 피하는 방법에 대해 설명합니다. 마지막으로 합리적인 관리 프로세스를 수립하는 것이 소프트웨어 프로젝트 관리에 매우 중요하다고 지적했다.
키워드: 소프트웨어 프로젝트: 관리 프로세스; 위험 분석
소프트웨어 프로젝트 관리는 1970 년대 중반에 미국에서 제기된 것이다. 당시 미 국방부는 소프트웨어 개발이 제때에 제출되지 않고, 예산이 초과 지출되고, 품질이 사용자 요구를 충족시키는 이유를 전문적으로 연구했다. 70% 의 프로젝트가 기술적인 원인이 아니라 관리 부실로 인한 것으로 밝혀졌다. 따라서 소프트웨어 개발자는 소프트웨어 개발 중 관리에 더 많은 관심을 기울이기 시작했습니다. 1990 년대 중반까지, 소프트웨어 R&D 프로젝트 관리의 부실한 문제는 여전히 존재한다. 미국 소프트웨어 엔지니어링 구현 상황에 대한 조사에 따르면 소프트웨어 개발 상황은 여전히 예측하기 어렵고 약 10% 의 프로젝트만 예정된 비용과 일정에 따라 전달될 수 있다.
어떻게 하면 소프트웨어 프로젝트 관리 및 위험 분석을 잘 수행하여 프로젝트의 원활한 구현을 보장할 수 있습니까? 이것은 복잡한 문제이다. 여러분의 경험을 총결하여 소프트웨어 프로젝트의 특징을 말씀드리겠습니다.
소프트웨어 프로젝트 관리의 위험 분석
소프트웨어 프로젝트 관리는 예정된 비용, 진행 상황 및 품질에 따라 소프트웨어 프로젝트를 성공적으로 완료하고 인력, 제품, 프로세스 및 프로젝트를 분석하고 관리하는 활동입니다. 목적은 소프트웨어 프로젝트, 특히 대규모 프로젝트의 전체 소프트웨어 수명 주기 (분석, 설계, 코딩, 테스트, 유지 관리에 이르기까지) 를 관리자의 통제 하에 예정대로 사용자에게 제공하는 것입니다.
효과적인 프로젝트 관리는 어떻게 수행합니까? 먼저 소프트웨어 프로젝트에 영향을 미치는 품질 요소를 분석해 보겠습니다.
소프트웨어 프로젝트, 특히 대규모 프로젝트는 전체 프로젝트의 진도와 품질에 영향을 미치는 두 가지 중요한 요소가 있습니다. 그들은:? 사람? ,? 프로세스? 무엇을 사용합니까? 기술? 。
-응? 사람? 이것은 프로젝트에서 가장 예측하기 어려운 요인이다. 사람은 두 부분으로 나눌 수 있는데, 일부는 고객이고, 일부는 개발팀이다.
-응? 기술? 소프트웨어 프로젝트에 사용되는 개발 플랫폼, 주로 개발 환경 및 개발 언어를 나타냅니다. 가장 쉽게 파악할 수 있는 부분이다.
-응? 프로세스? 모든 상황을 통제하기 위해 정의된 소프트웨어 개발 프로세스 또는 프로젝트 프로세스를 나타냅니다. 프로젝트의 가장 큰 적은 시간과 예산이며 둘 다 제한되어 있다. 제한된 예산 내에서 제 시간에 프로젝트를 완료하는 방법은 예술이라고 할 수 있습니다. .....
1..1? 사람? 요소 분석
-응? 사람? 개발 팀의 요소가 프로젝트에 큰 영향을 미치는 고객 및 개발 팀을 나타냅니다. 이 분야의 영향 요인은 주로 다음과 같이 분석됩니다.
개인 기술이 요구 사항을 충족하지 못합니다.
프로젝트를 시작할 때 모든 프로젝트 멤버가 조직 수준의 요구 사항을 충족할 수 있다고 가정하지만, 모든 멤버가 요구 사항을 충족할 수 있는 것은 아닙니다. 또한 프로젝트의 각 구성원의 생산성은 크게 다를 수 있으며, 이는 프로젝트 진행에도 영향을 줄 수 있습니다. 따라서 프로젝트 시작 시 프로젝트 구성원의 스킬을 전체적으로 평가하고, 부족한 스킬에 대한 통일교육을 마련하고, 후기에 교육의 효과를 추적해야 합니다. 기술이 부족한 사람은 독학 시간을 따로 예약하거나 스승제 훈련을 통해 기술이 가능한 한 빨리 요구 사항을 충족시킬 수 있도록 해야 한다. 프로젝트의 새 구성원의 작업과 태스크의 경우 감사와 검사를 강화하여 산출량이 큰 편차가 발생하지 않도록 하여 후속 재작업을 많이 해야 합니다. 이와 관련하여 영향을 미치는 주요 요소는 다음과 같습니다.
프로젝트 구성원의 책임감이 강하지 않다.
태도는 모든 것을 결정하고, 세부 사항은 성패를 결정한다. 프로젝트 과정에서 다양한 작업에 대해 프로젝트 구성원이 책임을 지지 않고 대강대강 얼버무리는 경우가 종종 발생하여 출력 가공소재의 품질이 떨어지고 재작업이 많은 경우가 종종 발생합니다. (데이비드 아셀, Northern Exposure (미국 TV 드라마), 프로젝트명언) 이런 상황에서 프로젝트는 프로젝트 규범 건설을 강화해야 하고, 프로젝트 관리자는 이들 회원과의 개인소통을 강화하고, 프로젝트의 팀 건설과 집단 영예를 강화해야 한다. 프로젝트 멤버가 자신이 하는 시스템이 회사나 프로젝트 관리자의 프로젝트가 아닌 자신의 제품이라고 생각하게 합니다.
프로젝트 커뮤니케이션 문제
소프트웨어 프로젝트에서는 프로젝트의 다양한 역할과 멤버 간의 효율적인 의사 소통을 보장하는 것이 중요합니다. 빠르고 원활한 커뮤니케이션 채널을 구축하고 최적의 커뮤니케이션 방식으로 문제를 해결하는 방법은 프로젝트에서 자주 강조해야 합니다. 만약 일주일 동안의 프로젝트 임무가 실제로 일을 하는 데 이틀이 걸렸지만, 소통에 3 일이 걸렸다면, 반드시 제때에 총결산 원인을 분석해야 한다. 소통에서 가장 중요한 것은 가장 짧은 시간 내에 각종 방법이나 도구를 운용하여 쌍방 혹은 다방면의 합의를 이루는 것이다.
프로젝트 인력 이동
프로젝트 인원의 손실, 특히 프로젝트 핵심 구성원의 손실은 프로젝트에 큰 영향을 미친다. 이 경우 프로젝트를 시작할 때 이를 특수한 위험으로 추적하고 구체적인 대책을 고려해야 한다.
1.2? 프로세스? 요소 분석
소프트웨어 개발 프로세스는 일반적으로 다음과 같이 정의됩니다.
요구 사항 분석, 실현가능성 분석은 구조적 설계, 상세 설계, 코딩, 소프트웨어 테스트 및 소프트웨어 유지 관리를 설계해야 합니다.
-응? 프로세스? 우리나라 소프트웨어 프로젝트의 위험은 주로 소프트웨어 수요 단계, 소프트웨어 설계 단계, 소프트웨어 구현 단계, 소프트웨어 유지 관리 단계의 네 단계로 나타난다.
소프트웨어 요구 사항 단계
소프트웨어 개발은 사용자의 요구에 따라 시작됩니다. 대부분의 경우 사용자의 요구 사항은 소프트웨어 개발자가 요구 사항의 무결성을 보장하기 위해 요약한 다음 새로운 형식으로 중요한 문서인 사용자 요구 사항을 형성합니다. 수요 분석은 개발자가 수요 실현가능성과 일관성을 확인하는 과정으로, 사용자와 광범위한 소통과 확인이 필요하다. 수요 및 수요 분석의 누락으로 인한 손실은 소프트웨어 시스템의 다음 단계에서 확대되기 때문에 이 단계의 위험이 가장 크다.
소프트웨어 설계 단계
설계의 주요 목적은 소프트웨어 기능이 요구 사항을 정확하게 반영하는 것이며, 요구 사항의 불완전성과 요구 사항 분석의 불완전성이나 오류는 설계 단계에서 두 배로 증가할 것입니다. 설계 단계의 주요 임무는 요구 사항 단계에서 설정 목표를 달성할 수 있도록 시스템 아키텍처의 정의를 완료하는 것입니다. 다른 한편으로는 수요의 유효성과 수요 분석의 완전성과 정확성을 검증하기 위해서이다.
설계 단계의 위험은 주로 시스템 분석가로부터 비롯됩니다. 분석가는 시스템 아키텍처를 설계할 때 지나치게 맞춤화되고, 시스템 확장성이 약하며, 사후 유지 관리에 큰 부담을 주고, 유지 관리 비용이 급증합니다. 사용자의 경우 시스템 사용 비율이 크게 할인되고 소프트웨어 수명이 너무 짧습니다. 반면, 소프트웨어 구조가 너무 유연하고 보편적이라면 소프트웨어 구현이 어려워지고, 시스템 복잡성이 증가하고, 안정성이 떨어지고, 구현 및 테스트 단계에 위험을 초래하고, 시스템의 안정성에 영향을 미칠 수 있습니다. 또 다른 관점에서 볼 때, 사용자의 요구와 향후 소프트웨어 운영 환경의 변화는 필연적이다. 현재 소프트웨어 설계의 단점은 무엇입니까? 만능? 미래의 수요와 경영 환경의 변화에 잘 적응할 수 있을지, 진지한 타협이 필요한데, 이런 타협은 큰 위험을 내포하고 있다.
설계 단계의 또 다른 위험은 설계 문서에서 비롯됩니다. 불완전한 문서는 구현 단계에서 어려움을 초래할 뿐만 아니라 이후 테스트 및 유지 관리에서 심각한 결과를 초래할 수 있습니다. 예를 들어, 소프트웨어 시스템은 버전 지정을 전혀 할 수 없으며 발견된 간단한 오류조차도 수정할 수 없습니다.