大師兄的信息化管理學(xué)習(xí)筆記(七):中間件技術(shù)
大師兄的信息化管理學(xué)習(xí)筆記(九):UML語言
一、軟件工程
- 軟件工程(Software Engineering)是指應(yīng)用計算機(jī)科學(xué),數(shù)學(xué)及管理科學(xué)等原理,以工程化的原則和方法來解決軟件問題的工程。
- 方法:完成軟件工程項目的技術(shù)手段,支持整個軟件聲明周期。
- 工具:自動或半自動地支持軟件的開發(fā)和管理,支持文檔生成。
- 過程:貫穿軟件開發(fā)的各個環(huán)節(jié)。
二、軟件需求
1. 關(guān)于軟件需求
- 軟件需求是指用戶對新系統(tǒng)在功能、行為、性能、設(shè)計約束等方面的期望。
- IEEE:軟件需求是指用戶解決問題或達(dá)到目標(biāo)所需的條件或能力,是系統(tǒng)或系統(tǒng)部件要滿足合同、標(biāo)準(zhǔn)、規(guī)范或其他正式規(guī)定文檔所需具有的條件或能力,以及反應(yīng)這些條件或能力的文檔說明。
2. 軟件需求的層次
| 層次 | 描述 |
|---|---|
| 業(yè)務(wù)需求 | 反應(yīng)企業(yè)或客戶對系統(tǒng)高層次的目標(biāo)要求,通常來自項目投資人、客戶、客戶單位的管理人員、市場營銷部分或產(chǎn)品策劃部門等。 |
| 用戶需求 | 用戶的具體目標(biāo),或用戶要求系統(tǒng)必須能完成的任務(wù)。用戶需求描述了用戶能使用系統(tǒng)來做些什么。 |
| 系統(tǒng)需求 | 從系統(tǒng)的角度來說明軟件的需求,包括功能需求,非功能需求和設(shè)計約束等。 |
2.1 系統(tǒng)需求
- 功能需求:規(guī)定了開發(fā)人員必須在系統(tǒng)中實現(xiàn)的軟件功能,通常通過系統(tǒng)特性的描述表現(xiàn)出來。
- 非功能需求:系統(tǒng)必須具備的屬性或品質(zhì),如可維護(hù)性、可用性、效率等
- 設(shè)計約束:限制條件或補(bǔ)充規(guī)約,通常是對系統(tǒng)的約束說明。
3. 需求的特征
- 正確性:用詞準(zhǔn)確,數(shù)據(jù)來源準(zhǔn)確
- 完整性:不遺漏,有必要信息輔助設(shè)計和實現(xiàn)
- 可行性:在一定環(huán)境和限制條件下可實施
- 一致性:與其他需求或高層需求不矛盾
- 劃分優(yōu)先級:指明需求重要性
- 可理解性:減少專業(yè)術(shù)語、描述清晰、必要的說明
- 可驗證性:有方法可檢測需求是否實現(xiàn)了
- 可追蹤性:項目全生命周期跟蹤需求
- 可修改性:容易修改、記錄修改內(nèi)容
- 無歧義性:對所有需求說明的讀者都只能有一個明確統(tǒng)一的解釋
三. 需求工程

