日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

『软件工程4』一文了解软件项目管理中的4P

發布時間:2023/12/4 编程问答 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 『软件工程4』一文了解软件项目管理中的4P 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

軟件項目管理中的4P

  • 一、項目管理的重要性和定義
    • 1、重要性(兩個階段)
    • 2、軟件項目管理的定義
  • 二、管理四要素4P
    • 1、管理的四要素(4P)
    • 2、軟件項目中影響最終結果的要素
    • 3、項目管理關心的問題
  • 三、項目參與者類型(people)
  • 四、項目小組結構(people)
    • 1、項目的三種一般小組組織形式
    • 2、關于小組結構的說明
    • 3、項目小組人員間的通信路徑
    • 4、小組結構的選擇需考慮的因素
    • 5、思考題
  • 五、軟件范圍及問題分解(product)
    • 1、預告
    • 2、軟件范圍的確定(劃定問題的邊界)
    • 3、問題分解(確定各部分的功能)
  • 六、過程(process)
    • 1、一般性階段
    • 2、選擇過程模型階段
    • 3、已確定過程模型階段
  • 七、產品和過程的二元性(product and process)
  • 八、項目的5W2H原則(project)
  • 九、寫在最后——think more

在日常的軟件開發中,很多人可能認為只要技術實力夠了,不需要任何的軟件項目管理。但殊不知的是, 軟件項目管理對于整個軟件項目起著至關重要的作用,甚至有可能關乎到軟件項目的生死存亡。一項調查顯示, 70%的項目失敗是由于管理不善引起的,而并不是因為技術實力不夠的原因。

那在軟件項目管理當中,重要的4個因素又是什么呢?

在下面的這篇文章當中,將講解軟件項目管理中的4個重要因素4P, people 、 product 、 process 、 project 。

一、項目管理的重要性和定義

1、重要性(兩個階段)

(1)20世紀70年代中期

①70%的項目失敗是由于管理不善引起的,而并不是因為技術實力不夠;

管理是影響軟件研發項目全局的因素,而技術只影響局部的因素。

(2)20世紀90年代中期

美國軟件工程實施現狀的調查:

10%的項目能夠在預定的費用和進度下交付;

軟件項目管理成為軟件項目開發中最重要的核心問題之一。

2、軟件項目管理的定義

(1)定義

軟件項目管理是為了使軟件項目能夠順利完成,而對成本人員進度質量風險等進行分析和管理的活動。

(2)對象

軟件工程項目,它所涉及的范圍覆蓋了整個軟件工程過程。

(3)何時(即什么時候做項目管理)

這種管理在技術工作開始之前就應開始,在軟件從概念到實現的過程中繼續進行,當軟件工程過程最后結束時才終止

二、管理四要素4P

1、管理的四要素(4P)

  • 人員People —— 成功項目的重要因素;
  • 產品Product —— 要開發的軟件;
  • 過程Process —— 軟件工程的框架活動,包含了任務、里程碑、工作產品以及質量保證點;
  • 項目Project —— 開發軟件所需要的所有工作

2、軟件項目中影響最終結果的要素

  • 規模
  • 提交的期限
  • 預算和代價
  • 應用領域
  • 運用的技術
  • 系統約束
  • 用戶需求
  • 可提供的資源

3、項目管理關心的問題

  • 產品的質量
  • 風險的識別和管理
  • 度量
  • 代價估算
  • 項目進度
  • 和客戶交流
  • 項目成員
  • 其他資源
  • 項目監控

PS: 以下將對4P的內容進行詳細分析。

三、項目參與者類型(people)

項目參與者類型一般包括以下幾類:

  • 高級管理者:負責定義業務問題;
  • 項目(技術)管理者:必須計劃、激勵、組織和控制軟件開發人員;
  • 開發人員:負責開發一個產品或應用所需的專門技術;
  • 客戶:負責說明待開發軟件相關需求的人以及其他風險承擔者;
  • 最終用戶:一旦軟件發布成為產品,最終用戶是直接與軟件進行交互的人

總結:
①高級管理者,即定義業務問題的人;
②項目管理者,即管理軟件開發的人;
③開發人員,即應用技術開發軟件的人;
④客戶,即提出軟件需求,并承擔一定風險的人;
⑤最終用戶,即與軟件交互的人。

四、項目小組結構(people)

1、項目的三種一般小組組織形式

(1)民主分散式(Democratic Decentralized, DD)

(2)控制分散式(Controlled Decentralized, CD)

(3)控制集中式(Controlled Centralized, CC)

2、關于小組結構的說明

(1)DD(民主分散式):沒有固定的負責人,適合難度比較高、交付期限很長及生存期較長的項目,最適合于解決模塊化程度比較低的問題,因為需要通信;

通俗來說:沒有負責人,只有水平通信,成員之間需要廣泛的兩兩交流。

(2)CD(控制分散式):有一個固定的負責人,若有子負責人,子負責人和總負責人的通信是垂直的,而個人間的通信是水平的,適合交付期限較長、比較簡單的項目;

通俗來說:有固定負責人,成員之間需要交流,成員與負責人之間也需要交流;若有子負責人,成員跟子負責交流,子負責人跟總負責交流。

(3)CC(控制集中式):負責人和小組成員之間的通信是垂直的,適合解決交付期限比較嚴格的、簡單的、模塊化程度高的項目

通俗來說:有固定負責人,成員之間不溝通,只跟上級溝通。

:CD和CC兩種結構都需要有一個固定的負責人,而DD不用;且會比DD產生更少的缺陷。

3、項目小組人員間的通信路徑


