第10章系統(tǒng)詳細(xì)設(shè)計(jì)_第1頁
第10章系統(tǒng)詳細(xì)設(shè)計(jì)_第2頁
第10章系統(tǒng)詳細(xì)設(shè)計(jì)_第3頁
第10章系統(tǒng)詳細(xì)設(shè)計(jì)_第4頁
第10章系統(tǒng)詳細(xì)設(shè)計(jì)_第5頁
已閱讀5頁,還剩88頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、第十章第十章系統(tǒng)詳細(xì)設(shè)計(jì)系統(tǒng)詳細(xì)設(shè)計(jì)主要內(nèi)容主要內(nèi)容o 輸入設(shè)計(jì)輸入設(shè)計(jì)o 輸出設(shè)計(jì)輸出設(shè)計(jì)o 人機(jī)交互人機(jī)交互設(shè)計(jì)(用戶界面設(shè)計(jì))設(shè)計(jì)(用戶界面設(shè)計(jì))o 程序處理過程詳細(xì)設(shè)計(jì)程序處理過程詳細(xì)設(shè)計(jì)n 模塊模塊的詳細(xì)設(shè)計(jì)(程序的詳細(xì)設(shè)計(jì)(程序流程圖)流程圖)n 類的詳細(xì)設(shè)計(jì)(類的詳細(xì)設(shè)計(jì)(UMLUML順序圖、順序圖、UMLUML類圖)類圖)o 代碼代碼體系體系設(shè)計(jì)設(shè)計(jì)o 數(shù)據(jù)庫設(shè)計(jì)數(shù)據(jù)庫設(shè)計(jì)o 網(wǎng)絡(luò)和計(jì)算機(jī)系統(tǒng)設(shè)計(jì)網(wǎng)絡(luò)和計(jì)算機(jī)系統(tǒng)設(shè)計(jì)n UMLUML部署圖部署圖輸入/輸出設(shè)計(jì)o 哪些地方需要進(jìn)行輸入哪些地方需要進(jìn)行輸入/ /輸出設(shè)計(jì)呢?輸出設(shè)計(jì)呢?輸入設(shè)計(jì):外部實(shí)體的數(shù)據(jù)流進(jìn)入到系統(tǒng)的地方輸入設(shè)

2、計(jì):外部實(shí)體的數(shù)據(jù)流進(jìn)入到系統(tǒng)的地方n 本系統(tǒng)操作人員的輸入本系統(tǒng)操作人員的輸入n 來自于其它系統(tǒng)的輸入(其它的數(shù)據(jù)庫或文件、其來自于其它系統(tǒng)的輸入(其它的數(shù)據(jù)庫或文件、其它系統(tǒng)的實(shí)時(shí)響應(yīng)結(jié)果)它系統(tǒng)的實(shí)時(shí)響應(yīng)結(jié)果)n 高度自動化的輸入(高度自動化的輸入(RFIDRFID讀寫器、條碼掃描儀、傳讀寫器、條碼掃描儀、傳感器等)感器等)輸出設(shè)計(jì):當(dāng)輸出設(shè)計(jì):當(dāng)DFDDFD圖中有數(shù)據(jù)流從系統(tǒng)流出到外部實(shí)體圖中有數(shù)據(jù)流從系統(tǒng)流出到外部實(shí)體的地方。的地方。n 報(bào)表、人機(jī)交互的查詢、發(fā)送郵件等報(bào)表、人機(jī)交互的查詢、發(fā)送郵件等n 到其它系統(tǒng)(消息、數(shù)據(jù)庫、文件等)到其它系統(tǒng)(消息、數(shù)據(jù)庫、文件等)10.1 輸

3、入設(shè)計(jì)輸入設(shè)計(jì)o 外部產(chǎn)生的數(shù)據(jù)如何輸入到系統(tǒng)中外部產(chǎn)生的數(shù)據(jù)如何輸入到系統(tǒng)中經(jīng)理經(jīng)理顧客顧客省招辦省招辦貸款審批意見貸款審批意見訂單訂單新生檔案新生檔案1、輸入設(shè)計(jì)的內(nèi)容o 確定輸入數(shù)據(jù)內(nèi)容:確定輸入數(shù)據(jù)內(nèi)容:包括確定輸入數(shù)據(jù)項(xiàng)名稱、數(shù)據(jù)內(nèi)包括確定輸入數(shù)據(jù)項(xiàng)名稱、數(shù)據(jù)內(nèi)容、精度、數(shù)值范圍。容、精度、數(shù)值范圍。o 確定數(shù)據(jù)的輸入方式:確定數(shù)據(jù)的輸入方式:聯(lián)機(jī)終端輸入還是脫機(jī)批量輸入,聯(lián)機(jī)終端輸入還是脫機(jī)批量輸入,與數(shù)據(jù)發(fā)生地點(diǎn)、時(shí)間、緊急程度有關(guān)。與數(shù)據(jù)發(fā)生地點(diǎn)、時(shí)間、緊急程度有關(guān)。o 確定輸入數(shù)據(jù)的記錄格式:確定輸入數(shù)據(jù)的記錄格式:記錄格式設(shè)計(jì)得好,能減少記錄格式設(shè)計(jì)得好,能減少數(shù)據(jù)冗余,降

4、低錯(cuò)誤率和操作員勞動強(qiáng)度。數(shù)據(jù)冗余,降低錯(cuò)誤率和操作員勞動強(qiáng)度。o 輸入數(shù)據(jù)的正確性校驗(yàn):輸入數(shù)據(jù)的正確性校驗(yàn):輸入設(shè)計(jì)最重要的問題是保證輸入設(shè)計(jì)最重要的問題是保證輸入數(shù)據(jù)的正確性。對數(shù)據(jù)進(jìn)行必要的校驗(yàn),是保證輸輸入數(shù)據(jù)的正確性。對數(shù)據(jù)進(jìn)行必要的校驗(yàn),是保證輸入正確的重要環(huán)節(jié)??赡艿脑捴苯訌囊延袛?shù)據(jù)中選擇。入正確的重要環(huán)節(jié)??赡艿脑捴苯訌囊延袛?shù)據(jù)中選擇。o 確定輸入設(shè)備:確定輸入設(shè)備:鍵盤、鼠標(biāo)、觸摸屏、讀卡機(jī)、字符識鍵盤、鼠標(biāo)、觸摸屏、讀卡機(jī)、字符識別機(jī)、光電閱讀器、條形碼識別機(jī)、語音識別儀、圖像別機(jī)、光電閱讀器、條形碼識別機(jī)、語音識別儀、圖像掃描儀。掃描儀。輸入設(shè)計(jì)的重要性 輸入是垃圾輸入

5、是垃圾 輸出是垃圾輸出是垃圾 (GIGO) 輸入設(shè)計(jì)的目標(biāo)是保證向系統(tǒng)輸入正確的數(shù)據(jù)輸入設(shè)計(jì)的目標(biāo)是保證向系統(tǒng)輸入正確的數(shù)據(jù)o批量集中輸入批量集中輸入o聯(lián)機(jī)分散輸入聯(lián)機(jī)分散輸入o混合方式混合方式2、輸入模式批量集中輸入的優(yōu)點(diǎn)o 收集和輸入可以脫離主數(shù)據(jù)庫(主機(jī))收集和輸入可以脫離主數(shù)據(jù)庫(主機(jī))o 輸入可以由受過專門訓(xùn)練的人員完成輸入可以由受過專門訓(xùn)練的人員完成o 數(shù)據(jù)處理的速度很快數(shù)據(jù)處理的速度很快o 處理可以安排在非高峰時(shí)間進(jìn)行處理可以安排在非高峰時(shí)間進(jìn)行o 例如:例如:n 保險(xiǎn)單的錄入保險(xiǎn)單的錄入n 人口普查數(shù)據(jù)的輸入人口普查數(shù)據(jù)的輸入批量集中輸入的不足o 數(shù)據(jù)收集通常是集中式的數(shù)據(jù)收集

6、通常是集中式的o 數(shù)據(jù)錄入一般需要受過專門訓(xùn)練的人員完成數(shù)據(jù)錄入一般需要受過專門訓(xùn)練的人員完成o 處理過程有延遲處理過程有延遲,因此可能造成,因此可能造成數(shù)據(jù)過時(shí)數(shù)據(jù)過時(shí),或等到處理,或等到處理完后已經(jīng)不適用了完后已經(jīng)不適用了o 因?yàn)樘幚硗ǔT跇I(yè)余時(shí)間進(jìn)行,因此在因?yàn)樘幚硗ǔT跇I(yè)余時(shí)間進(jìn)行,因此在處理時(shí)發(fā)現(xiàn)的輸處理時(shí)發(fā)現(xiàn)的輸入錯(cuò)誤,只能在下一次處理時(shí)才能糾正入錯(cuò)誤,只能在下一次處理時(shí)才能糾正(錄入人員不熟(錄入人員不熟悉業(yè)務(wù))悉業(yè)務(wù))聯(lián)機(jī)分散輸入的優(yōu)點(diǎn)聯(lián)機(jī)分散輸入的優(yōu)點(diǎn)o 數(shù)據(jù)能夠由擁有者進(jìn)行錄入數(shù)據(jù)能夠由擁有者進(jìn)行錄入o 數(shù)據(jù)的錄入可以盡可能地與他們的源頭靠近數(shù)據(jù)的錄入可以盡可能地與他們的源

