This page looks plain and unstyled because you're using a non-standard compliant browser. To see it in its best form, please visit upgrade to a browser that supports web standards. It's free and painless.

Kenming's 軟體設計思維 會員登入 會員註冊

課程相關資訊:
http://www.hsdc.com.tw/course_signup/20081101_sa_sd_to_implement_by_cs_dot_net

【台北場】2008/11/01 起,每週六白天,每次上課為六個小時(AM 9:30~PM 4:30),共九個星期。
o 預定上課日期:11/01, 11/08, 11/15, 11/22, 11/29, 12/06, 12/13, 12/20, 12/27 。

*** 上一期(2008/06/14~08/09) 頗受好評的「系統分析設計與實作」課程完美告一段落,緊接著 HSDc. 團隊預定於 11/01 推出本年度第二期系統分析/設計課程,並且將實作內容部分(上一期為 Java/Spring)改為利用 C#.NET/LINQ Framework 實現,也期能服務利用 .NET 平台開發的軟體人員,能具有完整系統分析、設計至實作的觀念知識與技能。 (本課程均提供免費再次旁聽乙次的機會,所以學員可以一次付費,即可享有同時瞭解兩個平台(.NET/J2EE)的實作產出方式) ***

HSDc. 於 2008 年度推出了完整的系統分析、設計至實作的課程,期能協助軟體開發人員在現實的工作中,能瞭解完整的開發流程與各個角色的工作執掌與產出。在基於以架構為中 心來建立團隊具共識的整體觀下,能聚焦在適切開發單位的功能點內,快速地從需求分析導出到實作,找出並克服開發過程中,包括溝通、技能與技術等風險因子。 而後基於這樣的框架目標內,得以對系統的結構作重整,卻又不至於影響已有的功能前提下,得以對程式碼施以重構的技巧,讓系統更有延展度與彈性。

傳統系統分析與設計的課程,經常是「昧於現實」,將需求分析/結構設計與程式碼實作拉得太遠,而造成軟體設計與實作的不一致。殊不知,所謂的軟體塑 模與程式碼的實作必然是軟體系統的一體兩面,在軟體開發過程中,必然是要保持一致性,所以設計是要作精,而不是籠統的文件報告。關於文件,只是利用工具的 文件產出功能,將平時已確實所作的設計,產出美輪美奐的文件報表而已。不要為文件而文件,還去加班熬夜,傷了身體,又浪費生命在不必要的地方,實在沒有意 義。

還有系統開發與實作也不是「妥於現實」,利用 IDE 工具從 Web/Windows Form 直接連接資料庫的這種開發方式,只是讓軟體人員變得更笨,只要需求變動就導致牽一髮而動全身,系統是不會有任何的延展與彈性的。最起碼的一點設計良心,又 能處在國內嚴苛的環境中,對於短線時程的專案,先將系統的命脈—企業邏輯的核心,全給統籌集中在中間層,也就是企業邏輯層—先求有! 再來才是求好!— 待系統能確實上線,能滿足使用者的需求後,再則老闆與客戶對開發團隊有了信心,肯給予更多的資源—包括人跟錢,團隊的技能也有了增長與更好的溝通默契。外 在與內涵的條件均俱足下,就可以專致於對系統結構的重整,並對程式碼施以重構的技巧,而又不會影響既有的功能前提下,讓系統更具可重用性與延展性,甚而轉 成產品以服務更多同類型性質的客戶,又能快速的客製化每一個單位的特殊化需求。

