面向?qū)ο蠹夹g(shù)講稿資料_第1頁(yè)
面向?qū)ο蠹夹g(shù)講稿資料_第2頁(yè)
面向?qū)ο蠹夹g(shù)講稿資料_第3頁(yè)
面向?qū)ο蠹夹g(shù)講稿資料_第4頁(yè)
面向?qū)ο蠹夹g(shù)講稿資料_第5頁(yè)
已閱讀5頁(yè),還剩23頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、第一章 面向?qū)ο蟮姆治雠c設(shè)計(jì)方法第一節(jié) 面向?qū)ο蠓椒ǖ幕靖拍?、對(duì)象:是系統(tǒng)中用于描述客觀事物的一個(gè)實(shí)體,它是構(gòu)成系統(tǒng)的一個(gè)基本單位。一個(gè)對(duì)象由一組屬性和對(duì)這組屬性進(jìn)行操作的一組服務(wù)構(gòu)成。2、屬性:用來(lái)描述對(duì)象靜態(tài)特征的一個(gè)數(shù)據(jù)項(xiàng)。3、服務(wù):用來(lái)描述對(duì)象動(dòng)態(tài)特征的一個(gè)數(shù)據(jù)項(xiàng)。4、封裝:就是把對(duì)象的屬性和服務(wù)結(jié)合成一個(gè)獨(dú)立的系統(tǒng)單位,并盡可能隱藏對(duì)象的內(nèi)部細(xì)節(jié)。5、可見性:指對(duì)象的屬性和服務(wù)允許對(duì)象外部存取和引用的程度。6、消息:就是向?qū)ο蟀l(fā)出的服務(wù)請(qǐng)求。7、類:是具有相同屬性和服務(wù)的一組對(duì)象的集合,他為屬于該類的全部對(duì)象提供了統(tǒng)一的抽象描述,其內(nèi)部包括屬性和服務(wù)兩個(gè)主要部分。8、實(shí)例:類的一

2、個(gè)成員對(duì)象。9、一般類和特殊類(超類和子類):不同對(duì)象既具有共同性又具有特殊性,運(yùn)用抽象原則,舍棄對(duì)象的特殊性,抽取其共同性,則得到一個(gè)適應(yīng)一批對(duì)象的類,則該類為一般類。在該類范圍內(nèi),考慮定義該類時(shí)舍棄的某些特殊性,則該類中,有一部分對(duì)象具有這些特殊性,這部分對(duì)象構(gòu)成一個(gè)新的類,它是前一個(gè)類的子集,稱作一般類的特殊類。10、繼承:即特殊類的對(duì)象擁有一般類的全部屬性和服務(wù)。第二節(jié) 發(fā)現(xiàn)對(duì)象1、對(duì)象可以是:物理的和概念的,例:人、組織、物、事件等;2、出發(fā)點(diǎn):?jiǎn)栴}域和系統(tǒng)責(zé)任。 問(wèn)題域:客觀存在與系統(tǒng)對(duì)象的映射;系統(tǒng)責(zé)任:責(zé)任由那些對(duì)象來(lái)完成;3、抽象原則:圍繞系統(tǒng)責(zé)任目標(biāo)進(jìn)行抽象,且先松后緊,即

3、選出各種可能的侯選對(duì)象,再審查篩選。4、方法:名詞分析法(注意考慮隱含的名詞)5、審查與篩選:A、屬性包含有用的信息且可以定義成適用所有場(chǎng)合的公共屬性; 或 B、有能改變其屬性值的操作且該操作能被定義為公共服務(wù);6、精簡(jiǎn):只有一個(gè)屬性或只有一個(gè)服務(wù)的對(duì)象。 例:班主任 班7、對(duì)象的簡(jiǎn)單定義: 例:學(xué)生:當(dāng)前已經(jīng)被大學(xué)錄取,有資格進(jìn)行注冊(cè)的人。8、發(fā)現(xiàn)SRS對(duì)象學(xué)生注冊(cè)系統(tǒng)需求分析我們被要求為大學(xué)開發(fā)一個(gè)自動(dòng)化學(xué)生注冊(cè)系統(tǒng)(SRS),這個(gè)系統(tǒng)將使學(xué)生可以在線注冊(cè)每個(gè)學(xué)期的課程,也可以用于跟蹤學(xué)生的學(xué)習(xí)進(jìn)展,直至其獲得學(xué)位。當(dāng)學(xué)生被大學(xué)錄取后,學(xué)生使用SRS建立學(xué)習(xí)計(jì)劃,即確定滿足特定學(xué)位所需要的

