《信息系統分析與設計》-第8章面向對象的系統開發方匯總_第1頁
《信息系統分析與設計》-第8章面向對象的系統開發方匯總_第2頁
免費預覽已結束,剩余34頁可下載查看

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、本章內容8、1面囪對欽方法松8.2 面向對象系統開發過程8.3 業務事件分析8.4 用例模型8.5 類圖8.6 交互模型信2彳娩殳針wMa 77?77.對象的系統開好法待素傍今僑&祓計wtM 77777.CK隨著面向對象語言的出現,面向對象程序設計也就應運而生且得 到迅速發展。之后,面向對象不斷向其他階段滲透,1980 年,Grady Booch 提出了面向對象設計的概念,之后面向對象分析開始。1985 年 第一個商用面向對象數據庫問世n1990 年以來.面向對象分析、設 計、測試.度量和管理等研究都得到長足發展。8.1.1面向對象領域中的基本概念什么是面向對象? Coad 和 You

2、rdon 給出的定義是:面向對象(Object Or iented)二對象(Ob jects) +分類(Classification) +繼承(Inhcr i tancc)十通信(Commun i cat i on )如果一個軟件系統是使用這樣的概念設計和實現的,就可以認為這個軟件系統是面向 對象的信2索詭今新芬後針wtM ?7?77,信2系詭金析鳥很針7/777.What Is a Class?對象(Object) 是系統中用來描述客觀事物的一個實體, 它是構成系統的一個 基本單位。 類(Class)是對象的模板Example - Object-Oriented Programminc in

3、 C+class Shape public:virtural void Draw。const= 0; ;class Square : public Shape public:virtual void Draw() const; ;class Circle : public Shape public:virtual void Draw。const; ;Class:ProfeOperations+submitFinalGrObjectsAttributesProfessor SmithProfessor MellonProfessorname-employeelD:Uniqueldofessor信