從上圖中可以看出,項目小組人數越多,通信路徑越多。
通信路徑計算公式為
Cn2=n(n?1)2,n表示水平通信成員間的人數C_n^2=\frac{n(n-1)}{2} ,n表示水平通信成員間的人數 Cn2?=2n(n?1)?n

4、小組結構的選擇需考慮的因素

對于一個小組來說,選擇一個合適的結構需考慮以下因素:

  • 待解決軟件項目的困難程度
  • 產生的程序規模,以代碼行或者功能點來衡量;
  • 小組成員需要共同工作的時間(小組生存期);
  • 項目所需要的通信的程度
  • 問題能夠被模塊化的程度
  • 待建造系統所要求的質量和可靠性
  • 交付日期的嚴格程度

5、思考題

Q1:某公司有21名員工,請問分別按DD、CD、CC方式來進行組織結構的劃分,各自會產生多少條的通信路徑?假設在CD和CC方式下被分成四組,畫出大概的組織結構圖。

A1


下面給出無子負責人有子負責人的框架圖:



寫到這里,不妨再思考下,在CD和CC方式下被分成五組,有多少條通信路徑?組織架構又是怎么樣的呢?
評論區留下你的答案~

五、軟件范圍及問題分解(product)

1、預告

在開始進行一個項目之前,應該了解些什么呢?

1在進行項目計劃之前,軟件開發者和客戶必須一起定義產品的目的和范圍,考慮可選的解決方案,標識技術和管理的約束;

2)沒有這些信息,就不可能進行合理的(準確的)成本估算、有效的風險評估、適當的項目任務劃分或是可管理的項目進度安排

3)軟件范圍是軟件項目管理的第一個活動。

通過下面一張圖來加深對軟件范圍的理解。

圓圈里的內容即軟件范圍,確定該項目要做什么;那么不在圈子里面的,就先拋開,也就是說,不該做的內容先不要做。

2、軟件范圍的確定(劃定問題的邊界)

1)語境;

2)信息目標;

3)功能和性能

3、問題分解(確定各部分的功能)

1)分而治之;

2)估算開始之前,范圍中所描述的軟件功能必須被評估和細化,以提供更多的細節。因為成本和進度的估算都是面向功能的,所以某種程度的分解通常是很有用的。

六、過程(process)

1、一般性階段

1)軟件過程的一般性階段(定義、開發和支持)適用于所有軟件項目;

2)問題在于選擇一個適合項目組所要開發軟件的過程模型。

回顧下上一篇文章提到過的過程模型:

  • 線性順序模型(瀑布模型)
  • V模型
  • 原型實現模型
  • RAD模型
  • 增量模型
  • 螺旋模型
  • 形式化方法模型

2、選擇過程模型階段

項目管理者必須決定哪一個過程模型最適合用在此項目,因此在選擇過程模型時需考慮以下因素:

1)需要該產品的客戶和將做此工作的人員;

2)產品本身的特征;

3)軟件項目組工作的項目環境。

3、已確定過程模型階段

1)當一個過程模型被選定時,項目組基于通用過程框架活動集合,定義一個初步的計劃;

2)一旦建立了初步的計劃,便可以開始進行過程分解,即必須建立一個完整的計劃以反映框架活動中所需要的工作任務

3)工作任務必須針對項目的特定需要進行適應性修改;且框架活動總是一樣的,但工作任務則要根據一系列的適應性標準來選擇。

七、產品和過程的二元性(product and process)


從上圖中可以看出,橫向坐標表示過程,縱向坐標表示產品,也就是說,每一個產品都有它對應的一系列過程。所以,在一個項目中,產品和過程都一樣重要,缺了誰都不行,這也就體現了產品和過程的二元性

八、項目的5W2H原則(project)

項目的5W2H原則包含以下幾點:

  • WHY —— 為什么(Why)該系統被開發?(業務目的
  • WHAT —— 將做什么(What)?(項目任務
  • WHEN —— 什么時候(When)做?(里程碑
  • WHO —— 某功能由誰(Who)負責?(角色和責任
  • WHERE —— 他們的機構組織位于何處(Where)?(角色責任界定
  • HOW —— 工作將如何(How)被技術和管理地進行?(管理和技術策略
  • HOW MUCH —— 每種資源需要多少(How much)?(資源分配

九、寫在最后——think more

看完上面文章內容后,不妨試問下自己以下問題:

分析如下具體項目情況,選擇合適的團隊結構(CC、CD、DD)及軟件過程模型,并分析原因。

Q1:在一個信息系統組織中,你被指派為項目經理。你的工作是開發一個應用程序,該程序類似于你的團隊以前已經做過的某個項目,只是規模更大而且更復雜一些。需求已經由用戶寫成文檔。

Q2:你被指派為一個小型軟件產品公司的項目經理。你的工作是開發一個有突破性的產品,該產品結合了虛擬現實的硬件和高超的軟件。因為家庭娛樂市場的競爭非常激烈,完成這項工作的壓力很大。

Q3:你被指派為一個大型軟件產品公司的項目經理。你的工作是管理該公司已被廣泛使用的字處理軟件的新版本的開發。因為必須獲得新的收益,已經規定了緊迫的最后期限并對外公布。

Q4:在一個為遺傳工程領域服務的公司中,你被指派為項目經理。你的工作是管理一個軟件新產品的開發,該產品能夠加速基因分解的速度。這項工作是面向研究及開發的,但其目標是在下一年度內生產出產品。

評論區留下你的答案?(?????)?

PS 本文篇幅較長,有不理解或者有誤的地方歡迎私聊或加我微信 MondayLaboratory 交流~

  • 公眾號:星期一研究室
  • 微信:MondayLaboratory

如果這篇文章對你有幫助,記得留下star哦~

總結

以上是生活随笔為你收集整理的『软件工程4』一文了解软件项目管理中的4P的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。