版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、1,Object Oriented,軟件工程研究室,2,處理實例在線購物:客戶定單,一個計算機制造廠商提供了通過因特網(wǎng)購買計算機的可能性,客戶可以在制造商的Web頁面上選擇一臺計算機,計算機分為服務(wù)器、臺式機和筆記本??蛻艨梢赃x擇標(biāo)準(zhǔn)配置,或者可以在線建立自己希望的配置??膳渲玫臉?gòu)件(如內(nèi)存)顯示在一個可供選擇的列表中。對每個新的配置,系統(tǒng)可以計算價格。 要發(fā)出定單,客戶必須填上運送和付款信息,可接收的付款方式為信用卡和支票,一旦定單被輸入,系統(tǒng)向客戶發(fā)送一個確認(rèn)e-mail消息,并附上定單的細(xì)節(jié),在等待計算機送到的時候,客戶可以在任何時候在線查到定單的狀態(tài)。 后端定單處理包含下面所需的步驟:
2、驗證客戶的信任度和付款方式、向倉庫請求所訂購的配置、打印發(fā)票并且請求倉庫將計算機運送給客戶。,3,用例建模,參與者: 與用例交互的任何人或任何事情.要 得到有用的結(jié)果 用例: 功能的具體化為用例(功能需求可以直 接映射到用例)表示一個完整的給用戶 傳值的功能性單元. 用例圖: 將用例賦給參與者. 是系統(tǒng)行為模型的主要可視化技術(shù). 圖形元素:用例、參與者. 為用例編寫文檔: 用事件流來描述.,4,第步(在線購物)用例建模: 尋找系統(tǒng)中參與者,考慮如下擴展的需求來發(fā)現(xiàn)在線購物應(yīng)用中的 參與者。 1.客戶使用制造廠商的Web頁面來查看所選擇 的服務(wù)器、臺式機或筆記本的標(biāo)準(zhǔn)配置,價 錢也同時顯示出來。
3、 2.客戶選擇查看配置的細(xì)節(jié),也許帶有買它的 意愿或建立一個更合適的配置。每種配置的 價格在客戶要求的情況下可以計算出來。 3.客戶可以選擇在線訂購計算機,或者也可以 要求銷售人員在定單真正發(fā)出之前與自己聯(lián) 系,解釋定單的細(xì)節(jié)、協(xié)商價格等。,5,4.要發(fā)出定單,客戶必須填寫在線表格關(guān)于運 送和發(fā)票地址以及付款細(xì)節(jié)(信用卡或支票)。 5.在客戶定單輸入到系統(tǒng)之后,銷售人員發(fā)送電 子請求給倉庫,附上所訂購的配置的細(xì)節(jié)。 6.事務(wù)的細(xì)節(jié),包括定單號和客戶賬號,要e-mail 給客戶,使得客戶可以在線查看定單的狀態(tài)。 7.倉庫從銷售人員那里獲得發(fā)票,并給客戶運送 計算機。,6,第步(在線購物)用例建模
4、: 尋找參與者,基于以上分析創(chuàng)建以下參與者: 1.客戶-Customer 2.銷售人員-Salesperson 3.倉庫-Warehouse,圖1-1 參與者(在線購物),Customer,Salesperson,Warehouse,7,表1-1 尋找用例(在線購物),第步(在線購物)用例建模:尋找用例,8,第步(在線購物)用例建模: 尋找用例,圖1-2 用例(在線購物),9,第步(在線購物)用例建模: 畫用例圖,extend,Customer,顯示標(biāo)準(zhǔn)計算機配置,Display Standard Computer Configuration,更新定單狀態(tài),Update Order Statu
5、s,制定計算機配置,Build Computer Configuration,訂購預(yù)先配置的計算機,Order Configured Computer,請求銷售人員聯(lián)系,Request Salesperson Contact,將定單通知倉庫,Inform Warehouse about Order,Warehouse 倉庫,Salesperson 銷售人員,圖-3 用例圖(在線購物),10,第步(在線購物)用例建模:編寫用例文檔,表1-2 用例“訂購配置的計算機”(在線購物)的陳述性規(guī)格說明,11,活動建模,用圖來表示用例的事件流 (為用例建模,活動狀態(tài)可根據(jù) 用例文檔來建立). 活動圖填補了
6、系統(tǒng)行為在用例模型中的高級表示和行為 在交互模型(序列圖和協(xié)作圖)中的低級表示之間的空白. 活動圖顯示了計算的步驟.執(zhí)行步驟稱為活動狀態(tài). (活動狀態(tài)要花費時間來完成,行為被看作快到.活動只能 在對象狀態(tài)中定義,活動應(yīng)從系統(tǒng)的角度,而不是從參與 者的觀點命名;行為可出現(xiàn)在對象狀態(tài)的轉(zhuǎn)換中). 從一個活動狀態(tài)到另一個活動狀態(tài)的控制流稱為轉(zhuǎn)換. 活動圖也可用于在一個高的抽象層次上理解業(yè)務(wù)進程; 在一個低的抽象層次上設(shè)計復(fù)雜的序列算法; 在多線程應(yīng)用中設(shè)計并發(fā)算法.,12,第步(在線購物)活動建模:找出活動,為用例Order Configured Computer(定購配置計算機)找出活動,表1-3
7、 在主要的和附加的流中找出活動,13,第6步(在線購物)活動建模:活動圖,14,類建模,類建模元素包含:類自身、類的屬性、操作、關(guān)聯(lián)、 聚合、組合、泛化,類圖提供這些建模元素的組合 可視化表示. 類建模和用例建??刹⑿羞M行. 用例輔助類的發(fā)現(xiàn),類模型可以發(fā)現(xiàn)被忽略的用例. 實體類: 定義業(yè)務(wù)對象; 邊界類: 定義GUI對象; 控制類: 控制程序邏輯的類. 類的結(jié)構(gòu)由它的屬性定義;對象協(xié)作的路徑由關(guān)聯(lián) 表示,即關(guān)聯(lián)用于指向所關(guān)聯(lián)類的屬性類型.,15,第7步(在線購物)類建模:找出實體類,表1-4 需求到實體類的賦值(在線購物),16,第7步(在線購物)實體類,ConfigurationItem,
8、Computer,圖1-5 類(在線購物),Customer (from Use Case View ),客戶類(從用例角度),配置的計算機類,定單類,付款類,發(fā)票類,配置細(xì)節(jié)類,計算機類,17,第8步(在線購物)類建模:原始類型的屬性,18,第9步(在線購物)類建模:增加關(guān)聯(lián),19,第10步(在線購物)類建模:增加聚合,客戶類 (從用例角度),配置的計算機類,付款類,發(fā)票類,1,1,1,0.*,1.*,0.*,1,0.1,1.*,1.*,圖1-8 聚合(在線購物),20,第11步(在線購物)類建模:增加泛化,圖1-9 泛化(在線購物),ConfiguredComputer,配置的計算機類,C
9、ustomer (from Use Case View ),客戶類 (從用例角度),Order,定單類,Payment,付款類,Invoice,發(fā)票類,ConfigurationItem,配置細(xì)節(jié)類,Computer,1.1,1.1,1.1,0.*,0.*,1.1,0.1,1.*,1.*,標(biāo)準(zhǔn)計算機類,21,第12步(在線購物)類建模:類的屬性,配置的計算機類,標(biāo)準(zhǔn)計算機類,配置細(xì)節(jié)類,發(fā)票類,22,交互建模,交互建模是需求分析的高級階級.提供了用例的詳細(xì)規(guī) 格說明,用來捕獲執(zhí)行一個用例的對象之間的交互. 交互建模是將事件賦予了對象,顯示了協(xié)作對象之間的 事件(消息)的次序. 交互模型有: (
10、交互是某個行為的一組消息及在對象間的交互) 序列 圖強調(diào)時間序列,是二維圖(水平維表示對象, 垂直維表示消息的次序)需求分析中使用 消息在序列圖中出現(xiàn),規(guī)定了在類圖中需要一個關(guān)聯(lián). 協(xié)作圖強調(diào)對象關(guān)系.系統(tǒng)設(shè)計中使用 交互和操作:檢測交互導(dǎo)致操作的發(fā)現(xiàn). 交互模型中的消息和實現(xiàn)類中的方法之間 是一對一的映射.,23,第13步(在線購物)交互建模:序列圖,24,第14步(在線購物)交互建模: 顯示用操作擴展的類, constructor openNew() displayComputer(item_reset),ConfigurationItem,-item_type:String -item_
11、descr:String,getConfItem(out item_rec),圖1-12 用交互關(guān)系來給類增加操作(在線購物),邊界類 配置窗口類,配置細(xì)節(jié)類,計算機類,25,第15步(在線購物)交互建模: 簡化序列圖,圖1-13 活動圖Order Configured Computer 的序列圖,:Customer,: OrderWindow,openNew,打開新配置窗口,getConf,獲取配置,圖1-13 活動圖Order Configured Computer 的序列圖(在線購物),aComp: Computer,:計算機類,:定單窗口類,: Order,:定單類,acceptCon
12、f,接受配置,prepareForOrder,準(zhǔn)備定單,displayOrder,顯示定單,submitOrder,提交定單,storeOrder,存儲定單,linkComputer,鏈接計算機對象,emailOrder,linkCustomer,linkPayment,26,(在線購物)交互建模:簡化序列圖,27,狀態(tài)圖建模,狀態(tài)模型給出了類的詳細(xì)描述,類的狀態(tài)的動態(tài)變化.這 些動態(tài)變化典型地描繪了對象跨越幾個用例時的行為. 對象的狀態(tài)由對象屬性的當(dāng)前值表示(原始屬性及指向 其他類的屬性). 狀態(tài)模型捕獲了類可以具有的狀態(tài)即捕獲了類生命期的 歷史.對象在其生命期間是不變的,它的標(biāo)識決不變化,
13、但 對象的狀態(tài)可能發(fā)生變化. 狀態(tài)圖是狀態(tài)和由事件引起的變遷(箭頭)現(xiàn)成的二分圖. 對每個對象狀態(tài),它決定這個對象在接收到一個事件時將 采取什么行為,行為的執(zhí)行將引起狀態(tài)的變化. 變遷的完整描述: event (parameters) guard / action,28,第16步(在線購物)狀態(tài)圖建模,Fully Paid,Partly Paid,圖1-13 類Invoice的狀態(tài)和事件,Partial payment,final payment,final payment,未付款狀態(tài),部分付款狀態(tài),完全付款狀態(tài),29,第17步(在線購物)狀態(tài)圖建模: 給類Order畫狀態(tài)圖,Cancel,R
14、eady to Ship,Filled,Future Order,New Order,Back Order,stock not available,stock availableship date in future,cancellation,pending,將來的定單,過去的定單,沒有庫存,有庫存將來運送日期,取消預(yù)定,準(zhǔn)備運送,有庫存現(xiàn)在的運送日期/配置計算機,定單信息存入數(shù)據(jù)庫,30,第18步(在線購物):限定關(guān)聯(lián),Order,-order_number:String -order_date:Date -ship_address:String -order_total:Currency
15、-order_status:String -salesperson_name:String,Configuration_id:Integer,Computer,Computer_name:String,Getconf(),0.*,1,圖1-15 被限定的關(guān)聯(lián),31,第19步(在線購物):協(xié)作圖,圖1-16 Display Current Configuration 的協(xié)作圖,獲取配置,獲取配置細(xì)節(jié),32,第20步(在線購物):用例包,圖1-17 用例包(在線購物),顯示標(biāo)準(zhǔn)計算機配置,產(chǎn)品,購買,請求供貨方合同,訂購預(yù)先配置的計算機,付款,驗證并接受客戶付款,打印發(fā)票,33,第21步(在線購物
16、):類包,34,構(gòu)件與部署的設(shè)計,構(gòu)件是系統(tǒng)的物理部分,依賴實現(xiàn)平臺. 構(gòu)件是有清晰邊界的功能單元. 構(gòu)件必須被仔細(xì)的設(shè)計和實現(xiàn). 支持Web應(yīng)用的部署結(jié)構(gòu)包括四層計算結(jié)點: 帶瀏覽器的客戶端; Web服務(wù)器; 應(yīng)用服務(wù)器; 數(shù)據(jù)庫服務(wù)器. Web服務(wù)器處理來自瀏覽器的頁面請求,并為客戶端上的 執(zhí)行和顯示動態(tài)產(chǎn)生的頁面和代碼. Web服務(wù)器還與用戶一起解決活動階段的客戶化和參數(shù)化. 若在實現(xiàn)時引入了分布式對象,使用應(yīng)用服務(wù)器管理業(yè)務(wù)邏 輯.業(yè)務(wù)構(gòu)件將它們的接口通過如CORBA、DCOM和EJB等的 構(gòu)件接口向其他結(jié)點發(fā)布.,35,業(yè)務(wù)構(gòu)件封裝了存儲在數(shù)據(jù)庫中的永久對象,它們與數(shù)據(jù)庫 服務(wù)器通過
17、數(shù)據(jù)庫互連協(xié)議進行通信如JDBC,ODBC. 典型技術(shù): ODBC(開發(fā)數(shù)據(jù)庫互連) JDBC(Java數(shù)據(jù)庫互連) RBO(遠程數(shù)據(jù)對象) ADO(ActiveX數(shù)據(jù)對象) DBLib(數(shù)據(jù)標(biāo)準(zhǔn)庫) Web服務(wù)器技術(shù): 腳本化HTML(超文本Markup語言) 頁面ASP(活動服務(wù)器頁面) JSP(Java服務(wù)器頁面) Web頁面技術(shù): 客戶機腳本(JavaScript或VBScript) XML(eXtensible Markup語言)文檔 Java應(yīng)用程序、JavaBean或者ActiveX控件. 客戶使用HTTP(超文本傳輸協(xié)議)來從Web服務(wù)器獲得Web頁面, 該頁面可以被腳本化或包
18、含己編譯的可執(zhí)行的DLL(動態(tài)鏈接庫)模塊 如:ISAPI(因特網(wǎng)服務(wù)器應(yīng)用程序設(shè)計界面)、NSAPI(Netscape服 務(wù)器應(yīng)用程序設(shè)計界面) 、 CGI(公共網(wǎng)關(guān)界面)或Java小服務(wù)程序.,36,第22步(在線購物):構(gòu)件圖,圖1-19 構(gòu)件包(在線購物),37,第23步(在線購物):部署圖,38,詳細(xì)設(shè)計,包、構(gòu)件、結(jié)點屬于體系結(jié)構(gòu)的設(shè)計 詳細(xì)設(shè)計集中在協(xié)作上。協(xié)作定義用例的實現(xiàn)或 復(fù)雜操作的實現(xiàn) 協(xié)作設(shè)計導(dǎo)致類圖的細(xì)化或產(chǎn)生;順序圖、狀態(tài)圖 的細(xì)化,39,第24步(在線購物):用例規(guī)格說明,用例規(guī)格說明:Order Configured Computer 1.UC15 Order
19、Configured Computer 1.1簡述 客戶填寫并提交購買定單表。系統(tǒng)驗證細(xì)節(jié)并確認(rèn)或拒絕這個定單. 2.事件流 2.1.基本流 2.1.1.UC15.1 系統(tǒng)在客戶的Web瀏覽器上顯示Order Entry表格,這個表格 包含如下項目 UC15.1.1 表的標(biāo)題為Order Your Computer。 UC15.1.2 解釋信息顯示在標(biāo)題下方 這段解釋信息的正文如下: “請?zhí)顚懕砀裰械捻椖?。要求的項目為紅顏色并且是黑體。按Submit 鍵提交該表,或者如果你決定不繼續(xù)你的預(yù)定時,按Cancel鍵。你能夠在 提交預(yù)定的24小時之內(nèi)取消你的預(yù)定,不用交罰金。你可以用Web、emai
20、l、fax或電話取消提交的預(yù)定。” UC15.1.3運送地址項 UC所要求的運送地址項為:名字、國家、城市、街區(qū)、郵政方向. UC后選的運送地址項為:郊區(qū)、州、郵政編碼。,40,第24步(在線購物):用例規(guī)格說明,UC15.1.4不同于運送地址提供的其他聯(lián)系細(xì)節(jié)。 UC 偏好的聯(lián)系方式:電子郵件、電話、傳真、普通郵件、 快遞郵件。 UC 所要求的聯(lián)系細(xì)節(jié)為下列項目之一:電子郵件、電話、傳真。 UC 候選的聯(lián)系細(xì)節(jié)為:上述三種所要求的聯(lián)系細(xì)節(jié)中的任何兩種, 郵件地址(如果與運送項目中提供的不一樣的話)。 UC15.1
21、.5 賬單地址,如果與運送項目中提供的不一樣的話。 UC15.1.6 付款方法。 UC客戶可以選擇用支票或者信用卡付款。 UC對支票付款,系統(tǒng)提供支票的付款對象信息和應(yīng)該寄往的地址信息。它還要通知客戶一旦收到支票將在三天內(nèi)從賬戶中取錢。 UC 對信用卡付款,系統(tǒng)顯示要由客戶填寫的項。這些項是可接受的信用卡類型列表、信用卡號、信用卡的過期日期。 UC15.1.7銷售代表的名字,如果客戶在前面已經(jīng)知道的話 UC15.1.8 兩個行為鍵:Submit和Cancel。 2.1.2.UC15.2 系統(tǒng)將光標(biāo)放在第一個可編輯的域(Name域)上,通過這種方式
22、提示客戶輸入定單信息。 UC15.3 系統(tǒng)允許按任何次序輸入信息。,41,第24步(在線購物):用例規(guī)格說明,UC15.4 如果客戶不在15分鐘之內(nèi)提交或者取消這個表,替換動作“客戶未激活”就開始執(zhí)行 2.1.3.UC15.5如果客戶點擊Submit按鈕,并且所要求的信息都已經(jīng)提供,則該定單就提交給Web服務(wù)器。該Web服務(wù)器通知數(shù)據(jù)庫服務(wù)器在數(shù)據(jù)庫中保存該定單。 UC15.6 數(shù)據(jù)庫為這次訂購賦予唯一的一個編號和一個客戶賬號。 UC15.7 如果數(shù)據(jù)庫服務(wù)器不能創(chuàng)建和存儲這個定單,則替換動作“數(shù)據(jù)庫異?!本烷_始執(zhí)行。 UC15.8 如果客戶提交了信息不完全的定單,則替換動作“不完全信息”就開
23、始執(zhí)行。 2.1.4.UC15.9 如果客戶提供email地址作為通信方式,系統(tǒng)將定單和客戶編號以及所有的定單細(xì)節(jié)email給客戶,作為對接收定單的確認(rèn)。用例終止。 UC15.10 否則定單信息將寄給客戶,該用例也終止。 2.1.5.UC15.11如果客戶點擊Cancel鍵,則替換流Cancel就開始執(zhí)行。 2. 2替換流 2.2.1.客戶未激活 UC15.4.1 如果客戶在15分鐘內(nèi)沒有被激活,則系統(tǒng)中斷與瀏覽器的連接。用例終止。,42,第24步(在線購物):用例規(guī)格說明,2.2.2數(shù)據(jù)庫異常 UC15.7.1 如果數(shù)據(jù)庫出現(xiàn)異常,系統(tǒng)要進行解釋并通知客戶錯誤的性質(zhì)。如果客戶的連接已經(jīng)中斷,
24、系統(tǒng)將錯誤信息email給客戶和銷售人員。用例終止。如果客戶用Internet和email不能聯(lián)系,銷售人員需要用其他方式聯(lián)系客戶。 2.2.3.不完全信息 UC15.8.1 如果客戶沒有填寫所要求的項目,系統(tǒng)請求客戶提供這些漏掉的信息并顯示漏掉項目的列表。用例繼續(xù)。 2.2.4.取消 UC15.11.1 如果客戶點擊Cancel鍵,該表格的域消失,用例繼續(xù)。 3. 前置條件 3.1. 客戶將因特網(wǎng)瀏覽器指向該系統(tǒng)的Web頁面,該頁面顯示所配置的計算機的細(xì)節(jié)以及它的價格??蛻酎c擊Purchase鍵。 3.2. 客戶要在請求建立后的計算機配置并在瀏覽器頁面上顯示出來之后的15分鐘之內(nèi)點擊Purc
25、hase鍵。 4.后置條件 4.1.如果客戶的預(yù)定提交成功,該購買定單記錄在系統(tǒng)數(shù)據(jù)庫中。否則,系統(tǒng)的狀態(tài)不變。,43,第25步(在線購物):協(xié)作的結(jié)構(gòu),refresh() newOrderClientPage() incompleteSubmit(),newOrderServerPage() readClient() writeOrder(),client pageb_ConfigurationClientPage,buttonPurchase,beginTransaction() commitTransaction() rollbackTransaction(),newOrder() deleteOrder(),e
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 投資合作協(xié)議樣本
- 東風(fēng)商用車合作協(xié)議
- 2025版土地整治項目土地承包協(xié)議3篇
- 2025年西安建工園林工程有限公司招聘筆試參考題庫含答案解析
- 2025年度個人二手房交易合同模板綠色環(huán)保型2篇
- 2025年度定制化個人購房合同范本2篇
- 2025年全球及中國氣動式高壓無氣噴涂機行業(yè)頭部企業(yè)市場占有率及排名調(diào)研報告
- 2025版?zhèn)€人退股協(xié)議書:私募股權(quán)退出及收益分配合同4篇
- 2024年教師資格之中學(xué)綜合素質(zhì)模擬題庫及答案
- 2025年個人二手車買賣合同(帶車輛狀況認(rèn)證服務(wù))
- 2025貴州貴陽市屬事業(yè)單位招聘筆試和高頻重點提升(共500題)附帶答案詳解
- 2024年住院醫(yī)師規(guī)范化培訓(xùn)師資培訓(xùn)理論考試試題
- 期末綜合測試卷(試題)-2024-2025學(xué)年五年級上冊數(shù)學(xué)人教版
- 招標(biāo)采購基礎(chǔ)知識培訓(xùn)
- 2024年廣東省公務(wù)員錄用考試《行測》試題及答案解析
- 五年級口算題卡每天100題帶答案
- 結(jié)構(gòu)力學(xué)本構(gòu)模型:斷裂力學(xué)模型:斷裂力學(xué)實驗技術(shù)教程
- 2024年貴州省中考理科綜合試卷(含答案)
- 無人機技術(shù)與遙感
- 恩施自治州建始東升煤礦有限責(zé)任公司東升煤礦礦產(chǎn)資源開發(fā)利用與生態(tài)復(fù)綠方案
- PDCA提高臥床患者踝泵運動的執(zhí)行率
評論
0/150
提交評論