4、課程,并選擇一名導(dǎo)師。SRS要檢驗(yàn)所提出的學(xué)習(xí)計(jì)劃是否滿足該學(xué)生所希望獲得的學(xué)位的要求。一旦建立了學(xué)習(xí)計(jì)劃,則在以后每個(gè)學(xué)期的注冊(cè)期間學(xué)生都可以在線查看課程計(jì)劃,選擇要選修的課程,如果課程由多名教授講授,則還可以指定聽課時(shí)間(星期幾、幾點(diǎn))。SRS要參考學(xué)生所完成課程的成績(jī)單(學(xué)生可以隨時(shí)查看自己的成績(jī)單),檢驗(yàn)學(xué)生是否滿足所申請(qǐng)課程的必要的預(yù)修條件。若1、所要求的預(yù)修課程都已修完;2、課程在該學(xué)生的學(xué)習(xí)計(jì)劃之內(nèi);3、課程尚有空位;則學(xué)生可以參加聽課。如果1、2條件滿足,但3不滿足,則該學(xué)生要放到一個(gè)先入先出的等待隊(duì)列中。如果學(xué)生以前所等待的課程可以提供(或者由于某學(xué)生取消了聽課計(jì)劃,或者由于

5、該課程的聽課位置增加了),則該學(xué)生會(huì)被自動(dòng)錄取到所等待的課程中。只要允許學(xué)生聽課,則SRS向該學(xué)生發(fā)送E_mail通知。如果該學(xué)生不再對(duì)該課程感興趣,可以最遲在學(xué)期的第一個(gè)星期末決定退出所選的課程,否則,若學(xué)生被允許聽課,則學(xué)生要為該課程付費(fèi)。隱含:班、教室類清單:課程、課程計(jì)劃、學(xué)習(xí)計(jì)劃、教授、學(xué)生、班、成績(jī)單第三節(jié) 定義屬性一、策略1、按一般常識(shí)這個(gè)對(duì)象應(yīng)該有哪些屬性;2、在當(dāng)前的問(wèn)題域中這個(gè)對(duì)象應(yīng)該有哪些屬性;3、按系統(tǒng)的責(zé)任要求這個(gè)對(duì)象應(yīng)該有哪些屬性;4、建立該對(duì)象是為了保存和管理哪些信息;5、為實(shí)現(xiàn)其功能應(yīng)增加哪些屬性;6、對(duì)象有哪些需要區(qū)別的狀態(tài),是否需要增加一個(gè)屬性來(lái)區(qū)別這些狀態(tài)

6、。二、審查與篩選1、該屬性是否體現(xiàn)了以系統(tǒng)責(zé)任為目標(biāo)的抽象;2、該屬性是否描述了對(duì)象本身的特征;3、該屬性是否破壞了對(duì)象特征的原子性;4、該屬性是否可以從其他屬性中導(dǎo)出;三、屬性的詳細(xì)說(shuō)明1、屬性的命名;2、屬性的解釋;3、屬性的數(shù)據(jù)類型;4、實(shí)現(xiàn)要求及其他;四、定義SRS各對(duì)象屬性ProfessorSSNNameTitleSectionNoDayofweekTimeofdaySemesterRoomSeatingcapacitySectionCourseCourseNoCourseNameCreditsStudentSSNNameMajorDegree詳細(xì)說(shuō)明:Section.Timeofd

