在實際的軟件開發(fā)過程中,我們常常可以看到這樣的情形:一方面是開發(fā)人員指責需求人員不懂用戶的真正的需求,講解的需求和最后客戶的要求想去甚遠或指責需求只是客戶的傳聲筒,拿到的需求不整理一下,就丟給開發(fā)人員開始做。另一方面是需求罵開發(fā)人員笨,對需求一點不理解,只懂機械的做。
這樣的情況,常常導致系統(tǒng)不停的修改,bug不斷。客戶,需求,開發(fā)都筋疲力盡,然后就是項目延期,直到死亡。
?????? 這樣的情況,相信每個做企業(yè)系統(tǒng)的開發(fā)人員都遇到過,一提起這樣的問題,大家只有擺腦袋,喃喃到“簡直就是惡夢,太難了”
^_^(希望不要勾起你痛苦的回憶)
???? 其實出現(xiàn)這樣的情況,大部分是應為需求人員和開發(fā)人員對問題的思考模式不同導致的。在業(yè)務語言和業(yè)務規(guī)則向計算機語言和系統(tǒng)模型轉換之間有一個的過程。這個過程必須有一個銜接的人和模式來做這件事情。
???? 這個角色需要精通業(yè)務概念和系統(tǒng)實現(xiàn)方式。然后運用分析模式方式把業(yè)務概念轉換為系統(tǒng)模型概念。需求人員理解業(yè)務總是自覺不自覺的把一些他們認為是常識的思維放進去,但是這部分只是不會出現(xiàn)在需求文檔中。這就需要分析人員不斷的和他需求聊天,不但的詢問挖掘出來。然后寫入概要設計和詳細涉及文檔中。
還有需求人員往往在寫程序需要處理的邏輯的時候會不自覺的融入人類的思考模式,在其中加入一些智能判斷,但是這部分邏輯往往用計算機實現(xiàn)比較困難。這就需要分析人員的洞察能力,找到客戶的真正需求,然后轉換方式來實現(xiàn)。
????? 例如:有這樣一個需求是分析業(yè)務數(shù)據(jù)的。表中有27列,其中a,b,c,d,e,g,p,q,y,z為判斷過程中所涉及到的數(shù)據(jù)項,各項之間的關系為:b列中的傳輸系統(tǒng)速決定z列中的最大時隙編號。如2。5G系統(tǒng)對應的最大時隙編號為16或8(保護)。10g系統(tǒng)對應的最大時隙編號為64或32(保護)。
????? D列為與C列中站點相領的前向站點,e列為與c列中站點相領的后向站點。
????? G列與p列或q列為--對應關系,即唯一的一個端口對應當前傳輸系統(tǒng)的一個時隙。
???? ?p列和q列在一行中不同時出現(xiàn)。即同時只有前項時隙或后項時隙,兩者不同時存在。
????? y列為版本號,1代表設計版,2代表工程版。當g列中相同的兩個端口對應的z列不同的時隙時,以Y列為2的為準。
?
(一下為客戶平時所用的人工分析方式)
分析過程:
1)首先根據(jù)系統(tǒng)名稱中的2。5G可以判斷出Z列的最大編號為16或8,對z列進行觀察后得出最大編號為8。即存在8個時隙,編號分別為1~8.
2)? 將c列為“杭環(huán)城北路”站點下所有z列的數(shù)據(jù)觀察后可看出z列無5,6兩個時隙,于是初步判斷時隙在該站點為穿通。
3)c列為“杭環(huán)城北路”所對應的D列前向站點為“衢州網(wǎng)通”。在z列中查找所有c列為“衢州網(wǎng)通”所對應的時隙,發(fā)現(xiàn)5,6兩個時隙編號,且p,q兩列中僅q列有數(shù)據(jù),說明該時隙為后向時隙。可得出5,6兩個時隙的起始站點為“衢州網(wǎng)通”。因該時隙對應的Y列均有1,2兩個數(shù)值,根據(jù)“各項間關系”,僅取Y列數(shù)值為2的數(shù)據(jù)為有效數(shù)據(jù)。
4)c列為“杭環(huán)城北路”所對應的e列后向站點為“寧波網(wǎng)通”。在z列中查找所有c列為“寧波網(wǎng)通”所對應的時隙,發(fā)現(xiàn)5,6兩個時隙編號。且p,q兩列僅p列有數(shù)據(jù),說明該時隙為前向時隙,可得出5,6兩個時隙的終止站點為“寧波網(wǎng)通”。因該時隙對應的Y列均有1,2兩個數(shù)據(jù),根據(jù)各項間干系,取Y列為2的數(shù)據(jù)為有效數(shù)據(jù)。
綜合判斷1~4不的判斷過程,可以得出結論:編號為5,6的兩個時隙以“衢州網(wǎng)通”為起點,途徑“杭環(huán)城北路”以“寧波網(wǎng)通”為終點
可以看到這個分析過程很不利于計算機話
(一下為我的分析方式)
------推薦的方式
-------其他
(未完待續(xù)........)
posted on 2006-07-01 11:58
kebo 閱讀(400)
評論(0) 編輯 收藏 所屬分類:
java