版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、第 2 頁,教學目標、內(nèi)容,了解OO方法的實施過程、方法、步驟,第 3 頁,三、面向對象分析OOA,OOA的關鍵是識別出問題域內(nèi)的對象,并分析它們相互之間的關系,最終建立起問題域的精確、可理解的正確模型。OOA階段主要是明確問題中存在哪些數(shù)據(jù)實體,它們的意義是什么,而不考慮對它們的處理。,第 4 頁,基本任務:,運用OO方法,對問題域進行分析和理解;找出描述問題域所需的對象及類;定義這些對象和類的屬性與服務;定義對
2、象和類之間所形成的結構、靜態(tài)聯(lián)系和動態(tài)聯(lián)系。OOA的最終目的是產(chǎn)生一個符合用戶需求,并能夠直接反映問題域的 OOA模型及其軟件需求規(guī)格說明。,第 5 頁,1.概述,OOA就是抽取和整理用戶要求并建立問題域精確模型的過程。OOA從分析用戶需求文件開始,發(fā)現(xiàn)和改正其中的二義性和不一致性,補充遺漏的內(nèi)容,使需求陳述更完整、更準確。分析人員應深入理解用戶需求,抽象出目標系統(tǒng)的本質屬性,并用模型準確地表示出來。在OO建模中,分析人員
3、要認真向領域專家學習。尤其是建模過程中的分類工作往往有很大的難度,需專家配合。,第 6 頁,2、三個子模型,模型對象三要素(子模型):對象模型 描述靜態(tài)結構動態(tài)模型 描述交互次序功能模型 描述數(shù)據(jù)變換解決的問題不同,這三個子模型的重要程度也不同。當問題涉及交互作用和時序(用戶界面、過程控制等),動態(tài)模型是重要的;解決運算量很大的問題(科學計算等),則涉及功能模型;,第 7 頁,3、五個層次,對于復雜問題,對象模型由5
4、個層次組成:主題層 指導“讀者”理解大型、復雜模型的機制;通過劃分主題,把一個復雜、大型對象模型分解為幾個不同的概念模型(心理研究表明:人短期記憶能力一般限于一次記憶5~9個對象,即7±2原則,OOA從“控制可見性”和“指導讀者注意力”兩方面來體現(xiàn)這條原則)。類-對象層 由類和對象組成的層結構層 對象之間的層次結構 屬性層 對象數(shù)據(jù)的描述服務層 對象操作的描述,第 8 頁,五個層次對應五個活動,5個層次對應OOA
5、過程中5個主要的活動:找出類和對象識別結構識別主題定義屬性定義服務這5項活動可以交叉開展,不需要嚴格遵守自頂向下的原則。,第 9 頁,4、需求陳述,需求陳述的內(nèi)容包括:問題范圍、功能和性能需求、應用環(huán)境及假設條件等。需求陳述應該闡明“做什么”而不是“怎樣做”。 要求:盡力做到語法正確,應慎重選用名詞、動詞、形容詞和同義詞。絕大多數(shù)需求陳述有二義性,不完整,甚至有沖突。這就要求分析人員在分析過程中快速地建立起原
6、型系統(tǒng),以便與用戶更有效地交流。,第 10 頁,自動取款機的例子,某銀行擬開發(fā)一個ATM系統(tǒng)。該系統(tǒng)是由ATM、中央計算機、分行計算機及柜員終端組成的網(wǎng)絡系統(tǒng)。,第 11 頁,對ATM的需求,ATM和主機由總行投資購買。分行負責提供分行計算機和柜員終端。柜員終端設在分行營業(yè)廳及下屬的各儲蓄所。軟件系統(tǒng)成本由各行分攤。 銀行柜員使用柜員終端處理儲戶提交的業(yè)務(可用現(xiàn)金、支票;可取款;有多帳號)。柜員的工作范圍和職責包括:輸入儲戶
7、的存、取款信息,接收儲戶交來的現(xiàn)金、支票或給儲戶現(xiàn)金;柜員終端與分行計算機通信,分行計算機具體處理儲戶事務等。擁有銀行帳號的儲戶可領取現(xiàn)金兌換卡,使用該卡可以通過ATM訪問自己的賬戶(目前只限于訪問自己帳戶信息,用現(xiàn)金兌換卡在ATM上提取現(xiàn)金;將來可使用ATM辦理轉帳、存款等事務)。現(xiàn)金兌換卡具有一定的使用方法和功能。,第 12 頁,5、建立對象模型,用OOA方法求解問題,首先是建立對象模型,然后再建立另外兩個模型。建立對象模
8、型的操作過程:確定類和對象確定關聯(lián)劃分主題確定屬性識別繼承關系反復修改,第 13 頁,⑴確定類和對象,類和對象 在問題域中是客觀的存在,要通過分析把它們找出來。確定類和對象的操作步驟是:找出候選的類和對象選擇出正確的類和對象去掉籠統(tǒng)的類確定對象的屬性定義操作實現(xiàn),第 14 頁,找出候選的類和對象,對象分為5類:可感知的物理實體,例如飛機、計算機等;人或組織的角色,例如醫(yī)生、計算機系等;應該記憶的事件
9、,例如訪問、飛行等;多個對象之間的相互作用,例如購買、結婚等;需要說明的概念,例如版權法、保險政策等。,第 15 頁,非正式分析法,以用自然語言書寫的需求陳述為依據(jù),把陳述中名詞作為類和對象的侯選者,用形容詞作為確定屬性的線索,把動詞作為服務的侯選者。還應根據(jù)領域知識或常識進一步把隱含的類和對象提取出來。例如,ATM系統(tǒng)中的“通信鏈路”和“事務日志”。,第 16 頁,選擇出正確的類和對象,從候選類和對象中篩選出正確的
10、類和對象。篩選標準為:⑴ 冗余 若表達同樣的信息有多個類,則僅保留與本問題有密切相關的,其余則刪除;例如“用戶、儲戶”、“現(xiàn)金兌換卡、磁卡”是相同的兩類信息,所以,只保留“儲戶”和“現(xiàn)金兌換卡”。⑵ 無關 有些類在其他問題中可能很重要,但與當前要解決的問題無關,把它刪去。例如,開發(fā)成本、ATM、柜員終端放置地點與本系統(tǒng)關系不大,應該去掉成本、城市、街道、營業(yè)廳和儲蓄所。⑶ 籠統(tǒng) 應去掉籠統(tǒng)、模糊的類,例如,銀行實際指總行或分行,則
11、可去掉銀行侯選類。⑷ 屬性 有些名詞實際上描述的是其他對象的屬性,應該去掉,例如,“現(xiàn)金”、“支票”、“分行代碼”、“密碼”等都可作為屬性。⑸ 操作 定義操作時要慎重考慮操作的確切含義。例如,常把電話“撥號”當作動詞,因此定義“撥號”為操作。但在開發(fā)電話的自動記帳系統(tǒng)時,“撥號”需有自己的屬性(如日期、時間等),因此應作為類對待。⑹ 實現(xiàn) 在分析階段不應過早考慮如何實現(xiàn)目標系統(tǒng),否則會分散注意力。,第 17 頁,⑵確定關聯(lián),兩
12、個或多個對象之間的相互依賴、相互作用的關系就是關聯(lián)。分析確定關聯(lián),能促使分析員考慮問題域的邊緣情況,有助于發(fā)現(xiàn)那些尚未被發(fā)現(xiàn)的類和對象。操作步驟:初步確定關聯(lián)篩選進一步完善,第 18 頁,初步確定關聯(lián),在需求陳述中使用的描述性動詞或動詞詞組,通常表示關聯(lián)關系。因此,大多數(shù)關聯(lián)可通過提供需求陳述中的動詞詞組而得到。以ATM系統(tǒng)為例,經(jīng)過分析初步確定出下列關聯(lián):⑴ 直接提取動詞短語得出的關聯(lián)儲戶擁有帳號ATM吐出現(xiàn)金⑵
13、 需求陳述中隱含的關聯(lián)分行保管賬戶儲戶擁有現(xiàn)金兌換卡⑶ 根據(jù)問題域知識得出的關聯(lián)現(xiàn)金兌換卡訪問賬戶,第 19 頁,篩選,篩選時主要根據(jù)下述標準刪除侯選的關聯(lián):已刪除類之間的關聯(lián)應該刪除。例如,ATM系統(tǒng)中已刪除了“系統(tǒng)、市、街道、城市、成本”等侯選類,因此應刪除和這些類有關的“ATM設在主要街道上”的關聯(lián)。應把本問題域之外的關聯(lián)或與實現(xiàn)密切相關的關聯(lián)刪去。例如,ATM系統(tǒng)中,“ATM讀現(xiàn)金兌換卡”應該刪除,因為它不是AT
14、M和現(xiàn)金兌換卡之間的固有關系。關聯(lián)應描述問題瞬間事件域的靜態(tài)結構,而不應該是一個瞬時事件。例如,“ATM讀現(xiàn)金兌換卡”描述了ATM與用戶交互周期中的一個動作,但不是“ATM”和“現(xiàn)金兌換卡”間的固有關系。三個或以上對象之間的關聯(lián),可分解為二元關聯(lián)或用詞組描述成限定的關聯(lián)。例如,“柜員輸入針對賬戶的事務”可分解為“柜員輸入事務”和“事務修改賬戶”兩個二元關聯(lián)。應刪除那些可用其他關聯(lián)定義的冗余關聯(lián)。例如,“分行計算機維護賬戶”的實際含
15、義是“分行保管賬戶”和“事務修改賬戶”。,第 20 頁,進一步完善,應該進一步完善經(jīng)篩選后余下的關聯(lián),常進行下述改進:正名。仔細選擇含義明確的名字作為關聯(lián)名。例如,“分行提供分行計算機和柜員終端”可改為“分行擁有分行計算機”和“分行擁有柜員終端”。分解。為能適用不同的關聯(lián),必要時應分解以前確定的類和對象。例如,把“事務”分解為“遠程事務”和“柜員事務”。補充。應及時補充遺漏的關聯(lián)。例如,把“事務”分解為兩類后,系統(tǒng)要補充“柜員
16、輸入柜員事務”等關聯(lián)。表明階數(shù)。應初步判定各個關聯(lián)的類型,并粗略地確定關聯(lián)的階數(shù)。,第 21 頁,ATM原始對象圖,,,,,,,,,總行,分行代碼,組成,分行,賬戶,儲戶,保管,擁有,1+,1+,,現(xiàn)金兌換卡,,擁有,1+,1+,,,,訪問,1+,1+,,遠程事務,,ATM,,分行計算機,,,擁有,通信,1+,授權,,輸入,1+,,1+,,1+,,柜員事務,,柜員終端,,,,,1+,,輸入,1+,,中央計算機,,柜員,,輸入,
17、1+,,擁有,1+,通信,1+,,1+,,1+,通信,,雇傭,,1+,,,擁有,,,,,,,,,,,,,修改,修改,,,,,,,,,第 22 頁,⑶劃分主題,為了降低求解大型復雜問題的難度,通常把系統(tǒng)進一步劃分為幾個不同的主題。對大系統(tǒng)而言,先要識別出類、對象和關聯(lián),再劃分主題,即先粗略識別出對象和關聯(lián),初步劃分主題,再進一步研究、修改和精練主題。確定主題方法:按問題域確定主題;按不同主題內(nèi)的對象相互依賴和交互最小的原則來確
18、定主題。例如,對于ATM系統(tǒng),可把它劃分為“總行”、“分行”和“ATM”三個主題。,第 23 頁,把ATM劃分為三個主題,,,,,,,,,,總行,分行代碼,組成,分行,賬戶,儲戶,保管,擁有,1+,1+,,現(xiàn)金兌換卡,,擁有,1+,1+,,,,訪問,1+,1+,,遠程事務,,ATM,,分行計算機,,,擁有,通信,1+,授權,,輸入,1+,,1+,,1+,修改,,柜員事務,,柜員終端,,,,,1+,,輸入,1+,,中央計算機,,柜
19、員,,輸入,1+,,擁有,1+,通信,1+,,1+,,1+,通信,,雇傭,,1+,,,擁有,,,,,,,,,,,,,,,,1,1,1,1,2,2,2,2,3,3,3,3,修改,,第 24 頁,⑷確定屬性,屬性是對對象性質的描述。確定屬性分兩個步驟: 分析和選擇屬性分析屬性:通常,需求陳述中用名詞詞組表示屬性。例如,“光標的位置”。確定找出屬性還要借助領域知識和常識分析得到。屬性的確定既與問題域有關,也和目標系統(tǒng)的任務有關
20、。應該只考慮與具體應用直接相關的屬性,不考慮那些超出所要解決問題范圍的屬性。在分析過程中應該首先找出最重要的屬性,以后再逐步地把其他屬性增添進去。,第 25 頁,選擇屬性,選擇屬性時有以下幾種常見情況:誤把對象當作屬性。例如,在郵政目錄中,“城市”是一個屬性,而在人口普查中“城市”則作為對象。把限定誤當作屬性。正確地使用限定詞可以減少關聯(lián)的階數(shù)。在ATM例中,“分行帳號”、“雇員號”等都是限定詞,不能作為屬性。把內(nèi)部狀態(tài)當作屬
21、性。如果某個性質是對象的非公開的內(nèi)部狀態(tài),則不能作為該對象的屬性。過于細化。忽略那些對大多數(shù)操作沒有影響的屬性。存在不一致的屬性。如果存在與其他屬性毫不相關的屬性,則應該把該類分解為兩個不同的類。,第 26 頁,ATM對象模型中的屬性,,,,,,,,,總行,分行代碼,組成,分行,賬戶,儲戶,保管,1+,1+,,現(xiàn)金兌換卡,,擁有,1+,,,,訪問,1+,1+,,遠程事務,,ATM,,分行計算機,,,擁有,通信,授權,,
22、輸入,1+,,1+,,1+,修改,,柜員事務,,柜員終端,,,,,1+,,輸入,,中央計算機,,柜員,,輸入,1+,,通信,1+,,1+,,通信,,雇傭,1+,,擁有,,總行名,,站號,,現(xiàn)有金額付出金額,類型日期金額,,,密碼,,1+,,,,修改,修改,,類型日期金額,,,,姓名地址,擁有,,卡號,,站號,,,,站號,分行名,,擁有,,賬號,,雇員號,,,,,姓名,,分行代碼,,,,,發(fā)放,姓名,,金額限額
23、類型,,,第 27 頁,⑸識別繼承關系,確定了類中的屬性后,就可以對系統(tǒng)中的類確認它們的繼承關系了。可以使用兩種方式建立繼承關系:自底向上。抽象出現(xiàn)有類的共同性質泛化出父類。例如,ATM中“遠程事務”和“柜員事務”是類似的,可以泛化出父類“事務”。自頂向下。把現(xiàn)有類細化成更具體的子類。例如,帶形容詞修飾的名詞詞組往往暗示了一些具體類。但在分析階段應該避免過度細化。,第 28 頁,帶有繼承關系的ATM對象模型,,,,保管,
24、1+,訪問,,,,,,輸入,1+,擁有,1+,,,總行,分行代碼,,總行名,,ATM,,現(xiàn)有金額付出金額,,事務,類型日期金額,,現(xiàn)金兌換卡,,,密碼,1+,,修改,,儲戶,,姓名地址,擁有,,分行計算機,,站號,,,分行,,站號,,賬號,分行名,,,雇員號,,,,中央計算機,,站號,,,分行代碼,,,,柜員事務,,,賬戶,,金額限額類型,,,,輸入站,,,,,,擁有,通信,,通信,,通信,,,擁有,,,擁
25、有,,柜員,,姓名,卡號,,,,,,,雇傭,,,,發(fā)放,,遠程事務,,,柜員終端,,,,,,,,1+,授權,1+,輸入,組成,1+,1+,,,,,,第 29 頁,⑹反復修改,建立模型的過程往往是反復修改的過程,只要發(fā)現(xiàn)模型有缺陷,就必須返回到前期階段進行修改。例如,對于上述ATM系統(tǒng),可能做的修改:分解“現(xiàn)金兌換卡”類為“卡權限”和“現(xiàn)金兌換卡”兩個類。“事務”由“更新”組成。一個事務包含對賬戶的若干次更新。把“分行”與“
26、分行計算機”合并。類似的,合并“總行”和“中央計算機”。,第 30 頁,四、面向對象設計OOD,OOD是用OO觀點建立求解域模型的過程。OOA是通過對象的認定,確定問題空間中應當存在的對象和對象層次結構;OOD則是通過對象的認定和對象層次結構的組織,確定解空間中應存在的對象和對象層次結構,并確定外部接口和主要的數(shù)據(jù)結構。OOD也分兩個步驟:即高層設計階段和低層設計階段。高層設計階段開發(fā)系統(tǒng)的結構,構造軟件系統(tǒng)的總體模型,包括開發(fā)
27、用戶界面等。低層設計集中于類的詳細設計,包括對象類的關聯(lián)、接口形式及實現(xiàn)服務的算法等。,第 31 頁,面向對象設計的目標,OOD的主要目標是提高生產(chǎn)率、提高質量及提高可維護性。提高生產(chǎn)率 OOD是一種系統(tǒng)設計活動,使用OOD最多使整個生產(chǎn)率提高20%左右。OOD使用重用類機制來改進效率,類庫是這種結構的主要組成部分。提高質量 OOA和OOD過程能夠減少開發(fā)后期發(fā)現(xiàn)的錯誤,并大大提高系統(tǒng)的質量。提高可維護性 OO方法開發(fā)的系統(tǒng)中
28、,最穩(wěn)定的是類,系統(tǒng)可變的是服務,服務的復雜程度也是變化的,外部接口也是最可能變化的部分。為提高可維護性,就要把系統(tǒng)中穩(wěn)定的部分和易變的部分分離開來。,第 32 頁,1、面向對象設計的準則,在SP軟件設計中的基本原理,在OO方法中也適用,這就是:模塊化 對象就是模塊抽象 OO方法支持過程抽象、數(shù)據(jù)抽象、規(guī)格說明抽象和參數(shù)化抽象(如,C++中的“模板”)信息隱藏 通過封裝性實現(xiàn)弱耦合 對象間有兩類耦合“交互耦合”(消息傳遞)和
29、“繼承偶合”(父、子類間的聯(lián)系)強內(nèi)聚 OO設計中有3種內(nèi)聚:服務內(nèi)聚(一個服務完成一個功能)、類內(nèi)聚(一個類應只有一個用途)和一般-特殊內(nèi)聚(這是對領域知識的正確抽?。???芍赜?盡量使用已有類;設計新類時考慮可重用。,第 33 頁,2、啟發(fā)規(guī)則,設計結果應清晰易懂一般-特殊結構的深度應適當設計簡單的類使用簡單的協(xié)議使用簡單的服務把設計變動減至最小,第 34 頁,設計結果應清晰易懂,設計結果清晰、易懂是提高軟件可維
30、護性和可重用性的重要措施。保證設計結果清晰、易懂的主要因素:用詞一致。使用的名字與它所表示的事物一致,盡量使用人們習慣的名字。使用己有的協(xié)議。減少消息模式的數(shù)目。避免模糊的定義。一個類的用途應該是有限的,而且應該從類名可以較容易地推想出它的用途。,第 35 頁,一般-特殊結構的深度應適當,應該使類等級中包含的層次數(shù)適當。在一個中等規(guī)模(約100個類)的系統(tǒng)中,類等級層次數(shù)應保持為7±2。不應僅從方便編碼角度出發(fā)
31、隨意創(chuàng)建派生類,應該使一般-特殊結構與領域知識或常識保持一致。,第 36 頁,設計簡單的類,簡單的類便于開發(fā)、維護和管理。為此應該注意:避免包含過多的屬性。屬性多,功能就復雜。有明確的定義。每個類的任務能用一兩個簡單句描述。盡量簡化對象之間的合作關系。不要提供太多服務。一個類提供的服務過多(以不超過7個公共服務為易)會導致接口和消息模式復雜。,第 37 頁,使用簡單的協(xié)議,一般說來,消息中的參數(shù)不要超過3個。不過,這不是
32、絕對的。但是,經(jīng)驗表明,通過復雜消息相互關聯(lián)的對象是緊耦合,對一個對象的修改往往導致其他對象的修改。,第 38 頁,使用簡單的服務,OO設計出來的類中的服務通常都很小,一般只有3~5行源代碼,可以用僅含一個動詞和一個賓語的簡單句描述它的功能。若一個服務中包含了過多的源代碼,或者語句嵌套層次太多,或使用了復雜的CASE語句,則應該仔細檢查該服務,設法分解或簡化它。如果需要在服務中使用CASE語句,通常應考慮用一般-特殊結構
33、代替這個類的可能性。,第 39 頁,把設計變動減至最小,通常,設計的質量越高,設計結果保持的時間也越長。即使出現(xiàn)必須修改設計的情況,也應該使修改的范圍盡可能小。,在設計早期階段,變動較大,隨時間推移,設計方案日趨成熟,改動也越來越小。,第 40 頁,3、軟件重用,軟件重用分3個層次:知識重用(例如,軟件工程知識的重用)方法和標準的重用(例如,OO方法或國家制定的軟件開發(fā)規(guī)范的重用)軟件成分的重用。前兩種重用屬于知識工程研
34、究的范疇,這里只討論軟件成分重用問題。,第 41 頁,軟件成分的重用級別,軟件成分的重用可劃分為3個級別:⑴代碼重用:可以是下列形式中的任何一種:源代碼剪貼源代碼包含(#include 包含庫中源代碼)繼承 利用類的繼承機制⑵設計結果重用: 指重用某個軟件系統(tǒng)的設計模型。這類重用有助于把一個應用系統(tǒng)移植到完全不同的軟硬件平臺上。⑶分析結果重用:指重用某個系統(tǒng)的分析模型。這類重用適用于用戶需求未改變,但系統(tǒng)體系結構發(fā)生了根
35、本變化的場合。,第 42 頁,4、系統(tǒng)分解,解決復雜問題采用的普遍策略是“分而治之,各個擊破”。系統(tǒng)設計也采用類似的方法:系統(tǒng)分解。將系統(tǒng)分解得到的結果,稱為子系統(tǒng)。分解子系統(tǒng)的原則:應盡量減少子系統(tǒng)彼此之間的依賴性。OOD模型得到4個子系統(tǒng)問題域子系統(tǒng)人機交互子系統(tǒng)任務管理子系統(tǒng)數(shù)據(jù)管理子系統(tǒng),,,,,人機交互子系統(tǒng),問題域子系統(tǒng),任務管理子系統(tǒng),數(shù)據(jù)管理子系統(tǒng),,,,,,主題層類對象層結構層屬性層
36、服務層,第 43 頁,(一)設計問題域子系統(tǒng),在OOA階段,得到有關問題域的精確模型,為設計問題域子系統(tǒng)奠定了基礎,同時建立起求解域的總體框架。在OOD階段,應對在OOA中得到的結果進行改進和增補,主要是根據(jù)需求的變化,對OOA產(chǎn)生的模型中的某些類與對象、結構、屬性及服務進行組合與分解,調整繼承關系等等。 問題域子系統(tǒng)設計任務主要包括:調整需求、重用設計(類)、組合問題域相關的類、增添一般化類來建立類間協(xié)議、調整繼承層次、改進性
37、能與加入較低層的構件等。,第 44 頁,,,ATM系統(tǒng)問題域子系統(tǒng)的結構,,儲戶,,,界面,ATM,現(xiàn)金兌換卡,事務,ATM站,,,ATM站,中央計算機,分行計算機,,分行代碼,,事務,,站號,總行,,,,電話線,,電話線,,,事務,,柜 員,柜員終端,,數(shù)據(jù)庫,賬 戶,儲戶信息,卡權限,第 45 頁,(二)設計人機交互子系統(tǒng),人–機交互子系統(tǒng)即用戶界面。它的設計結果,將對用戶情緒和工作效率產(chǎn)生重要影響。若該界
38、面設計得好,會對用戶產(chǎn)生吸引力,用戶在使用系統(tǒng)的過程中能夠激發(fā)用戶的創(chuàng)造力,提高工作效率;相反,若該界面設計得不好,用戶在使用過程中就會感到不方便、不習慣,甚至會產(chǎn)生厭煩和惱怒的情緒。由于對人–機界面的評價,在很大程度上由人的主觀因素決定,因此,使用由原型支持的系統(tǒng)化的設計策略,是成功地設計人–機交互子系統(tǒng)的關鍵。,第 46 頁,設計人-機交互界面的準則,一致性 使用一致的術語、一致的步驟、一致的動作。減少步驟 應使用戶為做某
39、件事情而需操作的步驟最少(鼠標點擊、擊鍵次數(shù))。及時提供反饋信息提供撤消命令無須記憶易學 應提供聯(lián)機幫助系統(tǒng)或參考資料。富有吸引力,第 47 頁,設計人-機交互子系統(tǒng)的策略,分類用戶描述用戶設計命令層次設計人-機交互類,第 48 頁,用戶分類,研究使用系統(tǒng)的各類人員,了解他們:是如何干自己的工作的?想做什么事情?必須完成什么工作?需要哪些工具的幫助來完成工作?使用系統(tǒng)的人可能有如下分類:按技能層次分類
40、:外行|初學者|熟練者|專家;按組織層次分類:行政人員|管理人員|專業(yè)技術人員|其他辦事員;按職能分類:顧客|職員。,第 49 頁,描述用戶及其任務,對以上定義的每一類用戶,列出以下問題:用戶類型使用系統(tǒng)的目的特征(年齡、受教育程度、限制因素等)關鍵的成功因素(需求、愛好、習慣等) 熟練程度完成本職工作的任務描述,第 50 頁,設計命令層次,(l)研究現(xiàn)行的人-機交互活動的內(nèi)容和準則。如“輸入時眼睛不易疲勞”、“
41、必須是窗口和對話框界面”等。(2)建立一個初始的命令層;可以有多種形式,如一系列菜單窗口,或一個菜單條,或一系列圖標。(3)細化命令層。要考慮以下幾個問題:排列命令層次。把使用最頻繁的操作放在前面;按照用戶工作步驟排列。通過逐步分解,找到整體-部分模式,幫助在命令層中對操作進行分塊。根據(jù)人們短期記憶的“7±2”或“每次記憶3塊/每塊3項”的特點,對菜單寬度與深度進行比較,把深度盡量限制在三層之內(nèi)。減少操作步驟。在完
42、成必須任務的前提下,把單擊、拖動和鍵盤操作減到最少。,第 51 頁,設計人-機交互類,首先從組織窗口和部件的用戶界面的設計開始。通常包括類窗口、條件窗口、檢查窗口、文檔窗口、畫圖窗口等。每個類包括窗口的菜單條、下拉菜單、彈出菜單的定義。還要定義用于創(chuàng)建菜單、加亮選擇項、引用相應響應的操作。每個類還負責窗口的實際顯示。所有有關物理對話的處理都封裝在類的內(nèi)部。必要時,還要增加在窗口中畫圖形、圖符的類、在窗口中選擇項目的類、字體控
43、制類、支持剪切和粘貼的類等。,第 52 頁,(三)設計任務管理子系統(tǒng),常見的任務有事件驅動任務、時鐘驅動任務、優(yōu)先任務、關鍵任務和協(xié)調任務等。設計任務管理子系統(tǒng),包括確定和選擇各類任務并分配執(zhí)行它們。設計工作有……,第 53 頁,設計工作包括,1.確定事件驅動任務 與硬件設備通信的任務是事件驅動的。2.確定時鐘驅動任務 以固定的時間間隔激發(fā)這類任務以執(zhí)行某些處理。例如,有些設備需要周期性地獲得數(shù)據(jù),在這種場合下需要使用
44、時鐘驅動任務。3.確定優(yōu)先任務和關鍵任務 根據(jù)處理的優(yōu)先級別來選調執(zhí)行各個任務。① 高優(yōu)先級任務和② 低優(yōu)先級任務。關鍵任務是對系統(tǒng)的成敗起關鍵作用的處理,這類處理通常都有嚴格的可靠性要求。4.確定協(xié)調任務 當有三個或更多的任務時,應增加一個任務,用它作為協(xié)調任務。5.評審各個任務 必須對各個任務進行評審,確保它能滿足選擇任務的工程標準。6.定義各個任務 工作主要包括:它是什么任務、如何協(xié)調工作以及如何通信。,第 54 頁,
45、(四)設計數(shù)據(jù)管理子系統(tǒng),數(shù)據(jù)管理子系統(tǒng)的設計包括:選擇數(shù)據(jù)管理模式設計數(shù)據(jù)管理子系統(tǒng),第 55 頁,選擇數(shù)據(jù)存儲管理模式,不同數(shù)據(jù)存儲管理模式有不同的特點,適用范圍也不同,應根據(jù)應用系統(tǒng)的特點選擇適用的模式。 有三種可選擇的模式:文件管理系統(tǒng)關系數(shù)據(jù)庫管理系統(tǒng)OO數(shù)據(jù)庫管理系統(tǒng),第 56 頁,設計數(shù)據(jù)管理子系統(tǒng),設計數(shù)據(jù)管理子系統(tǒng),既要設計數(shù)據(jù)格式又要設計相應的服務。數(shù)據(jù)格式 可以根據(jù)需要采用文件系統(tǒng)、RDBMS
46、或ORDBMS。設計相應的服務 也要根據(jù)不同的數(shù)據(jù)存儲格式來設計(包括文件系統(tǒng)、RDBMS或ORDBMS)。,第 57 頁,作業(yè)、思考題,思考: 第11章的第1 ~22題。 謝謝!,第 58 頁,結束語,歡迎參加到中心網(wǎng)站《軟件基礎》課程的學習討論中來。中心網(wǎng)址: http://ctec.xjtu.edu.cn我的E-mail地址: LZQ@ctec.xjtu.edu.cn
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 72407.選文類型教學目標教學內(nèi)容
- 小班第一學期教學目標及內(nèi)容
- 小學習作教學目標、內(nèi)容以及策略1
- 幼兒園美術教學目標及參考內(nèi)容
- 幼兒園美術教學目標及參考內(nèi)容
- 語文教學目標的確定與教學內(nèi)容的選擇
- 中小學美術學科教學目標及內(nèi)容研究
- 淺析農(nóng)科本科生遙感課程教學目標、教材及教學內(nèi)容
- 采購的目標與內(nèi)容
- 美術學科的目標與教學內(nèi)容和方法的選擇
- 劍橋國際少兒英語kb1每課教學目標內(nèi)容
- 檢查目標內(nèi)容及要求
- 建設目標、規(guī)模、內(nèi)容、周期
- 高校會計信息化教學目標與內(nèi)容重構
- 《目標管理》內(nèi)容摘要
- 考試內(nèi)容與考核目標
- 現(xiàn)金管理目標和內(nèi)容
- 幼兒園開展幼兒基本體操教學目標內(nèi)容的研究.pdf
- 數(shù)字信號管理目標教學教材程佩青課后題內(nèi)容答案
- 教學目標
評論
0/150
提交評論