7、頭靠近o 對于數(shù)據(jù)的正確性和可接受性,可以獲得快速的反饋對于數(shù)據(jù)的正確性和可接受性,可以獲得快速的反饋 o 輸入的數(shù)據(jù)能及時(shí)更新數(shù)據(jù)庫,從而使數(shù)據(jù)在最新狀輸入的數(shù)據(jù)能及時(shí)更新數(shù)據(jù)庫,從而使數(shù)據(jù)在最新狀態(tài)(實(shí)時(shí))態(tài)(實(shí)時(shí))n 如北京市房地產(chǎn)開發(fā)企業(yè)與購房者簽訂房屋預(yù)售合如北京市房地產(chǎn)開發(fā)企業(yè)與購房者簽訂房屋預(yù)售合同時(shí),通過網(wǎng)上簽約并下載打印合同文本,實(shí)現(xiàn)與同時(shí),通過網(wǎng)上簽約并下載打印合同文本,實(shí)現(xiàn)與政府網(wǎng)的聯(lián)機(jī)備案,保護(hù)了消費(fèi)者權(quán)益政府網(wǎng)的聯(lián)機(jī)備案,保護(hù)了消費(fèi)者權(quán)益n 國內(nèi)一些科研項(xiàng)目申請的數(shù)據(jù)都是由申報(bào)個(gè)人自行國內(nèi)一些科研項(xiàng)目申請的數(shù)據(jù)都是由申報(bào)個(gè)人自行錄入錄入聯(lián)機(jī)分散輸入的不足o 為了完成錄

8、入,設(shè)備的花費(fèi)更多為了完成錄入,設(shè)備的花費(fèi)更多o 使用者繁雜,不都是受過良好訓(xùn)練使用者繁雜,不都是受過良好訓(xùn)練o 對用戶數(shù)據(jù)錄入的程序控制要求高對用戶數(shù)據(jù)錄入的程序控制要求高o 所有數(shù)據(jù)必須在交易時(shí)間訪問數(shù)據(jù)庫,因此對主機(jī)、所有數(shù)據(jù)必須在交易時(shí)間訪問數(shù)據(jù)庫,因此對主機(jī)、數(shù)據(jù)庫和網(wǎng)絡(luò)的處理能力要求高(如數(shù)據(jù)庫和網(wǎng)絡(luò)的處理能力要求高(如160表)表)o 同樣的數(shù)據(jù),其錄入會比批量錄入過程要慢,總的效同樣的數(shù)據(jù),其錄入會比批量錄入過程要慢,總的效率低率低o 一般項(xiàng)目的輸入方式采用此種方式一般項(xiàng)目的輸入方式采用此種方式3、數(shù)據(jù)記錄格式設(shè)計(jì)o 很多數(shù)據(jù)在輸入到系統(tǒng)之前,通常來源于紙質(zhì)的記錄。很多數(shù)據(jù)在輸

9、入到系統(tǒng)之前,通常來源于紙質(zhì)的記錄。原因:原因:n 數(shù)據(jù)提供者只負(fù)責(zé)提供數(shù)據(jù),而不負(fù)責(zé)數(shù)據(jù)錄入到數(shù)據(jù)提供者只負(fù)責(zé)提供數(shù)據(jù),而不負(fù)責(zé)數(shù)據(jù)錄入到計(jì)算機(jī)系統(tǒng)計(jì)算機(jī)系統(tǒng)n 出于安全考慮,需紙質(zhì)資料存檔,如涉及簽字的表出于安全考慮,需紙質(zhì)資料存檔,如涉及簽字的表格和文件格和文件o 需要進(jìn)行數(shù)據(jù)記錄格式的設(shè)計(jì)。需要進(jìn)行數(shù)據(jù)記錄格式的設(shè)計(jì)。o 數(shù)據(jù)記錄格式的設(shè)計(jì)直接關(guān)系到計(jì)算機(jī)系統(tǒng)輸入數(shù)據(jù)的數(shù)據(jù)記錄格式的設(shè)計(jì)直接關(guān)系到計(jì)算機(jī)系統(tǒng)輸入數(shù)據(jù)的質(zhì)量,因此要考慮計(jì)算機(jī)錄入的特點(diǎn)。質(zhì)量,因此要考慮計(jì)算機(jī)錄入的特點(diǎn)。格式設(shè)計(jì)例子中國郵政匯款單中國郵政匯款單郵編郵編用用戶戶填填寫寫郵郵局局填填寫寫寫寫業(yè)務(wù)業(yè)務(wù)種類種類普通

10、匯款普通匯款加急匯款加急匯款電子匯款電子匯款特急匯款特急匯款禮儀禮儀自行通知自行通知?jiǎng)潛軇潛芨窖愿窖匀霂と霂ぶ敝备郊痈郊臃N類種類收款人收款人姓名姓名匯款匯款金額金額佰佰 拾拾 萬萬 千千 佰佰 拾拾 元元 角角 分分收款人地址收款人地址開戶局及帳號開戶局及帳號匯款人地址匯款人地址匯款人姓名匯款人姓名匯匯 票票 號號 碼碼匯款金額匯款金額匯費(fèi)匯費(fèi)手續(xù)費(fèi)手續(xù)費(fèi)收匯日期收匯日期經(jīng)辦員經(jīng)辦員:復(fù)核員復(fù)核員:檢查員檢查員:4、輸入設(shè)備輸入設(shè)備輸入設(shè)備:輸入設(shè)備:鍵盤、鼠標(biāo)、觸摸屏、讀卡機(jī)、字符識別機(jī)、光電鍵盤、鼠標(biāo)、觸摸屏、讀卡機(jī)、字符識別機(jī)、光電閱讀器、條形碼識別機(jī)、語音識別儀、圖像掃描儀閱讀器、

11、條形碼識別機(jī)、語音識別儀、圖像掃描儀oMagnetic Ink Character Recognition (MICR)磁性墨磁性墨水識別水識別oOptical Character Recognition (OCR)光學(xué)字符光學(xué)字符識別識別oOptical Mark Recognition (OMR)oImage Scanner & Facsimile (Fax) Machines掃描儀掃描儀oPoint-of-Sale Device (POS)oAutomatic Teller Machine (ATM)oIntelligent Card o Keyboardo Mouseo Joy

12、sticko Penso Scaleso Voice Recognitiono Touch Screen5、輸入設(shè)計(jì)的原則o 最小量原則最小量原則n在保證滿足處理要求的前提下在保證滿足處理要求的前提下使輸入量最小使輸入量最小。輸入量越小,出錯(cuò)機(jī)。輸入量越小,出錯(cuò)機(jī)會越少,花費(fèi)時(shí)間越少,數(shù)據(jù)一致性越好會越少,花費(fèi)時(shí)間越少,數(shù)據(jù)一致性越好o 簡單性原則簡單性原則n輸入的準(zhǔn)備、輸入過程應(yīng)盡量容易,以減少錯(cuò)誤的發(fā)生,并在輸入的準(zhǔn)備、輸入過程應(yīng)盡量容易,以減少錯(cuò)誤的發(fā)生,并在適當(dāng)適當(dāng)?shù)牡胤绞褂么a的地方使用代碼(如藥品名常用拼音的首字母縮寫)(如藥品名常用拼音的首字母縮寫)o 早檢驗(yàn)原則早檢驗(yàn)原則n對輸

13、入數(shù)據(jù)的對輸入數(shù)據(jù)的檢驗(yàn)檢驗(yàn)盡量接近原數(shù)據(jù)發(fā)生點(diǎn)盡量接近原數(shù)據(jù)發(fā)生點(diǎn), ,使錯(cuò)誤能及時(shí)得到改正使錯(cuò)誤能及時(shí)得到改正o 少轉(zhuǎn)換原則少轉(zhuǎn)換原則n采用國際標(biāo)準(zhǔn),減少轉(zhuǎn)換次數(shù),即輸入數(shù)據(jù)盡量用其處理所需形式采用國際標(biāo)準(zhǔn),減少轉(zhuǎn)換次數(shù),即輸入數(shù)據(jù)盡量用其處理所需形式記錄,以免數(shù)據(jù)轉(zhuǎn)換時(shí)發(fā)生錯(cuò)誤;直接使用已有的數(shù)據(jù),比如采用記錄,以免數(shù)據(jù)轉(zhuǎn)換時(shí)發(fā)生錯(cuò)誤;直接使用已有的數(shù)據(jù),比如采用EDI,XMLEDI,XML,數(shù)據(jù)從一個(gè)系統(tǒng)傳給另一個(gè)系統(tǒng),不需要再次輸入。如圖,數(shù)據(jù)從一個(gè)系統(tǒng)傳給另一個(gè)系統(tǒng),不需要再次輸入。如圖書銷售書銷售輸入數(shù)據(jù)的錯(cuò)誤o 沒有藥可以阻止死亡,也沒有規(guī)則能防止錯(cuò)誤沒有藥可以阻止死亡,也沒有

14、規(guī)則能防止錯(cuò)誤弗洛伊德弗洛伊德o 不管怎樣設(shè)計(jì),總是免不了會有錯(cuò)誤,可以針對不管怎樣設(shè)計(jì),總是免不了會有錯(cuò)誤,可以針對不同的錯(cuò)誤采取一定程度的防范措施。錯(cuò)誤有以不同的錯(cuò)誤采取一定程度的防范措施。錯(cuò)誤有以下幾類:下幾類:n 數(shù)據(jù)內(nèi)容錯(cuò):這是由于原始單據(jù)有錯(cuò)或錄入時(shí)發(fā)生錯(cuò)誤數(shù)據(jù)內(nèi)容錯(cuò):這是由于原始單據(jù)有錯(cuò)或錄入時(shí)發(fā)生錯(cuò)誤n 數(shù)據(jù)多余或不足:這是收集中的錯(cuò)誤,如原始單據(jù)丟失數(shù)據(jù)多余或不足:這是收集中的錯(cuò)誤,如原始單據(jù)丟失或重復(fù)或重復(fù)n 數(shù)據(jù)的延誤:由于輸入數(shù)據(jù)遲緩導(dǎo)致處理推遲,不僅影數(shù)據(jù)的延誤:由于輸入數(shù)據(jù)遲緩導(dǎo)致處理推遲,不僅影響業(yè)務(wù)工作,還可能使輸出結(jié)果變得無價(jià)值響業(yè)務(wù)工作,還可能使輸出結(jié)果變得

15、無價(jià)值避免錯(cuò)誤的輸入手段避免錯(cuò)誤的輸入手段如代碼輸入不能出錯(cuò),那么如何避免代碼錯(cuò)誤:如代碼輸入不能出錯(cuò),那么如何避免代碼錯(cuò)誤:1. 輸入技術(shù)輸入技術(shù)(如條碼掃描、磁卡、如條碼掃描、磁卡、IC卡卡/讀卡器讀卡器)2. 列表選擇輸入(用于數(shù)據(jù)量少的情況)列表選擇輸入(用于數(shù)據(jù)量少的情況)n界面中采用下拉表選擇,不需要鍵盤輸入,如省市界面中采用下拉表選擇,不需要鍵盤輸入,如省市3. 利用數(shù)據(jù)庫中的代碼表對照檢查(數(shù)據(jù)量多)利用數(shù)據(jù)庫中的代碼表對照檢查(數(shù)據(jù)量多)n代碼量很多時(shí),下拉選擇不可取,可手工輸入,利用代碼量很多時(shí),下拉選擇不可取,可手工輸入,利用數(shù)據(jù)庫中建立的代碼對照表進(jìn)行驗(yàn)證,如果存在則可

16、數(shù)據(jù)庫中建立的代碼對照表進(jìn)行驗(yàn)證,如果存在則可顯示詳細(xì)內(nèi)容,否則表示輸入有誤。如學(xué)號顯示詳細(xì)內(nèi)容,否則表示輸入有誤。如學(xué)號4. 代碼中設(shè)置校驗(yàn)位(上述方法都不適用時(shí))代碼中設(shè)置校驗(yàn)位(上述方法都不適用時(shí))n代碼自身具有一定的驗(yàn)證功能,如身份證號代碼自身具有一定的驗(yàn)證功能,如身份證號輸入數(shù)據(jù)的校驗(yàn)方法1.1.重復(fù)驗(yàn)證:如由兩個(gè)或更多操作員錄入相同的數(shù)據(jù)重復(fù)驗(yàn)證:如由兩個(gè)或更多操作員錄入相同的數(shù)據(jù)2.2.視覺驗(yàn)證:如從終端上鍵入數(shù)據(jù),在屏幕上校驗(yàn)之后再送到計(jì)算機(jī)處視覺驗(yàn)證:如從終端上鍵入數(shù)據(jù),在屏幕上校驗(yàn)之后再送到計(jì)算機(jī)處理理 3.3.分批匯總校驗(yàn):分批計(jì)算,累計(jì)總數(shù)驗(yàn)證分批匯總校驗(yàn):分批計(jì)算,累

17、計(jì)總數(shù)驗(yàn)證. .對部分重要數(shù)據(jù)進(jìn)行的對部分重要數(shù)據(jù)進(jìn)行的4.4.控制總數(shù)校驗(yàn):對所有數(shù)據(jù)項(xiàng)的值求和進(jìn)行校驗(yàn)控制總數(shù)校驗(yàn):對所有數(shù)據(jù)項(xiàng)的值求和進(jìn)行校驗(yàn). .5.5.數(shù)據(jù)類型校驗(yàn)數(shù)據(jù)類型校驗(yàn):按照數(shù)據(jù)類型進(jìn)行輸入驗(yàn)證:按照數(shù)據(jù)類型進(jìn)行輸入驗(yàn)證6.6.格式校驗(yàn):比如合同號編碼有固定的格式,可按位檢測格式校驗(yàn):比如合同號編碼有固定的格式,可按位檢測7.7.邏輯校驗(yàn)邏輯校驗(yàn):如月份應(yīng)是,日期應(yīng)是:如月份應(yīng)是,日期應(yīng)是8.8.界限校驗(yàn):如一次取款為界限校驗(yàn):如一次取款為200200200020009.9.記錄計(jì)數(shù)校驗(yàn)記錄計(jì)數(shù)校驗(yàn) :通過記錄的個(gè)數(shù)來檢查數(shù)據(jù)的記錄有無遺漏和重復(fù):通過記錄的個(gè)數(shù)來檢查數(shù)據(jù)的記

18、錄有無遺漏和重復(fù)10.10.平衡校驗(yàn):如借貸要平衡、報(bào)表的小計(jì)和總計(jì)是否相符平衡校驗(yàn):如借貸要平衡、報(bào)表的小計(jì)和總計(jì)是否相符11.11.匹配校驗(yàn):如在主表中驗(yàn)證指定代碼是否存在匹配校驗(yàn):如在主表中驗(yàn)證指定代碼是否存在12.12.代碼自身校驗(yàn):代碼自身校驗(yàn):數(shù)據(jù)校驗(yàn)舉例1 信用證開立信用證開立 1頁頁/4頁頁申請書編號申請書編號 開證金額開證金額 申請人申請人 帳號帳號 名稱名稱 開戶行行名開戶行行名 地址地址 郵編郵編 受益人受益人 帳號帳號 名稱名稱 開戶行行名開戶行行名 地址地址 郵編郵編 有效日期有效日期 交單期交單期 有效地點(diǎn)有效地點(diǎn) 提示提示 F 2 = 保 存保 存 F 4 = 保

19、 存 并 退 出保 存 并 退 出 E S C = 放 棄 錄 入 退 出放 棄 錄 入 退 出 PAGEUP/PAGEDOWN=換頁換頁使用程序檢驗(yàn)合法性使用程序檢驗(yàn)合法性限定長度和格式限定長度和格式利用程序讀數(shù)據(jù)庫利用程序讀數(shù)據(jù)庫檢驗(yàn),同時(shí)提取名檢驗(yàn),同時(shí)提取名稱稱/開戶行開戶行/地址地址/郵編郵編限定當(dāng)前日期之限定當(dāng)前日期之后后6個(gè)月之內(nèi)個(gè)月之內(nèi)不能遲于有效期不能遲于有效期數(shù)據(jù)校驗(yàn)舉例2 信用證開立信用證開立 2頁頁/4頁頁通知行行號通知行行號 通知行行名通知行行名 付款方式付款方式 議付行行號議付行行號 議付行行名議付行行名 延期付款期限延期付款期限 (運(yùn)輸單據(jù)日后天數(shù)運(yùn)輸單據(jù)日后天數(shù)

20、) 貨物裝運(yùn)地貨物裝運(yùn)地 貨物目的地貨物目的地 運(yùn)輸方式運(yùn)輸方式 分批裝運(yùn)分批裝運(yùn) 轉(zhuǎn)運(yùn)轉(zhuǎn)運(yùn) 最遲裝運(yùn)日期最遲裝運(yùn)日期 貨物描述貨物描述提示提示 F2=保存保存 F4=保存并退出保存并退出 ESC=放棄錄入退出放棄錄入退出 PAGEUP/PAGEDOWN=換頁換頁利用程序讀數(shù)據(jù)庫檢利用程序讀數(shù)據(jù)庫檢驗(yàn),同時(shí)提取行名驗(yàn),同時(shí)提取行名3種選其一種選其一小于小于180與受益人開戶行一致與受益人開戶行一致數(shù)據(jù)校驗(yàn)舉例3借貸合計(jì)數(shù)應(yīng)相等借貸合計(jì)數(shù)應(yīng)相等10.2 輸出設(shè)計(jì)輸出設(shè)計(jì)o 系統(tǒng)中的數(shù)據(jù)輸出到人、組織、其它系統(tǒng)經(jīng)理經(jīng)理顧客顧客信用卡信用卡系統(tǒng)系統(tǒng)報(bào)表報(bào)表商品查詢結(jié)果商品查詢結(jié)果付款信息付款信息輸出

21、設(shè)計(jì)的內(nèi)容o 確定輸出內(nèi)容:確定輸出內(nèi)容:首先確定用戶在使用信息方面的要求,首先確定用戶在使用信息方面的要求,包括使用目的、輸出速度、頻率、數(shù)量、安全性要求等包括使用目的、輸出速度、頻率、數(shù)量、安全性要求等等。然后設(shè)計(jì)輸出信息的內(nèi)容、信息形式(表格、圖形、等。然后設(shè)計(jì)輸出信息的內(nèi)容、信息形式(表格、圖形、文字)、數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)類型、位數(shù)及取值范圍等等。文字)、數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)類型、位數(shù)及取值范圍等等。 o 選擇輸出設(shè)備與介質(zhì):選擇輸出設(shè)備與介質(zhì):常用的輸出設(shè)備有顯示終端、打常用的輸出設(shè)備有顯示終端、打印機(jī)、磁帶機(jī)、磁盤機(jī)、繪圖儀、縮微膠卷輸出器、多印機(jī)、磁帶機(jī)、磁盤機(jī)、繪圖儀、縮微膠卷輸出器、多

22、媒體設(shè)備。輸出介質(zhì)有紙張、磁帶、磁盤、縮微膠卷、媒體設(shè)備。輸出介質(zhì)有紙張、磁帶、磁盤、縮微膠卷、光盤、多媒體介質(zhì)等等。光盤、多媒體介質(zhì)等等。o 確定輸出格式:確定輸出格式:輸出文字、報(bào)表或圖形,清晰直觀,滿輸出文字、報(bào)表或圖形,清晰直觀,滿足用戶的管理需求和習(xí)慣,符合行業(yè)標(biāo)準(zhǔn)足用戶的管理需求和習(xí)慣,符合行業(yè)標(biāo)準(zhǔn)什么是高質(zhì)量的輸出設(shè)計(jì)以下因素確定了輸出質(zhì)量:以下因素確定了輸出質(zhì)量:易存取易存取Accessibility :很容易被使用:很容易被使用及時(shí)及時(shí)Timeliness適當(dāng)適當(dāng)Relevance :有使用價(jià)值:有使用價(jià)值正確正確Accuracy可用可用Useability :有合適的格式:

23、有合適的格式輸出設(shè)備輸出設(shè)備輸出介質(zhì)輸出介質(zhì)輸出設(shè)備和輸出介質(zhì)oPrinters(打印機(jī))oVideo Display Unit(顯示器)oPlotters(繪圖儀)oCOM Equipment(串行端口設(shè)備)oSpeakers(喇叭)oPaper(紙)oVideo Screen(屏幕)oMicrofilm/Microfiche(膠片)oAir Waves/Sound(聲音)oDisk(存儲設(shè)備)oIC卡或或郵件、手機(jī)短信、郵件、手機(jī)短信、脈沖、脈沖、傳感器傳感器輸出格式用于信息管理的輸出格式:用于信息管理的輸出格式:o表格表格n清單(如各種收費(fèi)單)清單(如各種收費(fèi)單)n匯總表(月報(bào)表)匯總表

24、(月報(bào)表)n對照表(年度對照)對照表(年度對照)o圖形圖形n折線圖(就業(yè)、考研、出國情況)折線圖(就業(yè)、考研、出國情況)n柱狀圖(產(chǎn)品銷售業(yè)績)柱狀圖(產(chǎn)品銷售業(yè)績)n餅圖(產(chǎn)品區(qū)域分布比例)餅圖(產(chǎn)品區(qū)域分布比例)o文字(比如一些證書、評審報(bào)告)文字(比如一些證書、評審報(bào)告)n 特點(diǎn)是嚴(yán)謹(jǐn),不會產(chǎn)生二義性特點(diǎn)是嚴(yán)謹(jǐn),不會產(chǎn)生二義性信息系統(tǒng)界面(接口)o 信息系統(tǒng)與外界環(huán)境之間的輸入輸出就可以稱信息系統(tǒng)與外界環(huán)境之間的輸入輸出就可以稱為信息系統(tǒng)的界面。為信息系統(tǒng)的界面。o 根據(jù)輸入輸出操作對象和設(shè)備劃分為兩種:根據(jù)輸入輸出操作對象和設(shè)備劃分為兩種:n 系統(tǒng)界面:系統(tǒng)界面:系統(tǒng)中包含的不需要人員

25、干預(yù)的輸入和系統(tǒng)中包含的不需要人員干預(yù)的輸入和輸出部分。例如:自動捕獲的輸入數(shù)據(jù)(如傳感器輸出部分。例如:自動捕獲的輸入數(shù)據(jù)(如傳感器數(shù)據(jù))和自動輸出的數(shù)據(jù)(如后臺郵件自動發(fā)送)。數(shù)據(jù))和自動輸出的數(shù)據(jù)(如后臺郵件自動發(fā)送)。n 人機(jī)界面:人機(jī)界面:信息系統(tǒng)中信息系統(tǒng)中需要用戶交互需要用戶交互的輸入和輸出的輸入和輸出部分。例如:查詢書目、下訂單、查看購物車商品部分。例如:查詢書目、下訂單、查看購物車商品等。等。10.3 人機(jī)交互設(shè)計(jì)人機(jī)交互設(shè)計(jì)o 信息系統(tǒng)是一個(gè)信息系統(tǒng)是一個(gè)“人人機(jī)系統(tǒng)機(jī)系統(tǒng)”,大量的輸,大量的輸入和輸出面對的是人,抽取這部分進(jìn)行人機(jī)入和輸出面對的是人,抽取這部分進(jìn)行人機(jī)對話

26、設(shè)計(jì)。對話設(shè)計(jì)。人機(jī)交互的風(fēng)格o直接操縱:直接操縱:直接模擬現(xiàn)實(shí),比如直接模擬現(xiàn)實(shí),比如電子書軟件電子書軟件直接使用一本書作為界面,直接使用一本書作為界面,模擬翻頁(音樂播放模擬錄音機(jī))。容易學(xué)習(xí)和記憶,避免錯(cuò)誤但編程模擬翻頁(音樂播放模擬錄音機(jī))。容易學(xué)習(xí)和記憶,避免錯(cuò)誤但編程復(fù)雜復(fù)雜o菜單選擇法:菜單選擇法:使用菜單列出所有可能的操作供用戶選擇。使用簡單,結(jié)使用菜單列出所有可能的操作供用戶選擇。使用簡單,結(jié)構(gòu)化,但可能太多,占用屏幕空間構(gòu)化,但可能太多,占用屏幕空間o填表法:填表法:將要輸人的項(xiàng)目先顯示在屏幕上,用戶根據(jù)項(xiàng)目輸入相應(yīng)的數(shù)將要輸人的項(xiàng)目先顯示在屏幕上,用戶根據(jù)項(xiàng)目輸入相應(yīng)的數(shù)

27、據(jù)。這種方法類似填表。屏幕上顯示的表格應(yīng)盡量與操作人員手中的原據(jù)。這種方法類似填表。屏幕上顯示的表格應(yīng)盡量與操作人員手中的原始數(shù)據(jù)記錄格式對應(yīng)。始數(shù)據(jù)記錄格式對應(yīng)。o回答法回答法:程序運(yùn)行到一定階段,屏幕上顯示問題,等待用戶回答?;卮鸪绦蜻\(yùn)行到一定階段,屏幕上顯示問題,等待用戶回答?;卮鸱绞揭矐?yīng)在屏幕上提示,讓用戶簡單地回答。方式也應(yīng)在屏幕上提示,讓用戶簡單地回答。 o提問法:提問法:這種方式主要是用戶查詢。例如要查詢某學(xué)生的基本情況。屏這種方式主要是用戶查詢。例如要查詢某學(xué)生的基本情況。屏幕上提示輸入幕上提示輸入學(xué)號學(xué)號,當(dāng)操作員回答學(xué)生的學(xué)號后,屏幕上顯示該學(xué)生,當(dāng)操作員回答學(xué)生的學(xué)號后,

28、屏幕上顯示該學(xué)生的有關(guān)情況的有關(guān)情況什么是圖形用戶界面(GUI)o 界面(界面(Interface):系統(tǒng)或?qū)ο髮ν饪梢姷牟糠郑合到y(tǒng)或?qū)ο髮ν饪梢姷牟糠謔 圖形用戶界面圖形用戶界面/圖形用戶接口(圖形用戶接口(Graphical User Interface,GUI)是指采用圖形方式顯示的計(jì)算機(jī)操作用戶界面。與早期)是指采用圖形方式顯示的計(jì)算機(jī)操作用戶界面。與早期計(jì)算機(jī)使用的命令行界面相比,圖形界面對于用戶來說在視覺計(jì)算機(jī)使用的命令行界面相比,圖形界面對于用戶來說在視覺上更易于接受。上更易于接受。o 用戶界面(用戶界面(User Interface):與用戶進(jìn)行交互的可見部分,):與用戶進(jìn)行

29、交互的可見部分,通常以屏幕為輸入通常以屏幕為輸入/輸出介質(zhì)輸出介質(zhì)n字符字符(character)(character)界面:以字符為單位,界面:以字符為單位,8080列列* *2525行,僅顯示字符,所有行,僅顯示字符,所有操作通過鍵盤操作操作通過鍵盤操作n圖形圖形(graphic)(graphic)界面:以像素為單位,界面:以像素為單位,600600* *480480、10241024* *768768,能顯示任何,能顯示任何字符、圖形或圖像,可以通過鍵盤、鼠標(biāo)、光筆、觸摸屏進(jìn)行操作字符、圖形或圖像,可以通過鍵盤、鼠標(biāo)、光筆、觸摸屏進(jìn)行操作要了解圖形用戶界面的基本元素(控件)及其使用要了解

30、圖形用戶界面的基本元素(控件)及其使用特點(diǎn):特點(diǎn): 下拉菜單下拉菜單 彈出菜單彈出菜單 列表框列表框/ /組合列表框組合列表框 選擇鈕、復(fù)選框選擇鈕、復(fù)選框 文本輸入框文本輸入框 命令按鈕命令按鈕 滾動條滾動條 表格表格 圖形用戶界面元素圖形用戶界面元素分析幾個(gè)實(shí)例o 用戶界面設(shè)計(jì)案例分析用戶界面設(shè)計(jì)案例分析用戶界面設(shè)計(jì)目標(biāo)用戶界面設(shè)計(jì)目標(biāo)可度量的目標(biāo):可度量的目標(biāo):1.學(xué)習(xí)時(shí)間:學(xué)會使用相關(guān)功能所需要的時(shí)間學(xué)習(xí)時(shí)間:學(xué)會使用相關(guān)功能所需要的時(shí)間2.執(zhí)行速度:程序完成基本任務(wù)需要的時(shí)間執(zhí)行速度:程序完成基本任務(wù)需要的時(shí)間3.用戶的出錯(cuò)率:用戶完成基本任務(wù)時(shí)會犯多少錯(cuò)誤,用戶的出錯(cuò)率:用戶完成基

31、本任務(wù)時(shí)會犯多少錯(cuò)誤,哪些錯(cuò)誤哪些錯(cuò)誤4.記憶保持能力:使用一段時(shí)間后(記憶保持能力:使用一段時(shí)間后(1天天/1周等)還能周等)還能記住多少記住多少5.主觀滿意度:用戶的看法,滿意度等級主觀滿意度:用戶的看法,滿意度等級o 目標(biāo)之間有矛盾,可能需要折衷考慮(如目標(biāo)之間有矛盾,可能需要折衷考慮(如執(zhí)行速度和出錯(cuò)率)執(zhí)行速度和出錯(cuò)率)圖形用戶界面設(shè)計(jì)步驟1. 了解用戶的特點(diǎn)(了解用戶的特點(diǎn)(崗位職責(zé)、學(xué)歷水平、計(jì)崗位職責(zé)、學(xué)歷水平、計(jì)算機(jī)熟悉程度算機(jī)熟悉程度)2. 確定輸入和輸出的數(shù)據(jù)內(nèi)容確定輸入和輸出的數(shù)據(jù)內(nèi)容3. 確定設(shè)計(jì)目標(biāo)(確定設(shè)計(jì)目標(biāo)(易用性、數(shù)據(jù)校驗(yàn)要求易用性、數(shù)據(jù)校驗(yàn)要求)4. 選擇

32、適當(dāng)?shù)慕缑嬖?,將設(shè)計(jì)排列出來選擇適當(dāng)?shù)慕缑嬖?,將設(shè)計(jì)排列出來5. 評價(jià)設(shè)計(jì)結(jié)果,可反復(fù)修改評價(jià)設(shè)計(jì)結(jié)果,可反復(fù)修改用戶界面設(shè)計(jì)策略o Ben Shneiderman所著的所著的用戶界面用戶界面設(shè)計(jì)設(shè)計(jì)有效的人機(jī)交互策略有效的人機(jī)交互策略總結(jié)了三總結(jié)了三項(xiàng)原則:項(xiàng)原則: 1. 考慮用戶的多樣性考慮用戶的多樣性2. 八條黃金設(shè)計(jì)規(guī)則,適用于大多數(shù)交互系八條黃金設(shè)計(jì)規(guī)則,適用于大多數(shù)交互系統(tǒng)的基本定律統(tǒng)的基本定律3. 預(yù)防出錯(cuò)預(yù)防出錯(cuò)八條黃金設(shè)計(jì)規(guī)則1. 盡量保持一致(布局、顏色、詞匯)盡量保持一致(布局、顏色、詞匯)2. 允許熟練用戶使用快捷鍵允許熟練用戶使用快捷鍵3. 提供積極的有價(jià)值的反饋

33、提供積極的有價(jià)值的反饋4. 設(shè)計(jì)完整的對話過程,每次對話有明確的結(jié)束設(shè)計(jì)完整的對話過程,每次對話有明確的結(jié)束信息(包括窗口的切換)信息(包括窗口的切換)5. 提供預(yù)防錯(cuò)誤和簡單的錯(cuò)誤處理手段提供預(yù)防錯(cuò)誤和簡單的錯(cuò)誤處理手段6. 允許撤銷動作允許撤銷動作7. 提供控制的內(nèi)部軌跡,讓用戶感覺控制了系統(tǒng),提供控制的內(nèi)部軌跡,讓用戶感覺控制了系統(tǒng),而不是被控制而不是被控制8. 減輕短期記憶負(fù)擔(dān)減輕短期記憶負(fù)擔(dān)10.4 程序處理過程詳細(xì)設(shè)計(jì)o 10.4.1 模塊的詳細(xì)設(shè)計(jì)模塊的詳細(xì)設(shè)計(jì)o 10.4.2 類的詳細(xì)設(shè)計(jì)類的詳細(xì)設(shè)計(jì)o 為什么要進(jìn)行模塊的詳細(xì)設(shè)計(jì)?為什么要進(jìn)行模塊的詳細(xì)設(shè)計(jì)?n 當(dāng)當(dāng)軟件結(jié)構(gòu)以

34、模塊為單位軟件結(jié)構(gòu)以模塊為單位時(shí),總體設(shè)計(jì)定義了時(shí),總體設(shè)計(jì)定義了模塊的調(diào)用關(guān)系和各模塊接口,模塊詳細(xì)設(shè)計(jì)模塊的調(diào)用關(guān)系和各模塊接口,模塊詳細(xì)設(shè)計(jì)需要對每個(gè)模塊的內(nèi)部處理邏輯進(jìn)行設(shè)計(jì)。需要對每個(gè)模塊的內(nèi)部處理邏輯進(jìn)行設(shè)計(jì)。n 當(dāng)當(dāng)軟件結(jié)構(gòu)以類為單位軟件結(jié)構(gòu)以類為單位時(shí),總體設(shè)計(jì)定義了類時(shí),總體設(shè)計(jì)定義了類及關(guān)系,順序圖描述了類之間的協(xié)作,但類的及關(guān)系,順序圖描述了類之間的協(xié)作,但類的某個(gè)方法內(nèi)部處理邏輯很復(fù)雜時(shí),也需要進(jìn)行某個(gè)方法內(nèi)部處理邏輯很復(fù)雜時(shí),也需要進(jìn)行模塊詳細(xì)設(shè)計(jì)。模塊詳細(xì)設(shè)計(jì)。10.4.1 模塊詳細(xì)設(shè)計(jì)模塊詳細(xì)設(shè)計(jì)o 區(qū)分模塊總體設(shè)計(jì)和模塊詳細(xì)設(shè)計(jì)區(qū)分模塊總體設(shè)計(jì)和模塊詳細(xì)設(shè)計(jì)o

