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 軟體設計思維 會員登入 會員註冊

這一份 EA (Enterprise Architect) 與 Visio 的比較表,是由我們 HSDc. Cathy 小姐找了許多資料,用心所整理出來的功能比 較表。

EA 怎麼會與 Visio 來作比較? 其實這是國內某大銀行 IT高級主管所要求的,必須附在產品採購內的評估報告。

一開始的直覺是,這兩樣能作比較嗎? Visio 算是一種繪圖製作的工具,提供了諸多各類型,包括網路、基本流程、甘特圖、乃至於 Mindmap, UML 等圖形元件 (Widgets)的模版 (Template):而 EA 則當然是 UML 專業設計的工具。

但是,我還真問了許多已經使用過這類如 EA, RSA (Rational Software Architect), Together 等工具的軟體開發者 (Developer),到底與 Visio 的主要差異為何,沒想到絕大部分還真回答不出來,以為就是在繪製 UML 圖形的便利性與否而已。

不然! 其實以 EA 這等專業 UML 工具,為何售價需要近萬元? 必然是有 Visio、或者一般免費 UML 工具所無法比擬的特點。但可不是繪圖容易與否這類問題上,真正的主要差異在於:

  • 有效調和專案 (Project)開發過程中,不同角色 (Role)的開發者所設計出來的 UML 產出 (Artifacts),並在這些產出之間,有效監控並期能保持一致性。

更簡而言之來說,當專案是需要團隊協同開發時,則專業性的 UML 工具則是有其必要的,且更能有效保存軟體開發過程中的設計產出,成為團隊甚或企業的有效資產。

至於 EA 與 Visio 兩者的ㄧ些主要功能差異,則可以參考底下 Cathy 小姐所整理出來的比較表:

 (閱讀全文)