7、ay:授課時(shí)間(范圍),例如下午24時(shí);Section.Seatingcapacity:注冊(cè)某個(gè)班所允許的最大學(xué)生數(shù)量;Professor.SSN:唯一的社會(huì)安全號(hào)碼;Student.Major:學(xué)生的主修專業(yè),例如“計(jì)算機(jī)科學(xué)與技術(shù)”(假設(shè)一名學(xué)生只有一個(gè)專業(yè))第四節(jié) 定義服務(wù)一、策略1、考慮系統(tǒng)責(zé)任和問(wèn)題域:設(shè)置這個(gè)對(duì)象的目的是什么?若是完成某些功能,則由哪些服務(wù)來(lái)完成這些功能;若是保存某些信息,那么系統(tǒng)怎樣運(yùn)用這些信息,是否需要對(duì)這些信息進(jìn)行某種計(jì)算或加工,然后向?qū)ο笸獠刻峁?,怎樣提供??duì)象在問(wèn)題域中有哪些行為,應(yīng)該設(shè)置何種服務(wù)來(lái)模擬這些行為?2、分析對(duì)象狀態(tài):分析對(duì)象所能呈現(xiàn)的每一種狀

8、態(tài),考慮在每一種狀態(tài)下對(duì)象可以發(fā)生什么行為?應(yīng)該由什么服務(wù)來(lái)描述?對(duì)象由一種狀態(tài)轉(zhuǎn)換到另外一種狀態(tài)是由什么操作引起的?是否設(shè)置了相應(yīng)的服務(wù)?3、追蹤服務(wù)的執(zhí)行路線:分析員把自己設(shè)想成當(dāng)前服務(wù)的執(zhí)行者,模擬每個(gè)服務(wù)的執(zhí)行,并追蹤服務(wù)的執(zhí)行路線,直至全部服務(wù)都被模擬過(guò)。用于發(fā)現(xiàn)遺漏的服務(wù)。二、審查與調(diào)整1、按照系統(tǒng)責(zé)任要求檢查每個(gè)服務(wù)是否有用;2、檢查每個(gè)服務(wù)是否是高內(nèi)聚的:三、服務(wù)的詳細(xì)說(shuō)明1、服務(wù)解釋:該服務(wù)的作用與功能2、消息協(xié)議:給出服務(wù)的入口消息格式,服務(wù)名稱、輸入輸出參數(shù)、參數(shù)類型3、消息發(fā)送:指出在這個(gè)服務(wù)執(zhí)行時(shí),需要請(qǐng)求哪些別的對(duì)象服務(wù)4、約束條件:四、SRS的部分服務(wù)1、Stud

9、ent的部分服務(wù)添加班:addSection注銷班:dropSection是否被批準(zhǔn):isEnrolledIn打印成績(jī)單:printTranscript2、Section的部分服務(wù)招收學(xué)員:enroll(Student s)顯示學(xué)員列表:displayStudentRoster()確認(rèn)空座:confirmSeatAvailability()注銷學(xué)生:drop(Student s)給定成績(jī):getGrade(Student s)第五節(jié) 一般特殊結(jié)構(gòu)一、對(duì)象與外部的關(guān)系1、對(duì)象之間的分類關(guān)系,即對(duì)象之間的一般特殊關(guān)系,用一般特殊結(jié)構(gòu)表示(分類結(jié)構(gòu))2、對(duì)象之間的組成關(guān)系,即整體部分關(guān)系,用整體部分

10、結(jié)構(gòu)表示(裝配結(jié)構(gòu))3、對(duì)象之間的靜態(tài)聯(lián)系,即通過(guò)對(duì)象屬性反映的聯(lián)系,用實(shí)例連接表示一般類特殊類特殊類4、對(duì)象之間的動(dòng)態(tài)聯(lián)系,即對(duì)象行為之間的依賴關(guān)系,用消息連接表示二、一般特殊結(jié)構(gòu)表示法三、發(fā)現(xiàn)一般特殊結(jié)構(gòu)1、學(xué)習(xí)當(dāng)前領(lǐng)域的分類學(xué)知識(shí):植物分類法、圖書分類法等2、按常識(shí)考慮事物分類:例如人,可按人種分,按年齡段分,按性別分等;3、回顧一般特殊類的定義4、考察屬性和服務(wù):例,公司人員具有屬性姓名、身份證、股份、工資等,但股份僅適用于股東,而工資適用于職工,則建立如下結(jié)構(gòu): 公司人員股東職員姓名身份證號(hào)股份工資分紅5、考慮領(lǐng)域范圍內(nèi)的復(fù)用:(類構(gòu)件)例:某超市使用的現(xiàn)鈔收款機(jī)具有屬性A、B、C、

