CASE Tool,Computer Aided System Engineering Tool
以標準的圖像表示法,勾勒軟體系統的施工藍圖
在建築業,藍圖是設計師與建築師溝通的基準。同樣的,軟體專案也需要一份藍圖,做為使用者、系統分析師與開發工程師之間溝通的橋樑,而CASE Tool(Computer Aided System Engineering Tool,電腦輔助系統工程工具)的誕生,便是希望扮演繪製軟體設計藍圖的角色,幫助開發團隊透過圖像化的藍圖,對系統的架構一目了然。
傳統的軟體研發模式,在一開始開發團隊人員就心急地跳入撰寫程式的階段,結果後續往往必須耗費大量的時間修正開發的方向,即使克服重重困難完成系統,未來系統的維護以及版本更新,仍將面臨許多的風險與困境。業界開始推動回頭重視分析與設計,並利用圖形化的符號,強化溝通的效果。
CASE Tool可分為兩種,一種是研發資料庫設計的E/R Model(Entity/Relationship Model,實體/關係模型)起家的工具,另一種專攻物件導向程式設計的UML塑模工具。
不過,這種基於定位不同的分法,也開始模糊。傳統的E/R Model工具也已推出包含UML的版本,而UML塑模工具也在產品中透過類別圖(Class Diagram)提供資料庫設計的功能,可見兩者在功能上已走向一致的發展途徑。
很多人將CASE Tool誤解為繪圖工具或是程式產生器(Code Generator),事實上,CASE Tool不只可以繪製符合業界標準的模型圖,還可利用正向工程(Forward Engineering)產生程式碼的框架或資料庫的Schema,並以逆向工程(Reverse Engineering)解析程式或資料庫,反轉成圖形。
現在已有CASE Tool能夠做到即時雙向(Real Time Round-trip)的正逆向工程轉換,達到程式碼與模型圖同步更新的境界。此外,針對多人及多地開發的團隊,透過儲存庫(Repository)提供統一的權限及版本控管機制,並可製作報表與文件。
目前幾乎所有CASE Tool,皆可透過UML提供標準化的模型圖,目的均是為了降低使用者、設計師及開發人員之間溝通的門檻,達到分析與設計的目的。開發團隊在詳盡的系統結構下,程式開發(Coding)這件工作也開始轉變,本身不再是重頭戲,只是將簡潔的程式碼填入所建構好的結構中。文⊙李延華
Repository
儲存庫
Repository中文的意思是「倉庫」,這裡指的是儲存程式與塑模圖形的儲存庫。
一般CASE Tool會搭配資料庫記錄,並提供管理介面,幫助開發團隊控管程式碼、圖檔及報表。
尤其當現今的開發團隊,逐漸發展成多個據點,甚至兩岸三地的協同合作方式,集中管理機制的需求相當迫切,版本和權限的集中化控管機制,已經是非常重要的功能。
Forward Engineering
正向工程
正向工程對軟體開發而言,是將設計好的模型圖,自動轉換為程式碼框架;但對資料庫而言,是根據設計模型產生對應的SQL程式碼。
其實CASE Tool並不會產生全部的程式碼,而是根據設計的架構,宣告基本的函式、物件、方式、變數等框架。UML目的是讓軟體開發回歸以「設計」為核心:當架構出爐後,「開發」只是在設計好的框架中,填上簡潔的程式碼而已。
Reverse Engineering
逆向工程
逆向工程是反過來根據程式碼或資料庫結構,產生對應的模型圖。正向工程產生的程式架構,經過一段時間的開發,可能因為需求的變化或者設計上的修改,難免與最初的版本產生差異。搭配逆向工程,即可正確地反應在模型圖上。
企業存在許多既有的資料庫或應用系統,若單靠人力,想徹底解析系統的設計架構,不但曠日費時且誤判率極高,而透過CASE Tool的逆向工程,可快速一覽系統的設計架構。
Real Time Round-Trip Engineering
即時雙向工程
模型圖透過正向工程產生程式碼後,開發者著手實作內部的細節,可能宣告新的變數或新增其他物件,因此,便與模型圖產生差異。
再利用逆向工程產生對應的模型圖,又可能因為使用者需求的改變,而調整模型,又需要正向工程反應實際的變化,因此,便有CASE Tool提供即時雙向工程,無論圖形或程式在開發或需求上有所調整,另一方將自動隨之變化。
E-R Model,Entity-Relationship Model
實體關係模式
E-R Model是設計關聯式資料庫設計的工具,資料庫的邏輯結構可以透過實體關係圖 ( Entity-Relationship Diagram,RD )表達。ERD包括實體、關聯與屬性等3元素,轉為實際的資料庫,實體代表的是資料表(Table)、屬性即是欄位(Column),而關聯則是展現資料表之間的關係。回頭修改已存在成千上萬筆資料的資料庫結構,風險很大,E-R Model起家的CASE Tool,可以協助企業調整運行中的資料庫。
UML,Unified Modeling Language
統一塑模語言
UML於1997年被OMG(Object Management Group)公布為物件導向視覺化塑模的標準,目前最新的版本為2.0,增加為13種模型圖,1.0版的合作圖(Collaboration Diagram)修改為通訊圖(Communication Diagram),並新增合成結構圖(Composite Structure Diagram)、套件圖(Package Diagram)、互動概觀圖(Interactive Overview Diagram)及時序圖(Timing Diagram)。
Use Case Diagram
使用案例圖
以物件導向概念開發系統時,需求分析常利用典型的使用情境(Scenario)來進行需求塑模。
使用案例圖在UML中負責用來呈現系統功能與需求,可以幫助塑模者,將焦點集中在使用者的需求上,而不是實現細節。它從使用者的觀點著手,描述系統的行為者與系統之間的互動與關係,它包含了行為者(Actor)和使用個案(Use Case)二個元件,使用案例是專業分工的依據,也是專案進度評量的重要因素。
Sequence Diagram
循序圖
循序圖以時間發生的先後順序,描述一組物件的互動,表達物件之間傳遞與處理訊息的程序。每一張循序圖都是一個 「情境(Scenario)」,用以捕捉情境中的行為(Behavior)。
循序圖有2個象限:垂直象限是發生的時間順序,以描述訊息呼叫的先後次序;水平象限則是描述物件傳送訊息給哪一個物件。
循序圖中每個參與物件都有一條生命線(Lifeline),訊息由上往下依序執行,訊息出現的先後順序也是由上往下。
Class Diagram
類別圖
類別圖是用來呈現軟體內的靜態關係,透過圖像化的方式,說明軟體系統是如何「兜」起來的。
在UML中,類別以分成數個區間的矩形表示,第一個區間呈現類別的名稱,第二個區間呈現屬性(Attribute),第三個區間則是操作(Operation)。而所謂的操作,從程式的角度,就是方法(Method)。
熱門新聞
2025-01-30
2025-01-31
2025-02-03
2025-02-03
2025-02-03
2025-02-03
2025-02-03