支援自動產出循序圖的工具

  • EA (Enterprise Architect) 8.x -內建動態產出循序圖的機制。
  • Together, RSA, Flowchart4j(c#) -支持靜態產出循序圖的方式。
  • HSDc. Sequence Genenator (名稱暫訂)
    • 實作於 EA 7.x-8.x Plugin。
    • 支持靜態產出循序圖的方式。
    • 可支持正向/反向 將程式碼/循序圖互轉的功能。

HSDc Seq. Generator plugin 操作示範

  1. 安裝 Seq. Generator plugin

    圖、安裝 Seq. Generator plugin
    (點擊圖片鏈接看原圖)圖、安裝 Seq. Generator plugin

 (閱讀全文)

程式碼與循序圖的正反向工程

先瞭解一個重點:靜態程式碼結構並無法直接對應循序圖 (對應的是類別圖)

兩種方法可以產出循序圖:

  • 動態產出:設定 run-time 環境,實際執行應用程式,再由 UML 工具至系統內追蹤解析。
  • 靜態產出:直接掃瞄程式碼,解析物件之間的參考 (reference)。

動態產出循序圖的優缺點:

  • 優點:
    • 不需要程式原始碼,只要具有能直接執行的應用程式 (如 .NET DLL 執行檔)即可。
    • 可以確實捕捉單一程序內,物件之間的呼叫情形。
  • 缺點:
    • 需要事先設定好可以執行該應用程式的 run-time 環境。設定相當複雜繁瑣 (一般需為命令列模式),且不同的程式語言 (如 C#NET, Java, PHP …等)均須各自設定不同的 run-time 執行環境。
    • 只能呈現單一執行路徑內的物件互動。意即,無法呈現如 If…Then…Else 或 Exception 等多種條件或替代路徑。

靜態產出循序圖的優缺點:

  • 優點:
    • 不需要設定繁瑣的 run-time 執行環境,操作相當簡潔。
    • 可以指定所掃瞄的程式碼深度 (層次)。
    • 可以同時呈現多重的條件或替代路徑的物件呼叫互動情形。
  • 缺點:
    • 需要有原始程式碼,以提供靜態掃瞄的來源依據。
    • 轉換工具的實作邏輯並無明確的轉換 (transform)規則;相對來說,需要考量到程式語言個別的機制與語法,故轉換工具的實作難度相對提高。

※ 延伸參考
o 程 式碼與 UML 類別_循序圖 的關係探討 (1)
o 程 式碼與 UML 類別_循序圖 的關係探討 (2)

程式碼與 UML 設計圖之間的關聯性

從抽象的角度思考 類別(Class)/物件(Object) 的關係

  • 物件是活的!
  • 但是,類別可不是死的 (更不是活的);因為,它僅是對系統的設計契約而已。

問題思考!?
程式原始碼 (Source Code) 對應的是 UML 哪一張設計圖?

推導-1
程式碼 = 靜態結構 = 設計契約 = 類別設計

所以 程式碼 對應的是: UML 類別圖 (Class Diagram)

Ex. 程式碼與類別圖的對應

範例-靜態的程式碼設計契約
範例-程式碼與類別圖的對應關係

使用 UML 類別圖 (Class Diagram)的好處

  • 快速定義類別的結構 (包括類別名稱、屬性與行為)。
  • 過濾程式碼實做的細節,容易聚焦於類別的責任分派 (responsibility assign)設計議題。
  • 可以透過工具,將類別圖轉出至對應的程式碼 (反之亦然)骨架 (skeleton)。

類別圖無法作到 …

  • 無法呈現系統執行期間 (run-time),程序單位之間的呼叫情形。
  • 無法追蹤為完成某一特定功能案例,物件之間的動態相依呼叫關係。
  • 無法掃瞄物件之間的動態連結,是否有違背類別圖的結構設計。

 (閱讀全文)

基礎觀念導引 - 何謂靜態與動態?

靜態結構 (Static Structure)

  • 表達軟體內部的結構設計。
  • 一般指程式原始碼 (Source Code)。
  • 軟體人員對資訊系統的設計契約 (Design Contract)。

靜態結構的設計契約

public class myclass {
public void method_1() {
//do something
}
 
public string method_2(string var) {
//return a string
return var;
}
}

誰來解讀設計契約?

  • 一般指軟體資訊系統或應用軟體伺服器 (Application Server)。
  • ie. 可以編譯 C#.NET 程式碼 (設計契約)並能在 .NET 平台上執行應用程式。
  • 可以編譯 Java Spring 程式碼並能在支持 JEE (Java Enterprise Edition)平台執行完成編譯的應用程式。

動態相依 (Dynamic Dependency)

  • 系統在執行某一特定功能時,所啟始不同的程序單元之間呼叫的一種動態相依關係。
  • 一般指程式碼經過編譯後在執行期間 (run-time)的應用程式。
  • 資訊系統履行軟體人員的設計契約,使之可以在其平台上執行。

 (閱讀全文)

上個星期六、日,我們團隊連著兩天舉辦了「讀書會」與「單 元課程(一日遊)」等活動。

星期六,讀書會場地是選在位於通化街的「曼德 主廚私房料理」。一邊心得分享與研討、同時可以享受飲食與咖啡下午茶,這樣也比較輕鬆沒有壓力。
[讀書會] @曼德主廚私房料理

 

 (閱讀全文)

我們 HSDc. Inc. 本年度完整的軟件設計培訓,預定於今年 5/01(星期六)舉辦。使用的開發環境為 C#.NET + UML 2.0。 (但 Java 族群組亦可參加,因下次課程即會輪流改為 Java,且可再次免費旁聽)

歡迎報名上課,價格超級便宜,且可充實軟體設計整體性的觀念與知識,又能與講師、同學們等相互討論交流,好處多多。

課程與報名資訊:
[軟 件培訓] 系統分析設計與實作—活用 UML 塑模 與 C#.NET (05/01, 54 Hrs)

 o 日期:2010/05/01 起,每週六白天。
每次上課為六個小時(AM 9:30~PM 4:30),共九個星期。
o 預定上課日期:05/01, 05/08, 05/15, 05/22, 05/29, 06/05, 06/12, 06/19, 06/26
o 地點:中國生產力中心,台北市承德路二段81號B1(首府經貿大樓)。
http://www.cpc.tw/Train/Place.aspx
o 特價優惠:NT$14,800, 含稅。舊生或三人同行再折扣為: NT$13,400。
(同等課程原價學費為 $30,000 以上)
o 附贈完整系統分析文件範本 (Word 格式)與可執行的 C# 程式原始碼。
o 贈送 UML 著書:UML 協同合作與管理(已有可抵優惠 NT$400)。
http://www.kenming.idv.tw/bk_uml-collaboration-process-and-management
o 免費送 Linux 軟體開發平台 DVD 光碟。(使用 Wine 安裝 .NET 開發平台)
http://www.kenming.idv.tw/signup-system-analysis-course-send-linux-development-dvd
o 同課程可保留再旁聽乙次的權利
(.NET/J2EE 系統分析課程均可。報名時註明舊生旁聽即可)。
o 下午均附有免費從外特別特購精緻的咖啡與點心。

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

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

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

基於這樣的理念,我們主張系統分析與設計是要「務實」,不是「昧於現實」,也不是「妥於現實」,而是在現實與理想中找到那一個平衡點。所以課程規劃 是分為兩個階段。

第一個階段就是捕捉系統功能需求,快速設計,立即產出程式碼。重點就是要瞭解如何作好系統的需求分析與對應到程式碼的實作。本階段需要培訓的技能有 物件導向的基礎知識、從使用者角度看待系統時的外部功能分析,抓出適切的功能點開發單位、從畫面、中間層物件到連結資料庫的實作能力等。還有,一定要配套 的兩個設計措施,一為撰寫測試案例與功能測試程式碼,實現自動化的測試機制;另一為活用分析類別,先利用中間層的控制類別,集中與控管從畫面與資料庫而來 的企業邏輯。

第二個階段就是傳統系統分析所說的 SD(System Design), 傳統是以資料庫的 E-R(Entity-Relation) 分析,在物件導向則是稱為領域模型的建立—包括找出物件與適切的分派責任。這可不是一件容易的事,事實上應該說要具備的抽象能力要相當高,所以為何我們覺 得那種 SA->SD->PG 開發流程是不務實的,因為 SD 很難作得好,然後還要 PG 去等該階段的產出,又大部分是不正確,可以說是浪費開發資源與時間。程式碼可以直接反應功能的需求,但不一定要等結構分析,集中在控制控制類別的好處就 是,我們可以很容易地對結構作重整、對程式碼作重構,卻又不會影響既有上線的功能。本階段的重點當然就是對所謂結構的分析技能培養,我們會兩種方式,一為 從需求抓名詞的傳統方法、另一為揭露出以交易為核心的交易樣式,可以輕易地抓出一大串的企業元件。

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

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

HSDc. 軟體團隊,關心每一位軟體人員的持續成長...。

 

 (閱讀全文)

過年前,我們團隊 (HSDc Inc.)所舉辦的 [UML 2.0 觀念引導與實務操作入門] 課程,約有近 20位學員參加。其中,有一位相當高恌的女孩子就坐在最前座,上課的時候總是相當專心聽講作筆記。

我在講課時總是喜歡採用反問的方式,藉以引導學員可以思考我所提問問題背後的涵意。大部分學員總是會有些怕怕,也比較不敢表達出自己的想法,但這位 女孩子卻是可以回答出令人相當滿意的答案,讓我相當的佩服;更為訝異的是,在下課時與她閒聊,才知道她還只是撰寫大型系統的程序性古典語言,也沒有寫過 Java or .NET 等 OOP 語言。但是,我可是真的覺得,她對物件導向的設計哲理,相當具有領悟力,也很肯去反思,俱足軟性思考的頭腦。

對於這樣聰慧、具 Smart 特質、又肯主動學習的學員,除了讓我印象深刻外,我更是願意就我所能,引導與分享對於軟體設計領域上的觀念與學習技巧。

就在想說,年後我們團隊若有一些研討活動 (如讀書會、研討會)等,準備邀請該位學員來參與。沒想到,就在除夕春節前,這位學員還主動寄了一封新年賀卡給我們。除了新年賀節問候外,也說出了她對這次上 UML 課程的收穫與心得,真的很感心~

更特別的是,附檔的新年賀卡是她利用 PowerPoint 設計的。內容竟然是把兩天課程所介紹 UML 13張設計圖,它們之間的關聯、特質與應用時機等,給全串在同一張圖內;還畫了虎年到來、新年迎春饒富過年氣氛的插圖。
Sharon 的 UML 新年賀卡

哇!! 這麼別出心裁、這麼有創意的新年賀卡,又是如此的用心製作 (必然要耗費很多時間),我收到這樣的賀卡真的是相當開心,也相當感動。更是覺得,這麼棒的作品,要不分享出來給眾讀者們欣賞,那真是太可惜了。所以,我還特別寫了信徵求該位學員的同意後才特別公開。

對啦,她的名字叫 Sharon,這樣直接稱呼也比較方便勒。另外這裡同時也公開她的網誌應該沒有問題吧? 看看她寫的文章,文句優雅頗具知性,會讓人以為她是一位柔弱感性的少女呢;但是,再瀏覽她整理的網誌相簿,呼,Sharon 可還是一位熱愛潛水的陽光健康女孩呢。 :)

 o http://blog.yam.com/sharontaiwan
o http://sharonwang.myweb.hinet.net/

線上報名與詳細課程資訊請至:
http://www.hsdc.com.tw/course/unit-course_automation-test-by-csharp_1day_20100328

 o 日期:2010/03/28 (星期日) AM 9:30 ~ PM 17:00 (共 6.5 小時)
o 地點:中國生產力中心,台北市承德路二段81號B1(首府經貿大樓)。
http://www.cpc.tw/Train/Place.aspx
o 費用:NT$1,800, 含稅。舊生或三人同行: NT$1,500。
o 同課程可保留再旁聽乙次的權利 (報名時註明舊生旁聽即可)。
o 下午均附有免費從外特購精緻的咖啡與點心。

§課程說明 --------------------------------------------------------------------

TDD (Test-Driven Development),測試先行的觀念已逐漸被軟體開發單位接受。但如何達成自動化的測試?要測試的是哪一類型程式?如何撰寫測試測試 ...等,可能一般 Developer 仍顯模糊。

HSDc. 團隊將多年來輔導諸多單位,並協助其撰寫測試程式的經驗,整理成範本。利用一天的時間,詳述說明從需求整理、測試案例,到整個測試程式的產出,每一個階段步驟除了有完整的圖文解說與程式碼以外,還設有階段完整的目標,以瞭解該階段實作的目的。

對於 Developer 而言,撰寫功能性物件的測試程式,如利用 NUnit or JUnit 等測試框架,是確保需求功能的正確性。

而對於 End User 而言,因直接面臨的是 GUI 畫面的操作,若有些高精確要求如政府標案等,往往連畫面的操作步驟都不得出錯,而導致開發團隊甚而還要撰寫畫面操作的詳述說明與撰寫數千條以上的圖型測試 案例報告,花了相當多的時間卻仍一再需要重複人工的操作,可說是浪費太多不必要的精力與人力了。

為了達成驗收交付的目的,圖形介面操作的自動化測試,在高度要求或大型的專案中仍是需要的。所以,在本次課程中,我們也會介紹如何利用 GUI 的測試框架,在 ASP.NET 的 Web 環境中,以達成自動操作圖形表單、自動輸入數據。

同時,我們也整合了從 GUI 的自動操作到按下按鍵、然後到後端的控制型功能物件 (Control Object),由 NUnit 測試框架自動驗證需求功能的正確性。一氣呵成,全部自動化,花一次工即可。

本次課程是利用 C#.NET,相關的測試框架 (Watin and NUnit)均支援 .NET Framework。但測試的觀念與作法其實都是一樣的,要移轉到 Java 的環境下,也是相當輕而易舉,自然,本課程也是適合 Java 的 Developer 等。

上課學員除了收到本顧問團隊所親自撰寫的教材外,還可以拿到一片自動安裝的光碟,內含了教材電子文檔(PDF)、測試環境建置所有需要的應用軟件(全為免費)、案例分析的原始程式碼與測試程式碼等。以及涵蓋了 HSDc. 歷屆研討會簡報資料。

上課過程中,更是歡迎學員自行帶平日工作所碰過的案例問題與疑問,講師群均非常樂意協助解決(不怕被考倒,只怕不問),亦可以當成課堂上的討論案例。

對了,每一天的課程,我們均有免費提供下午茶點,包括小蜜蜂咖啡、茶飲、美味的吊鐘燒與餅乾甜點等。品味咖啡的同時,學習軟體設計思維,那會是一件令人相當愉悅的快樂學習之旅。

 (閱讀全文)

報名與詳細研討資訊請至: http://www.hsdc.com.tw/course/reading_meeting_20100327

 o 報名費用; 自行於當場點餐、下午茶點或飲料即可。
o 日期:2010/03/27 (星期六) PM 13:00 ~ PM 17:00
o 地點:曼德主廚私房料理。 台北市通化街171巷30弄2號。02-2733-3855
http://tw.myblog.yahoo.com/mindercafe/article?mid=2&l=f&fid=5

§讀書會介紹 --------------------------------------------------------------------
HSDc. 預計每一季舉辦一次軟體相關讀書研討分享聚會 (若與會學員參與意願高且熱好研讀軟體設計各類書籍者眾,則可以每個月或每兩個月舉辦乙次)。

第一次的讀書會主題,先輕鬆一些,就以 Ringle 的著書-「UML團隊開發流程與管理」為本次讀書會的研討用書。(爾後的讀書會用書則可以因應與會人員們的要求來決定)

關於本書,請參考:
o http://www.books.com.tw/exep/prod/booksfile.php?item=0010438060
o http://www.kenming.idv.tw/ringle-new-book-uml-collaboration-development

我們希望與會學員們起碼約略有翻閱過該書,但不需要全部看完。只要針對書本內任一章節,可以作心得分享,甚或問題提問討論即可。

我們希望是以相當輕鬆的態度來參與讀書研討。重要的是分享,甚或是提出問題一同討論,這才會是舉辦讀書會的意義所在。

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

--------------------------------------------------------------------------------
§讀書會 (共 4Hrs):

 1. 主持人,(宋敏如, Cathy Sung)開場介紹與說明。
2. 心得分享,由 HSDc. Tech. Leader Arthur 開始心得分享與報告。
3. 座談與提問,由賴信仁先生 (Ringle Lai)負責解說。
4. Free Talking。 針對各類議題,包括職場生活等都可閒聊。
5. 決定下一次讀書會的參考用書與主題。

--------------------------------------------------------------------------------

§對象:對軟體設計相關議題有興趣者,包括在職軟體開發人員及相關資訊科系講師及學生等。
§主辦單位:HSDc 軟體設計顧問中心。
§備註:
o 本次讀書會預計開放 24 個名額。(額滿即停止報名)
--------------------------------------------------------------------------------

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

在深圳軟件園第一天授完課、回到商務旅社時已是約 16:30 左右,我老婆的大哥已於前一晚電話給我並約好在那邊等我了。我那個老哥因為與朋友的合夥並委託於五、六年前至大陸開設韓國烤肉餐廳。當時他可是身無一文過 來的,如今已經在「東莞」開設了三家、在「上海」開了一家餐廳,並且也在大陸成家立業、生了兩個胖兒子,可謂是事業小有所成的典型台商。 :)