11、D、E、F,服務(wù)X、Y、Z。其中屬性A、B、C,服務(wù)X、Y是任何收款機(jī)所共有的屬性和服務(wù),而屬性D、E、F和服務(wù)Z是現(xiàn)鈔收款機(jī)所特有的屬性和服務(wù)。則可定義收款機(jī)類和現(xiàn)鈔收款機(jī)類,構(gòu)成一般特殊結(jié)構(gòu),這樣收款機(jī)類成為可供本領(lǐng)域其他系統(tǒng)復(fù)用的領(lǐng)域構(gòu)件。四、審查與調(diào)整1、問(wèn)題域是否需要這樣的分類:書善本書2、系統(tǒng)責(zé)任是否需要這樣的分類:職員生產(chǎn)人員、營(yíng)銷人員3、是否符合分類學(xué)常識(shí):A是一種B4、是否構(gòu)成了繼承關(guān)系:船航標(biāo)船五、簡(jiǎn)化交通工具汽車飛機(jī)發(fā)動(dòng)機(jī)載重量速度飛行高度運(yùn)輸自動(dòng)導(dǎo)航汽車汽車飛機(jī)發(fā)動(dòng)機(jī)載重量速度飛行高度運(yùn)輸自動(dòng)導(dǎo)航交通工具汽車飛機(jī)發(fā)動(dòng)機(jī)載重量速度飛行高度運(yùn)輸自動(dòng)導(dǎo)航1、特殊類沒有自己特殊

12、的屬性和服務(wù)(學(xué)生大學(xué)生、研究生)2、某些特殊類之間的差別可以通過(guò)一般類的某個(gè)屬性值體現(xiàn)(人,性別、國(guó)籍)3、一般類下只有一個(gè)特殊類(收款機(jī)現(xiàn)鈔收款機(jī))通常一般類應(yīng)符合:它有兩個(gè)或以上的特殊類或需要用它創(chuàng)建對(duì)象實(shí)例或者有助于軟件復(fù)用,才有存在價(jià)值。六、多繼承人學(xué)生教職工身份證號(hào)姓名學(xué)號(hào)班級(jí)專業(yè)單位專業(yè)工作量在職研究生教學(xué)系數(shù)在職研究生身份證號(hào)姓名學(xué)號(hào)班級(jí)專業(yè)單位專業(yè)工作量教學(xué)系數(shù)多繼承存在命名沖突,所以標(biāo)準(zhǔn)JAVA不支持多繼承,通過(guò)接口完成相應(yīng)功能。第六節(jié) 整體部分結(jié)構(gòu)一、表示法整體對(duì)象部分對(duì)象MN連接符兩端的字母或數(shù)字表示結(jié)構(gòu)中對(duì)象實(shí)例的多重性,即位于連接符一端的對(duì)象實(shí)例要求另一端多少個(gè)對(duì)象

13、實(shí)例與自己進(jìn)行整體部分組合。固定數(shù)量:固定數(shù)字;不定數(shù)量:M,N;固定范圍:下界,上界;例4,6;不定范圍:1,M;0,N;二、實(shí)現(xiàn)方式1、嵌套對(duì)象:用部分對(duì)象類作為數(shù)據(jù)類型;2、對(duì)象指針:指向部分對(duì)象的指針;整體對(duì)象 部分對(duì)象 整體對(duì)象部分對(duì)象 部分對(duì)象 部分對(duì)象三、發(fā)現(xiàn)整體部分結(jié)構(gòu)1、物理上的整體事物和它的組成部分:汽車發(fā)動(dòng)機(jī)、輪胎、車身2、組織機(jī)構(gòu)和它的下級(jí)組織及部分:學(xué)院系3、團(tuán)體與成員:班學(xué)生4、一種事物空間上包容其它事物:車間廠房、機(jī)器、人5、抽象事物的整體與部分:書章6、具體事物和它的抽象方面:人員身份、職責(zé)、獎(jiǎng)罰四、審查和篩選1、是否屬于問(wèn)題域:如公司業(yè)務(wù)管理系統(tǒng)中,家庭職員;

