計算機軟體工程管理工作探

2022-12-26 22:42:04 字數 3036 閱讀 9608

[摘要]通過對軟體產品特點的分析,討論軟體工程管理可能涉及的人員、組織機構、使用者、控制、文件資料等內容。

[關鍵詞]軟體工程管理;開發人員組織結構使用者

中圖分類號:tp3 文獻標識碼:a 文章編號:1671—7597(2008)0610

一、引言

軟體工程管理目前還沒有引起人們的足夠重視。究其原因:首先是人的傳統觀念,工程管理不為人們所重視;另一方面軟體工程是乙個新興的學科領域,軟體工程管理的問題也是剛被提出的。

同時,由於軟體產品的特殊性,使軟體工程管理涉及到很多學科。因此,對軟體工程管理,人們還缺乏經驗和技術。但事實證明,由管理失誤造成的後果要比程式錯誤造成的後果更為嚴重。

很少有軟體專案的實施程序能準確地符合預定目標、進度和預算的,這也就足以說明軟體工程管理的重要。

二、軟體工程管理的內容

目前軟體生產自動化程度很低,在開發過程中人是起決定性的因素,因此,軟體工程管理很大程度上是對人的管理。我們可根據軟體產品的特點,分析軟體工程管理的具體內容,它包括對開發人員、組織機構、使用者、文件資料等方而的管理。

(一)開發人員。軟體開發人員一般分為:專案負責人、系統分析員、高階程式設計師、初級程式設計師、資料員和其他輔助人員。根據專案的規模大小,有可能一人身兼數職,但職責必須明確。

不同職責的人,要求的素質不同。如專案負責人需要有組織能力、判斷能力和對重大問題能做出決策的能力;系統分析員則要有概括能力、分析能力和社交活動能力;程式設計師需要有熟練的程式設計能力等。

人員要少而精,選人要慎重。軟體生命期各個價段的活動有分工又互相聯絡。因此,要求選擇各類人員既能勝任工作,又要能相互很好地配合。沒有乙個和諧的工作氣氛很難完成乙個複雜的軟體專案。

(二)組織機構。組織機構不等於開發人員的簡單集合。這裡的組織機構要求:

好的組織結構、合理的人員分工和有效的通訊。軟體開發的組織機構沒有統一的模式。下面簡單介紹三種組織機構。

1. 公司提出的主程式設計師組是軟體系統結構化思想在組織上的體現。它的目的是為了保證全組的協調和統一。

一位高階工程師(主程式設計師)主持計畫、協調和複審組的全部技術活動。技術人員(一般2—5人)負責分析和開發活動,一位後援工程師支援高階工程師的工作,並且在該專案繼續進行時,可以代替高階工程師工作,以減少可能的損失。

2.專家組。專家組強調每個人的才能,把每個人都看作是某一方面的專家,由這些專家組成乙個開發機構。

這種組織結構雖然能發揮所有工作人員的積極性,但往往有可能出現協調上的困難,選擇這種方式要慎重。

3.民主組織。民主組織由從事各方面工作的人員輪流擔任組長。

很顯然,這種組織結構對調動積極性和個人的創造性是很值得稱道的。但是由於過多地進行組長資訊「轉移」不符合軟體工程化的方向。

(三)使用者。我們是為使用者開發軟體的,在開發過程中自始至終必須得到使用者的密切合作和支援。作為專案負責人,要特別注意與使用者保持聯絡,掌握使用者的心理和動態,防止來自使用者的各種幹找和阻力。

1.使用者不積極,不配合。這種表現通常來自對採用先進技術持懷疑態度的使用者,他們心理上的牴觸情緒會在行動上表現為消極、漠不關心。

在需求階段,做好這部分人的工作很重要,通過他們中的業務骨幹,才能真正了解到使用者的要求。要使他們認識到:計算機的發展和應用是現代化的必然趨勢,使用計算機將會帶來巨大的經濟效益;讓他們掌握新的技術和方法去取代某些可能過時的或淘汰的專長。

2.使用者求快求全。這種表現來自對使用計算機持積極態度的人。

他們中一部分人希望乙個早上就能用上計算機,並且全能用上計算機。要他們認識到:開發乙個軟體專案不是一朝一夕就能完成的,軟體工程不是靠人海戰術就能加快的工期。