他人可是很熱心好客的,知道我要過來深圳教課後,就堅持一定要請我與所有的夥伴們到他的餐廳免費吃到飽。我們共有五個人,剛好我老哥開的是七人座休旅車,全坐進去都還很寬敞。深圳到東莞我看估計是台北到新竹的距離,因為我老哥一路從高速高路開下來也要花上四、五十分鐘。

到了東莞時,乖乖,沿路儘是餐廳啦,最多的就是日本料理與燒肉吃到飽的餐廳。我老哥帶我們到離他家最近(其實就在馬路對面而已啦,但是馬路實在有夠寬遠)的本店用餐。據他說,他另外一家新開的店面還比本店大上四倍,呼,真是有夠誇張。

韓國烤肉韓玠館@東莞

 (閱讀全文)

現代越形複雜資訊系統的開發,尤以要應付快速變動性的議題,幾乎所有的主流開發流程,包括 UP (Unified Process), XP (eXtreme Programming), Agile 等不論重、輕量型的流程方法論,均一致強調反覆 (Iteration)漸增 (Incremental) 開發的必要性。 關於反覆式與傳統瀑布式 (WaterFall) 開發的比較說明,請參考先前我寫過的一篇:「從軟體架構師(Architect)的觀點來看軟體開發流程」。