14、2、是否是系統(tǒng)責(zé)任的需要:如工會(huì)員工;3、部分對(duì)象是否具有一個(gè)以上的屬性:輪胎規(guī)格4、是否有明顯的整體部分關(guān)系:學(xué)生課程五、用途1、基本用途:表達(dá)問(wèn)題域中事物之間的組成關(guān)系2、簡(jiǎn)化對(duì)象定義:飛機(jī)有50個(gè)屬性,20個(gè)服務(wù),其中與發(fā)動(dòng)機(jī)和導(dǎo)航儀有關(guān)的屬性各有10個(gè),服務(wù)各有5個(gè),則可建立發(fā)動(dòng)機(jī)類和導(dǎo)航儀類,然后使用整體部分結(jié)構(gòu)與飛機(jī)組合,簡(jiǎn)化了飛機(jī)的定義。3、支持軟件復(fù)用:圖4、表示數(shù)量不定的組成部分;書章5、表示動(dòng)態(tài)變化的對(duì)象特征:人員由營(yíng)業(yè)員變?yōu)闀?huì)計(jì)師、經(jīng)理;機(jī)床車床刨床鉆床送料車起重機(jī)電動(dòng)機(jī)六、兩種結(jié)構(gòu)的關(guān)系汽車?yán)洳剀囍评湓O(shè)備汽車制冷設(shè)備冷藏車?yán)洳剀嚻囍评湓O(shè)備一般特殊結(jié)構(gòu)是特殊類經(jīng)過(guò)繼承而

15、擁有一般類的特征;整體部分結(jié)構(gòu)是整體對(duì)象通過(guò)組裝而擁有部分對(duì)象的特征;表達(dá)自然是選用結(jié)構(gòu)的標(biāo)準(zhǔn);七、SRS中的整體部分結(jié)構(gòu)1、成績(jī)單與成績(jī)單記錄2、課程計(jì)劃與班3、學(xué)習(xí)計(jì)劃與課程第七節(jié) 實(shí)例連接一、簡(jiǎn)單的實(shí)例連接1、實(shí)例連接:用于表達(dá)對(duì)象之間的靜態(tài)聯(lián)系,靜態(tài)聯(lián)系是指最終可通過(guò)對(duì)象屬性來(lái)表示的一個(gè)對(duì)象對(duì)另一個(gè)對(duì)象的依賴關(guān)系。例:教師指導(dǎo)學(xué)生畢業(yè)設(shè)計(jì)、某課程是另外課程的預(yù)修課、兩個(gè)城市間有航班等。2、表示法城市0,m0,m有航線教師學(xué)生0,m1指導(dǎo)論文類1類2mn連接名稱在具有實(shí)例連接的類之間畫一條連接線把它們連接起來(lái);連接線的旁邊給出表明其意義的連接名;在連接線的兩端用數(shù)字標(biāo)明其多重性。一對(duì)一連

16、接:一對(duì)多連接:多對(duì)多連接:3、實(shí)現(xiàn)方式實(shí)例連接一般可用對(duì)象指針實(shí)現(xiàn),即在被連接的兩個(gè)類中選擇一個(gè),在它的對(duì)象中設(shè)立一個(gè)指針類型的屬性,用于指向另一個(gè)類中與它有連接關(guān)系的對(duì)象實(shí)例。一般可在多重性1端的對(duì)象中建立指針。若系統(tǒng)要求從兩個(gè)方向都能快速地相互查找和引用,則兩個(gè)對(duì)象都要建立指針。4、與整體部分結(jié)構(gòu)的異同二、復(fù)雜的實(shí)例連接1、表示法mn類1類2連接名稱1連接屬性連接服務(wù)教師學(xué)生0,m1指導(dǎo)論文1論文題目答辯時(shí)間成績(jī)2、 用對(duì)象表示實(shí)例連接的復(fù)雜性教師學(xué)生0,m1畢業(yè)論文1論文題目答辯時(shí)間成績(jī)1120,m航線距離班次城市三、多元關(guān)聯(lián)某人使用某語(yǔ)言從事某項(xiàng)目;任務(wù)項(xiàng)項(xiàng)目名人員語(yǔ)言語(yǔ)言項(xiàng)目人員某