基於這樣的理念,我們主張系統分析與設計是要「務實」,不是「昧於現實」,也不是「妥於現實」,而是在現實與理想中找到那一個平衡點。所以課程規劃 是分為兩個階段。第一個階段就是捕捉系統功能需求,快速設計,立即產出程式碼。重點就是要瞭解如何作好系統的需求分析與對應到程式碼的實作。本階段需要培 訓的技能有物件導向的基礎知識、從使用者角度看待系統時的外部功能分析,抓出適切的功能點開發單位、從畫面、中間層物件到連結資料庫的實作能力等。還有, 一定要配套的兩個設計措施,一為撰寫測試案例與功能測試程式碼,實現自動化的測試機制;另一為活用分析類別,先利用中間層的控制類別,集中與控管從畫面與 資料庫而來的企業邏輯。 第二個階段就是傳統系統分析所說的 SD(System Design), 傳統是以資料庫的 E-R(Entity-Relation) 分析,在物件導向則是稱為領域模型的建立—包括找出物件與適切的分派責任。這可不是一件容易的事,事實上應該說要具備的抽象能力要相當高,所以為何我們覺 得那種 SA->SD->PG 開發流程是不務實的,因為 SD 很難作得好,然後還要 PG 去等該階段的產出,又大部分是不正確,可以說是浪費開發資源與時間。程式碼可以直接反應功能的需求,但不一定要等結構分析,集中在控制控制類別的好處就 是,我們可以很容易地對結構作重整、對程式碼作重構,卻又不會影響既有上線的功能。本階段的重點當然就是對所謂結構的分析技能培養,我們會兩種方式,一為 從需求抓名詞的傳統方法、另一為揭露出以交易為核心的交易樣式,可以輕易地抓出一大串的企業元件。

總的來說: 作好功能需求分析-> 影響系統能不能做出來 ; 作好結構分析-> 影響系統有沒有彈性

觀念的傳授、設計的圖形化塑模表達、程式碼的實作三層次,是我們對於系統分析設計與實作課程的基本原則與態度。修習本次系統分析的學員們,也可以拿 到完整的教材、完整案例的 Model 檔與實作程式碼的對應。程式碼是以 C#.NET 再搭配最夯的 LINQ Framework,當然,要直接對應 .NET 的實作程式碼,那也是相當直覺不是難事。我們期能讓學員們上完課後,能以我們所提供的案例,包括設計模型與程式碼,當成範本而可以應用於工作實務上,甚而 可以創造所屬自己的 "Pattern"。 HSDc. 軟體開發團隊,關心每一位軟體人員的持續成長...。

--------------------------------------------------------------------------------------------------------------
§報名資訊:

授課日期:
 o 2008/11/01 起,每週六白天,每次上課為六個小時(AM 9:30~PM 4:30),共九個星期。課後並留半個小時供學員自由提問。
 o 預定上課日期:11/01, 11/08, 11/15, 11/22, 11/29, 12/06, 12/13, 12/20, 12/27 。
 o 遇國定假日或颱風等因素,則延至下一週上課日(本中心會主動通知學員),以此類推。

o 由於本站線上報名系統尚未測試啟用,煩請報名學員填寫下列資料報名 (下列欄位前為 * 者請務必填寫),並以 Email 寄至: service.hsdc@gmail.com
  -------------------------------------------------------------------------------------
  * 姓名:
  * 電子郵件:
  * 聯絡電話:
  任職公司與職位:
  備註(請填上如 ATM 轉帳帳號(後五碼即可)與新生或舊生等資訊):

  -------------------------------------------------------------------------------------
 o 報名經確認後,本站即會寄送確認通知信給報名學員。
 o 報名系統分析與實作班學員,請先以 ATM 轉帳預約費用($1000),並請於報名表備註欄位內,註明您的轉帳帳號末 5 碼與轉帳金額。
 o ATM 轉帳帳號: 新光銀行 (103) 帳號: 0772-50-100979-9
 o 本課程上課學員需滿 20 人以上,若未達上課人數則延期至下一梯次開課,已報名學員,本中心會電話通知,並主動辦理退費(或可保留至下一梯次)。

 授課地點:
  o 開羅會議中心,地址:台北市光復南路65號B2 (光復南路、市民大道交接口)。
  o 參考交通與地圖。 http://www.hsdc.com.tw/education/cario_map

 §課程費用:
  o $14800 (含稅)。 (同等課程原價學費為 $25,000 以上)
  o 曾經上課過本公司的「單元系列課程」學員,優惠 $12800 (含稅)。 (請記得註明為舊生,本公司查詢確認即以優惠算)
  o 三人同行,或同時報名另一單元課程,亦比照舊生的優惠折扣,每位只需$12800 (含稅)。
  o 曾於上一期上課的學員,仍可以免費旁聽本期課程。 (保留 9 名學員名額,並請攜帶原上課講義。)
  o 大學/研究所 資訊相關科系講師、助教或教授,出示相關證明,我們會以建教合作方式計費。(請另以電話聯絡)
  o 清貧或由家扶中心推薦,能出示相關證明,所有費用 免費!!
