【課程通知(06/14)】系統分析設計與實作—活用 UML 塑模 與 Java (54 Hrs)

*** 這一次的系統分析課程,是特別經過 HSDc 團隊精心特別設計的,其目的旨於不要讓所謂的系統的需求分析,以及結構設計,與實做的程式碼脫勾。分析與設計絕對是務實的,是要能平衡現實的一面(快速實做出來),與往理想的另一面(持續讓結構演化重整,捉出最穩定的元素)。

『系統分析設計與實作—活用 UML 塑模 與 Java (54 Hrs)』 已確定於本星期六(06/14)在「開羅會議中心」開課。目前尚有名額,歡迎有志於學習完整系統分析與實做的學員們踴躍報名。

本課程的編排是有別於傳統一般系統分析(Top-Down 瀑布式作法,無法有效結合實做),採兩階段的漸增與循環(Iteration)的階段目標開發方式,先求有— 做好需求分析、快速實做、產出程式碼、符合實體三層(3-tier)架構、瞭解系統面的必備技術; 再求好— 軟體結構面的分析設計重整,與程式碼的重構(Refactoring)、確實捕捉領域的概念,成為軟體的主結構企業元件。

報名資訊請參考請至:
http://www.hsdc.com.tw/course_signup/20080614_sa_sd_to_implement_by_java

o 由於本站線上報名系統尚未測試啟用,煩請報名學員填寫下列資料報名 (下列欄位前為 * 者請務必填寫),並以 Email 寄至: service.hsdc@gmail.com
  ————————————————————————————-
  * 姓名:
  * 電子郵件:
  * 聯絡電話:
  任職公司與職位:
  備註(請填上如 ATM 轉帳帳號(後五碼即可)與新生或舊生等資訊):
  ————————————————————————————-
 o 報名經確認後,本站即會寄送確認通知信給報名學員。
 o 為確認上課人數,以便教材印製,煩請先以 ATM 轉帳預約費用($1000),並請於報名表備註欄位內,註明您的轉帳帳號末 5 碼與轉帳金額。 ATM 帳號: 新光銀行 (103) 帳號: 0772-50-100979-9

課程介紹
http://www.hsdc.com.tw/course_introduce_sa_sd_to_implement_by_java

※ 課程大綱參考

——————————————————————————————————————–
§ Iteration #1 (36 hrs)
o 課程階段目標: 捕捉系統功能需求,快速設計,立即產出程式碼

一、軟體開發方法論—開發流程與塑模 (6 hrs)
 o 開發模式的介紹
  o 瀑布、循序的典型開發模式
  o 漸增(Iteration)與漸進(Incremental)的主流開發模式
  o 主流開發流程的簡介 — RUP/XP/AGILE
 o 簡介專案開發的工作流程
  o 專案中各個角色人員的工作執掌
  o 專案中各個階段的產出(artifacts)介紹
 o 軟體開發的最佳實務
  o 以架構為中心(architecture centric)的開發
  o I&I(Iteration and Incremental) 漸增與漸進
  o 視覺化的方式設計軟體模型 (Visually Model Software)
  o 需求的變動管理與持續驗證軟體的品質
  o 侷限與收斂軟體的變動性
 o 軟體塑模— 統一塑模語言(UML, Unified Modeling Language)的綜觀介紹
  o 利用完整案例導引來介紹 UML 的十三種圖形

二、物件導向觀念養成與應用 (6 hrs)—觀念、模型與程式碼的三面表達
 o 介紹「概念(concept)」與「抽象(abstraction)」的觀念
 o 確實瞭解「類別(class)」與「物件(object)」的區別與關係
  o 結合(association)、組合(aggregiation)與
   一般-特殊化(generalize-specialize)關係的說明
 o 封裝(encapsulation)與多型(polymorphism)的設計觀與應用
 o 瞭解繼承(Inheritence)與介面(Interface)」的設計原理
 o 程式碼範例—
  o 利用 Java 程式碼表達類別的結構關係(結合,組合,一般-特殊化)
  o 利用 Java 程式碼呈現介面與多型的設計實作

