8.4.3 CASE硬件平臺
1.可供選擇的硬件平臺
CASE技術不僅僅是一種把一組相關的軟件生命周期工具裝配在一起的方法,它是要為用戶提供一個完整的集成化環境,以便提供一條從問題的描述到支持程序的快速和有效的開發途徑。因此,需要對整個軟件開發的支撐環境重新進行定義,這就是CASE系統的硬件平臺。
CASE軟件支撐環境有三種可供選擇的硬件平臺:
(l)獨立的工作站。
(2)包括一臺主機和若干工作站組成的兩層結構。
(3)包括一臺中央主機、中型的部門級或項目級的主機和若干工作站的三層結構。
2.CASE系統的基本組成部分
CASE系統可以分成三個基本部分,見圖8—3所示:
前端部分對應于軟件生命周期的前期階段,即分析和設計,前端也對應了硬件平臺的 PC機或工作站部分,前端 CASE工具提供了支持分析和設計工作的功能,如繪圖,建立原型和檢查規格說明,這些工作能在一個快速響應和高分辨率的專用微機和工作站上執行。
后端部分對應于軟件生命周期的后期階段,即程序的實現階段和維護階段,后端也對應了CASE硬件平臺的主機部分,后端CASE工具自動實現編碼、測試、數據庫生成、數據規范化和系統的效果分析任務。這些任務需要具有大型數據處理和存儲能力的主機支持。
CASE中心庫在邏輯上可分為項目和系統模型,在物理上則分為對應CASE系統每個硬件平臺的若干層,在工作站級上,用一個局部的中心庫支持單個的開發人員,在生機層上,用基于主機的中心庫保存所有公司的系統信息,在部門或項目級上,用一個中型的中心庫保存所有的項目信息。
8.4.4 CASE同其它軟件技術的關系
CASE并不是新的一代軟件技術,而是第三、四、五代技術和工具的組合,CASE不僅組合,而且集成了各種軟件技術和工具。
習題:
一、名詞解釋
1.用戶開發:是指最終用戶在無需程序設計人員甚至無需系統分析人員的協助下,進行應用軟件的開發工作。
2.原型法:是用戶與系統分析、設計人員合作,根據用戶提出的最基本的問題和想法,先很快建立一個應用軟件的骨架,作為應用開發的實驗模型。
3.對象:是問題空間的事物的抽象體。
4. 問題空間:某個信息系統所要處理的問題涉及的領域叫做問題空間。
5. 消息:對象之間進行通信的數據叫做消息。
6. 消息傳遞:當一個消息發送給某個對象時,包含要求接收對象去執行某些活動的信息,接收到消息的對象經過解釋,然后予以響應,這種通信機制叫做消息傳遞。
7.一則消息中需要接收此消息的對象進行處理的內容和格式叫做消息模式。
8.類:是一級大體上相同的對象,是在對象之上的抽象,對象則是類的具體化。
9.類的層次結構:一個類的上層可以存起類,下層可以存于類,形成一種層次結構,并且在這種結構中,一個類可以有多個超類,也可有多個子類,這就是類的層次結構。
10.繼承性:是類層次結構中,超類和子類之間共享數據和操作方法的機制。
11.單重繼承:子類只從其父類中得到繼承的繼承關系稱單重繼承。
12.多重繼承:一個子類有兩個以上父類的繼承稱多重繼承。
13.封裝:對所有對象的內部軟件范圍的邊界進行界定;對各對象之間相互作用的接口進行描述;對每個對象的內部實現進行保護。
14. 多態:不同的對象收到同一消息可產生不同的結果,這一現象稱多態。
15.聯編:把一個過程調用和響應調用而需執行的代碼加以結合的過程叫聯編。
16.靜態聯編:在運行前即編譯期間進行的聯編稱靜態聯編。
17.動態聯編:在運行當中進行的聯編稱動態聯編。
18.面向對象分析:是應用面向對象中對象與類、屬性與服務、繼承與封裝、基于消息的通信等概念,在問題空間建立以對象為基本單元的系統的邏輯模型。
19.結構:是一種組織方式,在面向對象分析中,它指多種對象的組織方式,用來反映問題空間中的復雜事物和復雜關系。
20.分類結構:描述一類對象中各成員的共有屬性與服務并將其擴充到每個實例中,意在顯示現實世界中事物的共性與特性。
21.組裝結構:刻畫一個整體及其組成部分。
22.主題是一個或者幾個對象或類在系統中共有特征的概要描述。是在對象和類之上的一種抽象。
23.屬性:是描述對象或分類結構實例的單元。
24.服務:是指某個對象所具有的特定的行為。
25.面向對象設計:是在系統分析的基礎上,根據系統功能和用戶操作使用方面的需求及技術、經濟和運行環境等方面的條件,運用面向對象的基本思想和概念,進一步細化,改進和擴展面向對象分析的五個層次的模型,以確立系統的物理模型。
26.面向對象的程序設計:是通過面向對象的編程語言中特定的語言機制來體現的。
27.CASE技術:就是計算機輔助軟件工具技術,是一種先進的軟件開發技術。CASE技術是系統開發工具與方法的結合,它不同于以往的開發技術。因為它強調的是解決整個系統開發過程的效率問題,而不僅僅是實施階段,由于跨越了系統生命周期的各個階段,因此,CASE的目標是為了實現一種較完善的技術,為系統開發人員提供一組優化的、集成的且能節省大量人力的系統開發工具。
28.CASE工作站:是一個完整的環境,包括硬件和軟件兩部分,其目的是為軟件系統的開發、維護和項目管理提供一個計算機化的輔助手段。
29.CASE軟件平臺:是一組范圍廣泛的集成化軟件工具,構成了工作站的“軟環境”,軟件開發人員可以根據自己的需要對CASE軟件平臺進行任意增減,以便于執行某些專門的項目管理、設計和維護這樣一些任務,以代替傳統的軟件開發工具,一個完整的 CASE軟件平臺必須具有的功能包括:圖形功能、查錯功能、中心信息庫、對軟件生命周期的全面覆蓋、支持建立系統的原型、代碼的自動生成、支持結構化方法等。
30.實例連接:就是一個對象的實例與另一個對象的實例的對應關系,它反映了對象之間的聯系和基于消息的通信機制。
二、論述題
1.試述系統開發中生命周期法存在的問題。
答:結構化生命周期法的應用,使管理信息系統的建設有了比較明確的方向。嚴格的秩序和一套可以實施的標準、規范方法和技術,開始走向了科學化、規范化的道路,但生命周期法也存在以下問題。
(l)整個系統的開發工作是勞動密集型的,系統開發的軟件成本大大超過硬件成本。
(2)系統開發的整個工作時間過長,難以適應環境的急劇變化。
(3)對用戶需求的變更不能做出迅速反應。
(4)如果系統所處理的問題比較復雜,不確定性因素較高,結構化生命周期法就很難適應。
(5)維護工作繁重,專門人才緊缺。
2.試述原型法的基本思想和建立系統原型的步驟。
答:原型法的基本思路是用戶與系統分析、設計人員合作,根據用戶提出的最基本的問題和想法,先很快建立一個應用軟件的骨架,作為應用開發的實驗模型,這個實驗模型叫做系統原型。用戶先運行這個原型系統,熟悉它,使用它,受到啟發并取得經驗,然后對系統的目標和功能提出精確、具體的要求,在對系統的需求最后決定后,再用傳統的方法建設系統,通常原型系統的部分程序可以在后來的系統建設中直接采用。
原型法是傳統方法和用戶開發相結合的方法。
建立一個管理信息系統的原型可分四步進行:
(l)明確用戶基本信息需求。
(2)建立初始的原型系統。
(3)使用原型系統,進一步明確用戶需求。
(4)修改和完善原型系統。
3.試述面向對象方法的基本概念。
答:面向對象分析,面向對象設計與面向對象程序設計結合在一起,形成了一種新的系統開發方法,稱之為面向對象方法。
面向對象方法主要涉及以下一些基本概念:
(l)對象:對象是描述該事物的一組屬性數據和作用于這些屬性數據之上的操作方法,對象是問題空間的事物的抽象體。
(2)消息:對象之間進行通訊的數據叫做消息,當一個消息送給某個對象時,包含要求接收對象在執行某些活動的信息,接收到消息的對象經過解釋,然后予以響應,這種通信機制叫做消息傳遞。
消息的類型用消息模式來刻畫。消息模式是指一則消息中需要接收此消息的對象進行處理的內容和格式。消息模式是定義對外部接口的唯一信息。
(3)類和類層次:一個類定義了一組大體上相同的對象,一個類所包含的操作方法和屬性數據描述了一組對象的共同行為和屬性,類是對象之上的抽象,對象則是類的具體化,是類的實例。
(4)繼承性:繼承性是類層次結構中的一個重要特點,是超類和子類之間共享數據和操作方法的機制。
(5)封裝性:封裝是一種信息隱蔽技術,其目的在于將對象的使用者和設計者分開,使用者不必知道對象行為實現的細節,只須用設計者提供的消息接口來訪問對象,封裝的定義為:①對所有對象的內部軟件范圍的邊界進行限定;②對各對象之間相互作用的接口進行描述;③對每個對象的內部實現進行保護;④多態性。
在收到消息時,對象要予以響應。不同的對象收到同一消息可產生不同的結果,這一對象叫做多態。
(6)動態聯編。聯編是指把一個過程調用和響應調用而需執行的代碼加以結合的過程。傳統的程序設計中,聯編是在進行前即編譯期間進行的,叫做靜態聯編。動態聯統則是在運行當中進行的,因此一個給定的過程調用和代碼的結合直到調用發生時才執行。
4.試述面向對象分析中五個步驟的工作內容。
答:面向對象分析主要有5個步驟組成:
(1)標志對象。標志對象的主要目的是為了使系統開發方法中對系統的描述方式同人們對現實世界的認識方式盡可能一致,并且能建立一個穩定的系統模型來反映用戶需求和描述問題空間。
定義對象主要考慮以下5個方面的問題:①從何入手確定對象;②哪些可以確定為對象;③應該考慮哪些內容;④哪些對象不應存在;⑤如何為對象命名。
(2)定義結構。結構是一種組織方式,分為兩科:分類結構和組裝結構。
分類結構表達了人類的一種基本組織方式,這種結構描述一類對象中各成員的共有屬性與服務并將其擴充到每個實例之中,意在顯示現實世界中事物的共性和特性。
組裝結構表達了人類的另一種基本組織方式,即自然的整體和部分的結構關系。從而通過各部分的聚合來構造成整體。
(3)定義主題。在面向對象分析中,主題是一個或者幾個對象或類在系統中的共有特性的概要描述。主題是在對象和類之上的一種抽象。定義主題的一般方法是:①為每一個結構提煉出一個相應的主題;②使每一個對象歸屬一個相應的主題;③如果主題的個數超過2個,則進一步提煉主題;④主題之間的聯系是和包聯系,它代表了兩個主題對應的兩組對象和結構之間的所有關稅。
(4)定義屬性與實例連接。屬性是描述對象或分類結構實例的數據單元。對屬性的定義可以分為以下幾個步驟:①標志屬性;②屬性定位;③屬性說明;④定義實例連接;⑤定義服務和消息連接。
服務是指某個對象所具有的特定的行為(或操作)。定義服務,首先是要定義每一種對象和分類結構所具有的行為,其次,還要定義對象實例之間必要的通信。通信的基本方式是消息傳遞,定義通信就是定義實例之間的消息連接。
5.試述面向對象設計工作的主要內容及面向對象分析的聯系。
答:面向對象設計是在系統分析的基礎上,根據系統功能和用戶操作使用方面的需求以及技術、經濟和運行的環境等方面的條件,繼續運用面向對象的基本思路與概念,進一步細化、改進和擴展00D五個層次的模型,以確立系統物理實現的技術方案,即建立系統的物理原型。
OOD模型由4個部分5個層次組成:5個層次與OOA一致。問題空間部分、人機交互部分、任務管理部分和數據管理部分。
6.簡述CASE技術的目標和功能及軟硬件開發環境的構成。
答:CASE技術是系統開發工具與方法的結合,它不同于以往的開發技術,因為它強調的是解決整個系統開發過程的效率問題。CASE的目標是為了實現一種較完善的技術,為系統開發人員提供一組優化的、集成的且能大量節省人力的系統開發工具,它著眼于系統分析和設計以及程序實現和維護等各個環節的自動化,并使之成為一個整體。
CASE的主要目標是:
(l)使結構化方法可以全面實施。
(2)通過自動檢查提高軟件的質量。
(3)使原型的建立有了高效的手段。
(4)簡化系統的維護工作。
(5)加快系統的開發過程。
(6)使系統開發人員的精力集中于開創性工作。
(7)提高軟件的可重用度。
CASE的功能:
(1)能實現一個具有快速響應,專用資源和早期查錯功能的交互式開發環境。
(2)對系統的開發和維護過程的各個環節實現自動化。
(3)具有一個強有力的圖形接口,實現了直觀的程序設計。
(4)CASE工作站是一個完整的環境,包括硬件和軟件兩大部分,其目的是為軟件系統的開發維護和項目管理,提供一個計算機化的輔助手段。
CASE軟件平臺是一組范圍廣泛的集成化軟件工具,構成了工作站的“軟環境”。
一個完整的CASE軟件平臺必須具有以下功能:①圖形功能;②查錯功能;③中心信息庫;④對軟件生命周期的全面覆蓋;⑤支持建立系統的原型;⑥代碼的自動生成;⑦支持建立系統的原型;⑧代碼的自動生成;⑨支持結構化的方法論。
CASE系統的硬件平臺為用戶提供一個完整的集成化環境,以便提供一條從問題的描述到支持程序的快速和有效的開發的途徑整個軟件開發的支持環境即為CASE系統的硬件平臺。
CASE軟件支撐環境有三種可供選擇的硬件平臺:①獨立的工作站;②包括一臺主機和若干工作站組成的兩層結構;③包括一臺中央主機,中型的部門級或項目級的主機和若干工作站的三層結構。