I&I (Iteration and Incremental) 的開發模式,已逐漸成為軟體開發的最佳實務 (Best Practice)。 但是, I&I 開發模式的實踐與否,只有在軟體開發團隊的內部才知道;對於客戶單位,他們是不知道,也不可能瞭解委外軟體廠商,內部是運用什麼樣的開發模式。

所以,外包的委外軟體開發專案,若是使用 Iteartion 的開發模式,該如何計價收費? 或者,某大型公司的 IT 單位,規範了外包軟體廠商,必然要遵循該公司所制定的開發流程綱要。 這兩個可以說都是相當奇怪、卻也常見的問題與現象。

我先說明第二個那個怪現象‧‧‧

IT 單位規範外包廠商的開發模式,一點意義都沒有。 因為,客戶根本看不到委外廠商內部是如何開發的。 即使你強調希望委外單位能走 I&I 的模式,但是,他要掛羊頭賣狗肉,你也沒轍,因為,從最終產出 (Artifacts)來說,你根本無法知道委外單位是採取何種開發模式來完成的。 客戶單位只能要求說,委外單位要能在毎一個議定的階段時間,要能達成分次交付的產出甚或可以早些釋出 (release)、可以完整被執行的功能案例。

客戶單位所制定每一個該付交產出的階段時間,這個應該是稱之為 "Milestone (里程碑)",完成每一個階段的交付,也可以及早瞭解委外單位的釋出品質,或作為下一次交付的回饋 (Feedback):而若是要求儘早能看到可被執行的部分功能案例(或模組),這稱之為 "及早釋出(Early Release)"。

