計算機輔助軟體工程

計算機輔助軟體工程

計算機輔助軟體工程,指的是幫助進行應用程序開發的軟體,包括分析與設計和代碼生成CASE工具為設計與文件編製傳統結構編程技術,提供了自動的方法。

CASE分類


1.CSAE技術種類

CASE系統所涉及到的技術有兩大類:一類是支持軟體開發過程的本身的技術,如支持規約、設計、實現、測試等等。
還有一種特殊的CASE技術,即元-CASE技術。

2.CASE工具

軟體工具是用於輔助計算機軟體的開發、運行、維護和管理等活動的一類軟體。隨著CASE的出現,人們也經常使用工具這一術語。人們一般不加區別地使用軟體工具和CASE工具這兩個詞。

3.CASE工具的分類

對CASE工具分類的標準可分為:
(1)功能。
(2)支持的過程。
(3)支持的範圍。
1993年Fuggetta根據CASE系統對軟體系統的支持範圍,提出 CASE系統可分為三類:
(1)支持單個過程任務的工具。
(2)工作台支持某一過程所有活動或某些活動。
(3)環境支持軟體過程所有活動或至少大部分。

CASE的集成


以一種集成的方式工作的CASE工具可獲得更多收益,因為集成方式組裝特定工具以提供對過程活動更廣泛的支持。
(1)平台集成:工具運行在相同的硬體/操作系統平台。
(2)數據集成:工具使用共享數據模型來操作。
(3)表示集成:工具提供相同的用戶界面。
(4)控制集成:工具激活后能控制其他工具的操作。
(5)過程集成:工具在一個過程模型和“過程機”的指導下使用。
1.平台集成
“平台”或是一個單一的計算機或操作系統或是一個網路系統。

數據集成


數據集成是指不同軟體工程能相互交換數據。
(1)共享文件。
(2)共享數據結構。
(3)共享倉庫。
最簡單的數據集成形式是基於一個共享文件的集成,UNIX系統就是這樣。UNIX有一個簡單的文件模型,即非結構化字元流。任何工具都能把信息寫入文件中,也能讀其他工具生成的文件。UNIX還提供管道。

表示集成


表示集成或用戶界面集成意指一個系統中的工具使用共同的風格,以及採用共同的用戶交互標準集。工具有一個相似的外觀。當引入一個新工具時,用戶對其中一些用戶界面已經很熟悉,這樣就減輕了用戶的學習負擔。目前,表示集成有如下三種不同級別:
(1)窗口系統集成
(2)命令集成。
(3)交互集成。

控制集成


控制集成支持工作台或環境中一個工具對系統中其他工具的訪問。

過程集成


過程集成意指CASE系統嵌入了關於過程活動、階段、約束和支持這些活動所需的工具的知識。

CASE工作台


1.CASE工作台概述

(1)CASE工作台的分類。
一個CASE工作台是一組工具集,支持像設計、實現或測試等特定的軟體開發階段。將CASE工具組裝成一個工作台後工具能協調工作,可提供比單一工具更好的支持。可實現通用服務程序,這些程序能被其他工具調用。工作台工具能通過共享文件、共享倉庫或共享數據結構來集成。
(2)開放式工作台和封閉式工作台。

2.程序設計工作台

程序設計工作台由支持程序開發過程的一組工具組成。將編譯器、編輯器和調試器這樣的軟體工具一起放在一個宿主機上,該機器是專門為程序開發設計的。組成程序設計工作台的工具可能有:
(1)語言編譯器:將源代碼程序轉換成目標碼。
(2)結構化編輯器:結合嵌入的程序設計語言知識。
(3)連接器。
(4)載入器。
(6)按格式列印。
(7)靜態分析器。
(8)動態分析器。
(9)互動式調試器。

分析和設計工作台


分析和設計工作台支持軟體過程的分析和設計階段,在這一階段,系統模型已建立(例如,一個資料庫模型,一個實體關係模型等)。這些工作台通常支持結構化方法中所用的圖形符號。支持分析和設計的工作台有時稱為上游 CASE工具。它們支持軟體開發的早期過程。程序設計工作台則成為下游CASE工具。

測試工作台


測試是軟體開發過程較為昂貴和費力的階段。測試工作台永遠應為開放系統,可以不斷演化以適應被測試系統的需要。