--------------------------------------------------------------------------------------------------------------

§課程名稱:系統分析設計與實作—活用 UML 塑模 與 C#.NET (54 Hrs)

§課程簡述:

o 本課程引導與協助學員先對系統開發流程有全貌的認識,並傳授軟體設計必備的基礎功夫,然後才去瞭解如何利用 UML 表達設計思維,從系統外觀與結構等各個構面產出有效的設計。並強調馬上就可以從設計導出符合 .NET 的實體三層式架構,並利用 LINQ 實際連結資料庫;利用 DataSet 實現虛擬 DB的設計,開發出高品質的 Enterprise 系統。快速產出程式碼(包含功能測試碼)的目的在於可以應付專案的交付,並且可以提昇團隊的信心(眼見為憑),然後在第二個開發的循環 (Iteration),將程式碼重構,專注在系統的結構重整,而得以讓整體系統俱足彈性、延展性與可重用性。
§課程特色:

 1. 帶領學員實際走過(實戰練習與操作)兩個開發循環(Iteration):
   o #1. 從使用案例規劃控制類別,並繪製循序圖表達參與者與系統的互動,快速產出程式碼 — 實現系統功能,提昇團隊信心。
   o #2. 重構程式碼,活用設計樣式(design pattern),專注核心結構設計 — 讓系統的結構更有彈性。
 2. 贈送電子教學光碟:
   o 讓學員可以帶回家,透過自動安裝方式,即可擁有實際的開發平台與應用系統。
   o 包含了 EA(試用版) UML 工具/Visual C# 2008 Express/SQL Express ...等開發工具, 以及具體可執行的應用程式與原始程式碼。
 3. 提供完整的案例研討(Case Study),自然又流暢地整合:
   o 開發流程,包含了各階段的設計產出(artifacts)與文件。
   o 系統分析與設計 — 提供 UML Model 檔。
   o 應用程式的實作與部署 — 提供每一層(tier)的原始程式碼。
 4. 本課程均保留與提供了學員免費再旁聽乙次同樣課程的權利,以一次低廉的收費,就可以擁有兩次上課的收穫,課程的師資、內容與品質,我們有信心是不會讓學員們失望的。

§課程目標:
 1. 讓你瞭解:
   o UML 2.0 設計圖的設計意涵與應用。
   o 軟體設計必須修練的哲理,包括物件與類別、封裝、介面與多型等觀念。
 2. 讓你知道:
   o 軟體開發流程的全貌,包括了開發人員的角色與職責,以及各階段的實際產出。
   o 如何利用 RUP 流程框架,制訂敏捷式(Agile)的開發流程,來找出適合自己團隊性格的流程。
 3. 讓你活用:
   o UML 三劍客,包括表達系統需求與功能的使用案例,表達系統靜態與動態結構的類別及循序圖。
   o 只要能寫好使用案例,就可以確保直接快速產出程式碼。
   o 如何利用正反向工程,來保持 Model 與程式碼的一致性。
 4. 讓你學會:
   o 如何應用 .NET Framework 在 Enterprise 3-tier 的整體架構設計,包括:
    o 如何利用 ASP.NET 設計 Web UI 程式。
    o 如何設計 DAO 永續性物件,並利用 LINQ 連結 SQL Express 資料庫。
    o 如何利用 C#.NET 設計控制與企業物件。
   o MVC 層次分明的物件合作與連結 — 從 Web 至 Middleware 至 Database。
   o 如何善用 EA UML 塑模工具與 Visual C# 2008 Express IDE 工具的整合。
   o 如何作好驗收測試,包括撰寫測試案例與利用 NUnit 撰寫功能測試碼。

§使用工具:
 o EA(Enterprise Architect) 7.1(Trial) UML Tool、 Visual C# 2008 Express(Free) IDE、SQL Express 資料庫(均會附於教學光碟內)。

