第二部分 建模 設(shè)計(jì)

第八章 設(shè)計(jì)概念

1.分析模型到設(shè)計(jì)模型


AM->DM

8.2 設(shè)計(jì)過程

1.可以指導(dǎo)良好設(shè)計(jì)演化的3個(gè)特征:(1)設(shè)計(jì)必須實(shí)現(xiàn)所有包含在需求模型中的明確需求后德,而且必須滿足利益相關(guān)者期望的所有隱含需求农猬。(2)對(duì)于那些生成代碼的人和那些進(jìn)行測試以及隨后維護(hù)軟件的人而言,設(shè)計(jì)必須是可讀的改抡、可理解的指南矢炼。(3)設(shè)計(jì)必須提供軟件的全貌,從實(shí)現(xiàn)的角度說明數(shù)據(jù)域阿纤、功能域和行為域句灌。

2.質(zhì)量屬性:FURPS,功能性欠拾、易用性胰锌、可靠性、性能藐窄、可支持性

8.3 設(shè)計(jì)概念

1.抽象

2.體系結(jié)構(gòu)资昧,指軟件的整體結(jié)構(gòu)和這種結(jié)構(gòu)為系統(tǒng)提供概念完整性的方式。需要給出的:結(jié)構(gòu)特性荆忍、外部功能特性格带、相關(guān)系統(tǒng)族

3.模式,承載了已證實(shí)的解決方案的精髓

4.模塊化

5.信息隱蔽刹枉,給出接口

6.功能獨(dú)立叽唱,高內(nèi)聚性和低耦合性

7.細(xì)化,對(duì)抽象細(xì)節(jié)的詳細(xì)說明

8.重構(gòu)微宝,重構(gòu)之后要檢查冗余棺亭、沒有使用的設(shè)計(jì)元素、低效的或不必要的算法芥吟、拙劣的或不恰當(dāng)?shù)臄?shù)據(jù)結(jié)構(gòu)以及其他設(shè)計(jì)不足

面向?qū)ο蟮脑O(shè)計(jì)概念

1.設(shè)計(jì)類:(1)用戶接口類(2)業(yè)務(wù)域類(3)過程類(4)持久類(5)系統(tǒng)類

2.繼承

3.信息message

4.多態(tài)性

8.4 設(shè)計(jì)模型

1.

設(shè)計(jì)模型的維度

2.設(shè)計(jì)模型元素

(1)數(shù)據(jù)設(shè)計(jì)元素侦铜,數(shù)據(jù)模型->數(shù)據(jù)結(jié)構(gòu),數(shù)據(jù)模型->數(shù)據(jù)庫體系結(jié)構(gòu)

(2)體系結(jié)構(gòu)設(shè)計(jì)元素钟鸵,來自a.應(yīng)用域信息钉稍,b.特定的需求模型元素,c.體系結(jié)構(gòu)風(fēng)格

(3)接口設(shè)計(jì)元素棺耍,重要元素有用戶界面贡未、外部接口和內(nèi)部接口

(4)構(gòu)件元素

(5)部署元素


第九章 體系結(jié)構(gòu)設(shè)計(jì)

1.什么是體系結(jié)構(gòu)?

程序或計(jì)算系統(tǒng)的軟件體系結(jié)構(gòu)是指系統(tǒng)的一個(gè)或者多個(gè)結(jié)構(gòu),它包括軟件構(gòu)件俊卤、構(gòu)件的外部可見屬性以及它們之間的相互關(guān)系嫩挤。

2.體系結(jié)構(gòu)為什么重要?

(1)軟件體系結(jié)構(gòu)的表示有助于對(duì)計(jì)算機(jī)系統(tǒng)開發(fā)感興趣的各方開展交流

(2)體系結(jié)構(gòu)突出了早期的設(shè)計(jì)決策消恍,這些決策對(duì)隨后所有的軟件工程工作有深遠(yuǎn)的影響岂昭,同時(shí)對(duì)系統(tǒng)作為一個(gè)可運(yùn)行實(shí)體的最后成功有重要作用。

(3)體系結(jié)構(gòu)“構(gòu)建了一個(gè)相對(duì)小的狠怨、易于理解的模型约啊,該模型描述了系統(tǒng)如何構(gòu)成以及其構(gòu)件如何一起工作”。

9.3 體系結(jié)構(gòu)風(fēng)格

1.每種風(fēng)格描述一種系統(tǒng)類別佣赖,系統(tǒng)類別有:(1)完成系統(tǒng)需要的某種功能的一組構(gòu)件(2)能使構(gòu)件間實(shí)現(xiàn)“通信恰矩、合作和協(xié)調(diào)”的一組連接件;(3)定義構(gòu)件如何集成為系統(tǒng)的約束(4)語義模型憎蛤,能使設(shè)計(jì)者通過分析系統(tǒng)組成成分的已知屬性來理解系統(tǒng)的整體性質(zhì)外傅。

2.體系結(jié)構(gòu)風(fēng)格的簡單分類:(1)以數(shù)據(jù)為中心的體系結(jié)構(gòu)(2)數(shù)據(jù)流體系結(jié)構(gòu)(3)調(diào)用和返回體系結(jié)構(gòu)(4)面向?qū)ο篌w系結(jié)構(gòu)(5)層次體系結(jié)構(gòu)(6)客戶端/服務(wù)器體系結(jié)構(gòu)(7)分布式對(duì)象DOC

3.體系結(jié)構(gòu)模式:(1)并發(fā)性,應(yīng)用程序必須并行處理多個(gè)任務(wù)(2)數(shù)據(jù)的持久存儲(chǔ)(3)分布式

9.4 體系結(jié)構(gòu)設(shè)計(jì)

1.軟件必須放在環(huán)境中俩檬,須定義外部實(shí)體

2.定義原型萎胰。原型是表示核心抽象的類或模式,該抽象對(duì)于目標(biāo)系統(tǒng)體系結(jié)構(gòu)的設(shè)計(jì)非常關(guān)鍵豆胸。

3.將體系結(jié)構(gòu)精化為構(gòu)件

4.描述系統(tǒng)實(shí)例

9.5 分析體系結(jié)構(gòu)設(shè)計(jì)

1.收集場景

2.引出需求奥洼、約束和環(huán)境描述

3.描述那些已經(jīng)被選擇用于解決場景和需求的體系結(jié)構(gòu)風(fēng)格/模式

4.通過單獨(dú)地考慮每個(gè)屬性來評(píng)估質(zhì)量屬性。

5.針對(duì)特定的體系結(jié)構(gòu)風(fēng)格晚胡,確定質(zhì)量屬性對(duì)各種體系結(jié)構(gòu)屬性的敏感性

6.使用第5步進(jìn)行的敏感性分析鑒定候選體系結(jié)構(gòu)

9.6 使用數(shù)據(jù)流進(jìn)行體系結(jié)構(gòu)映射

1.一般的映射方法:(1)分離輸入和輸出流的邊界;transaction流嚼沿,分離出變換中心(3)按要求加入控制模塊(4)使用有效的模塊化概念優(yōu)化生成的程序結(jié)構(gòu)

2.變換流和事務(wù)流的不同估盘。


第十章 構(gòu)件級(jí)設(shè)計(jì)

1.什么是構(gòu)件?

構(gòu)件是系統(tǒng)中模塊化的、可部署的和可替換的部件骡尽,該部件封裝了實(shí)現(xiàn)并暴露了一組接口遣妥。

面向?qū)ο蟮挠^點(diǎn):構(gòu)件包括一組協(xié)作的類

傳統(tǒng)的觀點(diǎn):一個(gè)構(gòu)件就是程序的一個(gè)功能要素,程序由處理邏輯及實(shí)現(xiàn)處理邏輯所需的內(nèi)部數(shù)據(jù)結(jié)構(gòu)以及能夠保證構(gòu)件被調(diào)用和實(shí)現(xiàn)數(shù)據(jù)傳遞的接口構(gòu)成攀细。

10.2 設(shè)計(jì)基于類的構(gòu)件

1.基本設(shè)計(jì)原則:(1)開閉原則OCP箫踩,即模塊應(yīng)該對(duì)外延具有開放性,對(duì)修改具有封閉性谭贪。(2)Liskov替換原則境钟,LSP,即子類可以替換它們的基類(3)依賴倒置原則DIP俭识,即依賴于抽象而非具體實(shí)現(xiàn)(4)接口分離原則ISP慨削,即多個(gè)用戶專用接口比一個(gè)通用接口好(5)單一責(zé)任原則SRP,即每個(gè)模塊或類都應(yīng)對(duì)軟件功能的單個(gè)部分負(fù)責(zé),并且職責(zé)完全用類進(jìn)行封裝(6)的米特爾法則LoD或最小公布原則LSP(7)發(fā)布復(fù)用等價(jià)性原則REP(8)共同封裝原則CCP(9)共同復(fù)用原則CRP

2.構(gòu)件級(jí)設(shè)計(jì)指導(dǎo)方針:1.構(gòu)件2.接口3.依賴與繼承

3.內(nèi)聚性意味著構(gòu)件或者類只封裝那些相互關(guān)聯(lián)密切缚态,以及與構(gòu)件或類自身有密切關(guān)系的屬性和操作磁椒。(1)功能內(nèi)聚(2)分層內(nèi)聚(3)通信內(nèi)聚

4.耦合是類之間彼此聯(lián)系程度的一種定性度量。

10.3 實(shí)施構(gòu)件級(jí)設(shè)計(jì)

1.標(biāo)識(shí)出所有與問題域相對(duì)應(yīng)的設(shè)計(jì)類

2.確定所有與基礎(chǔ)設(shè)施域相對(duì)應(yīng)的設(shè)計(jì)類

3.細(xì)化所有不需要作為可復(fù)用構(gòu)件的設(shè)計(jì)類玫芦。

? ? a.在類或構(gòu)件協(xié)作時(shí)說明消息的細(xì)節(jié)浆熔。

? ? b.為每個(gè)構(gòu)件確定適當(dāng)?shù)慕涌?/p>

? ? c.細(xì)化屬性,并且定義實(shí)現(xiàn)屬性所需要的數(shù)據(jù)類型和數(shù)據(jù)結(jié)構(gòu)

? ? d.詳細(xì)描述每個(gè)操作中的處理流桥帆。

4.說明持久數(shù)據(jù)源(數(shù)據(jù)庫和文件)并確定管理數(shù)據(jù)源所需要的類

5.開發(fā)并且細(xì)化類或構(gòu)件的行為表示医增。

6.細(xì)化部署圖以提供額外的實(shí)現(xiàn)細(xì)節(jié)。

7.考慮每個(gè)構(gòu)件級(jí)設(shè)計(jì)表示环葵,并且時(shí)刻考慮其他可選方案调窍。

對(duì)象約束語言O(shè)CL

1.context

2.property

3.operation

4.keywords


OCL

N-S Design

程序設(shè)計(jì)語言


第十一章 用戶界面設(shè)計(jì)

1.黃金規(guī)則:(1)用戶操縱控制(2)減輕用戶記憶負(fù)擔(dān)(3)保持界面一致

2.用戶界面設(shè)計(jì)模型:(1)用戶模型(2)設(shè)計(jì)模型(3)心理模型(4)實(shí)現(xiàn)模型

界面分析

理解問題就意味著了解(1)通過界面和系統(tǒng)交互的人(2)最終用戶為完成工作要執(zhí)行的任務(wù)(3)作為界面的一部分而顯示的內(nèi)容(4)任務(wù)處理的環(huán)境

