利用企業使用案例記錄企業流程

在系統開發的需求捕捉階段時,一般我們會利用活動圖(Activity Diagram)來記錄企業流程(Business Process)。
例如,範例圖一是利用活動圖來表達 "XX醫院" 的掛號就診流程(圖一僅為範例,並非是完整正確的就診業務流程)。

利用活動圖表達業務流程
圖一、利用活動圖表達業務流程

利用活動圖可以記錄詳細的業務流程,也可以看出哪些活動(Activity)是由哪些人或角色所負責的(利用 Partition 區分責任區塊)。

活動圖表達了企業內部的組織運作,但不容易表達出與該業務流程相關的外部主要參與者(Primary Actor),企業是如何滿足其目標。亦即,若想明確區分企業的 "內" 與 "外",我們可以利用 "企業使用案例圖(Business Use Case Diagram)" 來表達。

表達企業層次的使用案例圖(Business level UCD) ,有幾點要注意的:

  • 系統的設計範圍一般以企業、部門等組織為單位,而非單指軟體應用系統。
  • 會著重於描述企業內部的流程;而非系統功能面的行為描述。
  • 通常會以白箱式(Whie-box)的作法打開企業使用案例(Business Use case)內部,以瞭解內部工作者(internal worker)互動合作的流程。
  • 目標讀者(Target audience)會偏於企業決策層級的管理者、IT高階主管、系統開發的架構師(Architect)等,可以藉由企業層級的使用案例圖來辨別出組織的核心業務。
  • 可以協助從企業流程往技術層面來思考,以定義出適合採用新技術的業務流程。例如,有些人工作業流程,可以藉由電腦資訊化以增加作業效率與成本因素等考量。

繼續閱讀 »

超好笑、無俚頭的卡通—『膽小狗英雄』

膽小狗英雄最近,迷上一部卡通:『膽小狗英雄』。
每天晚上 8:30 一定與我兩位寶貝女兒轉到卡通頻道一起觀看。

一隻被遺棄的可憐小狗,好心的茉莉兒將牠帶回家收養,並且取名為「英雄」,但是英雄看到奇怪的事物,就會嚇得半死,魂不附體,並且向主人報告,當奧提斯看見他被嚇得半死,也會趁這個機會嚇嚇他,讓英雄更加害怕。茉莉兒相信,家中有了英雄,就會忘記單調的生活了。

中文的翻譯以及配音都很棒。

狗狗的名字叫做』英雄』,但卻非常膽小。牠只要看到不可思議的事物(在這部卡通,這種現象特別多),就會驚嚇得哇哇叫,大驚小怪的跟什麼似的。
但是,英雄最心愛也最保護的就是收養牠的主人,茉莉兒,一位胖胖的中年婦女卻又一副與世無爭,心思單純的女性。
每當茉莉兒遇到危難時,英雄儘管再怎樣的膽小,仍舊挺身而出,利用各種辦法來救出牠的主人。
而茉莉兒的丈夫,奧提斯,一位平凡的老農夫,卻又是一位勢利眼、懶惰,見錢眼開的傢伙,對待英雄總是沒有好眼色。

劇情看起來好像很普通吧?其實,真正有趣的就是在這一家子所遇到各種稀奇古怪、光怪離奇的人事物時,所反應出來的個性與舉動。極其誇張與無俚頭,嘿,可是比周興馳的電影還來得更無俚頭呢。單元的出場人物(不一定是人勒)總是會讓你意想不到的離譜。

除了對白的無俚頭外,這部卡通總是能營造出極強烈的對比與極度誇張的動畫表達。相當的生動,有別於日式卡通較單調的人物動畫。

愛死哪隻超級膽小,卻總是在最關鍵時刻,發揮英勇的行動來拯救茉莉兒她們的小狗狗,英雄,粉紅色像是臘腸狗的體型,牙齒還有顆大蛀牙洞勒。

每天看這部半個小時、兩個單元的卡通,總是笑翻天。;D