35、模塊總體設(shè)計(jì)模塊總體設(shè)計(jì)是將系統(tǒng)分解成許多模塊,并決定了每個(gè)是將系統(tǒng)分解成許多模塊,并決定了每個(gè)模塊的外部特征(功能和接口),即要確定模塊及其相模塊的外部特征(功能和接口),即要確定模塊及其相互關(guān)系(互關(guān)系(靜態(tài)結(jié)構(gòu)靜態(tài)結(jié)構(gòu))。)。o 模塊詳細(xì)設(shè)計(jì)模塊詳細(xì)設(shè)計(jì)(計(jì)算機(jī)處理過程)是要確定每一個(gè)模塊(計(jì)算機(jī)處理過程)是要確定每一個(gè)模塊的內(nèi)部特征,即內(nèi)部的處理過程的設(shè)計(jì),包括局部的數(shù)的內(nèi)部特征,即內(nèi)部的處理過程的設(shè)計(jì),包括局部的數(shù)據(jù)組織、控制流、每一步的具體加工要求及種種實(shí)施細(xì)據(jù)組織、控制流、每一步的具體加工要求及種種實(shí)施細(xì)節(jié)(節(jié)(動態(tài)過程動態(tài)過程)。)。o 計(jì)算機(jī)處理過程設(shè)計(jì)可以采用以下工具表達(dá):

36、計(jì)算機(jī)處理過程設(shè)計(jì)可以采用以下工具表達(dá):n 程序流程圖(程序框圖)程序流程圖(程序框圖)n 盒圖(盒圖(NS圖)圖)n 程序設(shè)計(jì)語言(程序設(shè)計(jì)語言(PDL)1、程序流程圖、程序流程圖o三種結(jié)構(gòu)三種結(jié)構(gòu)(a) (a) 順序順序(d) if-then-else(d) if-then-else選擇選擇(c) Case(c) Case型分支結(jié)構(gòu)型分支結(jié)構(gòu)(b2) Repeat(b2) Repeat UntilUntil型循環(huán)結(jié)構(gòu)型循環(huán)結(jié)構(gòu)TF(b1) Do While (b1) Do While 型循環(huán)結(jié)構(gòu)型循環(huán)結(jié)構(gòu)TFCCCCAAAAABBBE2、盒圖(NS圖,Nassi & Shneide

37、rman)o 在NS圖中,每個(gè)處理步驟用一個(gè)盒子表示。盒子可嵌套。盒子只能從上頭進(jìn)入,從下頭走出,除此之外別無其它出入口。第一任務(wù)第一任務(wù)第二任務(wù)第二任務(wù)第三任務(wù)第三任務(wù)(a) (a) 順序順序F F 條件條件 T TELSEELSE部分部分THENTHEN部分部分F F 條件條件 T TCASECASE部分部分值值1 1CASECASE部分部分值值2 2. . .CASECASE部分部分值值n n(d) (d) 循環(huán)循環(huán)(c) (c) 選擇選擇(b) (b) 條件條件循環(huán)條件循環(huán)條件DO-WHILEDO-WHILE部分部分循環(huán)條件循環(huán)條件REPEAT-UNTILREPEAT-UNTIL部分部

38、分程序流程圖舉例程序流程圖舉例abx1x2x5x6x3x4x7x8higfedcjFTabx1CASE xii=2,3,4x2fF x6 Tx3x4x5decx8jghx7i等價(jià)的盒圖3、程序設(shè)計(jì)語言PDLo Program Design Languageo 是用來描述是用來描述模塊內(nèi)部具體算法模塊內(nèi)部具體算法的非正式的比的非正式的比較靈活的語言?;蚍Q較靈活的語言。或稱類語言類語言等價(jià)的PDL(類Pascal) 執(zhí)行執(zhí)行a REPEAT UNTIL 條件條件x8 執(zhí)行執(zhí)行b IF條件條件x1 THEN BEGIN 執(zhí)行執(zhí)行f IF條件條件x6 THEN REPEAT UNTIL條件條件X7 執(zhí)

39、行執(zhí)行i ENDREP ELSE BEGIN 執(zhí)行執(zhí)行g(shù) 執(zhí)行執(zhí)行h END ENDIF ELSE CASE OF條件條件xi WHEN條件條件x2 SELECT DO WHILE條件條件x5 執(zhí)行執(zhí)行C END DO WHEN 條件條件x3 SELECT執(zhí)行執(zhí)行d WHEN 條件條件x4 SELECT執(zhí)行執(zhí)行e ENDCASE ENDIF ENDREP 執(zhí)行執(zhí)行j模塊的總體設(shè)計(jì)與詳細(xì)設(shè)計(jì)o 模塊總體設(shè)計(jì):劃分模塊、確定模塊的接口、模塊總體設(shè)計(jì):劃分模塊、確定模塊的接口、模塊之間的關(guān)系模塊之間的關(guān)系o 模塊詳細(xì)設(shè)計(jì):設(shè)計(jì)模塊的具體程序流程模塊詳細(xì)設(shè)計(jì):設(shè)計(jì)模塊的具體程序流程對比模塊結(jié)構(gòu)圖和程序

40、流程圖信用證處理信用證處理復(fù)復(fù) 核核授授 權(quán)權(quán)聯(lián)機(jī)編押聯(lián)機(jī)編押信息發(fā)送信息發(fā)送信息接收信息接收更更 正正刪刪 除除N柜員登錄柜員登錄該信息是否存在該信息是否存在?柜員合法嗎?柜員合法嗎?輸入要?jiǎng)h除信息的類別、編號輸入要?jiǎng)h除信息的類別、編號提示:該信息不存在,提示:該信息不存在,請重新輸入請重新輸入后臺程序下傳該條信息,前臺顯示各數(shù)據(jù)項(xiàng)后臺程序下傳該條信息,前臺顯示各數(shù)據(jù)項(xiàng)前臺確認(rèn)刪除該信息后,將信息上傳后臺,后臺程前臺確認(rèn)刪除該信息后,將信息上傳后臺,后臺程序?qū)?shù)據(jù)庫中的該條記錄刪除序?qū)?shù)據(jù)庫中的該條記錄刪除結(jié)結(jié) 束束該信息是否已發(fā)該信息是否已發(fā)送送?提示:該信息已發(fā)送提示:該信息已發(fā)送不能刪

41、除不能刪除結(jié)結(jié) 束束YYYNN10.4.2 類的詳細(xì)設(shè)計(jì)類的詳細(xì)設(shè)計(jì)o 面向?qū)ο笤O(shè)計(jì)階段面向?qū)ο笤O(shè)計(jì)階段(OOD)具體內(nèi)容具體內(nèi)容包括:包括:n (1) 設(shè)計(jì)軟件體系結(jié)構(gòu)設(shè)計(jì)軟件體系結(jié)構(gòu),定義系統(tǒng)的高層劃分,定義系統(tǒng)的高層劃分,確定主要組件及其接口。,確定主要組件及其接口。n (2) 詳細(xì)設(shè)計(jì)軟件類或接口詳細(xì)設(shè)計(jì)軟件類或接口。按照架構(gòu)模式定。按照架構(gòu)模式定義系統(tǒng)的義系統(tǒng)的邊界類邊界類、控制類控制類和和實(shí)體類實(shí)體類,詳細(xì)設(shè)計(jì),詳細(xì)設(shè)計(jì)類類的屬性和方法的屬性和方法,設(shè)計(jì)程序執(zhí)行的,設(shè)計(jì)程序執(zhí)行的交互圖交互圖。n (3) 設(shè)計(jì)數(shù)據(jù)庫接口設(shè)計(jì)數(shù)據(jù)庫接口,解決面向?qū)ο竽P偷綌?shù),解決面向?qū)ο竽P偷綌?shù)據(jù)庫模

42、型的過渡。據(jù)庫模型的過渡。 o 軟件類(設(shè)計(jì)類)是設(shè)計(jì)階段中討論的對象和類。軟件類(設(shè)計(jì)類)是設(shè)計(jì)階段中討論的對象和類。o 用例驅(qū)動的設(shè)計(jì)。用例驅(qū)動的設(shè)計(jì)。o 軟件類軟件類來源來源:n來源于分析模型中的領(lǐng)域類來源于分析模型中的領(lǐng)域類:它們通常是現(xiàn)實(shí)事物或概:它們通常是現(xiàn)實(shí)事物或概念的抽象,這些類要轉(zhuǎn)換為軟件世界中的類,完成業(yè)務(wù)念的抽象,這些類要轉(zhuǎn)換為軟件世界中的類,完成業(yè)務(wù)數(shù)據(jù)操作。數(shù)據(jù)操作。n計(jì)算機(jī)操作需要的類:如為了完成用例所描述的功能,計(jì)算機(jī)操作需要的類:如為了完成用例所描述的功能,需要添加一些窗口界面類。復(fù)雜用例可能涉及到多個(gè)領(lǐng)需要添加一些窗口界面類。復(fù)雜用例可能涉及到多個(gè)領(lǐng)域類的域類

43、的協(xié)作協(xié)作,添加控制類實(shí)現(xiàn)部分復(fù)雜控制流。訪問數(shù),添加控制類實(shí)現(xiàn)部分復(fù)雜控制流。訪問數(shù)據(jù)庫、權(quán)限、日志據(jù)庫、權(quán)限、日志n根據(jù)分層架構(gòu),產(chǎn)生各司其職的類。根據(jù)分層架構(gòu),產(chǎn)生各司其職的類。Step1:設(shè)計(jì)軟件體系結(jié)構(gòu)設(shè)計(jì)軟件體系結(jié)構(gòu) 根據(jù)分層設(shè)計(jì)軟件類根據(jù)分層設(shè)計(jì)軟件類o 從分析模型的從分析模型的領(lǐng)域類領(lǐng)域類導(dǎo)出設(shè)計(jì)階段中的導(dǎo)出設(shè)計(jì)階段中的實(shí)體類。實(shí)體類。o 增加邊界類和控制類增加邊界類和控制類完成完成程序的交互和控制程序的交互和控制。1、設(shè)計(jì)界面類(邊界類)、設(shè)計(jì)界面類(邊界類)o 界面類的職責(zé)界面類的職責(zé)是完成是完成系統(tǒng)與其參與者之間的交互系統(tǒng)與其參與者之間的交互。n接收來自用戶和外部系統(tǒng)的信

44、息與請求接收來自用戶和外部系統(tǒng)的信息與請求n將信息與請求提交給用戶和外部系統(tǒng)將信息與請求提交給用戶和外部系統(tǒng)o 通過用例圖可以得知每個(gè)界面類至少應(yīng)該與一個(gè)參與通過用例圖可以得知每個(gè)界面類至少應(yīng)該與一個(gè)參與者有關(guān)者有關(guān)o 界面類包括屏幕窗口、通信接口、打印機(jī)接口、傳感界面類包括屏幕窗口、通信接口、打印機(jī)接口、傳感器、終端以及專用器、終端以及專用API(應(yīng)用程序編程接口)等軟件(應(yīng)用程序編程接口)等軟件對象。對象。n對于圖書館系統(tǒng)來說,參與者都是系統(tǒng)用戶,因此界面類只有窗口對于圖書館系統(tǒng)來說,參與者都是系統(tǒng)用戶,因此界面類只有窗口界面這一種形式。界面這一種形式。n若考慮提供館際互借業(yè)務(wù),則系統(tǒng)就會

45、產(chǎn)生與其它外部合作的圖書若考慮提供館際互借業(yè)務(wù),則系統(tǒng)就會產(chǎn)生與其它外部合作的圖書館系統(tǒng)的交互,這時(shí)與外部系統(tǒng)間的通信接口也是一種界面類館系統(tǒng)的交互,這時(shí)與外部系統(tǒng)間的通信接口也是一種界面類o 設(shè)計(jì)每個(gè)用例的界面窗口或設(shè)計(jì)每個(gè)用例的界面窗口或WebWeb頁面。頁面。o 設(shè)計(jì)窗口和頁面的事件響應(yīng)設(shè)計(jì)窗口和頁面的事件響應(yīng)建立用戶界面原型建立用戶界面原型o 用戶界面原型是一個(gè)草圖,根據(jù)用例事件流描述用戶界面原型是一個(gè)草圖,根據(jù)用例事件流描述進(jìn)行設(shè)計(jì),應(yīng)包含用例提到的系統(tǒng)和用戶進(jìn)行交進(jìn)行設(shè)計(jì),應(yīng)包含用例提到的系統(tǒng)和用戶進(jìn)行交互的必要元素互的必要元素o 界面原型不描述太多細(xì)節(jié),通常包含以下內(nèi)容:界面原型

46、不描述太多細(xì)節(jié),通常包含以下內(nèi)容:n 需要由用戶需要由用戶輸入到系統(tǒng)中的數(shù)據(jù)窗口或表格輸入到系統(tǒng)中的數(shù)據(jù)窗口或表格;n 需要由系統(tǒng)執(zhí)行的需要由系統(tǒng)執(zhí)行的操作按鈕操作按鈕;n 系統(tǒng)應(yīng)及時(shí)做出系統(tǒng)應(yīng)及時(shí)做出回應(yīng)的事件回應(yīng)的事件;n 需要由系統(tǒng)需要由系統(tǒng)輸出給用戶的數(shù)據(jù)窗口或消息輸出給用戶的數(shù)據(jù)窗口或消息。n 需要由系統(tǒng)進(jìn)行的需要由系統(tǒng)進(jìn)行的數(shù)據(jù)校驗(yàn)數(shù)據(jù)校驗(yàn)。Step2: 設(shè)計(jì)軟件類設(shè)計(jì)軟件類“借書用戶界面借書用戶界面”通通過過“借書控制類借書控制類”,請求業(yè)務(wù)邏輯的處理請求業(yè)務(wù)邏輯的處理(即各實(shí)體功能實(shí)現(xiàn))(即各實(shí)體功能實(shí)現(xiàn))根據(jù)以上設(shè)計(jì)軟件類理論的步驟介紹,我們接著根據(jù)以上設(shè)計(jì)軟件類理論的步驟介

47、紹,我們接著系統(tǒng)分析階段的系統(tǒng)分析階段的“圖書管理系統(tǒng)圖書管理系統(tǒng)”的分析結(jié)果,的分析結(jié)果,繼續(xù)完善系統(tǒng)設(shè)計(jì)的步驟。繼續(xù)完善系統(tǒng)設(shè)計(jì)的步驟。Step3:設(shè)計(jì)界面原型設(shè)計(jì)界面原型 -圖書館系統(tǒng)的借書界面圖書館系統(tǒng)的借書界面“增加增加”按鈕按鈕對應(yīng)對應(yīng)圖書館理員圖書館理員actor給界面類傳入給界面類傳入第二第二個(gè)消息個(gè)消息-添加到借添加到借書列表中書列表中“完成完成”按鈕按鈕對應(yīng)對應(yīng)圖書館理員圖書館理員actor給界面類傳入給界面類傳入第第三個(gè)消息三個(gè)消息-保存保存借書記錄借書記錄,修改庫修改庫存存“查詢查詢”按鈕按鈕對應(yīng)圖對應(yīng)圖書館理員書館理員actor給界給界面類傳入面類傳入第一個(gè)第一個(gè)消息

48、消息-驗(yàn)證合法性驗(yàn)證合法性借書界面設(shè)計(jì)o 用戶借書界面中的數(shù)據(jù)說明借書界面設(shè)計(jì)o 界面事件及響應(yīng)說明數(shù)據(jù)校驗(yàn)設(shè)計(jì)o 界面中的所有手工錄入的數(shù)據(jù)根據(jù)需求進(jìn)行界面中的所有手工錄入的數(shù)據(jù)根據(jù)需求進(jìn)行驗(yàn)證。驗(yàn)證。o 數(shù)據(jù)類型、長度、取值范圍、校驗(yàn)方法數(shù)據(jù)類型、長度、取值范圍、校驗(yàn)方法n 如:手工錄入館藏號,如:手工錄入館藏號,1010位數(shù)字,錄入完后查位數(shù)字,錄入完后查找數(shù)據(jù)庫驗(yàn)證圖書的存在,如果不存在系統(tǒng)應(yīng)找數(shù)據(jù)庫驗(yàn)證圖書的存在,如果不存在系統(tǒng)應(yīng)提示提示2. 設(shè)計(jì)控制類設(shè)計(jì)控制類o 用戶界面與業(yè)務(wù)有關(guān)的用戶界面與業(yè)務(wù)有關(guān)的事件事件轉(zhuǎn)發(fā)給控制類,需轉(zhuǎn)發(fā)給控制類,需要設(shè)計(jì)控制類的響應(yīng)方法。要設(shè)計(jì)控制類的

49、響應(yīng)方法。o 控制類代表協(xié)調(diào)、排序、事務(wù)處理以及對其控制類代表協(xié)調(diào)、排序、事務(wù)處理以及對其它對象的控制,經(jīng)常它對象的控制,經(jīng)常用于封裝與某個(gè)具體用用于封裝與某個(gè)具體用例有關(guān)的控制流例有關(guān)的控制流。o 控制類處理和協(xié)調(diào)主要的動作和控制流,并控制類處理和協(xié)調(diào)主要的動作和控制流,并將任務(wù)委派給其它對象。將任務(wù)委派給其它對象。o 根據(jù)分層原則,控制類不封裝與參與者交互根據(jù)分層原則,控制類不封裝與參與者交互有關(guān)的內(nèi)容,也不封裝與系統(tǒng)處理的長效持有關(guān)的內(nèi)容,也不封裝與系統(tǒng)處理的長效持久的信息有關(guān)的問題,這些問題分別由邊界久的信息有關(guān)的問題,這些問題分別由邊界類和實(shí)體類進(jìn)行封裝。類和實(shí)體類進(jìn)行封裝。 3.

50、設(shè)計(jì)實(shí)體類o 控制類對于數(shù)據(jù)的存取和計(jì)算請求發(fā)送給實(shí)體控制類對于數(shù)據(jù)的存取和計(jì)算請求發(fā)送給實(shí)體類類,設(shè)計(jì)實(shí)體類的對應(yīng)方法。,設(shè)計(jì)實(shí)體類的對應(yīng)方法。 詳細(xì)實(shí)體類的屬性1. 屬性類型和初值屬性類型和初值屬性的類型和默認(rèn)的初始值應(yīng)該在設(shè)計(jì)模型中表示出來。屬性的類型和默認(rèn)的初始值應(yīng)該在設(shè)計(jì)模型中表示出來。類型和屬性名之間用冒號隔開,等號之后寫初值。選擇的類型和屬性名之間用冒號隔開,等號之后寫初值。選擇的數(shù)據(jù)類型最好是目標(biāo)語言中可用的。數(shù)據(jù)類型最好是目標(biāo)語言中可用的。關(guān)聯(lián)屬性關(guān)聯(lián)屬性2. 屬性的可見性屬性的可見性類中的每個(gè)屬性可以有可見性定義,指定該屬性可以被其類中的每個(gè)屬性可以有可見性定義,指定該屬性

51、可以被其它類利用的程度,它類利用的程度, UMLUML定義了定義了4 4種屬性可見性:種屬性可見性:o 公有(公有(publicpublic) “ “+”+”o 受保護(hù)(受保護(hù)(protectedprotected) “ “#”#”o 私有(私有(privateprivate) “ “-”-”o 包(包(packagepackage) “ “”Step4: 圖書館實(shí)體類(有屬性)圖書館實(shí)體類(有屬性)ResourceItem- itemID : String- state : IntegerLoan- lendDate : Date- dueDate : Date- returnDate :

52、DateOverdue- overDays : Integer- chargeFine : doubleResourceTitle- ISBN : String- titleName : String- author : String- publisher : String- publishDate : Date- price : Double- abstract : String- collectNum : Integer- available : IntegerFineRule- overDueFine : Single- detroyFine : Single- loseFine : S

53、ingleReader- cardNo : String- readerName : String- idCardNo : String- address : String- bookLimitation : Integer- bookCurrLmt : Integer- discLimitation : Integer- discCurrLmt : IntegerBooksize : StringDiscdiscType : Stringquantity : Integer 詳細(xì)實(shí)體類的方法詳細(xì)實(shí)體類的方法-設(shè)計(jì)用例的實(shí)現(xiàn)o 要實(shí)現(xiàn)用例規(guī)定的功能,需要多個(gè)軟件類協(xié)作要實(shí)現(xiàn)用例規(guī)定的功能,需要

54、多個(gè)軟件類協(xié)作:n 每個(gè)軟件類都應(yīng)承擔(dān)承擔(dān)相應(yīng)職責(zé)職責(zé),即類類的行為或操作行為或操作;n 類的行為或操作,就映射為類的方法類的方法;n 類之間的協(xié)作在建模時(shí)體現(xiàn)為消息傳遞,即對象a調(diào)用對象b的方法f(),意味著對象a向?qū)ο骲發(fā)送了f消息。o 通過對用例實(shí)現(xiàn)進(jìn)行詳細(xì)設(shè)計(jì),可以構(gòu)造出系統(tǒng)通過對用例實(shí)現(xiàn)進(jìn)行詳細(xì)設(shè)計(jì),可以構(gòu)造出系統(tǒng)最重要的的最重要的的動態(tài)模型:順序圖動態(tài)模型:順序圖。o 類的方法類的方法是在這個(gè)過程中被識別和分配給類的。是在這個(gè)過程中被識別和分配給類的。交互模型的設(shè)計(jì)內(nèi)容交互模型的設(shè)計(jì)內(nèi)容交互模型的設(shè)計(jì)內(nèi)容:交互模型的設(shè)計(jì)內(nèi)容:1.1. 對象職責(zé)的識別,意味著對象協(xié)作過程中消息對象職

55、責(zé)的識別,意味著對象協(xié)作過程中消息的分發(fā)(的分發(fā)(P217P217) 2.2. 定義消息的完整格式(定義消息的完整格式(P219P219)3.3. 將消息映射為類的操作,并在實(shí)現(xiàn)時(shí)轉(zhuǎn)化為類將消息映射為類的操作,并在實(shí)現(xiàn)時(shí)轉(zhuǎn)化為類的方法的方法詳細(xì)設(shè)計(jì)消息詳細(xì)設(shè)計(jì)消息o 消息的表達(dá)式語法消息的表達(dá)式語法nreturn := message (parameter : parameterType):returnTypen 如果類型信息非常明顯或不重要的話,可以省略書寫如果類型信息非常明顯或不重要的話,可以省略書寫,如:,如:n reader := getReader(cardID : String)o

56、 消息的序號消息的序號n 消息的次序用自小到大的順序號來表示。按照消息的消息的次序用自小到大的順序號來表示。按照消息的完成情況,消息可以有嵌套消息。完成情況,消息可以有嵌套消息。n 嵌套消息的序號按照層次編號,所有嵌套的子消息都嵌套消息的序號按照層次編號,所有嵌套的子消息都是服務(wù)于其上層消息。是服務(wù)于其上層消息。嵌套消息示例嵌套消息示例 : Loan : ResourceItem : ResourceTitle : FineRule1. amount := getTotalFine()1.1. getTitlePrice1.1.1. getPrice()1.2. getOverDueFine(

57、) 計(jì)算超期罰金,最高不超過書價(jià)計(jì)算超期罰金,最高不超過書價(jià)Loan對象在計(jì)算超期罰金時(shí)還需要對象在計(jì)算超期罰金時(shí)還需要獲取資源的價(jià)獲取資源的價(jià)格格和和罰金標(biāo)準(zhǔn)罰金標(biāo)準(zhǔn),因此向,因此向ResourceItem發(fā)送請求發(fā)送請求價(jià)格的消息,向價(jià)格的消息,向FineRule發(fā)送超期罰金標(biāo)準(zhǔn),而發(fā)送超期罰金標(biāo)準(zhǔn),而ResourceItem對象并不記錄價(jià)格,因此請求價(jià)對象并不記錄價(jià)格,因此請求價(jià)格的消息還需要發(fā)送給格的消息還需要發(fā)送給ResourceTitle對象。對象。 嵌套消息示例代碼Loan:getTotalFine() : doubletitlePrice = itemObject.getTit

58、lePrice();finePerDay = fineObject.getOverDueFine();double fineAmount = finePerDay * (this.returnDate this.dueDate);if (fineAmount titlePrice)return fineAmount ;elsereturn titlePrice;ResourceItem:getTitlePrice() : doublereturn itsTitleObject.getPrice();交互圖交互圖o 多個(gè)對象的行為采用對象交互來表達(dá),多個(gè)對象的行為采用對象交互來表達(dá),UML2.0

59、提供的交互圖有順序圖、交互概覽提供的交互圖有順序圖、交互概覽圖、通信圖和計(jì)時(shí)圖。最常用的是順序圖。圖、通信圖和計(jì)時(shí)圖。最常用的是順序圖。o 交互的類型:交互的類型:n 參與者和系統(tǒng)之間有交互參與者和系統(tǒng)之間有交互n 系統(tǒng)內(nèi)部元素之間也有交互系統(tǒng)內(nèi)部元素之間也有交互o 每個(gè)用例對外展示了用戶和系統(tǒng)的交互,而內(nèi)每個(gè)用例對外展示了用戶和系統(tǒng)的交互,而內(nèi)部實(shí)現(xiàn)則需要多個(gè)對象交互以完成用例事件流部實(shí)現(xiàn)則需要多個(gè)對象交互以完成用例事件流規(guī)定的各種功能規(guī)定的各種功能(P218圖圖10.46或前頁圖或前頁圖)Step5:設(shè)計(jì)類的方法設(shè)計(jì)類的方法 第10步 為用例建立順序圖Step6:為用例建立順序圖為用例建立

60、順序圖類詳細(xì)設(shè)計(jì)總結(jié)類詳細(xì)設(shè)計(jì)總結(jié)o 詳細(xì)設(shè)計(jì)是一個(gè)求精的過程,應(yīng)盡可能將流程中的所有細(xì)節(jié)都設(shè)計(jì)出來。o 計(jì)算機(jī)處理過程的設(shè)計(jì)通常是采用用例驅(qū)動來繪制順序圖。具體步驟如下:n (1) 首先挑中要設(shè)計(jì)的用例,例如還書用例。查看用例規(guī)約并設(shè)計(jì)出用例的用戶界面。n (2) 然后根據(jù)功能要求,確定流程中需要使用的類。n (3) 接著開始繪制用例主事件流的順序圖。繪制時(shí)先排列好上述步驟明確的類(對象)類,排列次序從左至右依次是參與者、界面層對象、控制層對象、數(shù)據(jù)訪問層對象。通過順序圖的消息(類的方法),完整地展現(xiàn)用例是如何實(shí)現(xiàn)的。類的方法已經(jīng)被識別和定義,這里直接使用。n (4) 最后對擴(kuò)展事件流的處理過程進(jìn)行設(shè)計(jì)。擴(kuò)

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論