再回來討論第一個問題,採用 "Iteration" 開發模式該如何計價?

 (閱讀全文)

農曆年前 HSDc. 舉辦 2010 年第一場軟體設計培訓課程

** 由於文化教室已滿,故地點改為 中國生產力中心,台北市承德路二段81號B1(首府經貿大樓)。
http://www.cpc.tw/Train/Place.aspx

各位好:

線上報名與詳細課程資訊請至:
http://www.hsdc.com.tw/course/unit_course_20100130_31

o 日期:2010/01/30,31 (星期六,日) AM 9:10 ~ PM 17:00 (共 13 小時)
o 地點:中國生產力中心,台北市承德路二段81號B1(首府經貿大樓)。
  http://www.cpc.tw/Train/Place.aspx
o 費用:NT$4,200, 含稅。舊生或三人同行: NT$3,800。
o 附贈完整系統分析文件範本 (Word 格式)與可執行的 C# 程式原始碼。
o 前 10 名報名者,免費贈送 UML 新書:UML 協同合作與管理(已有可抵優惠 NT$400)。
http://www.kenming.idv.tw/bk_uml-collaboration-process-and-management
o 同課程可保留再旁聽乙次的權利 (報名時註明舊生旁聽即可)。
o 下午均附有免費從外特別特購精緻的咖啡與點心。