我的小Baby Annie 也學會奧提斯罵』英雄』為 『小笨狗』。結果,她現在都叫我 『小笨爸』。 XX(

Re-compile php4 under Linux

參考:
http://www.php5.idv.tw/blog/weisily/modules.php?act=article&do=show&id=22

為了讓 php4 具有圖形及編碼等擴充能力,需要外部的函示庫,如 libiconv, libjpeg, libpng …等,所以必須重新編譯 php4。

繼續閱讀 »

從鳥瞰的觀點看 Use Case Diagram

我個人一向主張寫 Use Case 的敘述之前,先畫使用案例圖(Use Case Diagram) 。原因在於我們可以從鳥瞰的視野綜觀系統的全貌:

  1. 可以利用套件(Package)界定系統的設計範圍(Boundary)。
  2. 避免過早涉及至細節(Detail)。

先說明,什麼是鳥瞰?

  • 從高處俯視低處。
  • 對事實情況作概略的觀察。

利用使用案例圖,可以協助我們從 "鳥瞰" 的視野來看系統的外觀,避免從系統的內部來看 Use Case (這是許多 Developer 常犯的毛病)。
同時,因為鳥瞰,所以,比較容易能看出系統的全貌、界定系統的範圍、區分系統的內與外(這很重要,如此才能知道什麼該作,什麼不需作)。還有,也比較容易看出使用案例的所表達的層次(level),如企業層級(Business level)、使用者目標層級(User-goal level)等。

寫使用案例若不知道系統的設計範圍,我很難相信 RA(Requirement Analyst)能寫得好 Use Case。
理由為何?若未能確定系統邊界,那麼,你如何能將系統視為一個黑箱(Black box)?你又如何能確認誰是使用系統的主要參與者(Primary Actor)?

而 Developer 常常以為很清楚系統範圍,但事實上系統範圍的界定在團隊成員之間往往會有見解上的落差。
例如,觀察下圖一,顧客至錄影帶店租片,很直覺地,我們發現有個 Use Case:租片 。

使用案例圖(沒有以Package界定範圍)
圖一、使用案例圖(沒有以Package界定範圍)

沒有畫出系統邊界,一般是常見於單一系統的開發,且系統的範圍很明確。但我們觀察圖一,試著問問團隊內部的開發成員們,她們所認知的系統是界定在那個範圍呢?
可能會以為,不就是要開發一個影片租借系統嗎?

繼續閱讀 »

調校系統效能的免費好工具—SafeXP

還沒有看過這麼乾脆好用的工具。

不用安裝,直接解壓縮至指定的 folder,然後執行其 .exe 檔。選擇 『Recommended setttings』,按下 『Apply』。

好啦!就執行完畢了,你的 Windows-based 系統的效能就會更佳、執行速度也會更快囉~

這裡可以下載:
http://www.theorica.net/

軟體分類: 系統工具
軟體性質: Freeware
更新日期: 2005-03-18
最近版本: 1.5.1.25
作業系統: for Windows 98/ME/2000/XP
語言界面: 英文
檔案容量: 349 K
原創公司: TheoricaSoftware

軟體介紹:
用Safe XP關閉Windows中不必要的功能或服務,加速系統執行

Safe XP是一個免費的Windows系統調整軟體,可用來關閉Windows中沒有必要開啟的功能或服務,以加速作業系統的執行;所有Windows通通適用!

安裝Windows時若是以預設值來進行,那麼它會將所有大大小小的功能和服務全部開啟;但是這麼多的功能和服務並非全部都需要,而且還會拖累系統執行速度。Safe XP是一個免費的Windows系統調整軟體,可用來關閉Windows中沒有必要開啟的功能或服務,以加速作業系統的執行。

Safe XP的操作十分簡單,它會在視窗中分項列出Windows所有正在執行的功能或服務,只要將沒必要的項目逐一勾選,最後按下「Apply」就行了。如果你是電腦新手,不是很清楚哪些功能與服務是不必要的,那麼可以按下「Recommended Settings」,這是Safe XP的建議設定,就不怕選錯項目囉!

Safe XP雖然名稱裡有個「XP」,但不表示只有Windows XP才可以用,所有Windows通通適用喔!

【軟體設計教你學到會單元課程】教你學會如何寫使用案例(Use Case)

詳細內容及報名,請至:
『首頁-活動報名』線上填寫報名申請表單

若對該單元課程有相關建議與問題,請至:
http://www.hsdc.com.tw/modules/newbb/viewforum.php?forum=3
發表討論。

§課程名稱: 教你學會如何寫使用案例(Use Case)。

§課程簡述:

  • 本課程旨在教導學員如何利用使用案例來捕捉系統的功能性需求,如何界定系統的範圍,並瞭解如何掌握寫使用案例的核心原則與最佳實務。

§課程目標:

  1. 瞭解如何描述使用案例(Use Case),如何寫出正確、易讀性高的使用案例。
  2. 提供寫使用案例的範本(Template),說明主要欄位的作用與寫作時基本的規範與考量。
  3. 學習如何利用使用案例圖(Use Case Diagram)界定系統設計範圍、找出系統的參與者(Actor)與使用案例。
  4. 學習如何繪製出不同層級(level)的使用案例圖,包括企業層級(Business use case)的使用案例與使用者目標層級的使用案例(User-goal use case)。
  5. 提供程式碼範例,說明系統如何 "實做(Realize)" 使用案例(不涉及討論到系統內部的結構設計)。

§實做練習:

  • 講師提供相關問題領域(Problem domain)的範例,來找出使用案例與參與者,並界定系統範圍(System boundary)。
  • 由學員提供在實務系統開發中,所遇到寫使用案例的困擾與問題(學員可先行準備個案或於課堂中直接提問),並由講師當場針對問題來討論與說明。

§課後評量: 上完本單元課程後,學員可根據以下幾點自我評量:

  1. 是否能把握基本的規範與原則,寫出使用案例,描述參與者與系統之間互動的行為過程。
  2. 是否能利用 EA(Enterprise Architect)等 UML 工具,來畫出使用案例圖,並界定系統的設計範圍,確實找出參與系統的參與者及使用案例。
  3. 是否能區分黑箱式(Black-box)與白箱式(White-box)的使用案例設計,並運用於企業層級的使用案例(Business use case)及使用者目標層級的使用案例(User-goal use case)。

§建議書籍:使用案例寫作實務(Writing Effective Use Cases), Alistair Cockburn 著/趙光正 譯, 碁峰出版, isbn 9867727681

§準備教材:

  • 由授課講師提供講義,包括內容、案例分析與程式碼範例。
  • 學員可帶上述參考書籍,並對於書中內容有問題者,可以直接提問。

§使用工具:(視講課範例使用 .NET or J2EE)

  • UML2.0 Editor :Enterprise Architect Trial。
  • J2EE IDE:Eclipse (Free)。
  • .NET IDE:Visual Studio .NET Trial。

§授課講師:

  • 王克明(Kenming Wang), kenming.wang@gmail.com,
    tel 02-27227179

§上課費用:NT$ 400 x 6(hrs) = 2400 (含稅),含一次下午茶點(咖啡/茶 + 蛋糕點心)。

§上課時間:

  1. 報名時請註明可以上課的時段(星期一~五白天) , 晚上, 星期假日(六/日)。
  2. 報名人數可達開班時,由已報名的學員與講師來決定上課的確定時間。

§適合學員:

  • 需要瞭解如何紀錄及捕捉軟體系統需求(Requirement)的 IT 人員,如 RA(Requirement Analyst)、SA或PM...等。
  • 非 IT 人員,但想瞭解如何利用使用案例來描述企業與系統的流程及需求。
  • 看了很多 Use Case 書籍,仍然無法寫出令人滿意的 Use Case 的開發人員。

§備註:

  1. 相關細節,請先參考
    『軟體設計教你學到會—個人化課程』具體實施辦法。
  2. 若需含稅,請於報名時提供開立發票的資料。