§授課講師:
 o 賴信仁(Ringle Lai)、王克明(Kenming Wang)、宋敏如(Cathy Sung)、鄒順安(Steve Tsou)。
 o 擅長以非常淺顯易懂的比喻及說明,將複雜的系統抽絲剝繭,重新釐清脈絡,讓學員一清二楚,並善於引導學員具備設計應有的反思能力。

§適合學員:
 o 系統分析/設計(SA/SD), PM, Programmer 等在職軟體開發者。
 o 學校資訊講師/在學相關資訊科系學生。
 o 學員最好有基本的程式設計能力(基本即可)。

【課程大綱】

§ Iteration #1 (33 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 的十三種圖形
  o Flash 操作錄影檔(附於教學光碟內),導引 UML 工具繪製 UML 圖的步驟

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

三、需求面的功能分析設計—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 利用類別圖 (Class Diagram)設計與創建 Use Case 控制物件,以實現使用案例的功能需求
  o 利用循序圖 (Sequence Diagram)表達程式碼物件的互動設計
 o 利用 EA "Code-generation" 功能產出控制物件的程式碼框架
 o 測試先行—在 IDE 工具內撰寫該控制物件的測試程式碼
  o 利用虛擬碼(Pseudo Code)撰寫程式碼內部的細節
 o 實際執行應用程式碼的部署與執行功能測試
 o 利用 EA 反向工程功能,在 IDE 環境內修改程式碼,並反轉(Reverse)回 UML Model

四、案例分析與實作 - Iteration #1 (6 hrs)
 o 利用 EA UML 工具
  o 實做使用案例模型(Use Case Model)、類別圖、循序圖
  o 利用 Code-Generator 機制,產出 C#.NET 程式碼框架
 o 設計控制 (Control)物件,實現使用案例所交付的功能需求
  o 利用 DataSet,成為 UI 與控制物件 間的參數傳遞型別
  o 利用 DataSet,實現虛擬DB (Virtual DB)的設計觀
 o 利用 Visual C# 2008 Express IDE 撰寫
  o ASP.NET Web 表單
  o 控制(Control) 物件 by C#.NET
  o 利用 NUnit 撰寫功能測試程式碼

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

一、軟體結構面的分析與設計 (12 hrs)
 o 建構領域至物件模型的技巧與方法
  o 從使用案例的敘述中找出潛在的概念物件。
  o 運用交易樣式(Transaction Patterns)找出核心交易物件
 o 資料庫表格的設計
  o E-R (Entity-Relationship) Model 的分析與設計
  o 利用 EA UML 工具設計 E-R 圖,並轉為可以匯入資料庫的 DDL SQL 敘述檔
 o 企業物件的設計
  o 物件的責任分派(responsibility assign) — 屬性與行為的分析
  o 利用 UML類別圖 建構領域的物件模型 (Business Object Model)
 o 活用設計樣式(design pattern)
  o 合成(composite)樣式的設計 — BOM 表的最佳呈現
  o Facade and Adapter 樣式,表達在 Control and Boundary 物件的設計原則
 o 分析類別(Analysis Class)的設計
  o Control 物件
  o Entity (Business)物件
  o Boundary 物件

二、程式碼的重構 (12 hrs)
 o 程式碼重構的設計原則
  o 利用委託(delegate)的技巧,確實釐清物件的責任分派 (Responsibility Assign)
 o 分析類別在 中間層 (Middleware) 的實現
  o 實現 Controller by C#.NET
  o 實現 O-R Mapping by LINQ
  o 實現 企業物件 by C#.NET
 o 連結實體資料庫
  o DAO(Data Access Object) 物件的設計
  o 利用 LINQ 實現 O-R Mapping 機制
 o 控制物件, 企業物件, DAO 物件 三者的職掌與相依性分析
  o 控制物件連結 DAO 物件
  o 控制物件連結 企業物件
  o 企業物件連結 DAO 物件
  o DAO 物件透過 LINQ 連結外部資料來源(RDB, 檔案, ...)

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

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