17、公司委托某代理商在某公證機(jī)構(gòu)的監(jiān)督下為某個(gè)項(xiàng)目招標(biāo);招標(biāo)事件公司項(xiàng)目代理商公證機(jī)構(gòu)驗(yàn)收公司項(xiàng)目代理商公證機(jī)構(gòu)方法:在多元關(guān)聯(lián)的匯集點(diǎn)增加一個(gè)對(duì)象,使之轉(zhuǎn)化為二元的實(shí)例連接,新增這個(gè)對(duì)象的屬性是分別指向每個(gè)元的對(duì)象指針。四、多對(duì)多實(shí)例連接教師課程0,m1,n任務(wù)書主講教師課程五、對(duì)象、屬性的增補(bǔ)1、對(duì)象增補(bǔ):復(fù)雜實(shí)例連接、多元關(guān)聯(lián)、多對(duì)多實(shí)例連接要求增加一些新的類2、屬性增補(bǔ):每一個(gè)實(shí)例連接,應(yīng)該在它的某一端(若要求相互引用則是兩端)所連接的對(duì)象類中增加相應(yīng)的屬性,其類型應(yīng)被說(shuō)明為指向另一端的對(duì)象指針。六、實(shí)例連接說(shuō)明詳細(xì)說(shuō)明實(shí)例連接的實(shí)際意義。七、SRS的實(shí)例連接1、教授教班,一個(gè)教授可教多個(gè)

18、班,每個(gè)班一個(gè)教授教,是一對(duì)多實(shí)例連接,由于系統(tǒng)責(zé)任要求能夠從兩個(gè)方向都能快速地相互查找和引用,則兩個(gè)對(duì)象都要建立指針,故教授設(shè)立teaches屬性,班設(shè)立instructor屬性。PersonSSNNameProfessorTitleteachesStudentMajorDegreeTranscriptattendsPlanOfStudyProfessor StudentCourseCourseCourseNoCourseNameCreditsprerequisitesOfferedAsSectionSectionSectionNoDayOfWeekTimeOfDayRoomSeatingC

19、apacityRepresentedCourseenrolledStudentsofferedIninstructorassignedGradesTranscriptTranscriptEntriesstudentOwnerTranscriptEntryGradeStudentSectiontranscriptScheduleOfClassesSemester sectionsOffered1m11m0,1mm1m1mm1mm1110,m1mm12、每個(gè)學(xué)生有一份成績(jī)單,兩者有一對(duì)一實(shí)例連接,故學(xué)生設(shè)立Transcript屬性,成績(jī)單設(shè)立studentOwner屬性。3、 每個(gè)學(xué)生可參加多個(gè)班

20、,每個(gè)班可有多個(gè)學(xué)生參加,兩者存在多對(duì)多實(shí)例連接,故學(xué)生設(shè)立attends屬性,班設(shè)立enrolledStudents屬性。4、每個(gè)學(xué)生有一份學(xué)習(xí)計(jì)劃,兩者有一對(duì)一實(shí)例連接,通過(guò)在學(xué)習(xí)計(jì)劃中設(shè)立Student屬性建立兩者的聯(lián)系。5、每份學(xué)習(xí)計(jì)劃要求一名教授審核,每名教授可審核多份學(xué)習(xí)計(jì)劃,兩者有一對(duì)多實(shí)例連接,在學(xué)習(xí)計(jì)劃中設(shè)立Professor屬性,建立兩者的聯(lián)系。6、每門課程可以有多門預(yù)修課,該門課程又可能是多門課程的預(yù)修課,存在一元自反關(guān)聯(lián),故設(shè)立prerequisites屬性。7、每門課程可以有多個(gè)班,每個(gè)班只能上一門課程,兩者有一對(duì)多實(shí)例連接,在課程中設(shè)立OfferedAsSectio