4、2索詭今新鳥菠計void DrawAIIShapesfvector & list) vector : iterator I;for (i = list.begin); i != Iist.end(); i+) (*i)-DrawO;信息余矩金析鳥儀針封裝封裝封裝(Encapsulation)使數據和加工該數據的方法(函數)封裝為一個整體 ,以實現獨立性很強的模塊。 封裝是一種信息隱蔽技術.它體現于類的說明.是對彖的軍要特件 c(Sedan J Sports Car J (School Bus J (Tuxury Bus J 類通過繼承定義成不同的層次結構,將相關類的特點抽象出來作為父類

5、,子類繼承父 類的結構和方法后,再定義各自特定的數據和操作。信息圭璧今新芬後計7/777.WK消息(Message)The class Order has the responsibility to calculate the total dollarvalue.多態多態(Polymorphism)多態,字面上是指有多種形態的意思。在面向對象技術中,多態是指一個事 物在不同上下文中具有不同意義或用法的能力。同一消息為不同的對象接受時可產生完全不同的行動。Message對象之間進行通信的結構叫做消息(Message)OrderEntryFormcalculateOrderTotal()Order

6、信息索詭今新鳥後計信攵圭詭今新鳥後計Moca 777面向對象方法面向對象的方法起源于面向對象的編程語言。自 20 世紀 80 年代中期到 90 年代,00 的研究重點已經從面向對象編程語言轉移到設計方法學方面, 陸續提出了一些面向對象的開發方法和設計技術。面向對象方法模型重要的對象被發現后,通過一組互相關聯的模型詳細表示類之間的關系和對象的行為,這些模型從四個不同的側面表示了軟件的體系結構:-靜態邏輯 -動態邏輯-靜態物理-動態物理8. 1.3統一建模語言(Unified Model in Lancuace, UML)信息索炕今新馬後計77777,面向對象方法的建模語言: 一種

7、通用的可視化建模語言,可用于工程領域特別是軟件工程領域的建 模統一建模語言 UML (Unified Mode I i ng Language )是一種通用的可視化建 模語言,用于對軟件進行描述、可視化處理、構造和建立軟件系統的 工作文檔。 UML 體系包括三個部分:1UML 基本構造塊:事物.關系、圖;2UML 規則:信逢璧今新芬菠計7/777.UML 事物是對模型中最有代表性的成分的抿象。UML 中有四種事物:結構事物(structura I th ing)行為事物(behav iora I thing) 分組事物(grouping thing) 注釋事物(annotat i ona I

8、th i ng)UML關系UML 中關系(re lat ionsh i p)包括四種: 依賴(dependency) 關聯(assoc i at i on)泛化(genera I i Nat i on)實現(rea I izat ion)UML圖之間的關系信也逢詭今斯鳥後計7/777.信2圭詭今斯本章內容 8. 1 面向對象方法概述 8.2面向對ftMtt開發過程8.3 業務事件分析8.4 用例模型8.5 類圖8.6 交互模型8. 2.1面向對象系統開發過程概述面向對象系統開發過程概述面向對象的分析(OOA, Object Or iented Ana lysis)面向對象的設計(00D, Ob

9、ject Or iented Design)面向對象的實現(OOP, Object Or iented Programming)信皮逢璧今新芬錢計77777.信皮逢璧今新芬錢計8.2.2面向對象系統開發活動面向對象系統開發活動運用面向對象方法來具體開發一個信息系統,其分析和設計過程包括以下幾 個方面的內容:識別系統目標與邊界:識別用例,建立用例圖:識別對象,建立類圖:設計用例的詳細邏輯.建立順序圖和協作圖;精化和完善模型。計算機世界OOAOOD?r面向對象開發方信成彳詭今斯鳥錢針woof ?777.面向對象系統開發活動的四個基本步驟(1)標識業務事件并制作事件表:(2)標識用例并生成系統用例圖

10、,編寫基本用例敘述:(3)建立各層次類圖,以表示系統中的概念、屬性、關聯以及操作;(4)為每個用例場景繪制系統交互圖,編寫操作約定。信息索詭今新鳥菠針/?,8.2.3面向對象系統開發模型面向對象系統開發模型件組要重表件者例與聯用參關念性聯作槪屬關操晦者與統息畚系消信2彳詭今新鳥菠針Moca 77777.WK8.2.4面向對象系統開發技術面向對象系統開發技術信息收集技術:事件分析:用例建模:類建模:交互建模。J /,本章內容8. 1面向對象方法概述8. 2面向對象系統開發過程8、3業簣事件分析業簣事件分析 8. 4用例模型 8. 5類圖 8. 6交互模型信2彳詭今新鳥設計7/777.面向對欽系統

11、開發活動的四個基本步驟Step 1.標識業務事件并制作事件表;Step 2.標識用例并生成系統用例圖,編寫基本用例敘述;Step 3.建立各層次類圖,以表示系統中的概念、屬性、關聯以及操作Stop 4.為每個用例場杲繪制系統交互圖,編寫操作約定。8.3.1 事件分析相關概念事件分析相關概念從事件開始事件(Events)是在特定的時間發生的事情,并且啟動或觸發了系統的預置 響應。事件流是指不包含與應用相關的細節特征值的信息流。數據流包含與應用程序相關的具有描述事件細節特征值的數據元素。信2系詭金析鳥菠針倍2系詭金析鳥菠針77777.WK8. 3. 2業務事件分析原理業務事件分析原理事件驅動原理:

12、以事件的方式來理解系統行為采用的是“刺激-響應: 方式(a stimulus-responseperspective )。事件驅動系統的基本行為 模式如下:(1)系統空閑等待.直到有事件來觸發系統行為:2)事件發生時系統做岀完整響應:(3)響應完成后,系統繼續等待其他事件發生。Eve nt Ana lysis-扌苗述系統輸入系統輸入通知系統需要了解的事件內容的消息(刺激)系統的動作或響應系統的動作或響應系統必須執行一個動作或行為以對事件做出響應系統輸出系統輸出系統為了響應爭件而產生的消息8. 3. 3業務事件分析方法業務事件分析方法描述業務事件確定參與者;確定系統的輸入和輸出;確定系統的動作。

13、信息索炕今新馬設針信2彳璧今新鳥設計77777.事件列表(Event Table)系件編號期件描述系統輸入握供輸入的 參與者系統輸出接收編出的 參與者1顧客訂餐訂餐請求顧客確認18息顧客2幀客取消訂餐取消謂求顧客3.顧客點餐點餐顧客賬單顧客4.顧客付歎付款顧客收據顧客8. 3.4業務事件分析示例:業務事件分析示例:列出了所含學生的名字和學號的每個班級花名冊被打印出來后送給每位任課教授。高校公修課選課惰崇根據教務處的時間期限,每個學期的高校公修課班級計劃列表都 在學生選課日期之前制定出來。根據這個時間期限,大學里的每個系 必須向教務處提交該學期的本系公修課班級計劃列表。這些列表中信 息綜合在一起

14、形成最終的學校公修課班級計劃列表。學校公修課班級 計劃列表被分發給各個系辦公室和每位教授,而學生可以在學校布告 欄看到。在預選課期間,學生對自己要選的班級提岀請求(通過選課單方 式)每個班級請求包含學生的學號以及學生要選擇的公修課的班級 號(注:一門課程可分多個班級)。如果該班級不能選,學生可以嘗 試選擇同類課程的其他班級。當學生選擇了盡可能多(達到最大允許 值)的班級后,學生獲得一份打印岀來的班級列表。該列表顯示了學 生成功選定的所有班級。信圭詭今新鳥後計7/777.WH(I)確定業務事件1) 系提交公修課班級計劃列表;2) 到生成學校公修課班級計劃列表的時間了;3) 學生選擇班級:4)到生

15、成班級花名刖的時間了。(2)確定參與者這個過程中需要知道誰提供系統輸入或從系統獲得輸岀。 通過分析四個事件,可以識別出系、學生和教授三個參與者-(3)確定系統輸入和輸岀在高校公修課選課系統中有兩個輸入:系公修課班級計劃列表(宰件“系提交公修課班級計劃列表”): 選擇班級請求事件學生選擇班級”)。三個輸出:學校公修課班級計劃列表 (事件“到生成學校公修課班級計劃列表的時間了”) : 學生班級列表 (事件“學生選擇班級”):班級花名冊(爭件“到生成班級花名冊的時間了” ) O(4)確定系統動作 高校公修課選課系統中有四個業務事件,系統必須執行的一個動作或行為對這四個事 件作出響應。這四個動作是:提