推一下下個月 HSDc. 所推出新規劃的實務性操作課程 (以 Java/Spring 程式碼為重心),焦點是擺在以中間層為首要開發的模式,然後設定每一個階段的目標及開發產出 (每一個階段產出都個別儲存起來)。 可以讓學員看到每一個階段 "具體" 的 Model 與 程式碼的對應,並可以成為範本,直接方便應用在工作實務上。


各位好:

課程名稱; 「Enterprise Java/Spring 實作導引與範例詳解」
課程相關資訊: http://www.hsdc.com.tw/course_signup_20080920_enterprise_java_spring_practice

【台北場】09/20,21,27 (星期六、日、六),每次上課為六個小時(AM 9:30~PM 4:30)。

§課程說明:
系統的延展性設計,是知道不能把企業最重要的命脈—企業邏輯 (Business Logic),給實現在 UI 層或 資料庫的 stored-procedure;前者因為 UI (尤以 Web-based)的技術時常在變,而後者則是導致資料庫系統無法抽換(成本、分散等考量)的元兇。 所以,最基本的軟體開發態度,必然會實現 MVC (Model-View-Control),所謂三層式 (3-tier)架構的實體框架,然後將企業邏輯集中並實作在中間層 (Middle-tier)的物件。先不論是功能性的控制物件,抑或本質性領域的企業物件,反正就是必然要先集中在中間層,並以最單純的語言機制,如 Pure Java or .NET 語言來實現,如此才不致因廠商所制訂的規格的變動而跟著變動。

而關於系統的彈性度設計,則是因諸多功能性服務,經常會共用到某些企業邏輯,所以會把從原來置於控制性物件的邏輯,分派 (delegate)至處理該邏輯的企業物件上。這是屬於物件責任分派的議題,會影響到的是,當需求的變動時,能把變動的震盪影響,給侷限在某一小塊範圍 之內,而不致「牽一髮而動全身」。

本次的課程內容,80% 著重在實作的導引上,藉由透過每個階段的程式碼範例,從行動中來展現上述的理念,與設計的成果。

透過課程中所提供從使用案例 (Use Case)的案例陳述,來導引「程式碼」的開發實作:
 1. 為每一個使用案例設計控制類別,並從 EA UML 工具 Code-Gen 至 Eclipse。
 2. 利用循序圖表達 UI, 控制類別, 資料庫 三者的訊息互動。
 3. 為每一個控制類別撰寫功能測試程式,以驗證功能的正確與完整性。
 4. 設計 DAO 類別,實現 Spring DAO 框架,並展示 JDBC 與 Hibernate 的實作,連結資料庫(HSQLDB and MySQL)。
 5. 利用 Struts(or JFS) Web UI,以及 Swing UI,來展現不同 UI 類型,連結控制類別取得相同的服務。
 6. 讓控制類別展現延展性,利用委派 (Delegate)的技巧,連結企業物件,取得運算邏輯結果。

§課程特色:
 o 將程式碼的開發,分為多個階段,每個階段均有明確的 "階段達成目標", "開發產出", "操作步驟(Step by Step)。
 o 每一個階段的開發產出,包括程式碼與設計模型檔,均會儲存在個別的目錄,讓學員可以很清楚地針對各個階段的產出來研究與實作練習。
 o 每一個階段的實作,講師會親自於課程中示範操作,並針對每一個步驟講解。(學員於課前先行透過所附教學光碟練習,再於課堂中提問,效果更好)
 o 所內含的 UML Model 檔與原始程式碼,可成為開發上的範本,均可以供學員應用在工作實務上。

