《《管理信息系統(tǒng)》第五章管理信息系統(tǒng)設計.ppt》由會員分享,可在線閱讀,更多相關《《管理信息系統(tǒng)》第五章管理信息系統(tǒng)設計.ppt(44頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、第五章 管理信息系統(tǒng)設計,第一節(jié) 結構化系統(tǒng)設計概述,一、系統(tǒng)設計概述 (一)系統(tǒng)設計的概念 系統(tǒng)設計又稱為物理設計,是開發(fā)管理信息系統(tǒng)的第二階段,系統(tǒng)設計通常可分為兩個階段進行,首先是總體設計,其任務是設計系統(tǒng)的框架和概貌,并向用戶單位和領導部門作詳細報告并認可,在此基礎上進行第二階段詳細設計,這兩部分工作是互相聯(lián)系的,需要交叉進行。,第一節(jié) 結構化系統(tǒng)設計概述,一、系統(tǒng)設計概述 (二)系統(tǒng)設計的基本原則 (1)嚴格遵循系統(tǒng)分析報告所提供的文檔資料,不能任意更改系統(tǒng)功能和性能要求。 (2)權衡系統(tǒng)的投資和效益的比例。 (3)保證系統(tǒng)的效率和質量。 (4)體現(xiàn)系統(tǒng)的可擴展性和可適應
2、性。 (5)合理運用先進和成熟的技術。既要考慮系統(tǒng)的先進性又要避免更大的風險。 (6)保證系統(tǒng)的安全性。 (7)產生完備的系統(tǒng)設計說明書。,第一節(jié) 結構化系統(tǒng)設計概述,一、系統(tǒng)設計概念 (三)系統(tǒng)設計的目標 1.信息系統(tǒng)的功能 2.系統(tǒng)的效率 3.系統(tǒng)的可靠性 4.系統(tǒng)的工作質量 5.系統(tǒng)的可變更性 6.系統(tǒng)的經(jīng)濟性,第一節(jié) 結構化系統(tǒng)設計概述,一、系統(tǒng)設計概念 (四)系統(tǒng)設計的內容 1.總體設計。 包括應用軟件系統(tǒng)總體結構設計和計算機物理系統(tǒng)配置方案設計。 2.詳細設計。 3.編寫系統(tǒng)設計說明書。,第一節(jié) 結構化系統(tǒng)設計概述,一、系統(tǒng)設計概念 (五)系統(tǒng)劃分 系統(tǒng)劃
3、分的一般原則是: (1)子系統(tǒng)要具有相對獨立性 (2)子系統(tǒng)劃分的結果應使數(shù)據(jù)冗余最小 (3)要使子系統(tǒng)之間數(shù)據(jù)的依賴性盡量小 (4)子系統(tǒng)的設置應考慮今后管理發(fā)展的需要 (5)子系統(tǒng)的劃分應便于系統(tǒng)分階段開發(fā)的實現(xiàn),第一節(jié) 結構化系統(tǒng)設計概述,二、結構化設計的基本概念與方法 (一)問題結構對應于解結構 (二)系統(tǒng)的簡化 (三)圖表工具的使用 (四)設計策略 (五)評估準則,第一節(jié) 結構化系統(tǒng)設計概述,三、系統(tǒng)總體設計 (一)系統(tǒng)總體設計的的任務 系統(tǒng)總體結構設計的任務,是根據(jù)系統(tǒng)分析的邏輯模型設計應用軟件系統(tǒng)的物理結構。系統(tǒng)物理模型必須符合邏輯模型,能夠完成邏輯模型所規(guī)定的信息
4、處理功能,這是物理設計的基本要求。 (二)系統(tǒng)設計的方法,第一節(jié) 結構化系統(tǒng)設計概述,三、系統(tǒng)總體設計 (三)結構化設計的基本思想 SD方法具有以下特點: (1)相對獨立、功能單一 (2)“塊內聯(lián)系大、塊間聯(lián)系小”的模塊性能標準 (3)采用模塊結構圖的描述方式。結構化設計方法使用的描述方式是模塊結構圖。,第一節(jié) 結構化系統(tǒng)設計概述,三、系統(tǒng)總體設計 (三)結構化設計的基本思想 結構化設計的要點: 1.模塊化 2.由頂向下,逐步求精 3.信息隱藏,第一節(jié) 結構化系統(tǒng)設計概述,三、系統(tǒng)總體設計 (四)結構化設計的評估準則 簡單地說,從用戶的角度來看,一個高質量的軟件至少應具備兩
5、個特點:易于實施和測試;易于維護和修改。從軟件結構的角度來看,影響軟件質量的因素主要有兩個,一個是耦合,另一個是內聚。,第一節(jié) 結構化系統(tǒng)設計概述,三、系統(tǒng)總體設計 (四)結構化設計的評估準則 1.耦合 耦合(Coupling)是對兩個模塊之間聯(lián)接程度的一種度量。模塊間的依賴程度越大,則其耦合程度也就越大;反之,模塊間的依賴程度越小,則其耦合程度也就越小。 影響模塊耦合程度的因素主要有模塊間的連接類型、模塊間接口的復雜程度、通過界面(接口)的信息流類型和變量的賦值時間。,第一節(jié) 結構化系統(tǒng)設計概述,三、系統(tǒng)總體設計 (四)結構化設計的評估準則 耦合有五種不同的類型: 數(shù)據(jù)耦合(Da
6、ta Coupling) 好 標記(特征)耦合(Stamp Coupling) 控制耦合(Control Coupling) 公共耦合(Common Coupling) 內容耦合(Content Coupling) 壞,,第一節(jié) 結構化系統(tǒng)設計概述,三、系統(tǒng)總體設計 (四)結構化設計的評估準則 2.內聚 內聚(Cohesion)是對一個模塊內,其元素在功能上聯(lián)接程度強弱的一種度量。也就是說,內聚是對模塊內各處理動作組合強度的一種度量。很顯然,一個模塊的內聚越大越好。,第一節(jié) 結構化系統(tǒng)設計概述,三、系統(tǒng)總體設計 (四)結構化設計的評估準則 內聚按其可維護性由高到低劃分如下:
7、功能內聚 可維護性最好 順序內聚 通信內聚 過程內聚 古典內聚 邏輯內聚 機械內聚 可維護性最差,,第一節(jié) 結構化系統(tǒng)設計概述,三、系統(tǒng)總體設計 (五)控制結構圖的繪制 1.控制結構圖的基本符號和規(guī)定 控制結構圖也稱為軟件結構圖或模塊結構圖,它表示出一個系統(tǒng)的層次分解關系、模塊調用關系、模塊之間數(shù)據(jù)流和控制信息流的傳遞關系,它是了解系統(tǒng)物理結構的主要工具。 2.分解采用的兩種方式 (1)以轉換為中心結構的分解 (2)以業(yè)務為中心結構的分解,第一節(jié) 結構化系統(tǒng)設計概述,四、系統(tǒng)詳細設計 (一)代碼設計 1.代碼的重要性 代碼的重要性表現(xiàn)在以
8、下幾個方面: 可以惟一地標識一個分類對象(實體)。 便于存儲和檢索,節(jié)省存儲空間。 使數(shù)據(jù)的表達標準化。簡化處理程序,提高處理互效率。,第一節(jié) 結構化系統(tǒng)設計概述,四、系統(tǒng)詳細設計 (一)代碼設計 2.代碼設計的原則 惟一性:是區(qū)別系統(tǒng)中每個實體或屬性的唯一標識。 簡單性:盡量壓縮代碼長度,可降低出錯機會。 易識別性:為便于記憶、減少出錯,代碼應當邏輯性強,表意明確。 可擴充性:不需要變動原代碼體系,可直接追加新代碼,以適應系統(tǒng)發(fā)展。 合理性:必須在邏輯上滿足應用需要,在結構上與處理方法相一致。 規(guī)范性:盡可能采用現(xiàn)有的國標、部標編碼,結構統(tǒng)一。,第一節(jié) 結構化系統(tǒng)設計概述,四、系統(tǒng)詳
9、細設計 (一)代碼設計 3.代碼的種類 代碼的類型是指代碼符號的表示形式,進行代碼設計時可選擇一種或幾種代碼類型組合。目前人們對代碼分類的看法很不一致。一般說來,代碼可按文字種類或功能進行分類。按文字種類可分為數(shù)字代碼、字母代碼(英語字母或漢語拼音字母)和數(shù)字字母混合碼。,第一節(jié) 結構化系統(tǒng)設計概述,四、系統(tǒng)詳細設計 (一)代碼設計 代碼按功能則可以分成以下幾類: (1)順序碼 (2)重復碼 (3)成組碼 (4)表意碼 (5)專用碼 (6)組合碼,第一節(jié) 結構化系統(tǒng)設計概述,四、系統(tǒng)詳細設計 (一)代碼設計 4.代碼校驗 (1) 校驗值的生成過程 第一步:對原代碼中的每一位加
10、權求和S N位代碼為:C1 C2 C3Cn 權因子為:P1 P2 P3Pn 加權和為:C1P1+C2P2+C3P3++CnPn=S 其中,權因子可任意選取,以提高錯誤發(fā)生率為基礎。常用的有:全取1;幾何級數(shù)20,21,22,...;擺動數(shù)列1,2,1,2,...等等。,第一節(jié) 結構化系統(tǒng)設計概述,四、系統(tǒng)詳細設計 (一)代碼設計 第二步:求余數(shù)R 用加權和S除以模數(shù)M可得余數(shù)R。 即S/M=Q...R(Q為商數(shù)) 其中,模數(shù)M也可任意選取,同樣以提高錯誤發(fā)生率為基礎。常用的模數(shù)為10和11。 最后,選擇校驗值,可選用下述方法中的一種獲得校驗值:余
11、數(shù)R直接作為校驗值,或把模數(shù)M和余數(shù)R之差(即M-R)作為校驗值,取R的若干位作為校驗值。把獲得的數(shù)校驗值放在原代碼的最后作為整個代碼的組成部分。,第一節(jié) 結構化系統(tǒng)設計概述,四、系統(tǒng)詳細設計 (一)代碼設計 (2) 用校驗值檢查代碼的過程 此過程是上述生成過程的逆過程,這里不再解釋。下面舉一例說明。 例:為原代碼5186生成一校驗值。 校驗值生成過程: 首先選取加權值:1,2,1,2然后加權求和 S=51+12+81+62=27 求余數(shù): S/M=27/10=2......7(R) 加上校驗值7以后的代碼:51867,第一節(jié) 結構化系統(tǒng)設計概述,四、系統(tǒng)詳細設計 (一)代碼設計
12、 5.代碼設計的步驟 (1)確定代碼對象。 (2)考查是否已有標準代碼。 (3)根據(jù)代碼的使用范圍、使用時間,根據(jù)實際情況選擇代碼的種類與類型。 (4)考慮檢錯功能。 (5)編寫代碼表。,第一節(jié) 結構化系統(tǒng)設計概述,四、系統(tǒng)詳細設計 (二)輸出設計 1.輸出要求的確定 2.輸出方式的選擇 3.輸出格式的設計,第一節(jié) 結構化系統(tǒng)設計概述,四、系統(tǒng)詳細設計 (三)輸入設計 (1)輸入設計的原則 (2)輸入數(shù)據(jù)的獲得 (3)輸入格式的設計 (4)輸入數(shù)據(jù)的校驗,第一節(jié) 結構化系統(tǒng)設計概述,四、系統(tǒng)詳細設計 (四)處理過程設計 (五)數(shù)據(jù)存儲設計 1.文件設計 2.數(shù)據(jù)庫設計,第一節(jié) 結
13、構化系統(tǒng)設計概述,四、系統(tǒng)詳細設計 (六)用戶界面設計 用戶界面主要有以下幾種形式: (1)菜單式 (2)填表式 (3)選擇性問答式 (4)按鈕式,第一節(jié) 結構化系統(tǒng)設計概述,五、系統(tǒng)設計說明書 系統(tǒng)設計說明書包括以下幾方面的內容: (1)引言 (2)系統(tǒng)總體技術方案,第一節(jié) 結構化系統(tǒng)設計概述,五、系統(tǒng)設計說明書 系統(tǒng)總體技術方案 : 模塊設計 代碼設計 輸入設計 輸出設計 數(shù)據(jù)庫設計 網(wǎng)絡設計 安全保密設計 實施方案說明,第二節(jié) 面向對象設計,一、面向對象設計概述 (一)面向對象設計模型 面向對象設計的任務可用Coad 和Yourdon提出的面向對象設計模型表示,該模型由四個部分和
14、五個層次組成,其中四個部分是問題領域、人-機交互、任務管理和數(shù)據(jù)管理;五個層次是主題層、對象層、結構層、屬性層和服務層。,第二節(jié) 面向對象設計,一、面向對象設計概述 (二)高層架構設計 高層構架設計的目的是開發(fā)系統(tǒng)的結構,它從對象設計模型中的四個部分,即問題領域部分、人機交互部分、任務管理部分和數(shù)據(jù)管理部分入手,對應用系統(tǒng)的總體構架進行構造。,第二節(jié) 面向對象設計,一、面向對象設計概述 (三)類設計 必須完成以下事情: 完整的屬性集合,包括詳細說明的名稱、類型、可見性和一些默認值。 將分析類指定的操作轉化成一個或多個方法的完整集合。在此,方法就是一個被完整說明的、可以用源代碼實現(xiàn)的功能。,
15、第二節(jié) 面向對象設計,二、信息系統(tǒng)體系結構設計 信息系統(tǒng)體系結構(Information System Architecture)是指計算機信息系統(tǒng)系統(tǒng)各個組成部分之間的相互關系,它是硬件、軟件、算法和語言的綜合性概念。具體地說,就是指軟件、硬件功能分配以及界面的確定。 信息系統(tǒng)體系結構有如下類型:集中式結構和分布式結構。,第二節(jié) 面向對象設計,二、信息系統(tǒng)體系結構設計 (一)客戶機/服務器體系結構 C/S系統(tǒng)結構是由三部分組成:服務器平臺、客戶機、中間件。 客戶機的任務是:管理用戶界面(I/O),接受用戶的數(shù)據(jù)和處理請求(I),處理應用程序(Logic),產生對數(shù)據(jù)的請求
16、(I),向數(shù)據(jù)庫服務器發(fā)請求(I),接受服務器返回的結果(O),以用戶需要的格式輸出結果(O)。 服務器和任務是:接受客戶機發(fā)出的請求,處理對數(shù)據(jù)庫的請求,將處理結果傳給發(fā)出請求的客戶機,進行數(shù)據(jù)完整性檢查,維護數(shù)據(jù)字典、索引和其他附加數(shù)據(jù),處理數(shù)據(jù)恢復,查詢/更新的優(yōu)化處理。,第二節(jié) 面向對象設計,二、信息系統(tǒng)體系結構設計 (二)瀏覽器/服務器體系結構 三層結構為:客戶機、應用服務器和數(shù)據(jù)庫服務器。 三層結構的優(yōu)點是: 使客戶端人機界面部分的程序開發(fā)工作得以簡化。 中間業(yè)務邏輯層包含了大量的供客戶端程序調用的業(yè)務邏輯規(guī)則,以幫助其完成業(yè)務操作。 數(shù)據(jù)服務層主要提供
17、對數(shù)據(jù)庫進行各種操作的方法。 系統(tǒng)的安全性得以提高。 便于進行事務管理。,第二節(jié) 面向對象設計,三、軟件類設計 (一)面向對象程序的工作原理 第一個原理稱為封裝,其基本思想是對象封裝了該對象實例所需的所有數(shù)據(jù)、對象類作業(yè)對象的模板封裝了對象的程序邏輯。 第二個原理稱為信息隱蔽,面向對象方法中信息隱蔽與封裝密切相關,其基本思想是屬于一個對象的數(shù)據(jù)不為系統(tǒng)中的其他對象所見。,第二節(jié) 面向對象設計,三、軟件類設計 (二)面向對象設計(OOD)的目標 提高生產效率 提高質量 加強可維護性,第二節(jié) 面向對象設計,三、軟件類設計 (三)OOD的基本任務 OOD的任務是:在OOA模型的
18、基礎上補充某些細節(jié)詳細設計;軟件體系結構設計;界面設計(人機交互部件)、數(shù)據(jù)接口設計。 OOD階段需要建立的模型包括: 設計類圖。是對類圖的擴展,增加了屬性和方法細節(jié)。 包圖。用于標識一個完整系統(tǒng)的主要部分。 構件圖。表示構件及其之間是如何相互關聯(lián)的。 配置圖。表示結點以及結點之間是如何相互關聯(lián)的。結點是構件所運行的位置。,第二節(jié) 面向對象設計,三、軟件類設計 (四)設計類圖 設計類圖的一個基本思想是將類模型層次化,形成類的類型體系結構。,第二節(jié) 面向對象設計,三、軟件類設計 (五)設計包圖 包(Package)是UML系統(tǒng)模型的基本組織元素或者說包是模型元素的組合??梢詫⒄麄€系統(tǒng)說明
19、想像為含有所有系統(tǒng)元素的包,包括其他的包、模型 、圖表和元素。每個元素只屬于一個包,一個包又可以嵌入另一個包中。,第二節(jié) 面向對象設計,三、軟件類設計 (六)設計構件圖 (七)設計部署圖 (八)用戶界面設計、數(shù)據(jù)庫設計的集成 結構化方法進行應用程序體系結構設計時,重點關注的是模塊本身,在討論用OO方法進行設計類的設計也和結構化方法一樣,并沒有過多地考慮用戶界面的設計、數(shù)據(jù)庫的設計對設計類的影響。,第二節(jié) 面向對象設計,四、面向對象設計原則 1單一職責原則(Single Responsibility Principle ,SRP) 2開放-封閉原則(Open Closed Principle, OCP) 3Liskov替換原則(Liskov Substitution Principle, LSP) 4合成復用原則(Composite Reuse Principle, CRP) 5依賴倒置原則(The Dependency Inversion Principle, DIP) 6接口隔離原則(Interface Segregation Principle, ISP) 7迪米特法則(Law of Demeter, LoD),本章結束,謝謝!,