§課程說明 --------------------------------------------------------------------

2010 年一月,HSDc. 所選擇的第一個軟體設計培訓課程為「UML 2.0 觀念引導與實務操作入門」。

焦點著重在講師會藉由 UML 工具的實際操作與引導,繪製各個類型的軟體設計圖,從做中學的過程中,瞭解到這些 UML 設計圖背後的設計意涵。

雖然是短短的兩天課程,但講師們絕對會擷取出 UML 的精要(essential)部分,將多年來豐富的輔導與教學經驗,表達於其內。 絕對可以讓學員們學習與瞭解到,UML 這個統一模式語言的每一張設計圖的基本語法認識,以及基礎軟體設計的思維。

雖然這個是我們已舉辦多年的實務性課程,但是對於課程內容,我們每一次總是接受學員們的建議,以及我們團隊課程結束之後的討論,會再重新作過規劃,讓課程更流暢、更為實用,對學員們當然在工作上更有實質的幫助。

所以,除了 UML Overview 介紹與實務操作外,我們在最後一堂課,會利用一個小而美的案例展示,以提供完整的系統分析 Model,與利用 C# 實作的可執行程式碼,甚而包括了完整的系統分析文件(Word 格式)。這可是相當之實用的範本,讓學員可以參考並實際應用在工作、小型規模的專案開發上。

上課學員除了收到本顧問團隊所親自撰寫的教材外,還可以拿到一片自動安裝的光碟,內含了教材電子文檔(PDF)、UML 範例檔(EA 格式)、UML2 教學錄影檔(Flash)、歷屆研討會簡報資料、EA 7.5 UML 工具(Trial)。

上課過程中,更是歡迎學員自行帶平日工作所碰過的案例問題與疑問,講師群均非常樂意協助解決(不怕被考倒,只怕不問),亦可以當成課堂上的討論案例。

對了,每一天的課程,我們均有免費提供下午茶點,包括小蜜蜂咖啡、茶飲、美味的吊鐘燒與餅乾甜點等。品味咖啡的同時,學習軟體設計思維,那會是一件令人相當愉悅的快樂學習之旅。

§報名資訊 ----------------------------------------------------------------------
o準備教材:
o 由授課講師提供講義,包括內容、案例分析與 UML 13 種圖範例(包括 Flash 影音檔案)。
o 學員可攜帶相關 UML 參考書籍,並對於書中內容有問題者,可以直接提問。

o使用工具: EA(Enterprise Architect) 7.5(Trial) UML Tool。

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

o上課時間:
o 2010/01/30,31 (星期六,日) AM 9:10 ~ PM 17:00 (共 13 小時)
o 請注意,本次課程特別提早至 9:10 開始上課,並延長至 17:00 下課。

o上課地點與上課人數:
o 文化大學教育推廣部城中分校,台北市延平南路127號。
http://future.sce.pccu.edu.tw/service/service01_05.asp
o 報名人數滿 10 人即開班(同時保留 5 名學員重新選修該課程)。
o 開課前兩日會以電子郵件聯絡與通知學員。

o適合學員:
o 系統分析/設計(SA/SD), PM, Programmer 等在職軟體開發者或在學學生。
o 想實際學會如何利用 UML 工具來畫 UML 2.0 十三種圖。
o 看了很多 UML 書籍,仍然無法在正確的時機畫出正確的 UML 圖。

o備註:
o 教室設備包括白板與投影機,由講師親自說明與操作示範。(學員可攜帶錄音筆)
o 學員最好能攜帶 Notebook,可以於課程中實際操作與練習。 。
o 為確保報名足額人數,煩請先以 ATM 轉帳預約費用($1000,當然也可一次繳清)。
並請於報名表備註欄位內,註明您的轉帳帳號末 5 碼與轉帳金額。
(若實在不及轉帳者,仍可現場報名,但請在報名表內註明現場繳費)。
o ATM 轉帳帳號: 新光銀行 (103) 帳號: 0772-50-100979-9

§課程大綱 ----------------------------------------------------------------------
※ 基礎觀念引導—認識 UML
o 使用 UML 的基本思維
o 為何是利用 UML 來溝通
o UML 塑模的對象
o UML 設計圖的分類說明