16、交公修課班級計劃列表(事件系提交公修課班級計劃列表:生成學校公修課班級計劃列表(事件“到生成學校公修課班級計劃列表的時間了” ):選擇班級(事件學生選擇班級”):生成班級花名冊 (爭件“到生成班級花名冊的底間了 )信2彳詭今新鳥後計事件編 號誘者鷲與輸#收的者接出與1系表系提表Z.F碩3.4到了本章內容8. 1 面向對象方法概述8.2 面向對象系統開發過程8.3 業務事件分析8、4 用供檬型用供檬型8. 5 類圖8.6 交互模型信息圭詭今僑信2系詭今新鳥磁卄面向對象系統開發活動的四個基本步驟Step 1.標識業務事件并制作事件表:Step 2.標識用例并生成系統用例圖,編寫基本用例敘述;Ste

17、p 3.建立各層次類圖,以表示系統中的概念、屬性、關聯以及操作;Step 4.為每個用例場景繪制系統交互圖,編寫操作約定。8. 4.1用例:對過程的描述用例:對過程的描述信息索詭今僑芬設計用例:一種在系統內提供所需功能的過程。用例:一種在系統內提供所需功能的過程。它是一組連續的操作,在參與者使用系統來完成某個過程時岀現;系統對事件作岀響應時所需的動作或行為:表明系統響應來自環境的消息時會發生何種情況。信2圭詭今僑芬設計7777/.F i nd use case從事件表導出用例從事件表導出用例Even t系提交班級計劃到生成大學班級計劃的時間了 學生注冊班級到生成班級花名冊的時間了信2逢詭今僑芬

18、菠計77777.WK:用例是執行者和系統Use case提交系班級計劃. 生成大學班級計劃.注冊班級.生成班級花名冊.Components ofthe EventActorSystem(BlackBox)信2逢詭今僑芬菠計77777,以下問題可以幫助確定用例:對于已確定的各個執行者,哪些任務會涉及到系統?是否需要將系統中發生的某些特定事件通知給此執行者?此執行者是否需要將突發變更或外部變更通知給系統?系統是否給業務提供了正確的行為?已經確定的用例是否可以執行系統所有功能?哪些用例將支持和維護系統?在系統內應該修改或創建什么信息?系統啟動和停止。系統的維護。例如,添加新用戶和建立用戶簡檔。J 0

19、信.11詭今新鳥後針8. 4. 2參與者(Actor) Actor:必須知道系統是為誰而設計的必須知道系統是為誰而設計的. .即誰將使用該系統即誰將使用該系統. .不同類不同類 型的用戶群體型的用戶群體代表了使用系統的一種角色代表了使用系統的一種角色(actor),稱為執行者。稱為執行者。參與者是與系統交互的某個人.組織或系統,參與者將消 息發送至系統或從系統接收消息??蛻艚o銷售員發來傳真訂貨, 統。銷售員下班前將當日訂貨單匯總輸入系信2圭詭今僑鳥後計77777.客戶識別參與者誰初始化每個外部事件?誰作為每個事件的一部分,將信息輸入系統或者從系統獲取信息? 誰來更新系統中作為每個事件一部分的信

20、息?誰維護和管理系統?每個用例與什么計算機系統交互?每個用例與什么組織交互?用例圖(Use Case D iagram)是 圖形模型,是一副顯示系統中 所包含的參與者、用例和兩者 之間對應關系的圖。生成學枝公修課班級計劃列/ /教授信2圭詭今新鳥菠針Moca 7777/.用例圖組件用例用例敘述:系統響應參與者操作所依據的內部操作順序的敘事描述. 概述了系統的作用域和功能。(1)簡短用例敘述參與者參與者和用例之間的關聯系統或子系統邊界用例:用例名稱參與者:羅列所有發起舂與者和加入卷與者目的:用例的理由對誰發起用例、預期的系統操作以及對參與者的響應的簡短、完整的說用信2圭詭今新芬錢計Moca 77

21、77/.(2)完整用例敘述完整用例敘述用例:用例名稱參與者:羅列所冇發起參與者和加入參與者目的:用例的理由概述:對 i 隹發起用例.預期的系統操作以及對參與者的響應的簡短、完 整的說明。類型:關于需求的基本描述,或考考曲技術細節的實現描述前潼條件:必須為真的條件,以使用例能夠開始并產生所需結果。例如,在 學生選擇公修課程班級之前,班級信息必須存在。后置條件:用例完成后必須為真的條件。它描述在用例執行后,系統中應為 出現什么變化。特殊需求:系統正常使用時所必須達到的用戶的重要需求。例如,如果學生 在 io 秒 Z后沒何獲得對注冊請求的系統響應,該學生可能會認為 系統出現了故障,或失去耐性并中斷進程。事件

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論