Enterprise Architect 8.0 註冊碼及其使用教程

來源:互聯網
上載者:User

 

註冊碼:{67SC0O95-SZPS-LIG2-YQ8Q-8D2N-KWTD-0W6R-TWDD-KT6RB-1J}

一、Enterprise Architect簡介

Enterprise Architect是一個對於軟體系統開發有著極好支援的CASE軟體(Computer Aided Software Engineering)。EA不同於普通的UML畫圖工具(如VISIO),它將支撐系統開發的全過程。在需求分析階段,系統分析與設計階段,系統開發及部署等方面有著強大的支援,同時加上對10種程式設計語言的正反向工程,專案管理,文檔產生,資料建模等方面。可以讓系統開發中各個角色都獲得最好的開發效率。

二、建立新項目

安裝好了EA漢化版後,啟動軟體。點擊“建立新的項目”,開啟建立新項目對話方塊。


【圖1】

這裡可以選擇各種的初始的模板包。


【圖2】

我們選擇了其中幾個,然後確定開啟了項目瀏覽器。我們的項目將從這裡開始了。


【圖3】

三、EA軟體配置

在使用軟體之前,我們先來對它進行配置。開啟“工具”–>“選項”。

【圖4】

常規配置中,比較重要的是作者這項。因為在EA項目的團隊協作中,作者是每個人的身份標識。

在代碼工程中,最好把檔案編碼設定成UTF8或者是GB中文。

其他方面的配置,因為都是中文的,也比較容易理解。有些不明的地方,可以多琢磨。

另外對於最下面的十種程式設計語言,可以根據自己的需要,進行一些配置。比如PHP,可以配置PHP4或者是PHP5,那麼產生的程式碼也是有些不同的。還可以隱藏其他沒有用到的語言。

四、使用案例圖,類圖的使用

使用案例圖(use case)

使用案例圖是我們做系統分析的通常第一步,是非常重要的。畢竟大部分的開發流程,都將需求分析作為首要步驟,也是必要步驟。將系統需求化作圖型表達出來。首先是在項目瀏覽器中,右鍵“添加”–>“建立圖表”。

【圖5】

然後可以加入一些角色和用例,在每次在工具箱裡面拉出一個元件,都將開啟這個元件的設定對話方塊,在對話方塊內填入元件的名稱等資訊。現在我們是表達一個使用者註冊和登入的情境:

【圖6】

加入關聯,使用案例圖中最常用的關聯是“使用use”,當然也經常會用到“包含include”“擴充extend”。這兩者的區別是“包含”是主用例沒有包含其他的輔助用例就不能獨立執行,但是主用例可以在沒有“擴充”其他輔助用例的情況也可以執行。比如說,註冊是“包含”了檢查驗證碼,但是不一定會“擴充”發送通知訊息這個用例。

角色是使用案例圖的行為基礎。雖然角色可以是某種職位的人,或是資料庫,或是外部系統互動介面,但是每個使用案例圖,都是以角色為開始的。角色可以有類屬關係。比如說註冊使用者同時也是網站訪問者,註冊使用者可以做一切訪問者可以做的事情,但是註冊使用者還擁有一些網站訪問者沒有涉及的功能,比如登入發文章之類。

【圖7】

類圖(Class)

類圖是代碼工程的基礎,同時也是系統設計部分的主體工作。類圖主要體現了系統詳細的實現架構。首先我們來製作一個實現使用者註冊功能的註冊業務類。

【圖7】

在產生類後,我們可以加入一些變數(在類元件上右鍵“變數”),變數主要將儲存類本身的一些資料,如同人的性別,年齡等資料特徵一樣。比如我們註冊類,也有資料連結的變數(它需要知道自己是和哪個資料庫打交道的),還可能有著每IP單日註冊數量限制的資料變數等等。

【圖8】

類還需要加入方法(在類元件上右鍵“方法”),比如說註冊類中,需要檢查輸入的驗證碼,需要進行資料操作,需要檢查單日註冊數量等等。在類的方法裡面,我們還可以設定每個方法的參數,參數類型,還有參數的備忘,這將在代碼工程內,直接作為參數和方法的注釋產生到代碼檔案內。

【圖9】

各個類之間,可能存在著一些關係,那麼我們使用關聯來表達這些關係。常用的有繼承關係(Generalize,或者叫衍生類別)。例如註冊的時候,我們可能有些特殊的註冊方式,比如接收了VIP卡號的人員註冊。VIP註冊比普通註冊多了一些步驟,比如驗證VIP卡號有效性等。這個VIP註冊類,就繼承於註冊類,擁有了全部普通註冊的功能,但是又有一些自己特有的功能,這樣就能體現了代碼的可重用性。同時在代碼產生的時候,會加上“extends”這個關鍵字來標識他們的關係。