| 內(nèi)容 | 描述 |
|---|---|
| 需求獲取 | - 確定和理解項目干系人的需求和約束的過程。 - 方法包括用戶訪談、問卷調(diào)查、采樣、清潔串聯(lián)板、聯(lián)合需求計劃等。 |
| 需求分析 | - 提煉、分析和審查已經(jīng)獲取的需求,以確保所有項目干系人清楚各項需求的含義,發(fā)現(xiàn)遺漏和不足。 - 需求分析方法包括SA方法和OOA方法等。 |
| 編寫規(guī)約 | - 形成軟件需求規(guī)格說明書SRS,是相關(guān)方對需求的共同理解,是開發(fā)的基礎(chǔ)。 - GB/T8567-2006提供了SRS的文檔模板和編寫指南。 |
| 需求驗證 | - 在系統(tǒng)分析階段檢測SRS中的錯誤,節(jié)省時間和資金。 - 一般通過需求評審和需求測試工作來對需求進(jìn)行驗證。 |
1 質(zhì)量功能部署QFD
- QFD(quality Function Deployment), 是一種將用戶要求轉(zhuǎn)化成軟件需求的技術(shù)。
- 其目的是最大限度地提升軟件工程過程中用戶的滿意度,確保產(chǎn)品設(shè)計滿足客戶需求和價值。
- QFD將需求分為三類:
| 類別 | 描述 |
|---|---|
| 常規(guī)需求 | 也稱普通需求,包含客戶對項目的最基本需求,是客戶對整個項目最關(guān)心的部分。 |
| 期望需求 | 客戶可能沒有表達(dá)明確或沒有明確提出的需求,但是會讓客戶提升對項目的滿意度。 |
| 意外需求 | 也稱興奮需求,用戶要求范圍外的功能呢或性能,不實現(xiàn)也不影響購買決策。 |
2 需求分析的目的
- 檢測和解決需求之間的沖突。
- 發(fā)現(xiàn)軟件的邊界,以及軟件與其環(huán)境如何交互。
- 詳細(xì)描述系統(tǒng)需求,以導(dǎo)出軟件需求。
3. 結(jié)構(gòu)化分析方法SA
- 結(jié)構(gòu)化分析是軟件工程中的一種方法,其建立的模型的核心是數(shù)據(jù)字典。
- 結(jié)構(gòu)化分析有三個層次的模型:
3.1 數(shù)據(jù)模型
-
E-R圖也稱實體-聯(lián)系圖(Entity Relationship Diagram),提供了表示實現(xiàn)類型、屬性和聯(lián)系的方法,用來描述顯示世界的概念模型。
3.2 功能模型
-
DFD圖(Data Flow Diagram,數(shù)據(jù)流圖),從數(shù)據(jù)傳遞和加工的角度,用圖形方式表示信息系統(tǒng)中數(shù)據(jù)的移動方式。
3.3 行為模型
-
STD圖(State Transform Diagram狀態(tài)轉(zhuǎn)換圖),描述系統(tǒng)的狀態(tài)和引起系統(tǒng)狀態(tài)轉(zhuǎn)換的事件,指出作為特定事件的結(jié)果將執(zhí)行哪些動作。
4. 面向?qū)ο蠓治龇椒∣OA
- 運營OO方法對問題域進(jìn)行分析和理解,找出描述問題域和系統(tǒng)功能所需的類和對象,最終產(chǎn)生OOA模型。
4.1 用例模型
- 描述系統(tǒng)功能
-
主要表現(xiàn)形式是用例圖
4.2 分析模型
- 靜態(tài)模型:類和對象的組成關(guān)系。
- 動態(tài)模型:對象及系統(tǒng)組成部分之間如何銅線,實現(xiàn)系統(tǒng)行為。
5. 軟件需求規(guī)格說明書SRS
- SRS(Software Requirement Specification,軟件需求規(guī)格說明書)是需求開發(fā)活動的產(chǎn)物,目的是使系統(tǒng)干系人與開發(fā)團(tuán)隊對系統(tǒng)的初始規(guī)定有共同的理解,使之稱為整個開發(fā)工作的基礎(chǔ)。
- 根據(jù)GB/T 8567-2006,SRS應(yīng)包括:
| 內(nèi)容 | 描述 |
|---|---|
| 范圍 | 本部分包括SRS適用的系統(tǒng)和軟件的完整標(biāo)識,簡述SRS適用的系統(tǒng)和軟件的用途,描述系統(tǒng)和軟件的一般特性。 |
| 引用文件 | 列出SRS中引用的所有文檔的編號、標(biāo)題、修訂版本和日期。 |
| 需求 | 是SRS的主體部分,詳細(xì)描述軟件需求。 |
| 合格性規(guī)定 | 定義一組合格性的方法,以確保需求得到滿足。 |
| 需求可追蹤性 | 從SRS中每個軟件配置項的需求到其涉及的系統(tǒng)(或子系統(tǒng))的雙向可追蹤性。 |
| 尚未解決的問題 | 說明軟件需求中的尚未解決的遺留問題。 |
| 注解 | 包含有助于理解SRS的一般信息,如背景信息、詞匯表、原理等。 |
| 附錄 | 提供那些為便于維護(hù)SRS而單獨編排的信息(如圖標(biāo)、分類數(shù)據(jù))。 |
6. 需求驗證
- 需求驗證也稱為需求確認(rèn),主要內(nèi)容包括:
- 確定SRS正確地描述了預(yù)期的、滿足項目干系人需求的系統(tǒng)行為和特征;
- SRS中的軟件需求是從用戶需求、業(yè)務(wù)規(guī)格和其他來源中正確推導(dǎo)而來的;
- 需求是完整和高質(zhì)量的;
- 需求的表示在所有地方都是一致的;
- 需求為后續(xù)的系統(tǒng)設(shè)計、實現(xiàn)和測試提供了足夠的基礎(chǔ)