另外,即使計算機能夠處理的事情,系統也不能一下於包羅永珍,貪大求全。要根據現有的條件量力而行。如果系統大而全,必然會很複雜,開發時間就拖得很長,因此可能會導致乙個系統的失敗或效能太差。

3.使用者需求變化。在軟體開發過程中,使用者可能會不斷提出新的要求和修改以前提出的要求。

從軟體工程的角度不希望有這種變化。但實際上,不允許使用者提出變動的要求是不可能的。因為一方面每個人對新事物有乙個認識過程,不可能一下子提出全面的、準確的要求;另一方而還要考慮到與使用者的關係。

對來自使用者的這種變化要正確對待:要向使用者解釋軟體工程的規律,並在可能的條件下部分或有條件地滿足使用者的合理要求。例如:

軟體需求分析階段結束後軟體的設計目標已經確定,這時使用者要求的重大變化要導致設計目標的變化,特別是到軟體開發的後期,一般不可能滿足這種變化的要求。要向使用者解釋清楚工程的內在規律,但對使用者提出的如效能等區域性方而的要求,只要是合理的,就要加以考慮。

4.控制。人員控制是對開發組織內部人員控制。

就是要保證開發人員的積極性和穩定性。人員的頻繁更換或流動將會大大增加軟體出錯誤的機會。至少要保證軟體專案每一期工程或軟體生命期每一階段中人員的相對穩定性。

同時注意發揮每個開發人員的積極性和創造性。經費控制要編制詳細的經費預算。並在各階段進行經費的核算。

在經費上失去控制,軟體專案就沒有經濟保證。質量控制與各階段的複審在意義和作用上是一致的,在此不再敘述。

5.文件資料。開發過程的各種活動後都要反映在文件資料上。

每乙個階段的文件資料是以後各階段工作的基礎,又是對前面各階段工作的複審。軟體工程管理很大程度上是通過對文件資料管理來實現的。因此,要把開發過程中的初步設計、中間過程、最後結果等建立成一套完整的文件資料。

文件標準化是文件管理的重要方面。

在當今的軟體工程時代,每個專案涉及眾多的人力和物力,管理問題日益突出。在實際工作中,不管是否正式提出管理問題。都在自覺或不自覺地進行著管理,只不過是管理的好壞程度不同而已。

隨著軟體規模的不斷增大,開發人員也隨著增多,開發時間也相應持續增長。而對於規模大、人員多、開發時間長的軟體專案,必須要有良好的管理和力求在確定的時間和預算範圍內有效地、合理地組織人力、物力,按計畫完成預定的軟體專案。

參考文獻:

[1]馮玉琳,趙寶華.軟體工程[m].合肥:中國科技大學出版社,1992.

[2] cmm(capacity maturity model)1.1版[m].美國卡內基-梅隆大學軟體工程研究院,1993.

[3]中華人民共和國國家標準udc681,計算機軟體產品開發檔案編制指南[gb8567-88][s].

[4]吳潔明,袁山龍.軟體工程應用實用教程[m].北京:清華大學出版社,2003,8

作者簡介:燕德麗,女,助教,山東東營職業學院。

計算機軟體工程管理

引言 在當前資訊化社會快速發展的背景下,軟體工程起到非常關鍵的作用。提高計算機軟體工程專案的管理效率與質量水平,加大人力與物力投入力度,積極改進思路,運用新方法 新手段,將更好地促進計算機軟體工程專案的穩定進行,順利實現工程的經濟效益與社會效益目標。計算機軟體工程的管理的影響有三個方面 軟體的生產力...

06計算機《軟體工程》B

泉州師院2008 2009學年度第二學期本科 電腦科學與技術專業2006級 軟體工程 期末試卷 b 一 選擇題 20 每題1分 1.在軟體的可行性研究中,可以從不同的角度對軟體的可行性進行研究,其中是從軟體的功能可行性角度考慮的是 a 經濟可行性 b 技術可行性 c 操作可行性 d 法律可行性 2....

計算機軟體工程專業卓越計畫實踐教學

作者 李鋒夏小玲 計算機教育 2013年第13期 摘要 卓越計畫 是我國高等教育的一項重大改革專案,強調培養高質量的各型別工程技術人才,而實踐教學是培養工程技術人員的重要環節,也是重要的教學手段。文章在分析 卓越計畫 的培養要求和實踐教學作用的基礎上,圍繞 高質量 和 工程型 兩大目標,針對軟體工程...