※ 企業流程與系統需求
o 利用活動圖(Activity Diagram)表達企業流程
- Activity, Control flow 的關聯。
- 決策(Desision), 並行活動的表達。
o 利用使用案例(Use Case)圖表達系統功能
- 系統範圍, 參與者, 使用案例 表達系統架構。
-《include》and《extend》擴充意涵表達。
- 使用案例陳述(Description)範本。
o 操作展示與引導練習
- EA(Enterprise Architect) UML 開發工具安裝與基本操作說明。
- 利用 EA 繪製活動圖與使用案例圖。

※ 表達系統內部結構的兩位主角
o 利用類別(Class)圖表達領域概念與企業物件。
- 類別的特徵:屬性與行為。
- 三種類別之間的關係:結合, 整體/局部, 一般化/特殊化。
o 利用循序(Sequence)圖表達物件動態期間的互動關係。
- 表達出主要參與的主角(Object)。
- 表達出物件之間的訊息傳遞。
o 操作展示與引導練習
- 利用 EA 繪製類別圖與循序圖。

※ 其它類的設計圖
o 系統的微觀設計
- 溝通(Communication)圖, 物件(Object)圖, 元件(Component)圖。
- 狀態機(Statechart)圖, 時序(Timing)圖。
o 系統的鉅觀設計
- 互動概觀(Interaction Overview)圖, 合成結構(Composite Structure)圖。
o 系統的實作與部署
- 套件(Package)圖, 部署(Deployment)圖。
o 操作展示與引導練習
- 利用 EA 繪製上述的設計圖。

※ 案例展示與系統分析範本-從需求分析,結構設計至程式碼實作
- 使用案例, 類別圖, 循序圖 設計產出之間的橋接。
- 利用 EA 正向工程產出 C# 程式碼。
- 記錄測試案例與撰寫測試程式碼。
- ** 利用 EA 快速產出完整的系統分析文件(可作為開發綱要範本) **
- 完整附錄可執行的程式原始碼與設計模型的 Model 檔。
--------------------------------------------------------------------------------

**【研討會 01/23】2010 軟體設計鮮思維—程式碼與循序圖的關係與產品開發介紹
http://www.javaworld.com.tw/jute/post/view?bid=14&id=271642&sty=1&tpg=1&age=0

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

先祝各位讀者們 2010 年新年快樂!!

** 由於文化教室已滿,故地點改為 中國生產力中心,台北市承德路二段81號B1(首府經貿大樓)。
http://www.cpc.tw/Train/Place.aspx

各位好:

報名與詳細講座資訊請至:
http://www.hsdc.com.tw/course/seminar_20100123

o 報名費用 NT$300。 (擔負場地費用以及每位參與學員一份 85。C 咖啡飲料與蛋糕)
o 日期:2010/01/23 (星期六) PM13:10 ~ PM 17:00
o 地點:中國生產力中心,台北市承德路二段81號B1(首府經貿大樓)。
http://www.cpc.tw/Train/Place.aspx

§研討會介紹 --------------------------------------------------------------------

2009 年對 HSDc. 團隊是相當忙碌的一年。 幾乎大半年的期間,都長期專注在新竹「工研院」資訊中心的專案輔導與開發、同時又仍需要忙碌著固定幾家企業資訊單位的長期性顧問輔導,使得團隊主要成員們 不容易抽出時間在教育訓練與研討會的研究發表上。這是對許多支持 HSDc. 的學員們的一種抱歉。

無論如何,我們沒有任何藉口。 同時經過團隊內部的溝通討論,我們決定自 2010 年這嶄新的一年,至少每 1~2 個月舉辦 研討會/讀書會/單元課程/完整系統分析課程 等其中之一的活動。 分享、引導與傳授發表我們在軟體設計各類議題上的研究與心得(及實務經驗),在軟體設計教育訓練這個領域上,一直是我們重視的焦點所在。

即使百忙之餘,在去年中,HSDc. 團隊已進行了「Sequence Generator」產品研發。 可以將程式碼的某一個功能展延出物件合作的 UML 循序圖;反之亦可以從循序圖轉出到程式碼 (當然,要先規範好類別圖)。 對從事 Coding Developer 可說是一個相當便捷的工具,彷彿就是幫程式碼照 X 光,可以輕易看出程式碼動態呼叫期間的物件關係。

請參考: http://www.kenming.idv.tw/hsdc-product-sequence-generato

經過與澳洲 Sparx System (EA 的開發原廠商)的遠距會議,展示我們的開發理念與深具彈性的結構設計,相當獲得對方的好評。 並決定於 2010 年初在澳洲原廠網頁上提供 Beta 版本的下載試用。 (以 Plug-in 的方式整合在 EA 工具上)