--------------------------------------------------------------------------------------------------------------
§報名資訊:
由於本站線上報名系統尚未測試啟用,煩請報名學員填寫下列資料報名 (下列欄位前為 * 者請務必填寫),並以 Email 寄至: service.hsdc@gmail.com
  =====================================================================================
  * 姓名:
  * 電子郵件:
  * 聯絡電話:
  任職公司與職位:
  備註(請填上如 ATM 轉帳帳號(後五碼即可)與新生或舊生等資訊):
  =====================================================================================
 o 為確保報名足額人數,煩請先以 ATM 轉帳預約費用($500),並請於報名表備註欄位內,註明您的轉帳帳號末 5 碼與轉帳金額
  (若實在不及轉帳者,仍可現場報名,但請在報名表內註明)。
  ATM 帳號: 新光銀行 (103) 帳號: 0772-50-100979-9
 o 報名經確認後,本站即會寄送確認通知信給報名學員。
 o 本課程上課學員需滿 20 人以上,若未達上課人數則延期至下一梯次開課,已報名學員,本中心會電話通知,並主動辦理退費(或可保留至下一梯次)。
--------------------------------------------------------------------------------------------------------------

--------------------------------------------------------------------------------------------------------------
§課程名稱: Enterprise Java/Spring 實作導引與範例詳解 (18 Hrs)
§授課日期:
 o 2008/09/20,21,27 (星期六、日、六),每次上課為六個小時(AM 9:30~PM 4:30)。課後並留半個小時供學員自由提問。
§授課地點:
 o 開羅會議中心,地址:台北市光復南路65號B2 (光復南路、市民大道交接口)。
 o 參考交通與地圖。 http://www.hsdc.com.tw/education/cario_map
§使用工具:
 o EA(Enterprise Architect) 7.1(Trial) UML Tool、JDK 1.6、Java Eclipse IDE、TomCat Web Server 。
 o 所有需要使用到的工具(包括上述所提)、應用程式,以及原始碼、UML Model檔等,均會附於教學光碟內。
§授課講師:
 o 賴信仁(Ringle Lai)、王克明(Kenming Wang)、鄒順安(Steve Chou)。
 o 擅長以非常淺顯易懂的比喻及說明,將複雜的系統抽絲剝繭,重新釐清脈絡,讓學員一清二楚,並善於引導學員具備設計應有的反思能力。
§適合學員:
 o 系統分析/設計(SA/SD), PM, Programmer 等在職軟體開發者。
 o 學校資訊講師/在學相關資訊科系學生。
 o 學員最好有基本的程式設計能力(基本即可)。
§課程費用:
 o $5,800 (含稅)。
 o 曾經上課過本公司的「單元系列課程」學員,優惠 $5,200 (含稅)。 (請記得註明為舊生,本公司查詢確認即以優惠算)
 o 三人同行,或同時報名另一單元課程,亦比照舊生的優惠折扣,每位只需$5,200 (含稅)。
 o 大學/研究所 資訊相關科系講師、助教或教授,出示相關證明,我們會以建教合作方式計費。(請另以電話聯絡)
 o 清貧或由家扶中心推薦,能出示相關證明,所有費用 免費!!

--------------------------------------------------------------------------------------------------------------
【課程大綱 — 18 Hrs 課程】

※ Code Engineering— 實現 EA 與 Eclipse 的正反向工程
 o 設計控制類別(Class),實現使用案例(Use Case)的需求陳述。
 o 設計循序圖,表達 UI 表單, 控制物件, 資料庫 的訊息互動。
 o 利用 EA UML 工具,轉出控制類別的程式碼框架至 Eclipse 。
 o 修改控制類別的程式碼結構,並反轉(Reverse)回 UML Class Model。

※ 中間層類別的開發實作
 o 建立可以完整開發 Spring Framework 的 Eclipse 專案。
 o 建立 Eclipse 與 EA 同步(Synchronize)的管道 (Class Model 與 程式碼的同步)。
 o 撰寫與修正 控制類別 的實作細節。
 o 利用 JUnit 測試框架,撰寫控制類別的功能測試 (Functional Test)程式碼。
 o 實現使用案例內的例外陳述,撰寫企業層級的例外處理 (Exception Handeling)程式碼。

※ 連結資料庫
 o 利用 EA 設計資料表格的 DDL (Data Definition Language) 陳述文字檔。
 o 建立測試用的資料庫 (利用 HSQLDB),執行 DDL SQL 敘述。
 o 透過 Spring DAO 框架連結資料庫。
  o 利用 JDBC 的實作方式
  o 利用 Hibernate 的實作方式