21、n屬性,班設(shè)立RepresentedCourse屬性,建立兩者的聯(lián)系。8、每條成績(jī)單記錄須明確是哪個(gè)學(xué)生獲得的成績(jī),兩者存在實(shí)例連接,故在成績(jī)單記錄設(shè)立student屬性用于建立兩者之間的聯(lián)系。9、每個(gè)班結(jié)業(yè)時(shí)會(huì)有一份該班的成績(jī),該成績(jī)要寫入每個(gè)學(xué)生的成績(jī)單記錄,每條成績(jī)單記錄要求一個(gè)班的成績(jī),每個(gè)班的成績(jī)由于包含多個(gè)學(xué)生該門課程的成績(jī),故會(huì)產(chǎn)生多條成績(jī)單記錄,兩者有一對(duì)多實(shí)例連接,在班中設(shè)立assignedGrades屬性,用于存儲(chǔ)該班的成績(jī),在成績(jī)單記錄中設(shè)立section屬性,建立兩者之間的聯(lián)系。 第八節(jié) 消息連接一、順序系統(tǒng)中的消息1、順序系統(tǒng)中消息的特點(diǎn)A、每個(gè)消息都是向?qū)ο蟀l(fā)出的一

22、個(gè)服務(wù)請(qǐng)求,它必定引起接收者一個(gè)服務(wù)的執(zhí)行;B、除了主動(dòng)對(duì)象唯一的主動(dòng)服務(wù)外,其它對(duì)象服務(wù)只有在接收到消息時(shí)才開始執(zhí)行;C、每個(gè)消息的發(fā)送和接收都是同時(shí)進(jìn)行的,即消息是同步的;D、消息是從正在執(zhí)行的服務(wù)中發(fā)出的。消息發(fā)出后,發(fā)送者暫停執(zhí)行位于消息發(fā)送點(diǎn)之后的其它操作,將控制權(quán)轉(zhuǎn)移到接收者,直到接收者執(zhí)行完相應(yīng)的服務(wù)后才返回到發(fā)送消息的服務(wù),繼續(xù)執(zhí)行其它操作。即所有操作都是串行的。2、消息的語(yǔ)法特征A、消息名:即接收消息的服務(wù)名;B、入口參數(shù):即接收消息的服務(wù)要求的輸入?yún)?shù)(0個(gè)或多個(gè));C、返回參數(shù):即接收消息的服務(wù)提供的輸出參數(shù)(0個(gè)或多個(gè));3、消息的語(yǔ)義特征A、發(fā)送者:通過(guò)消息發(fā)送點(diǎn)的位

23、置隱含表明,不需要顯式的表示;B、接收者:由消息名表達(dá);C、其它需傳送的信息:通過(guò)入口參數(shù)和返回參數(shù)表示;二、并發(fā)系統(tǒng)中的消息1、并發(fā)系統(tǒng):有多個(gè)控制線程(thread of control)并發(fā)執(zhí)行的系統(tǒng);每個(gè)控制線程是由一系列順序執(zhí)行的操作所構(gòu)成的活動(dòng)序列。2、并發(fā)系統(tǒng)中的消息A、發(fā)生在控制線程內(nèi)部的消息;B、發(fā)生在控制線程之間的消息;3、消息的同步與異步不同控制線程之間的消息可分為同步消息(synchronous message)和異步消息(asynchronous message)A、同步消息:僅當(dāng)發(fā)送者要發(fā)送一個(gè)消息而且接收者已經(jīng)做好接收這個(gè)消息的準(zhǔn)備時(shí)才能傳送的消息;B、異步消息:

24、發(fā)送者不管接收者是否做好接收準(zhǔn)備都可以發(fā)送的消息;4、接收者對(duì)消息的響應(yīng)方式A、在消息產(chǎn)生之前,處理這個(gè)消息的進(jìn)程并不存在;僅當(dāng)發(fā)送者發(fā)出這個(gè)消息時(shí)才立刻創(chuàng)建一個(gè)進(jìn)程來(lái)響應(yīng)這個(gè)消息,完成它所要求的服務(wù);B、處理這個(gè)消息的進(jìn)程已經(jīng)存在,并且與發(fā)送者同步地接收消息。接到消息立即處理;C、接收者異步地接收和處理消息,即在消息發(fā)出后的某個(gè)時(shí)刻才接收和處理該消息;D、接收者不關(guān)心這個(gè)消息,不作任何響應(yīng)。5、發(fā)送者對(duì)消息處理結(jié)果的期待方式A、等待,直至得到處理結(jié)果才繼續(xù)原來(lái)的工作;B、發(fā)送者不等待處理結(jié)果,發(fā)出消息后繼續(xù)執(zhí)行,以后再查看消息的處理結(jié)果;C、既不等待,也不關(guān)心處理結(jié)果;6、消息接收者是否唯一

25、A、定向消息:消息定向地發(fā)送給唯一的接收者;B、廣播消息:消息發(fā)送給某個(gè)范圍內(nèi)所有可能的接收者;三、應(yīng)該識(shí)別和表示的主要問(wèn)題1、對(duì)象之間是否存在著某種消息?2、該消息是控制線程內(nèi)部的還是不同控制線程之間的?3、消息是從發(fā)送者的哪個(gè)服務(wù)發(fā)出的?是由接收者的哪個(gè)服務(wù)響應(yīng)和處理的?4、消息是同步的還是異步的?5、發(fā)送者對(duì)消息處理結(jié)果的期待方式是哪種?四、消息連接的表示1、表示法發(fā)送者接收者控制線程之間的消息連接發(fā)送者接收者控制線程內(nèi)部的消息連接2、為什么沒有表示3、4、5A、保持模型的簡(jiǎn)明性;B、抽象是逐步深入的;C、3、4、5可在詳細(xì)說(shuō)明中表述;五、發(fā)現(xiàn)并建立消息連接A、從每個(gè)主動(dòng)對(duì)象的主動(dòng)服務(wù)開

26、始,進(jìn)行服務(wù)模擬、執(zhí)行路線追蹤每發(fā)現(xiàn)一個(gè)新的請(qǐng)求,就發(fā)現(xiàn)一個(gè)新的消息;B、分析該消息的發(fā)送者與接收者是否屬于同一個(gè)控制線程;順序還是并發(fā)?是否引起控制線程的切換?接收者是否只有通過(guò)當(dāng)前這種消息的觸發(fā)才能執(zhí)行?C、建立消息連接六、消息的詳細(xì)說(shuō)明消息的詳細(xì)說(shuō)明包括發(fā)送者和接收者兩方面的說(shuō)明:1、發(fā)送者A、指出這個(gè)服務(wù)在執(zhí)行時(shí)可能發(fā)出的每一個(gè)消息,給出接收者的類名和處理該消息的服務(wù)名;B、說(shuō)明接收者與本服務(wù)是順序執(zhí)行還是并發(fā)執(zhí)行的;C、必要時(shí)說(shuō)明同步、異步以及發(fā)送者對(duì)消息處理結(jié)果的期待方式2、接收者A、說(shuō)明由這個(gè)服務(wù)接收和處理的每一種消息,規(guī)定消息的格式和內(nèi)容,包括消息名稱、輸入輸出參數(shù)、參數(shù)類型等、B、說(shuō)明發(fā)送者與本服務(wù)是順序執(zhí)行還是并發(fā)執(zhí)行的;C、必要時(shí)說(shuō)明同步、異步七、SRS中各個(gè)對(duì)象的服務(wù)及消息連接對(duì)象行為:1、系統(tǒng)行為:如創(chuàng)建對(duì)象等 2、對(duì)象自身的簡(jiǎn)單行為:如讀取、設(shè)置一個(gè)屬性值 3、對(duì)象自身映射的客觀事物固有行為:如復(fù)雜的算法下面只給出第3類行為的服務(wù)原因:1、系統(tǒng)行為是系統(tǒng)施加于對(duì)象的行為,不是對(duì)象本身的行為,分析時(shí)可暫不考慮,但設(shè)計(jì)與實(shí)現(xiàn)要考慮,通常由構(gòu)造函數(shù)完成; 2、對(duì)象自身的簡(jiǎn)單行為是由于嚴(yán)格封裝引起的

溫馨提示

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

評(píng)論

0/150

提交評(píng)論