1.用戶分析

2.任務(wù)分析和建模

3.顯示內(nèi)容分析

界面設(shè)計(jì)步驟

1.使用界面分析中獲得的信息,定義界面對(duì)象和動(dòng)作张遭。

2.定義那些導(dǎo)致用戶界面狀態(tài)發(fā)生變化的事件邓萨,并對(duì)行為建模。

3.描述每個(gè)界面狀態(tài)菊卷,就像最終用戶實(shí)際看到的那樣缔恳。

4.簡要說明用戶如何從界面提供的界面信息來解釋系統(tǒng)狀態(tài)。

設(shè)計(jì)問題

1.響應(yīng)時(shí)間

2.幫助設(shè)施

3.錯(cuò)誤處理

4.菜單和命令標(biāo)記

5.應(yīng)用系統(tǒng)的可訪問性

6.國際化

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末洁闰,一起剝皮案震驚了整個(gè)濱河市歉甚,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌扑眉,老刑警劉巖纸泄,帶你破解...
    沈念sama閱讀 218,640評(píng)論 6 507
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異腰素,居然都是意外死亡聘裁,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,254評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門弓千,熙熙樓的掌柜王于貴愁眉苦臉地迎上來衡便,“玉大人,你說我怎么就攤上這事洋访×蜕拢” “怎么了?”我有些...
    開封第一講書人閱讀 165,011評(píng)論 0 355
  • 文/不壞的土叔 我叫張陵姻政,是天一觀的道長呆抑。 經(jīng)常有香客問我,道長扶歪,這世上最難降的妖魔是什么理肺? 我笑而不...
    開封第一講書人閱讀 58,755評(píng)論 1 294
  • 正文 為了忘掉前任摄闸,我火速辦了婚禮,結(jié)果婚禮上妹萨,老公的妹妹穿的比我還像新娘年枕。我一直安慰自己,他們只是感情好乎完,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,774評(píng)論 6 392
  • 文/花漫 我一把揭開白布熏兄。 她就那樣靜靜地躺著,像睡著了一般树姨。 火紅的嫁衣襯著肌膚如雪摩桶。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,610評(píng)論 1 305
  • 那天帽揪,我揣著相機(jī)與錄音硝清,去河邊找鬼。 笑死转晰,一個(gè)胖子當(dāng)著我的面吹牛芦拿,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播查邢,決...
    沈念sama閱讀 40,352評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼蔗崎,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了扰藕?” 一聲冷哼從身側(cè)響起缓苛,我...
    開封第一講書人閱讀 39,257評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎邓深,沒想到半個(gè)月后未桥,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,717評(píng)論 1 315
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡芥备,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,894評(píng)論 3 336
  • 正文 我和宋清朗相戀三年钢属,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片门躯。...
    茶點(diǎn)故事閱讀 40,021評(píng)論 1 350
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖酷师,靈堂內(nèi)的尸體忽然破棺而出讶凉,到底是詐尸還是另有隱情,我是刑警寧澤山孔,帶...
    沈念sama閱讀 35,735評(píng)論 5 346
  • 正文 年R本政府宣布懂讯,位于F島的核電站,受9級(jí)特大地震影響台颠,放射性物質(zhì)發(fā)生泄漏褐望。R本人自食惡果不足惜勒庄,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,354評(píng)論 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望瘫里。 院中可真熱鬧实蔽,春花似錦、人聲如沸谨读。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,936評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽劳殖。三九已至铐尚,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間哆姻,已是汗流浹背宣增。 一陣腳步聲響...
    開封第一講書人閱讀 33,054評(píng)論 1 270
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留矛缨,地道東北人爹脾。 一個(gè)月前我還...
    沈念sama閱讀 48,224評(píng)論 3 371
  • 正文 我出身青樓,卻偏偏與公主長得像劳景,于是被迫代替她去往敵國和親誉简。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,974評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容