軟體工程專業優秀論文
軟體工程是大學電子資訊系一個熱門的專業,那麼大家知道軟體工程專業論文怎麼書寫嗎?在此,小編為大家準備好了軟體工程專業優秀論文,一起來學習吧!
[摘 要]我國的資訊化已經走過了20多年的歷程,但許多軟體開發公司仍不得不在收集、編寫和管理產品需求中疲於奔命。而缺乏使用者參與、不完整的需求及不斷變更需求,是導致資訊科技專案不能按進度安排和資金預算完成全部功能的主要原因。
[關鍵詞]使用者 軟體開發 軟體工程
需求分析是軟體工程中的一個重要環節,是關乎軟體專案開發成敗的重要因素。現在的軟體專案中返工開銷幾乎佔了總開發的一半,而導致返工的主要原因是需求分析不明確,從而引發專案開發中的一系列更改。這些更改可能導致浪費大量資源、軟體專案無法按時完成等嚴重問題。所以,需求分析是軟體設計和實現的基礎,是軟體專案邁向成功的重中之重。
一、軟體工程中的需求分析概述
一個軟體專案的開發主要分為五個階段:需求分析階段、設計階段、編碼階段、測試階段和維護階段。而需求分析階段所得到的結果。是軟體專案開發中其他四個階段的必備條件。從以往的經驗來看,需求分析中的一個稍稍的偏差,就可能導致整個專案無法達到預期的效果。
需求分析是指理解使用者需求,就軟體功能與客戶達成一致,估計軟體風險和評估專案代價,最終形成開發計劃的一個複雜過程。在這個過程中,使用者的確是處在主導地位,需求分析工程師和專案經理要負責整理使用者需求,為之後的軟體設計打下基礎。需求分析階段結束後,要求得到:1.SRS文件(System Requirement Specification); 2.DRM 文件;3.Acceptance Plan。從廣義上理解需求分析則包括需求的獲取、分析、規格說明、變更、驗證、管理的一系列需求工程。
二、軟體工程中的需求工作流程
軟體需求是指使用者對目標軟體在功能、行為、效能、設計約束等方面的期望。透過對問題及其環境的理解與分析,為問題涉及的資訊、功能及行為建立模型,將使用者需求精確化、完全化,最終形成需求規格說明,如圖1所示,整個活動構成軟體開發生命週期的需求分析階段。在需要的開發中, 問題的獲取包括業務需求、使用者需求、功能需求。業務需求的參與者主要是業務流程分析員,對企業目前的業務流程進行評估,確定進行何種程度的業務建模;使用者需求重心是如何收集使用者需求,確定角色和用例,獲取需求的方法傾向組織訪談會;功能需求依賴於使用者需求,是使用者需求在系統上的一個對映,為使用者做一個軟體原型是一個很好的方法。
三、軟體工程中的需求分析
需求分析包括提煉、分析和仔細審查已收集到的需求,以確保所有承擔風險者都明白其含義,能找出其的錯誤、遺漏等地方。分析員透過評價來確定是否所有的需求和軟體需求規格說明都達到了優秀需求說明的要求。分析的目的在於開發出高質量的需求,這樣你能做出實用的專案估算並可以進行設計、構造和測試。通常,把需求中的一部分用多種形式來描述,如同時用文字和圖形來描述。分析這些不同的檢視將揭示出一些更深的問題,這是單一檢視無法提供的。分析還包括與客戶的交流以澄清某些混淆,並明確哪些需求是更為重要的。其目的是確保所有風險承擔者儘早地對專案達成共識並對將來的產品有個相同而清晰的認識。
1. 建立資料字典。資料字典是對系統用到的所有資料項和結構的定義,以確保開發人員使用統一的.資料定義。在需求階段,資料字典至少應定義客戶資料項以確保客戶與開發小組使用一致的定義和術語。分析和設計工具通常包括資料字典元件。
2. 確定需求的優先級別。應用分析方法來確定使用例項、產品特性或單項需求實現的優先級別。以優先順序為基礎確定產品版本將包括哪些特性或哪類需求。當允許需求變更時,在特定的版本中加入每一項變更,並在那個版本計劃中做出需要的變更。
3. 分析需求可行性。在允許的成本、效能要求下,分析每項需求實施的可行性,明確與每項需求實現相聯絡的風險,包括與其它需求的衝突,對外界因素的依賴和技術障礙。
4. 使用質量功能調配。質量功能調配是一種高階系統技術,它將產品特性、屬性與對使用者價值聯絡起來。該技術提供了一種分析方法以明確哪些是客戶最為關注的特性。質量功能調配將需求分為三類:期望需求,即客戶或許並未提及,但如若缺少會讓他們感到不滿意;普通需求和興奮需求,即實現了會給客戶帶去驚喜,但若未實現也不會受到責備。
5. 衡量需求穩定性。記錄基本需求的數量和每週或每月的變更數量(新增、修改、刪除)。過多的需求變更“是一個報警訊號”意味著問題並未真正弄清楚,專案範圍並未很好的確定下來或是政策變化較大。
6. 繪製系統上下文示意圖。這種示意圖是用於定義系統與系統外部實體問的界限和介面的簡單模型。同時它也明確了透過介面的資訊流和物質流。
7. 作為功能需求的補充,軟體需求規格說明還應包括非功能需求,它描述了系統展現給使用者的行為和執行的操作等。它包括產品必須遵從的標準、規範和合約;外部介面的具體細節;效能要求;設計或實現的約束條件及質量屬性。
軟體需求分析中的關鍵就是展開分析、發現問題、征服問題。所有的一切都是為了能夠將軟體中的錯誤和漏洞在需求分析和需求工程階段發現並解決,這樣才能使軟體開發的成本收益比達到最大,使得軟體在其生命週期中的維護費用降到最低,這也是我進行軟體需求分析方法研究的目的,希望可以透過上述的軟體需求分析的方法研究為以後軟體的開發打下一個良好的基礎。
參考文獻:
[1]鄭人傑等:實用軟體工程(第2版),北京:清華大學出版社,1997
[2]史濟民等:軟體工程一原理、方法和應用,北京:高等教育出版社,2002
[3]P re s smaI1:軟體工程一實踐者研究方法(第4版).北京:機械工業出版社. 1 9 99
[4]張龍祥:UML與系統分析設計.北京:人民郵電出版社,2007
[5]孫家廣:軟體工程――理論、方法與實踐, 高等教育出版社