加油站與小鎮 取得連結 Facebook Twitter Pinterest 以電子郵件傳送 其他應用程式 作者: 薛念林 8月 08, 2017 兩個小鎮之間有一個荒蕪之地,一些汽車會經過,一個聰明的商人於是在那裡開了一間加油站,生意還不錯。一個月過後有人在旁邊開了一間雜貨店,買點日用品喝點水,再過一些日子有人開了咖啡店,可以休息聊個天。漸漸的有人在那裡蓋房子住了下來,於是餐廳、學校、銀行進駐,慢慢的變成一個小鎮。 同樣一個故事發生在另外一個地方,生意人覺得加油站真賺錢,於是在附近蓋了第二間加油站,生意也還可以,於是第三個人再進來蓋加油站,開始削價競爭,最後三家生意都做不下去紛紛倒店了。 老掉牙的故事,每隔四五年就會聽到一次,但感受卻越來越深。 我們現在做的系統(或事情),是第二個加油站,還是邁向小鎮的咖啡廳? 取得連結 Facebook Twitter Pinterest 以電子郵件傳送 其他應用程式 留言
課程改進 作者: 黃為德 7月 13, 2011 今年在輔大招開的TSCE11,其中在Panel Discusion中(主題:軟體核心能力),我提議軟工教育訓練由OO modeling概念開始,而程式則依據models來撰寫,這種提議可能須修改教學程序,不過我認為,「軟體核心能力」的目的乃是要建立優良的軟體系統,而models比複雜的程式容易描述系統,也比較容易保養系統,因為其抽象層次較高,也符合程式語言以及軟體發展方法的演變之故。我提出這種意見,希望對軟體工程教育有興趣的人士能夠討論,提供意見。 閱讀完整內容
從種樹小故事看流程改善 作者: 薛念林 2月 25, 2010 今天上課前突然想到一個故事,稍作改變後用來跟學生講解流程改善。 某公司聘用一個員工上種樹,他需要鋤頭挖洞,將樹植下,最後再用鏟子把地鏟平。以他的速度一天只能種十顆樹,比老闆預期的進度差太多,於是老闆又聘了兩個人來幫忙,速度提昇了兩倍。 [from work harder to work smarter] 但是這樣的速度還是不夠快,而成本又太高已經沒有經費在聘用員工,只好想辦法進行流程改善。他仔細觀察三個員工的工作方式,發現花在工具的抽換花了太多的時間。於是他重新更換了三個人的工作:A 只做挖洞的動作,B 隨後將樹植下, C 隨後在將地鏟平。這樣的工作模式可以省去更換工具的時間,更棒的是,每個人更能夠把自己的工作做的專精,效率又提高了兩成。 [但,小心成為官僚流程] 這樣的流程跑了很久,員工來來去去換了許多次,但都保持一定的高效率。一天,老闆去看工地,發現A 挖玩洞後,C 緊接著把洞補起來填平,老闆生氣的說:『你們在做什麼?B君呢?』 『喔,他今天請假了』A 說。 最後這個笑點看似誇張,但在企業流程卻常見。許多人習慣了只知道follow 流程去做,卻不之所以然,所以很容易鬧出笑話。另一方面企業也常常不重視流程的教育訓練,所以常常空有好流程卻無法發揮最大的效用。 閱讀完整內容
CMMI是什麼? 作者: Y C Cheng 8月 01, 2008 CMMI(Capability Maturity Model Integration) 將軟體開發流程視為一種工程 ( 製造 ) 流程,利用控制、量測、改善 (control, measure, and improve) 等循序漸進的方法,達到軟體流程改善的一個框架。 CMMI 是在美國國防部 DoD 以及國防工業協會 (NDIA) 的支持下, CMU 的軟體工程學院 (Software Engineering Institute, SEI) 發展出來的模型。 CMMI 中許多的概念與原理來自於創立 SEI 軟體流程計畫 (software process program) ,並曾任職於 IBM 、領導大型系統軟體開發的 Watts Humphrey 。根據 IBM 與 SEI 的經驗, Humphrey 將廣泛運用在製造流程中的統計流程控管 (Statistical process control, SPC) 的概念,加以修正、擴充後運用於軟體流程管理中。 在一方面,定義軟體開發流程中的各種活動與其彼此間的關係,是將軟體開發流程視為一種製造流程,並實施量化控制的前提之一。在另一方面,由於這些活動相當繁多、複雜且彼此牽動,故唯有在軟體開發活動結構定義清楚之後,方能找出可量測事物,並根據其關連性推論量測值的意義。 CMMI 將軟體開發相關活動的實務作法分為 25 個流程領域 (process area, PA) ,定義其需管理的項目,含一般目標、特定目標、具體作法等,並找出其彼此間的關連性。 依性質來分,這些 PA 分屬於流程管理、專案管理、工程、與支援等四大類 流程管理 : CMMI 的目的是流程改善,因此流程的定義、維護、修正等均為重要活動。 專案管理 :因為軟體開發、維護均以專案為單位,以便在專案進行前進行人力、資源、時間、經費計算以及專案進行中管控,如需求變更、進度監控等。 工程 :軟體開發實質上涵蓋許多軟體工程的原理與具體作法,如需求發展、分析、應用設計、系統設計、實作、測試、部署、維護等相關活動,這些活動需要加以管理。 支援 :支持前三類活動進行之環境與工具之支援活動等,例如提供產出物與組態管控、議題追蹤等活動。 CMMI 有連續式 (continuous) 與階段 (staged) 式兩種表示法。採用連續表示法 閱讀完整內容
留言
張貼留言