2010 年的第一場研討會,我們就是以 "Sequence Generator" 這個產品開發為主題,來分享說明我們是如何設計這套產品。 同時,我們也預先提供這個產品算是 pre-beta(或者該稱為 alpha 版?) 版本給前來參與研討會的學員們試用並請提供寶貴的意見。

當然,我們必然會附贈研討會光碟。光碟內容包括歷屆研討會簡報內容、UML 教學/操作錄影檔、EA 等試用版、UML OCUP 模擬試題... 等,相當物超所值。

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

--------------------------------------------------------------------------------
§講座主題:

1. 「程式碼與 UML 循序/類別圖 的關係探討」-- Kenming Wang
o 基礎觀念導引 - 何謂靜態與動態?
o 程式碼與類別圖的靜態結構關係。
o 程式碼與循序圖的動態關聯關係。
o 簡單範例展示。

2. 「如何利用 UML 工具設計 Sequence Diagram Plug-in」-- Ringle Lai
o 為何需要從程式碼產生Sequence Diagram
i. Sequence Diagram的基本假設
ii. 預想的產品架構
o Sequence Diagram Plug-in應有的功能
o Sequence Diagram Plug-in 的結構(Class 圖)設計
i. 基本架構
ii. 元件設計
iii. 類別設計
o 實機展示 - 使用 EA (Enterprise Architect) UML 工具。
--------------------------------------------------------------------------------

§對象:對軟體設計相關議題有興趣者,包括在職軟體開發人員及相關資訊科系講師及學生等。
§主辦單位:HSDc 軟體設計顧問中心。
§講師:賴信仁(Ringle Lai)、王克明(Kenming Wang)。
o報名經確認後,本站即會寄送確認通知信給報名學員。
§備註:
o 本次講座預計開放 60 個名額。(額滿即停止報名)
o 因上課人數眾多,恕不直接提供列印教材,本次講座會直接附送「講座教材及示範操作光碟」等。教材內容並於講座前兩日公佈於 HSDc. 網站,學員可自行列印講座教材。
--------------------------------------------------------------------------------

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

這個月初,突然接到來自大陸廣州某家企管顧問公司的來信,希望能邀請 HSDc. 團隊至深圳教授 EA (Enterprise Architect) UML 工具操作使用。 怎麼會知道 HSDc. 團隊? 原來是 Ringle 的那本著作:「UML 與團隊協同合作」有大陸那邊亦有耳聞,且最近即將出版簡體版本。 因為結合了基礎觀念與實務操作,所以算是還頗為實用的工具用書。 而且對方一定指名要有 Ringle 親自來任教,其他講師,包括我與 Cathy (這次共安排了三位講師),都只算是助教性質。 ;)

對大陸事務的協調與聯絡,當然是由 Cathy 負責處理了。 她的執行能力與行動力是我所看過諸多人當中最積極的。 月初聯絡與討論,然後規劃了三天共 18 個小時的課程,安排了日程、交通與食宿等,這個星期,20號(星期日) 晚上就搭機成行了。

老實說,我還真頗不想去。 主要的原因是,我還沒有搭過飛機出國過。 :(

但可不是搭飛機害怕喔,而是我實在想把我第一次的「處女航」獻給家人、一同出國旅遊啦。 這類洽公性的事務,實在有些些的不甘心。 不過,基於現實的因素,對方相當有誠意,講師鐘點費用與在台灣我們的報價是一樣的,而關於搭機與食宿等,都由對方買單;再則,我還真想瞧瞧大陸在最南邊這 一端的軟件發展情形。 喔,對啦,順便也去探望一下我老婆她哥哥,聽說他在「東莞」開了三家的韓國烤肉餐廳。 一年多不見,而且他聽說我要過來深圳這邊,就很積極的說要帶我去他的餐廳吃大餐。 :)

我們是搭 20號晚上 7:20 「國泰航空」飛往香港的飛機 (當日沒有直接飛往深圳,所以只好到香港再入境)。 我是開車,再去接 Ringle 一同到桃園機場。 因為是在「第一航廈」出(入)境,而那邊的停車場過夜每天只收 NT$100,當然划算多了。

因為啦,是第一次的出國,當然一切都算是透露著新鮮好奇,所以總是隨手拿著我老婆的 Sony T10 DC,看到就拍照,留著紀念。

一到出境大廳,然後拿著電子機票 Check-in 登記飛機座位後,就到了樓上一整排的商店區。 尤其是看到了 StartBucks,開心~ 離登機還有一個半小時,當然就是在這裡喝個咖啡休息囉。

桃園國際機場一景

 (閱讀全文)
1 2 3 4 5 6 7 8 9 10 11  下一篇»