一位系統(tǒng)分析師的工作經(jīng)驗(yàn)總結(jié)
2010-07-19 11:25 | 5842次閱讀 | 來源:csdn.net 【已有14條評(píng)論】發(fā)表評(píng)論 談到項(xiàng)目的需求分析,幾乎每個(gè)軟件開發(fā)人員都會(huì)為此感到頭疼。時(shí)間緊任務(wù)重流程混亂,客戶需求的頻繁變動(dòng),成為軟件開發(fā)永遠(yuǎn)不變的話題。 博客專家Macming近日發(fā)布了一篇博客,談到了在前公司一些項(xiàng)目實(shí)施遇見的問題,并分享了他的個(gè)人系統(tǒng)分析的經(jīng)驗(yàn),其中特別提出的是用戶需求分析的“二八“法則,Macming認(rèn)為:
你對(duì)需求分析怎么看? 博客原文: 剛在一家公司離職,因?yàn)楣旧鲜泻笠?guī)模迅速壯大,急于開發(fā)幾款戰(zhàn)略產(chǎn)品支撐,公司高層對(duì)我們之前進(jìn)行的一個(gè)項(xiàng)目非常重視,投入巨大。系統(tǒng)開發(fā)之初需 求原本很明確,但新的需求總是在開發(fā)的過程中不斷地被提出,今天來了個(gè)推廣部經(jīng)理,明天來了個(gè)市場部總監(jiān),各有各的想法,并且各個(gè)部門、分公司經(jīng)常找開發(fā) 小組開會(huì)提出新的需求變更。由于項(xiàng)目經(jīng)理的“軟弱”,我們一般很難拒絕。因?yàn)槔峡偪偸且瓤吹阶龀龅男Ч偬嵋庖姡皂?xiàng)目做的很急,系統(tǒng)框架在剛開始設(shè) 計(jì)時(shí)沒有被充分討論、簡化,感覺在后續(xù)開發(fā)中遇到很多問題, 現(xiàn)已離職,也無所顧忌,特談一談對(duì)系統(tǒng)分析的看法,總結(jié)一下之前的工作的經(jīng)驗(yàn),有不當(dāng)之處請(qǐng)指正。 做需求分析,我覺得最重要的任務(wù)是簡化業(yè)務(wù)流程、規(guī)則、邏輯;豐富用戶體驗(yàn); 0. 盡量將復(fù)雜的用戶需求抽象成最簡單的業(yè)務(wù)規(guī)則、數(shù)據(jù)庫結(jié)構(gòu)來實(shí)現(xiàn)。因?yàn)樾枨笫遣豢赡芤幌伦泳痛_定的,假設(shè)我們剛開始對(duì)核心需求的實(shí)現(xiàn)方式增加了一點(diǎn)點(diǎn)的復(fù) 雜性,比如說多加了一個(gè)表,一個(gè)耦合字段,那么對(duì)于以后的擴(kuò)展我們就有可能要去制定更加復(fù)雜的規(guī)則去適應(yīng),從而“被逼”消耗更多的工作,使用更加復(fù)雜的結(jié) 構(gòu)和業(yè)務(wù)規(guī)則。尤其當(dāng)需求發(fā)生不斷變化時(shí),改變這種體系所要花費(fèi)的代價(jià)也會(huì)隨之幾何級(jí)上升(因?yàn)橐话闶遣豢赡娴模?,用戶的可操作性也?huì)隨之越低,并增加了 其使用上的難度,從而不得不對(duì)其進(jìn)行培訓(xùn)。 1. 對(duì)于一個(gè)面向公共(大用戶群、非公司內(nèi)部系統(tǒng))的系統(tǒng),要充分進(jìn)行“二八“劃分;一個(gè)系統(tǒng)不可能滿足所有人的需求;要關(guān)注最廣大的80%的用戶,因?yàn)榱硗?20%的需求很可能會(huì)使另外的80%的人產(chǎn)生困擾;一般人最容易記得7個(gè)字以內(nèi)的句子,同樣大部分軟件只有20%的功能是經(jīng)常使用到的,對(duì)于互聯(lián)網(wǎng)公眾平 臺(tái)來講對(duì)另外不常用的80%需求的“重視”,只會(huì)分散開發(fā)人員的注意力,使用戶體驗(yàn)、易用性、可操作性下降,并增加系統(tǒng)復(fù)雜性、維護(hù)和運(yùn)營成本;因此要將 主要精力放到那20%功能的開發(fā)上。 2. 對(duì)于核心產(chǎn)品,業(yè)務(wù)規(guī)則和邏輯的設(shè)計(jì)萬不可草率,并且不要集中由“一類”人去做;要從全局的角度制定業(yè)務(wù)流程,最好一開始就將最終使用和開發(fā)者納入業(yè)務(wù)流 程、規(guī)則、邏輯設(shè)計(jì)隊(duì)伍。并充分討論精簡后完成產(chǎn)品的整體構(gòu)架設(shè)計(jì),然后進(jìn)入編碼階段。綜合考量成本/效果的比例,舍棄對(duì)系統(tǒng)可能產(chǎn)生混亂的設(shè)計(jì),并想辦 法最尋找簡單的替代方案。而且盡可能一開始就確定數(shù)據(jù)庫的主體框架,而非去制定每一步的細(xì)節(jié)。 3. 對(duì)于功能寵大、業(yè)務(wù)復(fù)雜的系統(tǒng),我認(rèn)為用戶需求接受比在 5:3:2 左右是正常的, 相當(dāng)于10條需求中有5條可以完全接受的,有3條需要將實(shí)現(xiàn)方式略加改變而達(dá)目的,但一般有1~2條無法實(shí)現(xiàn)是正常的,因?yàn)榭赡軙?huì)對(duì)系統(tǒng)造成較大的復(fù)雜性 或不利于擴(kuò)展,而且很有可能跟現(xiàn)有系統(tǒng)的功能產(chǎn)生沖突。不利于系統(tǒng)結(jié)構(gòu)最簡化,增加系統(tǒng)運(yùn)營成本的不可控風(fēng)險(xiǎn)。 4. 當(dāng)公司的主打產(chǎn)品經(jīng)歷過數(shù)次功能擴(kuò)展、升級(jí)后,而造成的構(gòu)架復(fù)雜性、數(shù)據(jù)庫負(fù)載、穩(wěn)定性、可操作性和用戶友好度下降達(dá)到一定程度時(shí),就應(yīng)該考慮將關(guān)聯(lián)性不 大的功能分離成相對(duì)獨(dú)立的幾個(gè)系統(tǒng),只進(jìn)行核心數(shù)據(jù)表進(jìn)行共享,以此增強(qiáng)各個(gè)分系統(tǒng)的可重用和可靠性。從而避免只向一個(gè)大型系統(tǒng)輸出復(fù)雜性,造成可靠性下 降,以及維護(hù)、運(yùn)營成本的上升。 |
|