【圖10】

五、其他圖形的使用

【圖11】

對象圖(Object),這是類圖的一種補充,主要是示範了系統中各個類,在不同的情境中,執行個體化之後所做的不同事情。

互動圖(interaction),共同作業圖表(communication)和時序圖(Timing),他們都是體現了系統中一些實體之間的互相互動的行為。共同作業圖表是側重與表達實體之間的協作互動,在新版的UML中,共同作業圖表也叫通訊圖,更能體現了實體之間是以通訊的方式來進行協作的原理。而時序圖是強調了各個實體件進行互動的前後順序。例如發送註冊成功的提示郵件,那麼是發生在註冊類檢驗輸入資料之後,而不能是之前。

另外,還有一些其他的圖形,比如狀態圖(State),部署圖(Deployment),元件圖表(component),活動圖表(Activity),這些請參考相關文檔。同時EA支援的圖形有非常的多,其中思維圖(表達和輔助了思維的思考過程),WEB模型圖(表現了網站上部署的模型結構)是最近幾個版本中才出現的。

六、資料建模

在資料模型圖表(Data Modeling)中,EA支援13種不同型號的資料庫建模,可直接產生建表SQL語句,同時也可以通過ODBC,匯入已存在的資料表結構。

【圖12】

下例我們建立一個學生宿舍人員組成的資料表,表類型使用的是MySQL。首先是建立了一個資料表元件,然後設定它的屬性。

【圖13】

加入欄位(表元件上右鍵“變數”),設定欄位的資料類型,長度,設成主鍵等。這裡可以使用中文作為欄位名,在“別名”處才寫上英文欄位名,在產生SQL的時候,選擇“使用可用的別名”就可以產生英文名稱的欄位名。

【圖14】

產生建表SQL,點擊資料模型的上級包,然後選擇“項目”–》“資料建模”–》“產生SQL代碼”,開啟產生SQL的對話方塊。

【圖15】

設定好了後,點擊產生,就可以產生了一個完整的SQL建表語句了。


【圖16】

七、代碼工程

代碼工程就是將已經畫好的類圖,使用EA來產生相應的代碼結構,之所以說是代碼結構,是因為產生的程式碼中,僅有初始的類結構和一些預設的值,類方法內部的代碼還是需要手動去寫的。另外,如果你在類的設定裡,或者是變數,方法還有方法的參數裡,加上了備忘,那麼,代碼工具將會協助你把這些備忘全部產生工整的代碼注釋。

使用之前的一個PHP類,選中右鍵“產生代碼”。然後彈出產生代碼的對話方塊。

【圖17】

設定後,點擊產生就可以產生了代碼結構了。

【圖18】

其他語言的代碼產生過程,也是大同小異的。代碼工程(正向工程)產生的代碼格式,可以在“設定”–>“代碼工程模板”裡面進行自訂的模板修改。

八、反向工程

反向工程是將原有的類庫代碼,使用EA進入匯入類結構,直接產生類圖。這在系統重構,或者是基於舊項目類庫製作新項目的時候,比較有用。

在項目瀏覽器,你要匯入反向工程類圖的位置,右鍵“代碼工程”–> “匯入源檔案目錄”,開啟反向工程對話方塊:

【圖19】

設定好後,點擊匯入。一小段時間,就能將一個類庫匯入了。以下示範的是匯入SpeedPHP架構1.5版本的類圖。

【圖20】

九、專案管理

在EA中,不僅能對整個軟體開發生命週期的支援,還提供了專案管理,例如人員的管理,進度管理,風險管理等。

菜單“查看”–>“專案管理”

【圖21】

這裡你可以分別管理“(人力)資源”,“工作”,“風險”,“度量”等幾個方面。

十、文檔產生

EA可以產生非常多種類型的文檔,以方便針對不同情況和不同閱讀對象,產生不同側重的文檔。還可以有RTF格式和HTML格式的選擇。

在項目瀏覽器中,選擇一個模型節點。然後右鍵“文檔”–>“RTF文檔”,開啟產生文檔對話方塊。

【圖22】

這裡可以產生多種類型的文檔。點擊“產生”。然後就會產生了一個RTF檔案。

【圖23】

預設產生的文檔,裡面有大部分的英文。當然,你可以將他們在RTF檔案中改寫成中文。另外還可以使用產生文檔對話方塊中的“詞語翻譯”,來進行對應的翻譯,再產生新的翻譯後的文檔。同時你也可以直接修改EA中的文件範本,這樣也可以產生自訂的文檔。

十一、其他功能

EA還提供了針對EA項目本身的版本控制(包括SVN,VSS等),一個小型的交流論壇,還有許多很有用的功能。這裡不一一講述。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.