淺析計算機技術論文(2)
淺析計算機技術論文
淺析計算機技術論文篇二
《淺析計算機軟件項目管理中的需求分析》
【摘要】科學而有效的計算機軟件項目管理需求分析有助于項目開發(fā)的成功。本文對目前計算機軟件項目管理需求進行了分析,得出了軟件項目管理需求分析的內容和目標,并總結了其實施過程中的步驟方法。
【關鍵詞】計算機 軟件項目 需求分析
【中圖分類號】TP311.52 【文獻標識碼】A 【文章編號】1672-5158(2013)04-0008-01
一、計算機軟件項目管理涵義
項目是一件事情、一項獨一無二的任務,也可以理解為是在一定的時間和一定的預算內所要達到的預期目的。具有明確的目標性、資源成本的約束性、項目實施的一次性、結果的不可逆轉性以及創(chuàng)新性。
項目管理是指在項目活動中運用專門的知識、技能、工具和方法,使項目能夠在有限資源限定條件下,實現(xiàn)或超過設定的需求和期望。
軟件需求分析就是把軟件計劃期間建立的軟件可行性分析求精和細化,分析各種可能的解法,并且分配給各個軟件元素。其對象是軟件工程項目,和其他的項目管理相比有相當?shù)奶厥庑?。在計算機軟件項目管理過程域中,主要包括:項目規(guī)劃、立項管理、需求管理、項目監(jiān)控、風險管理和結項管理等。
二、計算機軟件項目管理中的需求分析內容
軟件需求工程是計算機軟件項目開發(fā)工作的一個重要源頭,涉及到需求開發(fā)和需求管理。需求開發(fā)涉及到需求調研,需求收集,需求分析,需求開發(fā)等工作,其中的重點有業(yè)務流程,數(shù)據(jù)字典,業(yè)務規(guī)則,界面原型;需求管理工作涉及到需求的狀態(tài)管理,變更管理,需求的跟蹤,需求的驗證和確認等重要內容。
軟件需求分析特別重要,在軟件開發(fā)的過程中具有舉足輕重的地位,但是我們常常會忽視兩點:一個就是缺乏需求分析和開發(fā)的過程,把用戶需求直接作為了軟件需求,沒有需求建模和抽象的過程。另外一點就是對于性能,安全,易用性,可維護性和擴展性等非功能性需求沒有考慮,導致開發(fā)出來的系統(tǒng)是一個不好用的半成品。
三、計算機軟件項目管理中的需求分析目標
在計算機軟件項目管理的實際工作中,管理者必須在每一項工作中,全面分析問題,正確評估任務,制定詳細的計劃表,從而實現(xiàn)既定目標。軟件需求分析的主要實現(xiàn)目標包括:
1)對實現(xiàn)軟件的功能做全面的描述,幫助用戶判斷實現(xiàn)功能的正確性、一致性和完整
性,促使用戶在軟件設計啟動之前周密地、全面地思考軟件需求;
2)了解和描述軟件實現(xiàn)所需的全部信息,為軟件設計、確認和驗證提供一個基準;
3)為軟件管理人員進行軟件成本計價和編制軟件開發(fā)計劃書提供依據(jù)。
四、計算機軟件項目管理中的需求分析的步驟方法
(一)獲取用戶需求。這是該階段的一個最重要的任務,可能是軟件開發(fā)中最困難、最關鍵、最易出錯及最需要交流的方面。首先,了解客戶方的所有用戶類型以及潛在的類型。然后,根據(jù)他們的要求來確定系統(tǒng)的整體目標和系統(tǒng)的工作范圍。其次對用戶進行訪談和調研。交流的方式可以是會議、電話、電子郵件、小組討論、模擬演示等不同形式。需要注意的是,每一次交流一定要有記錄,對于交流的結果還可以進行分類,便于后續(xù)的分析活動。例如,可以將需求細分為功能需求、非功能需求(如響應時間、平均無故障工作時間、自動恢復時間等)、環(huán)境限制、設計約束等類型。再次,需求分析人員對收集到的用戶需求做進一步的分析和整理。下面是幾條常見的準則:(1)對于用戶提出的每個需求都要知道“為什么”,并判斷用戶提出的需求是否有充足的理由;(2)將那種以“如何實現(xiàn)”的表述方式轉換為“實現(xiàn)什么”的方式,因為需求分析階段關注的目標是“做什么”,而不是“怎么做”,(3)分析由用戶需求衍生出的隱含需求,并識別用戶沒有明確提出來的隱含需求(有可能是實現(xiàn)用戶需求的前提條件),這一點往往容易忽略掉,經常因為對隱含需求考慮得不夠充分而引起需求變更。最后,需求分析人員將調研的用戶需求以適當?shù)姆绞匠式唤o用戶方和開發(fā)方的相關人員。大家共同確認需求分析人員所提交的結果是否真實地反映了用戶的意圖。需求分析人員在這個任務中需要執(zhí)行下述活動:(1)明確標識出那些未確定的需求項(在需求分析初期往往有很多這樣的待定項),(2)使需求符合系統(tǒng)的整體目標;(3)保證需求項之間的一致性,解決需求項之間可能存在的沖突。
(二)分析用戶需求。在系統(tǒng)設計之前和設計、開發(fā)過程中對用戶需求所作的調查與分析,是系統(tǒng)設計、系統(tǒng)完善和系統(tǒng)維護的依據(jù)??梢酝ㄟ^審查業(yè)務流程、Demo界面和UML圖,征求反饋意見。評審對軟件系統(tǒng)運行時所處環(huán)境的要求。例如硬件、數(shù)據(jù)通信接口等等,在軟件方面,采用什么支持系統(tǒng)軟件運行(如操作系統(tǒng)、網絡軟件、數(shù)據(jù)庫管理系統(tǒng)等)。從工作流程和數(shù)據(jù)流出發(fā),逐步細化軟件功能,找出系統(tǒng)各模塊之間的聯(lián)系、接口特性和客觀限制,分析它們是否滿足功能要求。針對可靠性、安全l生和擴展性評審,TCMS系統(tǒng)涉及公司內部最高機密,聘請第三方機構進行需求分析評審。
(三)文檔編寫。需求開發(fā)的最終成果是:客戶和開發(fā)小組對將要開發(fā)的產品達成一致。為此,我們還必須編寫軟件需求說明書,進一步理解業(yè)務需求,用戶需求,功能需求,為設計、開發(fā)和測試以及產品相關人員的提供參考。軟件需求說明書采用什么樣的形式能夠把功能描述清楚,如何讓使用人員盡快了解產品的功能,采用什么樣的編寫方式,是軟件需求分析人員需要考慮的問題。經過最近的摸索和積累,個人覺得編寫需求文檔不一定要長篇大論,要多用表格和流程圖,并且至少包括以下內容:(1)目的。即使用場景描述,先用幾句話簡要概括做該軟件是用來解決什么問題。不要一開始就描述功能,至少讓設計人員大致了解該功能的使用目的。(2)涉眾。軟件是讓誰來使用,列舉所有可能使用到此功能的用戶或者角色。(3)功能列表。菜單樹,展示具體包含的子功能和上下級關系。由于不同類型用戶關注的重點可能不同,所以最好應給出各子功能中對應的默認用戶權限。(4)數(shù)據(jù)字典。列表描述功能涉及的字段名稱、數(shù)據(jù)類型、取值范圍、默認值、備注信息等。(5)流程圖。描述用戶使用的正常流程和異常流程,如果涉及到狀態(tài)轉換最好給出狀態(tài)遷移圖。(6)UI。展示所涉及界面布局和原型,不必描述具體提示內容信息,可以在字符串資源表中去定義。(7)相關影響。該功能對其他相關模塊的影響,還有其他相關模塊對此功能的影響。
(四)需求驗證。與客戶經過溝通或驗證,會產生兩種結果:一類是確認雙方達成共識,另一種情況是還需要再進一步溝通的。包括以下內容:(1)審查需求文檔:對需求文檔進行正式審查是保證軟件質量的很有效的方法。組織一個由不同代表(如分析人員,客戶,設計人員,測試人員)組成的小組,對需求規(guī)格說明書及相關模型進行仔細的檢查。另外在需求開發(fā)期間所做的非正式評審也是有所裨益的。(2)依據(jù)需求編寫測試用例:根據(jù)用戶需求所要求的產品特性寫出黑盒功能測試用例??蛻敉ㄟ^使用測試用例以確認是否達到了期望的要求。還要從測試用例追溯回功能需求以確保沒有需求被疏忽,并且確保所有測試結果與測試用例相一致。同時,要使用測試用例來驗證需求模型的正確性,如對話框圖和原型等。(3)編寫用戶手冊:在需求開發(fā)早期即可起草一份用戶手冊,用它作為需求規(guī)格說明的參考并輔助需求分析。優(yōu)秀的用戶手冊要用淺顯易懂的語言描述出所有對用戶可見的功能。而輔助需求如質量屬性、性能需求及對用戶不可見的功能則在需求規(guī)格說明書中予以說明。(4)確定合格的標準:確定合格的標準讓用戶描述什么樣的產品才算滿足他們的要求和適合他們使用的。將合格的測試建立在使用情景描述或使用實例的基礎之上。
參考文獻:
[1]吳艷艷:周長倫:姜家軒:王春梅:許自國::軟件項目管理中的需求管理[J]:信息技術與信息化:2008年02期
[2]孫莉:軟件項目管理中的需求管理[J]:信息系統(tǒng)工程:2011年04期
[3]李虹:閆德恒:基于項目需求工程理論的軟件需求管理淺析[J]:中國科技信息:2011年16期
看過“淺析計算機技術論文”的人還看了: