全站文章 iT邦幫忙
iThome Online提供免費電子報,現在就訂,最新IT訊息每日寄達。

iThome 每日新聞報
iThome 產品技術報
加入iThome Online會員,立即使用討論區、Blog等服務。

免費加入會員
登入 / 登出
管理會員帳號
忘記帳號密碼
聯絡客服
訂閱周刊
讀者服務
13' E政府專刊no.7(48)
13' iTcloud No.3(47)
12' E政府專刊no.6(46)
12' 個資法專刊No2(45)
12' iTcloud No.2(44)
12' e政府專刊No.5(43)
12' 個資法專刊(42)
11' CIO專刊(41)
11' e教育專刊No.3 (40)
11' e政府專刊No.4 (39)
11'iTcloud專刊(38)
10' e教育專刊No.2 (37)
10'e政府專刊No.3 (36)
09'e政府專刊No.2 (35)
09'e教育專刊(34)
09'e政府專刊(33)
08'企業資安專刊-端點安全防護(32)
08'企業採購情報誌(31)
07'資訊安全技術應用專刊(30)
07' 新世代資料中心專刊(29)
07'企業資安技術應用專刊(28)
企業採購情報誌'06冬季號(27)
規畫軟體功能:減法比加法重要
文/王建興 (清華資工所博士班研究生) 2014-02-06
分享到facebook
規畫軟體功能時,減法時常比加法重要。要在規畫時賦予軟體新的功能容易,因為你很容易天馬行空的想出各種看起來威力強大的功能,但是要割捨一個功能卻是相對困難

王建興
目前在一家網路應用軟體公司擔任技術長的工作,專長是物件導向設計以及Internet應用系統的開發。他過去的研究興趣包括:點對點網路、分散式網路管理、行動式代理人、感知網路。從企業應用軟體系統,到個人行動裝置上的應用,他都有一些開發的經驗。並且對於網路創業及網路應用的發展趨勢,持續保持高度的關心。

上一回說到,洞察使用者需求是軟體成功的關鍵,這個道理淺顯易懂,但困難的是,如何找到使用者真正的需求。

事實上,我們時常苦於找不到使用者真正的需求。當我們自己設計軟體時,會試著去想像使用者可能的需求,為軟體逐一增加功能,直到我們認為使用者應該可以滿意為止。但往往就在我們筋疲力盡交出心中完美的軟體之後,才陸續發現那些根本不是使用者所在意的。

找出使用者真正需求的困難度
即便不是自己設計產品,而是承接軟體開發專案,上述的情況依然會發生。因為客戶端會代表使用者的角色,負責提出需求,由開發團隊記錄並分析,但這位代表使用者端的角色在需求訪談過程中所提供的需求,也時常不是使用者真正需要的。這才會使得日後需要再持續的變動需求,因為隨著開發工作的推展,當代表使用者的角色可以實際看到甚至是使用開發中的系統時,他們對於需求會更加得明白,同時也意識到自己在開發初期所以為的需求,其實並不是使用者真正需要的,也才會引發持續的需求變動及新增功能。

從軟體開發的角度來看,找出真正的需求很重要。若不能在規畫初期找出真正的需求,直到開發末期甚至是上線之後才發現真正的需求,不僅是難以避免人仰馬翻的局面,所做出來的軟體自始至終都不能為使用者提供助益,也就未能達到開發軟體的目的。

在開發過程中或甚至上線後才陸續發現真正的需求,而導致新增需求或變更需求,一直以來都是開發團隊的惡夢。有一句話很有名:「要殺一個程式設計師不需要刀,改三次規格就好」,由此就可以得知程式設計師有多麼的痛恨變更需求了。所以單就開發來看,不能找出真正的需求,其實會帶來很多隱藏的成本、要付出許多額外的代價。

對開發而言,不能找出真正的需求固然代價沉重,但對一個專案或產品而言,不能充分滿足使用者的需求、為他們提供應有的助益,所付出的代價也是很鉅大,因為所開發出來的軟體沒有發揮應有的用處。

對一個想要吸引使用者購買或是使用的軟體來說,不能充分滿足使用者需求,產品最後的命運時常就是乏人問津。這麼一來,不論公司是想透過銷售軟體來獲利,或藉助軟體達到商業策略或布局,終究會因為使用者不接受而敗北。無論如何,代價都會非常慘烈。

找出軟體真正需求的重要性與困難度,在CMMI軟體開發成熟度的規範中就可看出端倪。CMMI ML2 等級要求的能力是管理需求,而到了ML3等級就需要更進一步的「開發需求」。所謂開發需求,就不只是單純記錄、分析使用者所提出的需求而已,而是更進一步的協助使用者找出真正的需求。


1 / 2 下一頁

分享到facebook

2014資安趨勢研討會
更多研討會
▼ ADVERTISEMENT ▼
▲ ADVERTISEMENT ▲

電週文化事業版權所有、轉載必究 •Copyright © iThome | 刊登廣告授權服務服務信箱隱私權聲明與會員使用條款關於iThome