三、需求面的功能分析設計—Modeling by UML 三劍客 (15 hrs)
 o 建構使用案例模型,實現企業流程的需求
  o 利用使用案例圖表達系統的功能需求
   o 如何界定系統範圍(System Boundary)
   o 如何找出使用案例與參與者(Actor)
   o 使用案例之間的關係— include and extend
   o 利用使用案例圖表達架構觀點
  o 從表達企業流程(Business Process)的活動圖導出到使用案例圖
  o 使用案例敘述(Description)的寫作實務
   o 如何寫出高品質的使用案例敘述
   o 如何依據使用案例範本完成使用案例敘述的撰寫
   o 如何表達正常、替代、擴充與例外事件流程的敘述
   o 寫好每一條動作步驟陳述的要領
  o 針對每一個使用案例,撰寫測試案例 (Test Case)
  o 利用 EA “Document Generation” 機制產出美輪美奐的需求報表文件
 o 使用案例的實現(Realization)與實作(從使用案例到循序圖到產出程式碼)
  o 利用類別圖設計與創建 Use Case 控制物件,以實現使用案例的功能需求
  o 利用循序圖表達程式碼物件的互動設計
 o 利用 EA “Code-generation” 功能產出控制物件的程式碼框架
 o 測試先行—在 IDE 工具內撰寫該控制物件的測試程式碼
  o 利用虛擬碼(Pseudo Code)撰寫程式碼內部的細節
 o 實際執行應用程式碼的部署與執行功能測試
 o 利用 EA 反向工程功能,在 IDE 環境內修改程式碼,並反轉(Reverse)回 UML Model。

四、實做面 by Spring Framework (9 hrs)
 o Spring Framework 綜觀介紹
  o 輕量級(light-weigh)的應用系統容器架構介紹
  o Spring 在實體 3-tier 的角色定位與架構設計
  o Spring 重要特性介紹,包括 IOC與相依性關係、Domain-driven 的設計設計觀
 o 利用 JSF(Java Server Faces) 實做 Web Form
  o 將 UI 與企業邏輯確實分離的基礎設計觀
  o Web 表單連結至中間層控制物件,實現 MVC 設計樣式
 o 利用 Hibernate 實現永續性機制
  o Hibernate 設定與實作
  o HQL 語法與 O-R Mapping 原則
 o 從中間層控制物件連結資料庫
  o 利用 EA 快速建構資料庫表格
  o 利用 Java 撰寫程式碼 (從控制物件透過 Hibernate 連結 DB)

五、案例分析與實作 – Iteration #1 (實做部分涵蓋於上述課程內)
 o 利用 EA UML 工具
  o 實做使用案例模型(Use Case Model)、類別圖與E-R圖、循序圖
  o 利用 Code-Generator 機制,產出程式碼框架
 o 利用 Java Eclipse IDE 撰寫
  o JSF Web 表單
  o Java 控制(Control) 物件 by Spring
  o Java 資料存取物件(DAO) by Hibernate
 o 利用 JUnit 撰寫功能與單元測試程式碼
 o 應用程式的部署(Deploy) – JBoss Application Server

§ Iteration #2 (18 hrs)
o 課程階段目標: 重構程式碼與類別結構,讓系統更有彈性。

一、軟體結構面的分析與設計 (12 hrs)
 o 運用交易樣式(Transaction Patterns)找出核心交易物件
  o 從使用案例的敘述中找出潛在的概念物件。
  o 利用 Peter Coad 的交易樣式(transaction pattern)
  o 利用 UML類別圖 建構領域的物件模型
  o 從類別圖產出資料庫表格,並利用 EA 部署至資料庫
 o 物件的責任分派(responsibility assign) — 屬性與行為的分析
 o 活用設計樣式(design pattern)
  o 合成(composite)樣式的設計 — BOM 表的最佳呈現
  o Facade and Adapter 樣式,表達在 Control and Boundary 物件的設計原則
 o 進行分析類別(Analysis Class)的設計
  o Control 物件
  o Entity (Business)物件
  o Boundary 物件

二、程式碼的重構 (6 hrs)
 o Java Spring 的進階設計觀
  o IOC 與 相依性的分析。
  o Domain-driven 的設計原則。
  o AOP 對非功能性需求的 crosscut(橫切) 與 Concern(考量)的設計觀念。
 o 分析類別在 Middleware 的實現
  o 實現 Controller by Java Spring
  o 實現 O-R Mapping by Hibernate
  o 實現 企業物件 by POJOs(Plain-old Java Objects)
 o 利用委託(delegate)的設計原則,從控制類別分派責任給企業物件

三、案例分析與實作 – Iteration #2 (實做部分涵蓋於上述課程內)
 o 利用 Eclipse 重構程式碼結構
 o 利用 EA 更新類別與E-R圖,並重新部署 DDL DB Schema 至 MySQL DB 內
 o 利用 EA 實現正反向工程,達成程式碼與 Model 的同步
 o 利用 Iteration #1 所撰寫的測試碼驗證與修正被重構的程式碼

§ 整體開發流程總複習
 o 檢視兩個循環(Iteration)開發所各自產出的設計圖與程式碼
 o 回顧每一個流程開發階段的產出與所運用的設計、技術與技能
 o 學員課程中的問題提問與回答總整理

文章導覽

   

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *