需求是開發(fā)者和用戶交互的一個過程,任何一方的不投入都會導致項目的失敗。由于售前咨詢的定位,必然存在著客戶溝通和客戶合作態(tài)度的問題(再者用戶不是專業(yè)人士),因而開發(fā)者需要以積極的態(tài)度告訴客戶需求開發(fā)的方法,以獲取客戶的支持。
軟件需求包括三個不同的層次——業(yè)務需求、用戶需求和功能需求,也包括非功能需求。業(yè)務需求反映了組織機構或客戶對系統(tǒng)、產品高層次的目標要求,在項目視圖與范圍文檔中予以說明。用戶需求描述用戶使用產品必須要完成的任務,可使用用例文檔或場景腳本予以說明。功能需求定義了開發(fā)人員必須實現的軟件功能,使得用戶能完成他們的任務,從而滿足了業(yè)務需求。所謂特性是指邏輯上相關的功能需求的集合,給用戶提供處理能力并滿足業(yè)務需求。
3.2 UML與相關模型
UML是一種圖形化的面向對象建模語言,通過不同的圖形表示來捕捉系統(tǒng)靜態(tài)結構和動態(tài)行為的信息,建立起對象模型。
考慮到售前咨詢過程更多的是理解和闡述客戶需求,因而可以將注意力聚焦在用例和活動圖上,即通過層次化的用例(Use Case)模型和時序模型描述企業(yè)范圍內各種應用的功能需求;通過逐級分解的活動模型(業(yè)務過程、子過程、活動)來細化描述業(yè)務。當然也可適當考慮類模型的分析,借此說明企業(yè)相關的實體和關系。
3.2.1 UML概述
UML的概念包括了UML語義(Semantics)和UML表示符(Notation)兩個部分,UML語義定義了三種模型(類模型、狀態(tài)模型和交互模型),UML表示符提供了完整的語義定義,UML的表示符包括了下面的幾種主要的圖:類圖、用例圖、順序圖、協(xié)作圖、狀態(tài)圖、活動圖和部署圖。
三種模型從不同的視角來描述系統(tǒng):
• 類模型。描述了系統(tǒng)內部對象及其關系的靜態(tài)結構——它們的標識、與此同時其他對象的關系、屬性以及操作。類模型提供了放置狀態(tài)模型和交互模型的基本框架。類模型中最重要的概念是類、關聯(lián)和泛化。
• 狀態(tài)模型。描述的是對象當中與時間相關的內容,如表明變化的事件,以及那些界定了事件上下文的狀態(tài)。狀態(tài)模型是由多張狀態(tài)圖所構成的,一個類有一張狀態(tài)圖,每張狀態(tài)圖都包含了一些重要的時序行為。
• 交互模型。描述的是對象如何協(xié)作以達成某種結果。交互模型是跨越了許多對象的整體視圖。交互可以在不同的抽象層次上建模。在高層上,用例描述的是系統(tǒng)如何與外部參與者交互(用例表示功能片段,有助于捕獲非形式化的需求);順序圖提供更多的細節(jié),顯示交互的對象,以及對象交互的時間順序;活動圖提供最詳盡的細節(jié),以顯示某次活動中處理步驟之間的控制流。
3.2.2 用例模型
用例是從用戶的角度看待系統(tǒng),用例標識系統(tǒng)的功能,并根據用戶的觀點組織這些功能。用例模型包括參與者、用例和用例圖三部分構成:
• 參與者(Actor)。系統(tǒng)的直接外部用戶——直接與系統(tǒng)通信的一個對象或一級對象,但并不是系統(tǒng)的一部分。
• 用例。用例是系統(tǒng)通過與參與者的交互可以提供的一段連貫的功能,每個用例會涉及一個或多個參與者以及系統(tǒng)本身。用例把與此一部分系統(tǒng)功能相關的所有行為組合在一起,包括普通主線行為、普通行為的變體、異常條件、錯誤條件和請求取消。
• 用例圖。UML用一套圖形表示法來總結用例,如下圖。其中矩形包含了系統(tǒng)的用例,參與者列在矩形外面。系統(tǒng)的名稱可以寫在矩形的某條邊的附近。橢圓內部的名稱表示用例。“火柴人”圖標表示參與者,參與者的名稱列在圖標下方或者臨近圖標的地方。實線連接用例及其參與者。
<此節(jié)也需要重新編寫>3.2 UML與相關模型
UML是一種圖形化的面向對象建模語言,通過不同的圖形表示來捕捉系統(tǒng)靜態(tài)結構和動態(tài)行為的信息,建立起對象模型。
考慮到售前咨詢過程更多的是理解和闡述客戶需求,因而可以將注意力聚焦在用例和活動圖上,即通過層次化的用例(Use Case)模型和時序模型描述企業(yè)范圍內各種應用的功能需求;通過逐級分解的活動模型(業(yè)務過程、子過程、活動)來細化描述業(yè)務。當然也可適當考慮類模型的分析,借此說明企業(yè)相關的實體和關系。
3.2.1 UML概述
UML的概念包括了UML語義(Semantics)和UML表示符(Notation)兩個部分,UML語義定義了三種模型(類模型、狀態(tài)模型和交互模型),UML表示符提供了完整的語義定義,UML的表示符包括了下面的幾種主要的圖:類圖、用例圖、順序圖、協(xié)作圖、狀態(tài)圖、活動圖和部署圖。
三種模型從不同的視角來描述系統(tǒng):
• 類模型。描述了系統(tǒng)內部對象及其關系的靜態(tài)結構——它們的標識、與此同時其他對象的關系、屬性以及操作。類模型提供了放置狀態(tài)模型和交互模型的基本框架。類模型中最重要的概念是類、關聯(lián)和泛化。
• 狀態(tài)模型。描述的是對象當中與時間相關的內容,如表明變化的事件,以及那些界定了事件上下文的狀態(tài)。狀態(tài)模型是由多張狀態(tài)圖所構成的,一個類有一張狀態(tài)圖,每張狀態(tài)圖都包含了一些重要的時序行為。
• 交互模型。描述的是對象如何協(xié)作以達成某種結果。交互模型是跨越了許多對象的整體視圖。交互可以在不同的抽象層次上建模。在高層上,用例描述的是系統(tǒng)如何與外部參與者交互(用例表示功能片段,有助于捕獲非形式化的需求);順序圖提供更多的細節(jié),顯示交互的對象,以及對象交互的時間順序;活動圖提供最詳盡的細節(jié),以顯示某次活動中處理步驟之間的控制流。
3.2.2 用例模型
用例是從用戶的角度看待系統(tǒng),用例標識系統(tǒng)的功能,并根據用戶的觀點組織這些功能。用例模型包括參與者、用例和用例圖三部分構成:
• 參與者(Actor)。系統(tǒng)的直接外部用戶——直接與系統(tǒng)通信的一個對象或一級對象,但并不是系統(tǒng)的一部分。
• 用例。用例是系統(tǒng)通過與參與者的交互可以提供的一段連貫的功能,每個用例會涉及一個或多個參與者以及系統(tǒng)本身。用例把與此一部分系統(tǒng)功能相關的所有行為組合在一起,包括普通主線行為、普通行為的變體、異常條件、錯誤條件和請求取消。
• 用例圖。UML用一套圖形表示法來總結用例,如下圖。其中矩形包含了系統(tǒng)的用例,參與者列在矩形外面。系統(tǒng)的名稱可以寫在矩形的某條邊的附近。橢圓內部的名稱表示用例。“火柴人”圖標表示參與者,參與者的名稱列在圖標下方或者臨近圖標的地方。實線連接用例及其參與者。