※ UI 表單的設計
 o Web 端 UI 的實作 by Struts。
 o Stand-alone 的 UI 實作 by Swing。
 o 利用上述不同型態的 UI 連結控制類別,並展現系統所提供的服務。

※ 程式碼的重整
 o 利用委派 (Delegate)的設計技巧,將企業邏輯從控制物件分派給企業物件,讓物件的責任更清晰。
 o 利用多型 (Polymorphism)的技巧,設計 一般化-特殊化 的企業物件,讓程式碼更易於維護與有彈性。

High-quality Software Design Consultant Team.
Email: service.hsdc@gmail.com
TEL:(02) 2722-7179
軟體專業設計: http://www.hsdc.com.tw

OV-5 — Operational Activity Model,可說是等同於傳統的企業的業務流程 (Business Process)描述, 在經由一連串的操作 (Operation)所組成的工作流程 (Workflow)後,以履行某一個業務標的或任務 (Mission)。

OV-5 的表達可說是幾乎與 UML 活動圖表達一般,它會描述在諸多活動之間包括 性能 (capibility), 活動 (activity, 或稱為工作, task), 輸入/輸出流 (I/O Flow)等資訊。

為了呈現某一連串活動所組成的活動圖,其目的為何,則可以利用企業層級的使用案例 (Business Use Case)來表達。

OV-5 精要 (Essential):

  • 利用企業層級的使用案例圖 (Business-level Use Case Diagram) 表達系統的規劃範圍。(本範例為 JFC 系統,亦即將聯合作戰指揮部當作系統)
  • 從使用案例可以看出:
    • 系統觸發事件的主要參與者 (primary actor),與系統的支援性參與者 (supporting actor)。
    • 系統所提供的服務 (service),每一個系統服務即為一個使用案例 (use case)。
  • 區分系統 「內」 與 「外」 時的好處在於:
    • 外部觀點即為功能性的需求分析,是站在外面看待如何 「用」 系統。
    • 內部觀點則著重在系統內部的組成結構元素,一般即以所謂物件導向的分析設計思維。
  • dodaf_ov5_business_usecase
    圖 1、OV5 - Business Use Case (點擊圖可察看原圖)

  • 作業活動圖 (Operational Activity Diagram)的重點在於表達什麼人(角色, role),在什麼時候,做什麼樣的事情(活動, activity),以及這些活動之間的流程關連。
  • 本張視圖的關鍵為呈現 「整體性的業務流程 (business process)」。
  • dodaf_ov5_operational_activity_model
    圖 2、OV5 - Operational Activity Model (點擊圖可察看原圖)

※延伸參考
 o DoDAF 案例規劃與演練《1》 — OV1(高階概念視圖)
 o 聊聊 DoDAF/MoDAF 規格與實作議題

HSDc. 所舉辦的「軟體設計鮮思維」已邁入第四個年頭... 至今已舉辦了十九次,每次均有 2~3 個場次。
第 20 次的研討會,確定於 08/30 (星期六) PM13:20 舉辦。本次研討會的主題為「DoDAF 介紹與實例演練」。

報名與詳細講座資訊請參考: http://www.hsdc.com.tw/hsdc_20th_seminar

DoDAF(Department of Defense Architecture Framework),是美國國防部軍方的規格。其目的旨在規範承包包括武器、資訊技術系統等的外包廠商,透過多個層次的角度(Multiple Views),能夠以標準化、一致性,來組織包括企業架構(Enterprise Architect),以及系統架構(System Architecture,這裡意指資訊系統),而能有具標準、一致性、多層次的設計視圖與文件等符合軍事要求的規格。

本次研討會的重點,即藉由 DoDAF 規格,來探討大型系統是如何作架構規劃的,包括軍事領域的聯合作戰指揮系統、以及政府單位防救災系統的架構規劃等,均有 "多個節點(Node)、多個資訊系統(Information System)" 這樣的特性。

DoDAF 探討的是大格局的巨觀(Macro View)架構思維,而導致諸多專研該規格的資訊人員視其為 "潘朵拉密盒",不知該如何橋接至實作階段。 事實上,對於大型架構的巨觀,或者單一系統的微觀(Micro View),所需具備的只是物件導向的分析思維的基礎功夫。 本次研討會就揭露出如何從巨觀的架構,橋接至微觀的實作階段,包括符合 DoDAF 的 UML Model 檔(利用 EA+DoDAF Plugin),以及利用 ASP.NET + C#.NET 所展示出驗證 DoDAF 架構的程式碼,都讓參與研討的學員們帶回去,可說是相當具參考性的範本。

同時參加研討的學員們所拿到的光碟內容內,包括歷屆研討會所有簡報內容(2005/2006/2007)、UML 操作錄影檔、EA/Case Complte 等試用版、UML OCUP 模擬試題... 等,相當物超所值。

參考:DoDAF 介紹與案例
http://www.kenming.idv.tw/index.php?title=dodaf_ai_af_eb_a_e_af_cmaalt_1g_a_ov1_el&more=1&c=1&tb=1&pb=1

----------------------------------------------------------------------------------------
 o 採現場繳費方式,NT$400。 (現場贈研討會光碟)
 o 由於本站線上報名系統尚未測試啟用,煩請報名學員填寫下列資料報名 (下列欄位前為 * 者請務必填寫),並以 Email 寄至: service.hsdc@gmail.com
  =====================================================================================
  * 姓名:
  * 電子郵件:
  * 聯絡電話:
   任職公司與職位:
   備註:
  =====================================================================================
 o 報名經確認後,本站即會寄送確認通知信給報名學員。

***
請注意,由於需要保留及計算報名學員們的座位,請確定會前來參加後才填寫報名單,若不克前來,也請於報名表單或來信取消報名。若報名人數尚未滿額(每場人數以 75 人為限),不及報名者,若尚有名額,仍可以現場報名。
----------------------------------------------------------------------------------------

§講座主題:
 3. 從 DoDAF 看大格局的架構設計 -- Kenming Wang
  o DoDAF(Department of Defense Architecture Framework) 介紹
  o DoDAF 架構分析的精要與技巧
  o 案例規劃與演練
   o 案例描述與架構規劃
   o Operational View 的產出介紹 (OV1 ~ OV6)

 2. 「企業架構與 DoDAF 的介紹」-- Cathy Sung
  o 企業架構(Enterprise Architecture)簡介
  o EA、SA、LOBs (Line Of Business)之關聯
  o EA 之DoDAF簡介
  o EA與PM之互動模式介紹

 3. 「從 DoDAF 的系統觀點到實做程式」-- Ringle
  o DoDAF 的 System View簡介
  o 利用 SV-4 描述系統的功能性需求並找出系統節點
  o 利用 SV-1 描述系統節點間的介面呼叫關係
  o 利用 SV-2 描述介面的詳細規格
  o 利用 SV-3 與 SV-5 描述系統節點間的關係,並結合 Operational View
  o 從 SV-4 到實現使用案例
  o 利用 SV-2 作為測試案例的基礎
  o 完整案例 Demo (附可執行 C#.NET 原始碼)
----------------------------------------------------------------------------------------

§時間:2008/08/30 (星期六) PM13:20 ~ PM 17:00 (三個小時的講座時間,並留半小時供學員提問與研討)
§對象:對軟體設計與架構規劃議題有興趣者,包括 軟體架構師、SA/SD/PM ,以及專研 DoDAF 規格的人員等。
§地點:開羅會議中心,台北市光復南路65號B2 (光復南路、市民大道交接口)。 請參考交通與地圖。
§主辦單位:HSDc 軟體設計顧問中心。
§講師:賴信仁(Ringle Lai)、宋敏如(Cathy Sung)、王克明(Kenming Wang)。

§備註:
 o 本次講座預計開放 60 個名額。(額滿即停止報名)
 o 因上課人數眾多,恕不直接提供列印教材,本次講座會直接附送「講座教材及示範操作光碟」等。教材內容並於講座前兩日公布於 HSDc. 網站,學員可自行列印講座教材。
----------------------------------------------------------------------------------------

High-quality Software Design Consultant.
TEL: 02-27227179
service.hsdc@gmail.com
軟體專業設計論壇: http://www.hsdc.com.tw