發表文章

Atomic commit?

在Study SubVersion 有一個技術名詞讓我感到很困惑, 一直到WANdisco CTO Rahul Bhargava 來訪,才恍然大悟, 我們先看看網路上的翻譯 1. 不可分割的送交 一個送交動作, 不是導致所有更動都送入檔案庫, 就是完全不會送入. 這讓發展人員以邏輯區段建立更動, 並送交更動. 2. 原子提交 至於簡中解釋就不再多說了 3.英文版SubVersion Book 的解釋 Atomic commits A collection of modifications either goes into the repository completely, or not at all. This allows developers to construct and commit changes as logical chunks, and prevents problems that can occur when only a portion of a set of changes is successfully sent to the repository. 如 果初接觸SubVersion, 我相信很多人對段文字很困惑, Rahul 先生用一個簡單的例子來解釋為何要atomic commit, 他說如果你修改10個Folder裏面的10個檔案, 然後用CVS commit 到CVS Server, 可是commit到第5個folder的檔案, 網路突然斷線, 你猜會發生什麼事? 因為CVS並不support atomic commit 所以CVS是一個一個檔案upload 到 Repository 做 diff 比對,然後真正將diff的結果寫入CVS Server的meta data file , 所以網路斷線的結果照成前5個folder的檔案是commit成功, 後面的5個folder的檔案是commit 失敗, 所以造成local 端的工作目錄與Repository是處於out of sync 的狀態, 我這邊沒有實際測試CVS Client端例如WinCVS對於那些commit 失敗的檔案是如何顯示其狀態, 但是可想而知與Repository out of sync 必需要再做一次cvs update. SubVersion 支援Ato...

NCsoft線上遊戲在台獲專利 業者跳腳?

http://udn.com/NEWS/INFOTECH/INF4/3351214.shtml 軟體專利將引起的糾紛, 這次燒到了線上遊戲業 看完這篇報導, 心想審核專利的長官大概沒有在玩線上遊戲.

做好軟體產品管理必需的11個能力

在 Quality Software Project Management 書中有提及產品管理的11個能力(在書中提及的Product Management應該是泛指軟體產品!) , 在此將它摘要下來檢核自己是否具備軟體產品的管理能力 Accessing Process- Defining Criteria for Reviews : 評估工作程序-定義審核的標準 Awareness of Process Standards - Understanding Process Standards : 體認工作程序標準-理解工作程序標準 Defining the Product-Identifying Customer Enviroment and Product Requirements : 定義產品-確認客戶環境和產品需求 Evaluating Alternative Process-Evaluating Various Approaches : 評估可供選擇的工作程序-評估不同的方法 Managing Requirements-Monitoring Changes in Requirements : 管理需求-監控需求的變更 Managing Subcontractors-Planning,Managing, and Monitoring : 管理外包商-計畫,管理,和監控完成度 Performing the Initial Accessment-Accessing Difficulty, Risks, Costs, and Schedule : 執行初始的評估-評估困難度,風險,成本,和時程 Selecting Methods and Tools-Defining Selection Processes: 選擇方法和工具,定義選擇工作程序 Tailoring Processes-Modifying Standard Processes to Suit a Project: 裁剪工作程序,修改標準工作程序使合適於專案 Tracing Product Quality-Monitoring the Quality of an Evolving Product: 追蹤產品的品質,監控發展中產品的品質 Understanding Development Ac...

精品控群聯侵權 求償2,000萬

圖片
新聞來源http://udn.com/NEWS/STOCK/STO5/3333886.shtml 為什麼會對這則新聞有興趣, 因為這兩家的總經理我都認識, 再來自己剛好多年前與USB Mass Storage 相關技術與產品有不解之緣, 也開發過相關軟體. 其實最感興趣的是他們所爭執的Flash Mail "軟體專利" 到底合不合理? 如果你也待過這個產業, 看著USB隨身碟的產品發展歷史, 把收信軟體放在隨身碟並將隨身碟當做E-Mail 收信的Storage, 精品絕對不是第一家,但是精品確先申請到了這個產品專利,而Phison 沒有申請. Phison的總經理此時一定是咬牙切齒, 因為早在精品的Flash Mail發表 , Phison 的經銷商也推過類似產品, 只不過裏面的軟體是拿現成的E-Mail收信軟體裝在隨身碟來賣, 也許概念太新或是做的還不夠Friendly, 後來我就沒看到後續升級的產品. 不過Phison總經理大概也想不到精品會持續開發這個產品並申請專利. 寫到這裏, 不禁覺得 "軟體專利" 猶如雙面刃, 可以保護創作者也會傷害創作者. 由這次的精品控告Phison事件, 也在做軟體開發的你/妳, 是不是覺得開發軟體產品前要先申請專利? 不然產品開發完成後專利竟然被競爭對手申請走 , 那軟體程式豈不是白寫了? 而且對手反咬你一口, 不過有申請過專利的朋友知道申請專利和養專利可是要花費的, 也許您的軟體產品會大賣, 但是軟體銷售不好, 軟體專利反而成為一大負擔. 結論是我建議專利局在審核軟體專利時應該要調查一下市場是否早有類似產品, 不然軟體專利會演變成另外一個網路蟑螂, 成為軟體的創作者的另一個惡夢.

Activity V.S Task

圖片
看了Quality Software Project Management 第一章節, 發現原來Activity 和 Task 的定義是不同的在PMBOX對 Activity & Task 的定義如下 Activity : an element of work performed during the course of a project; an activity normally has an expected duration, expected cost, and expected resource requirements and can be subdivided into tasks Task: a generic term for work that is not included in the work breakdown structure, but potentially could be a further decomposition of work by the individuals responsible for that work; also , the lowest level of effort on a project. 在美國業界引起廣大的討論, 到底Task是屬於Activity的一部份, 還是Activity是屬於Task的一部份,還好, 在2000年版的PMBOX給予更清楚的定義 Task is a generic term for work that is not included in the work breakdown structure, but protentially could be a further decomposition of work by the individuals reponsible for that work. Also it is the lowest level of effort on the project . And an activity is an element of work performed durning the course of a project. An acitvity normally has an expected duratio...

軟體工程的書單-1

圖片
軟體工程的知識學無止盡, 這一本書含蓋許多我想學習的知識, 下定決心要將它好好的讀一遍

Word's Version Control

圖片
Word 檔案為 MicroSoft 獨有的檔案格式 , 目前為最受歡迎的文書處理檔案格式 , 在專案管理過程中 , 更被許多專案經理拿來撰寫專案指導文件 , 客戶需求規格文件 , 或是使用者操作手冊 , 工程師也會利用 Word 來撰寫工程規格 , 使用者介面規格等等 . 但是面對專案中各種不同的 Word 檔案 , 身處在瞬息萬變的資訊科技產業 , 文件的變更管理已經是無可避免 , 客戶的需求一直在變 , 工程規格也是隨之而變 , 最大的困擾是如何維護這些 Word 檔案的版本 ? 如何比對這些不同版本 Word 文件的異同 ? 成為日常工作中的最大夢魘 ,Office 2003 雖然本身具備有版本控管功能 , 也有比對 Word 檔案異同功能 , 但是這兩個功能確沒有整合讓使用者比對同一文件不同版本的功能 , 使用者只好將不同版本以另存新檔的方式再逐一比對 . TortoiseSVN為SubVersion的Windows 用戶端, SubVersion為美國COLLABNET公司所支援的OpenSource, 為新一代 的 版本控制引擎, 除了可控管各式程式語言檔案例如C/C++/C#, JAVA , IC設計的Verilog, VHDL , 甚至Word檔, PowerPoint , Excel 都可以利用SubVersion做文件版本控管, 當團隊中有兩個人以上要維護共同的檔案時的版本同步, SubVersion可以提供很好的解決方案. 如果需要更多SubVersion 資訊可到 http://subversion.tigris.org/ 使用環境 SubVersion Server 版本 1.2.3 Windows XP SP2 中文版 TortoiseSVN 1.2.4.4479 Office 2003 SP2 使用TortoiseSVN比對 本文示範案例為一個Word檔案名為 「嵌藝創研推出CodeBeamer+ SubVersion震撼組合」文章, 此文章主要由yu-shiu撰寫, maoyang負責校稿與修正. 情境一: yu-shiu 已經將最新的文件納管到檔案庫, 並通知maoyang更新他的工作目錄以同步yu-shiu最新修改的文章 圖 1 maoyang使用SVN Update 以同步yu-shiu的檔案 圖 2...