iT邦幫忙

0

系統與功能的定義分別

原開發好一個完整的系統,但是客戶又不斷的增加許多附加的功能,這些功能有的是和原系統的功能並無太大的相關性,可以抽出來獨立變成另一個小系統,也可以附掛在原有的系統的下面變成新增許多子功能,這要如何定義到底算是新的子系統還是新的子功能,因為會牽涉到成本的計算問題.

看更多先前的討論...收起先前的討論...
markshu提到:
這些功能有的是和原系統的功能並無太大的相關性

如果單純從這點來看(假設這點描述為真,我懷疑)
那麼就可以說是一個新系統

但我想新「系統」或「功能」不是重點
重點是收不收得到錢(或結不結得了案)

冬天時
客人來訂做衣服
已經都量好身材、挑好布料、做好衣服了
這時侯客戶想要加幾個口袋
你可以加在原來的衣服上
也可以另外加一件有口袋的背心
或者縫上有口袋的內裡

這也不是重點
最麻煩的是
當你要交付衣服時
已經是夏天
而這件衣服已經不合穿了...XD
夏天已經到了
davistai iT邦大師 1 級 ‧ 2009-12-16 10:33:02 檢舉
有個故事,有個人拿了一張皮給製帽店,請老板做一頂帽子,付了訂金後,問了老板說,這張皮可不可以做兩頂, 老板回答說,當然可以.
這個人就想,那同樣的錢,何不多做幾頂? 就跟老板說, 那就做四頂吧? 老板問他, 確定嗎?
那人說,可以的話就做啊, 老板點頭說, 那就做四頂.

等到取貨時,的確是四頂, 不過每頂都蓋不住整個頭, 那人很是生氣, 可是那老板也不是省油的燈,說你給我的材料與價錢就這麼多,平均起來就是只能做這麼大的帽子啊.

這到底是客人沒想清楚, 還是老板耍詐呢?
bizpro iT邦大師 1 級 ‧ 2009-12-16 21:09:13 檢舉
只好等下一個冬天了.
markshu iT邦好手 1 級 ‧ 2009-12-16 23:29:01 檢舉
假設這點描述為真,我懷疑?
何必描述假的..客戶千百種,這種情形虛假造
客戶若定義為新加一些功能,就只願增加一點成本
但就開發的公司來說,然當希望變成一個子系統,另外成一個小專案
ithomelee iT邦研究生 1 級 ‧ 2009-12-17 15:56:08 檢舉
客戶需求是動態的,不到驗收那天,不會停止.
開發的公司希望需求是靜態的.
一動一靜,天生個性就不合.
現在因故硬湊成一對,除了互相體諒 改變自己 各退一步 不會有什良方.

系統縱使驗收完成,需求也仍是動態的,除非地球毀了,或USER都因故不使用系統了.
swift iT邦新手 2 級 ‧ 2009-12-18 14:43:11 檢舉
需求一定是動態的,任何一個單位不會只有靜態的需求,那系統做完了,以後也不會有修改功能的需要,廠商可以離開了。
現在軟體系統開發計價的標準,不外乎就是兩種作法:功能支數或功能點數計價,或是直接以開發人日計價,這些都是以『做出這些東西需要多少時間』換算成成本來計算出客戶要付給廠商多少錢,如果需求一直是動態的變來變去,這樣的基準如何建立呢?還是客戶打算玩死廠商,再找另一個完全不懂的替死鬼廠商進來收拾善後?
分階段,目標確定,充分溝通來達成共識,才是專案能成功的不二法門。動態的需求,要委婉的告知客戶,的確不在當初定義的範圍內,要不要做,什麼時候做,另外再定義。沒有廠商會希望看到自己的客戶被系統功能困住,無法進行業務。
swift iT邦新手 2 級 ‧ 2010-03-23 02:16:36 檢舉
這樣的做法, 擺明的客戶只想占便宜, 廠商只想做一次生意然後拍拍屁股趕快跑...
如果這是做系統, 要不就是廠商的SRS寫得很爛, 騙人,不然就是客戶根本沒看SRS
6
swift
iT邦新手 2 級 ‧ 2009-12-17 14:06:43
最佳解答

如果專案進行中,有先跟客戶溝通說明,使用需求追溯的方式來製作與產生各階段的文件,除了便利驗收外,另外也可以避免這種無關原案功能的需求出現。

談需求規格的時候,這些附加的功能出現了沒?
談系統設計的時候,這些附加的功能出現了沒?
在進行使用者測試的時候,這些附加的功能出現了沒?

不管是哪個階段出現,請照已產出文件去追溯,找不到原始需求的話,就是多出來的。

另外,如果客戶太晚提出的需求,即使是跟原系統需求有關的功能,都應該說明不符合專案時程,否則專案只是會使專案風險增加,事情做不完而已。

至於要不要接受,也應該循一定的流程進行評估,包含成本,時程,人力配合都應考慮在內,不見得都要拒絕,有時候做一些人情,也方便日後驗收以及下一個新案子的進行。

10
Albert
iT邦高手 1 級 ‧ 2009-12-15 23:30:54

markshu提到:
原開發好一個完整的系統,但是客戶又不斷的增加許多附加的功能,這些功能有的是和原系統的功能並無太大的相關性,可以抽出來獨立變成另一個小系統,也可以附掛在原有的系統的下面變成新增許多子功能,這要如何定義到底算是新的子系統還是新的子功能,因為會牽涉到成本的計算問題.

原開發好一個完整的系統 >>
但是客戶又不斷的增加許多附加的功能 >>
這些功能有的是和原系統的功能並無太大的相關性 >>
可以抽出來獨立變成另一個小系統 >>
也可以附掛在原有的系統的下面變成新增許多子功能 >>
因為會牽涉到成本的計算問題. >>

系統的範圍是基本技術合約三年

每人月10 USD * 預計1000人規模 = 每月一萬美金(同行半價)
每人月10 USD * 預計100人規模 = 每月一千美金(同行半價)
每人月10 USD * 預計10人規模 = 每月一百美金(同行半價)

但是客戶又不斷的增加許多附加的功能

出差指導客戶開規格 每天 1000 USD(同行半價)
增加許多附加的功能
你開更多我們賺更多

我們 Coding 是完全免費
因為我們是用 MDA/SOA 架構
因為我們指導客戶開的規格是開細部規格
我們 Coding 就是 Mapping 到物件而已
因此不會有成本的問題
我們 Coding 幾乎就是 Mapping
幾乎沒有成本

看更多先前的回應...收起先前的回應...
外獅佬 iT邦大師 1 級 ‧ 2009-12-16 08:58:38 檢舉

來幫albert捧個場~~

Albert iT邦高手 1 級 ‧ 2009-12-16 13:14:49 檢舉

Coding 幾乎是無成本
需求文件才是成本最重的地方
他要且寫到 table.column 關係
在 讀出時 table.column 關係
在 異動時 table.column 關係
在 存檔前 table.column 關係
在 存檔後 table.column 關係
Coding 只是 Mapping 根本幾乎零成本
以後每月還有使用費(10美元 每月每一使用者)

markshu iT邦好手 1 級 ‧ 2009-12-16 23:40:04 檢舉

這是導入SAP的情形,我所指的是一般開發的WEB專案系統,SAP導入顧問當然不用談CODING,客製化的部分也是要ABPA開發人員,而若是還牽涉到.NET與SAP的RFC串接,也要ASP.NET的人員配合,系統的部分甚至也要BASIS人員的支援

swift iT邦新手 2 級 ‧ 2009-12-17 14:24:07 檢舉

這是顧問還是Presale?原來全天下的專案都是用SAP導入來做的XD

8
doesjudas
iT邦新手 2 級 ‧ 2009-12-16 09:11:57

接案簽約時, 最好能明確列出系統的主功能清單.
遇到與簽約功能不太相關的需求, 若不太困難時, 可以簡單配合設計, 重點是要先跟客戶提醒"下不為例".

markshu iT邦好手 1 級 ‧ 2009-12-16 23:44:01 檢舉

感謝分享,會納入參考.

我要發表回答

立即登入回答