版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
CMS項(xiàng)目?jī)?nèi)容管理系統(tǒng)ContentManagementSystem
王建平
學(xué)習(xí)內(nèi)容WEB項(xiàng)目開發(fā)一般流程CMS項(xiàng)目流程詳解WEB項(xiàng)目開發(fā)的一般流程—總綱需求分析的確定架構(gòu)與設(shè)計(jì)架構(gòu)分析與設(shè)計(jì)業(yè)務(wù)邏輯分析業(yè)務(wù)邏輯設(shè)計(jì)界面設(shè)計(jì)開發(fā)環(huán)境搭建開發(fā)-測(cè)試-開發(fā)-測(cè)試培訓(xùn)文檔編寫開發(fā)的一般流程—需求分析為什么需求分析需求分析是指理解用戶需求,就軟件功能與客戶達(dá)成一致,估計(jì)軟件風(fēng)險(xiǎn)和評(píng)估項(xiàng)目代價(jià),最終形成開發(fā)計(jì)劃的一個(gè)復(fù)雜過程,在這個(gè)過程中,用戶的確是處在主導(dǎo)地位,需求分析工程師和項(xiàng)目經(jīng)理要負(fù)責(zé)整理用戶需求,為之后的軟件設(shè)計(jì)打下基礎(chǔ)。需求分析階段結(jié)束后,要求得到相關(guān)的需求文檔,需求分析之所以重要,就因?yàn)樗哂袥Q策性,方向性,策略性的作用,他在軟件開發(fā)的過程中具有舉足輕重的地位.大家一定要對(duì)需求分析具有足夠的重視.在一個(gè)大型軟件系統(tǒng)的開發(fā)中,他的作用要遠(yuǎn)遠(yuǎn)大于程序設(shè)計(jì).
需求分析的任務(wù)
需求分析的任務(wù)就是解決“用戶要做什么”的問題,就是要全面地理解用戶的各項(xiàng)要求,并準(zhǔn)確地表達(dá)所接受的用戶需求,并且能夠根據(jù)自己對(duì)用戶需求的理解,勸說并誘導(dǎo)客戶剔除不合理的需求。需求分析過程需求分析過程
需求開發(fā)過程域
需求開發(fā)過程域
需求開發(fā)的目的是通過調(diào)查與分析,獲取用戶需求并定義產(chǎn)品需求。
需求調(diào)查的目的是通過各種途徑獲取用戶的需求信息(原始材料),產(chǎn)生《用戶需求說明書》。
需求分析的目的是對(duì)各種需求信息進(jìn)行分析,消除錯(cuò)誤,刻畫細(xì)節(jié)等。常見的需求分析方法有“問答分析法”和“建模分析法”兩類。
需求定義的目的是根據(jù)需求調(diào)查和需求分析的結(jié)果,進(jìn)一步定義準(zhǔn)確無誤的產(chǎn)品需求,產(chǎn)生《產(chǎn)品需求規(guī)格說明書》。系統(tǒng)設(shè)計(jì)人員將依據(jù)《產(chǎn)品需求規(guī)格說明書》開展系統(tǒng)設(shè)計(jì)工作。
需求管理過程域需求管理過程域
需求管理的目的是在客戶與開發(fā)方之間建立對(duì)需求的共同理解,維護(hù)需求與其它工作成果的一致性,并控制需求的變更。需求確認(rèn)是指開發(fā)方和客戶共同對(duì)需求文檔進(jìn)行評(píng)審,雙方對(duì)需求達(dá)成共識(shí)后作出書面承諾,使需求文檔具有商業(yè)合同效果。
需求跟蹤是指通過比較需求文檔與后續(xù)工作成果之間的對(duì)應(yīng)關(guān)系,建立與維護(hù)“需求跟蹤矩陣”,確保產(chǎn)品依據(jù)需求文檔進(jìn)行開發(fā)。需求變更控制是指依據(jù)“變更申請(qǐng)-審批-更改-重新確認(rèn)”的流程處理需求的變更,防止需求變更失去控制而導(dǎo)致項(xiàng)目發(fā)生混亂需求開發(fā)過程中困難知識(shí)技能問題
行業(yè)知識(shí)是無邊無際的。俗話說“隔行如隔山”,需求分析員可能是某一領(lǐng)域的專家,但當(dāng)他接手陌生的業(yè)務(wù)時(shí),他該怎么辦?首先他要有勇氣做事,否則連實(shí)踐的機(jī)會(huì)都沒有。其次他應(yīng)當(dāng)趕緊補(bǔ)習(xí)這一領(lǐng)域知識(shí),不論是通過自學(xué)還是培訓(xùn)的方式,否則他很難與用戶交流。如果可能的話,開發(fā)方最好請(qǐng)既懂軟件又懂應(yīng)用域知識(shí)的行家來幫忙。需求開發(fā)過程中困難態(tài)度問題
相當(dāng)多的開發(fā)人員習(xí)慣于被動(dòng)地對(duì)待需求開發(fā)。每當(dāng)遇到麻煩、挫折時(shí),他們會(huì)發(fā)牢騷,找出一堆用戶的毛病。很多開發(fā)人員錯(cuò)誤地以為:需求是用戶的事情,不是我們的事情。我們?yōu)橛脩糸_發(fā)軟件,難道用戶不該告訴我們應(yīng)當(dāng)開發(fā)什么嗎?如果用戶說不清楚需求,或者經(jīng)常變更需求,這類問題是用戶產(chǎn)生的,應(yīng)當(dāng)由他們自己負(fù)責(zé)。
用戶說不清楚需求或者需求發(fā)生變更,這些都是常見的問題,并不是絕癥,是人們可以設(shè)法解決的??杀氖情_發(fā)人員把這些問題當(dāng)成了借口,不愿主動(dòng)攻克問題,導(dǎo)致需求問題擴(kuò)散到整個(gè)軟件開發(fā)過程,產(chǎn)生太多的后患。軟件企業(yè)的領(lǐng)導(dǎo)應(yīng)當(dāng)給具有錯(cuò)誤觀念的開發(fā)人員們洗腦:需求分析員的天職就是在有限的時(shí)間內(nèi)獲取準(zhǔn)確而細(xì)致的用戶需求,如果做不到就是失職,不要找借口。
合作關(guān)系
如果需求分析員不能與用戶建立良好的合作關(guān)系,那么他們?cè)谛枨箝_發(fā)過程中會(huì)很疲憊。倘若用戶不能很好地配合需求分析員,那并不表示他是個(gè)壞蛋。因?yàn)橛脩粲兴约旱南敕ǎ何一卮鹆四銈兊膯栴},講了該講的。我們付錢給你們,難道還要我伺候你們不成?我還要干自己的事情,別打擾我了。你們自己想辦法把活干好吧
……。
需求分析員不是銷售人員,他們不可能象銷售人員那樣通過某些手段籠絡(luò)住用戶就能成功。出色的需求分析員不僅要有過硬的專業(yè)知識(shí),還要具備較強(qiáng)的交流、溝通能力。開發(fā)方與用戶的合作關(guān)系對(duì)需求開發(fā)而言是至關(guān)重要的。對(duì)于重大的、復(fù)雜的項(xiàng)目,我們不能完全期望雙方能夠自發(fā)地建立起良好地合作關(guān)系,這樣風(fēng)險(xiǎn)太大。開發(fā)方和用戶方在開展需求開發(fā)之前,雙方協(xié)商并撰寫“用戶在需求工程中的權(quán)利與義務(wù)”,即以協(xié)議的方式確定合作關(guān)系?!昂迷挕焙汀俺笤挕倍颊f在前頭,這樣能減少今后的摩擦。如果條件允許的話,開發(fā)方最好為用戶舉辦關(guān)于需求工程的培訓(xùn),這樣的培訓(xùn)將使用戶明白需求的重要性以及忽視需求的危害性,從而促使他們積極友善地參加需求工程中的各項(xiàng)活動(dòng)。用戶在需求工程中的“權(quán)利”用戶在需求工程中的“權(quán)利”
1.有權(quán)要求開發(fā)方派遣資質(zhì)合格的需求分析員和相關(guān)人員。2.有權(quán)要求開發(fā)方采用用戶熟悉的語言來描述需求,即開發(fā)方必須提供用戶看得懂得需求文檔。3.有權(quán)審查需求文檔,并對(duì)有爭(zhēng)議的需求作出決策。如果認(rèn)為需求文檔不能準(zhǔn)確地反映用戶真實(shí)的意愿,可以拒絕在需求文檔上簽字。4.如果用戶想要變更需求,有權(quán)要求開發(fā)方對(duì)該變更將產(chǎn)生的影響作出真實(shí)可信的評(píng)估,以便用戶決定是否變更需求。用戶在需求工程中的“義務(wù)”用戶在需求工程中的“義務(wù)”
1.以積極友善的態(tài)度與開發(fā)方人員交流、協(xié)作,盡可能地為開發(fā)方人員提供工作和生活上的便利。2.樂意接受需求分析員的采訪,在不泄漏機(jī)密的前提下盡可能地回答需求分析員的問題。3.在不泄漏機(jī)密的前提下,盡可能地向需求分析員提供與需求相關(guān)的材料。4.與需求分析員共同評(píng)審需求文檔,確保需求文檔準(zhǔn)確地反映用戶真實(shí)的意愿。5.對(duì)專業(yè)性太深入的知識(shí)領(lǐng)域,用戶有義務(wù)組織開發(fā)人員進(jìn)行簡(jiǎn)單的培訓(xùn)。
需求沒有做好的后果
如何準(zhǔn)備調(diào)查需求需求分析員應(yīng)當(dāng)確定需求調(diào)查的方式,例如:與用戶負(fù)責(zé)人交談,向用戶提問題。同未來此軟件的目標(biāo)用戶交談,了解他們的目前的工作狀況.參觀用戶的工作流程,觀察用戶的操作。與同行、專家交談,聽取他們的意見。分析已經(jīng)存在的同類軟件產(chǎn)品,提取需求。從行業(yè)標(biāo)準(zhǔn)、規(guī)則中提取需求。如何做好需求分析為了得到用戶的金錢,企業(yè)不得不鼓吹:用戶就是上帝,用戶永遠(yuǎn)是正確的。誰都知道這不是真的。事實(shí)上,很多時(shí)候用戶說不清楚需求、會(huì)說錯(cuò)需求或者提出一些無法實(shí)現(xiàn)的需求。需求分析是指在需求開發(fā)過程中,對(duì)所獲取的需求信息進(jìn)行分析,及時(shí)排除錯(cuò)誤和彌補(bǔ)不足,確保需求文檔正確地反映用戶的真實(shí)意圖。需求分析是需求開發(fā)過程中最費(fèi)腦子的工作。分析方法大體有兩類:“問答分析法”和“建模分析法”。后者技術(shù)性比較強(qiáng),寫出來有學(xué)術(shù)味,故大多數(shù)軟件工程書籍都有論述。前者就是一些常識(shí)而已,雖然寫不成文章,但是簡(jiǎn)單易用(保你一學(xué)就會(huì)),很有實(shí)用價(jià)值?!皢柎鸱治龇ā北容^適合于用戶需求調(diào)查階段“建模分析法”比較適合于產(chǎn)品需求定義階段。問答分析方法問答分析方法
問答分析方法很簡(jiǎn)單:刨根究底地問,如果問題都被解答了,那么需求也就分析清楚了。一個(gè)人可以“自問自答”地分析需求,幾個(gè)人分析需求則稱為“研討”。問答分析最重要的問題是:“是什么”,”做什么”和“為什么”。每個(gè)需求都應(yīng)當(dāng)用陳述句說明“是什么”,如果“是什么”的內(nèi)涵不夠清晰,則應(yīng)補(bǔ)充說明“不是什么”。如果“是什么”和“不是什么”并不是“理所當(dāng)然”的,那么應(yīng)當(dāng)解釋“為什么”,以便加深讀者的理解。追究“是什么”和“為什么”的目的是獲得正確、清楚的需求。
其它常見的問題有:
需求存在二義性嗎?
需求文檔的上下文有矛盾嗎?
需求完備嗎?
需求是必要的嗎?
需求可實(shí)現(xiàn)嗎?
需求可驗(yàn)證嗎?
需求的優(yōu)先級(jí)確定了嗎?
建模分析法人們都有這樣地感受:有些時(shí)候用語言描述某個(gè)問題特別費(fèi)勁,而采用圖形則使人一目了然.在需求開發(fā)過程中,對(duì)于某些類型的信息,用圖形表示要比文本表示更加有效。所以將圖形與文本結(jié)合起來描述需求是很自然的方法。需求建模就是指用圖形符號(hào)來表示、刻畫需求。建模分析方法主要有兩大類:“結(jié)構(gòu)化分析法”和“面向?qū)ο蠓治龇ā薄?/p>
恰當(dāng)?shù)厥褂脠D形符號(hào):現(xiàn)代建模工具如Rose、Jude有非常豐富的圖形符號(hào)和文字標(biāo)注,能很好地表達(dá)模型的細(xì)節(jié)。要注意的是:在建模時(shí)使用花樣過多的圖形符號(hào)或文字意味著模型表示的復(fù)雜化,將使開發(fā)人員更難掌握,而且使圖形文檔更加雜亂。世上不存在一個(gè)包羅萬象的圖——它能完整地描述需求。需求建模不可能取代文字描述。在需求文檔中,文字描述是第一重要的,建模主要是起分析、解釋作用。建議將模型存放在需求文檔的附錄中,便于正文引用。
分析決策當(dāng)需求從四面八方收集來后,需求的沖突在所難免。對(duì)于那些難以達(dá)成共識(shí)的需求而言,經(jīng)常會(huì)發(fā)生“公說公有理,婆說婆有理”的現(xiàn)象。那么需求分析員究竟應(yīng)該聽誰的呢?如果一群人對(duì)需求有爭(zhēng)議,并不是誰聲音最響就聽誰的。根據(jù)生活經(jīng)驗(yàn),最保險(xiǎn)的辦法是:先聽官兒大的或者威望高的,如果大家的職位和威望都差不多,那么采用“少數(shù)服從大多數(shù)”的原則。如果一個(gè)產(chǎn)品可以賣給幾類客戶,但是各類客戶都要求產(chǎn)品按照他們的喜好來開發(fā)。此時(shí)對(duì)需求的決策應(yīng)當(dāng)以商業(yè)利益為導(dǎo)向,即哪一類客戶出錢最多就先滿足他們的需求,以后再做那些獲利相對(duì)較少的需求。當(dāng)開發(fā)者想象中的產(chǎn)品與客戶所提的需求有沖突時(shí),一般應(yīng)當(dāng)尊重客戶的觀點(diǎn)。但是不要陷入“客戶總是對(duì)的”陷阱里,需求分析員應(yīng)當(dāng)糾正明顯不合理的客戶需求。如果產(chǎn)品很復(fù)雜,雙方都不太明白需求,此時(shí)最好請(qǐng)開發(fā)人員快速構(gòu)造軟件的原型,雙方看著軟件原型再分析需求什么是好的需求規(guī)格說明書正確
需求規(guī)格說明書應(yīng)當(dāng)正確地反映用戶的真實(shí)意圖,“正確”是《產(chǎn)品需求規(guī)格說明書》最重要的屬性。如果“不正確”僅僅是由于錯(cuò)別字造成的,那么多檢查幾遍文檔就能解決問題。真正的困難是開發(fā)者和用戶自己都不明白用戶究竟“想要什么”和“不要什么”。為確保需求是正確的,開發(fā)方和用戶必須對(duì)《需求規(guī)格說明書》進(jìn)行確認(rèn)。
清楚
清楚的需求讓人易讀易懂。清楚的反義詞是“難讀”、“難理解”。你可以采用反問的方式來判斷需求文檔是否清楚:文檔的結(jié)構(gòu)、段落是否亂七八糟?上下文是否不連貫?文檔的語句是否含糊其詞、羅里羅嗦?看了半天是否還不明白需求究竟是什么?無二義性
“無二義性”是指每個(gè)需求只有唯一的含義。如果一個(gè)人說的話,不同的人可能有不同的理解,那么這句話就有二義性。如果需求存在二義性,將會(huì)導(dǎo)致人們誤解需求而開發(fā)出偏離需求的產(chǎn)品。為了使需求無二義性,人們?cè)趯憽懂a(chǎn)品需求規(guī)格說明書》時(shí)措詞應(yīng)當(dāng)準(zhǔn)確,切勿模棱兩可。什么是好的需求規(guī)格說明書一致
“一致”(Consistent)是指《產(chǎn)品需求規(guī)格說明書》中各個(gè)需求之間不會(huì)發(fā)生矛盾。矛盾常常潛伏在需求文檔的上下文中。
必要
《產(chǎn)品需求規(guī)格說明書》中的各項(xiàng)需求對(duì)用戶而言應(yīng)當(dāng)都是必要的??梢园选氨匾北扔鳛椤把┲兴吞俊薄!氨匾蓖耙徊剑词恰爱嬌咛碜恪币词恰板\上添花”?!爱嬌咛碜恪憋@然是壞事,會(huì)導(dǎo)致開發(fā)人員多干一些吃力不討好的工作。所以要盡量剔除需求規(guī)格說明書中“畫蛇添足”的那些需求?!板\上添花”是好事,可能會(huì)讓用戶獲得比期望更多的喜悅,但是眼前用戶不會(huì)為此多付錢。開發(fā)者應(yīng)當(dāng)集中精力先完成必要的需求,如果條件允許則再做“錦上添花”的需求。為了避免主次顛倒,應(yīng)當(dāng)在《產(chǎn)品需求規(guī)格說明書》中將那些“錦上添花”的需求設(shè)置為較低的優(yōu)先級(jí)。什么是好的需求規(guī)格說明書完備“完備”(Complete)是指《產(chǎn)品需求規(guī)格說明書》中沒有遺漏一些必要的需求。人們往往傾向于關(guān)注系統(tǒng)的特色功能,而忽視了其它一些不起眼的但卻是必需的功能。不完備的《產(chǎn)品需求規(guī)格說明書》將導(dǎo)致產(chǎn)生功能不完整的軟件,用戶在使用該軟件時(shí)可能無法完成預(yù)期的任務(wù)。什么是好的需求規(guī)格說明書可實(shí)現(xiàn)
《產(chǎn)品需求規(guī)格說明書》中的各項(xiàng)需求對(duì)開發(fā)方而言應(yīng)當(dāng)都是可實(shí)現(xiàn)的(Attainable)?!翱蓪?shí)現(xiàn)”意味著在技術(shù)上是可行的,并且滿足時(shí)間、費(fèi)用、質(zhì)量等約束。營(yíng)銷人員和用戶談生意時(shí),為了能拿到“單子”,他們往往對(duì)用戶提出的需求“來者不拒”。吹牛皮雖然不犯法,但是《產(chǎn)品需求規(guī)格說明書》可是白紙黑字啊。經(jīng)過雙方確認(rèn)的《產(chǎn)品需求規(guī)格說明書》相當(dāng)于商業(yè)合同,如果開發(fā)方不能夠?qū)崿F(xiàn)《產(chǎn)品需求規(guī)格說明書》中的內(nèi)容,那就是違約,可能會(huì)被罰款的。對(duì)于合同項(xiàng)目,如果開發(fā)方不能確信某些需求是否可實(shí)現(xiàn),則應(yīng)事先與用戶協(xié)商,達(dá)成一致的處理意見,避免將來發(fā)生商業(yè)糾紛。什么是好的需求規(guī)格說明書可驗(yàn)證
《產(chǎn)品需求規(guī)格說明書》中的各項(xiàng)需求對(duì)用戶方而言應(yīng)當(dāng)都是可驗(yàn)證的(Verifiable)。如果需求是不可驗(yàn)證的,那么用戶就無法驗(yàn)收軟件,可能會(huì)發(fā)生商業(yè)糾紛。例如,摩天大樓的一項(xiàng)需求是“抗十二級(jí)臺(tái)風(fēng)”,這個(gè)需求看起來堂而皇之,但是如何驗(yàn)證呢?當(dāng)摩天大樓完工后驗(yàn)收時(shí),用戶又不是巫師,他怎能造個(gè)十二級(jí)臺(tái)風(fēng)來試驗(yàn)?如果雙方都認(rèn)可“采用計(jì)算機(jī)模擬十二級(jí)臺(tái)風(fēng)”等效于實(shí)際測(cè)試,那么這項(xiàng)需求就是“可驗(yàn)證”的什么是好的需求規(guī)格說明書確定優(yōu)先級(jí)為什么要確定需求的“優(yōu)先級(jí)”?理論上講,軟件的所有需求都應(yīng)當(dāng)被實(shí)現(xiàn)。但是在現(xiàn)實(shí)之中,項(xiàng)目存在“進(jìn)度、費(fèi)用、人力資源”等限制。在項(xiàng)目剛開始的時(shí)候,開發(fā)方和客戶比較樂觀,什么都要做,可是做著做著,人們常常會(huì)面臨“進(jìn)度延誤、費(fèi)用超支、人員不足”等問題,這時(shí)就亂套了。人們想出了“取舍”辦法:先做優(yōu)先級(jí)高的需求,后做(甚至放棄)優(yōu)先級(jí)低的需求,這樣可以將風(fēng)險(xiǎn)降到最低。需求的優(yōu)先級(jí)其實(shí)就是需求“輕重緩急”的分級(jí)表述,例如劃分為“高、中、低”三級(jí)。一般地,由用戶和開發(fā)方共同確定需求的優(yōu)先級(jí)。什么是好的需求規(guī)格說明書闡述“做什么”而不是“怎么做”
《產(chǎn)品需求規(guī)格說明書》的重點(diǎn)是闡述“做什么”,而不是闡述“怎么做”?!霸趺醋觥笔窍到y(tǒng)設(shè)計(jì)和實(shí)現(xiàn)階段的事情。國(guó)內(nèi)的很多軟件公司里,開發(fā)人員常常身兼數(shù)職,可能把需求開發(fā)、系統(tǒng)設(shè)計(jì)、編程等工作從頭做到尾。所以他們?cè)谡{(diào)查、分析、定義需求時(shí),自然會(huì)想到“怎么做”,這并沒有什么過錯(cuò)。如果在調(diào)查、定義需求時(shí)想好了“怎么做”,當(dāng)然應(yīng)該寫下來,否則豈不浪費(fèi)!關(guān)鍵是不要將“怎么做”寫到需求規(guī)格說明書里面,記錄在其它文檔里就行了。如何定義產(chǎn)品需求第一步:細(xì)化并分析用戶需求
需求分析員首先對(duì)《用戶需求說明書》進(jìn)行細(xì)化,對(duì)比較復(fù)雜的用戶需求進(jìn)行建模分析,以幫助軟件開發(fā)人員更好地理解需求。例如采用Rational的Rose工具進(jìn)行需求的建模分析,建模分析產(chǎn)生的文檔可以作為《產(chǎn)品需求規(guī)格說明書》的附件。補(bǔ)充說明:建模分析的技術(shù)難度比較高,需求分析員應(yīng)當(dāng)根據(jù)自身水平進(jìn)行取舍。第二步:撰寫產(chǎn)品需求規(guī)格說明書
需求分析員按照指定的文檔模板撰寫《產(chǎn)品需求規(guī)格說明書》。如果待開發(fā)的產(chǎn)品分為軟件和硬件兩部分的話,則應(yīng)當(dāng)撰寫《軟件需求規(guī)格說明書》和《硬件需求規(guī)格說明書》。第三步:進(jìn)行需求確認(rèn)項(xiàng)目經(jīng)理邀請(qǐng)同行專家和用戶(包括客戶和最終用戶)一起評(píng)審《產(chǎn)品需求規(guī)格說明書》,盡最大努力使《產(chǎn)品需求規(guī)格說明書》能夠正確無誤地反映用戶的真實(shí)意愿。需求評(píng)審之后,開發(fā)方和客戶方的責(zé)任人對(duì)《產(chǎn)品需求規(guī)格說明書》作書面承諾。需求文檔《用戶需求說明書》與《產(chǎn)品需求規(guī)格說明書》的主要區(qū)別與聯(lián)系前者主要采用自然語言(和應(yīng)用域術(shù)語)來表達(dá)用戶需求,其內(nèi)容相對(duì)于后者而言比較粗略,不夠詳細(xì)。后者是前者的細(xì)化,更多地采用計(jì)算機(jī)語言和圖形符號(hào)來刻畫需求,產(chǎn)品需求是軟件系統(tǒng)設(shè)計(jì)的直接依據(jù)。兩者之間可能并不存在一一影射關(guān)系,因?yàn)檐浖_發(fā)商會(huì)根據(jù)產(chǎn)品發(fā)展戰(zhàn)略、企業(yè)當(dāng)前狀況適當(dāng)?shù)卣{(diào)整產(chǎn)品需求,例如用戶需求可能被分配到軟件的數(shù)個(gè)版本中。軟件開發(fā)人員應(yīng)當(dāng)依據(jù)《產(chǎn)品需求規(guī)格說明書》來開發(fā)當(dāng)前產(chǎn)品。需求確認(rèn)(評(píng)審和承諾)需求確認(rèn)(評(píng)審和承諾)需求確認(rèn)是指開發(fā)方和客戶方共同對(duì)《產(chǎn)品需求規(guī)格說明書》進(jìn)行評(píng)審,雙方對(duì)需求達(dá)成共識(shí)后作出承諾。需求確認(rèn)包含兩個(gè)重要工作:“需求評(píng)審”和“需求承諾”。人們?cè)诮涣鞯臅r(shí)候,經(jīng)常會(huì)發(fā)生“問非所求,答非所問”的事情,用戶表達(dá)的需求,不同的開發(fā)人員可能有不同的理解。如果需求分析員誤解了需求,那會(huì)導(dǎo)致后續(xù)的不少開發(fā)人員將錯(cuò)就錯(cuò)、白干活。就像作文寫跑題了,寫得再好也白搭。這類錯(cuò)誤連高智商的外星人都不能避免:有個(gè)外星人間諜潛伏到地球刺探情報(bào),它給上司寫了一份報(bào)告:“主宰地球的是車。它們喝汽油,靠四個(gè)輪子滾動(dòng)前進(jìn)。嗓門極大,在夜里雙眼能射出強(qiáng)光?!腥さ氖?,車?yán)镒≈环N叫作‘人’的寄生蟲,這些寄生蟲完全控制了車?!?/p>
不論是復(fù)雜的項(xiàng)目還是簡(jiǎn)單的項(xiàng)目,需求分析員和用戶都有可能誤解需求。所以需求確認(rèn)工作(屬于需求管理)必不可少需求評(píng)審面臨的困難需求評(píng)審的一個(gè)通病是“虎頭蛇尾”。需求評(píng)審的確乏味,也比較費(fèi)腦子。剛開始評(píng)審時(shí),大家都比較認(rèn)真,越到后頭越馬虎。
需求評(píng)審涉及的人員可能比較多,有些時(shí)候讓這么多人聚在一起花費(fèi)比較長(zhǎng)的時(shí)間開會(huì)并不容易(例如有些人可能出差在外,有些人可能事務(wù)纏身)。沒有必要把所有事情擠在一塊做,需求開發(fā)是循序漸進(jìn)的過程,需求評(píng)審也可以分段進(jìn)行。這樣每次評(píng)審的時(shí)間比較短,參加評(píng)審的人員也少一些,組織會(huì)議就比較容易需求承諾需求承諾是指開發(fā)方和客戶方的責(zé)任人對(duì)通過了正式技術(shù)評(píng)審的《產(chǎn)品需求規(guī)格說明書》作出承諾,該承諾具有商業(yè)合同的效果。需求承諾的“八股文”如下:本《產(chǎn)品需求規(guī)格說明書》建立在雙方對(duì)需求的共同理解基礎(chǔ)之上,我同意后續(xù)的開發(fā)工作根據(jù)該《產(chǎn)品需求規(guī)格說明書》開展。如果需求發(fā)生變化,我們將按照“變更控制規(guī)程”執(zhí)行。我明白需求的變更將導(dǎo)致雙方重新協(xié)商成本、資源和進(jìn)度等。甲方簽字
乙方簽字人們?cè)谧鞒龀兄Z之前務(wù)必要認(rèn)真閱讀文檔,一定要明白簽字意味著什么。需求跟蹤
需求跟蹤的目的是建立與維護(hù)“需求-設(shè)計(jì)-編程-測(cè)試”之間的一致性,確保所有的工作成果符合用戶需求。
需求跟蹤有兩種方式:
正向跟蹤。檢查《產(chǎn)品需求規(guī)格說明書》中的每個(gè)需求是否都能在后繼工作成果中找到對(duì)應(yīng)點(diǎn)。
逆向跟蹤。檢查設(shè)計(jì)文檔、代碼、測(cè)試用例等工作成果是否都能在《產(chǎn)品需求規(guī)格說明書》中找到出處。
正向跟蹤和逆向跟蹤合稱為“雙向跟蹤”。不論采用何種跟蹤方式,都要建立與維護(hù)需求跟蹤矩陣(即表格)。需求跟蹤矩陣保存了需求與后繼工作成果的對(duì)應(yīng)關(guān)系需求變更控制需求發(fā)生變更的起因主要有:隨著項(xiàng)目的進(jìn)展,人們(包括開發(fā)方和客戶方)對(duì)需求的了解越來越深入。原先的需求文檔可能存在這樣那樣的錯(cuò)誤或不足,因此要變更需求。市場(chǎng)發(fā)生了變化,原先的需求文檔可能跟不上當(dāng)前的市場(chǎng)需求,因此要變更需求。提出需求變更的動(dòng)機(jī)是好的,目的是希望產(chǎn)品更加符合用戶的需求。對(duì)項(xiàng)目開發(fā)小組而言,變更需求意味著要調(diào)整資源、重新分配任務(wù)、修改前期工作成果等,開發(fā)小組要為此付出較重的代價(jià)。如果每次需求變更請(qǐng)求都被采納的話,這個(gè)項(xiàng)目也許永遠(yuǎn)不能按時(shí)完成。需求變更控制的目的:如果需求變更帶來的好處大于壞處,那么允許變更,但必須按照已定義的變更規(guī)程執(zhí)行,以免變更失去控制。如果需求變更帶來的壞處大于好處,那么拒絕變更。需求變更控制過程中最難辦的事情是莫過于“拒絕客戶提出的需求變更請(qǐng)求”。通常情況下開發(fā)方是不敢得罪客戶的,但是無原則地退讓將使開發(fā)小組陷入困境。解決這個(gè)問題最好的辦法是事先建立“游戲規(guī)則”:開發(fā)方與客戶方達(dá)成“事不過三”的約定(符合中國(guó)人的習(xí)慣),即允許客戶變更三次需求;如果客戶第四此變更需求,開發(fā)方有權(quán)拒絕,除非客戶愿意補(bǔ)償開發(fā)方的損失。WEB項(xiàng)目開發(fā)的一般流程—分析與設(shè)計(jì)之架構(gòu)分析與設(shè)計(jì)架構(gòu)分析與設(shè)計(jì)邏輯架構(gòu)3層架構(gòu)、n層架構(gòu)…MVC…Model1orModel2…物理架構(gòu)Web服務(wù)器的分布數(shù)據(jù)庫(kù)服務(wù)器的分布…技術(shù)解決方案的確定Java/.NETOpenSource/商業(yè)…WEB項(xiàng)目開發(fā)的一般流程—分析與設(shè)計(jì)之業(yè)務(wù)邏輯分析業(yè)務(wù)邏輯分析根據(jù)需求分析業(yè)務(wù)邏輯有哪些人會(huì)使用本系統(tǒng)他們會(huì)使用本系統(tǒng)做什么通常他們使用本系統(tǒng)的步驟是什么樣的會(huì)有哪些明顯的類來支撐本系統(tǒng)的運(yùn)行會(huì)有哪些不同的提示會(huì)返饋給用戶…本階段與需求的確定密切相關(guān),通常在確定需求的時(shí)候就會(huì)進(jìn)行相關(guān)的分析WEB項(xiàng)目開發(fā)的一般流程—分析與設(shè)計(jì)之業(yè)務(wù)邏輯設(shè)計(jì)業(yè)務(wù)邏輯設(shè)計(jì)根據(jù)需求的分析來確定具體的類確定類的屬性確定類的接口(方法)確定類之間的關(guān)系確定用戶操作流程在設(shè)計(jì)上的反映進(jìn)行數(shù)據(jù)庫(kù)的設(shè)計(jì)不同的項(xiàng)目步驟可能不盡相同…WEB項(xiàng)目開發(fā)的一般流程—分析與設(shè)計(jì)之界面設(shè)計(jì)界面設(shè)計(jì)設(shè)計(jì)系統(tǒng)的界面風(fēng)格顏色、style設(shè)計(jì)系統(tǒng)的具體“模擬”界面能夠從頭走到尾方便進(jìn)行需求的確定方便JSP程序員的開發(fā)…WEB項(xiàng)目開發(fā)的一般流程—開發(fā)環(huán)境搭建開發(fā)環(huán)境搭建開發(fā)工具的確定配置管理工具的確定測(cè)試工具的確定文件服務(wù)器/配置服務(wù)器等的確定…WEB項(xiàng)目開發(fā)的一般流程—開發(fā)開發(fā)-測(cè)試-開發(fā)-測(cè)試按照設(shè)計(jì)進(jìn)行開發(fā)迅速開發(fā)原型進(jìn)行迭代開發(fā)提早進(jìn)行測(cè)試單元測(cè)試黑盒測(cè)試性能測(cè)試易用性測(cè)試…軟件開發(fā)中最重要的幾個(gè)內(nèi)容:
持續(xù)的學(xué)習(xí)能力比較堅(jiān)韌的性格較強(qiáng)的變通能力較好的學(xué)習(xí)方法和總結(jié)能力良好的溝通能力和團(tuán)隊(duì)氛圍敢于和別人去share自己的知識(shí)CMS項(xiàng)目流程—總綱概念及項(xiàng)目背景業(yè)務(wù)流程需求分析架構(gòu)與設(shè)計(jì)業(yè)務(wù)邏輯分析與設(shè)計(jì)數(shù)據(jù)庫(kù)設(shè)計(jì)界面設(shè)計(jì)開發(fā)步驟CMS—概念CMS是ContentManagementSystem的縮寫,意為“內(nèi)容管理系統(tǒng)”。CMS其實(shí)是一個(gè)很廣泛的稱呼,從一般的博客程序,新聞發(fā)布程序,到綜合性的網(wǎng)站管理程序都可以被稱為內(nèi)容管理系統(tǒng)內(nèi)容管理系統(tǒng)是一種位于WEB前端(Web服務(wù)器)和后端辦公系統(tǒng)或流程(內(nèi)容創(chuàng)作、編輯)之間的軟件系統(tǒng)。內(nèi)容管理解決方案重點(diǎn)解決各種非結(jié)構(gòu)化或半結(jié)構(gòu)化的數(shù)字資源的采集、管理、利用、傳遞和增值,并能有機(jī)集成到結(jié)構(gòu)化數(shù)據(jù)的商業(yè)智能環(huán)境中,如OA,CRM等。內(nèi)容的創(chuàng)作人員、編輯人員、發(fā)布人員使用內(nèi)容管理系統(tǒng)來提交、修改、審批、發(fā)布內(nèi)容。這里指的"內(nèi)容"可能包括文件、表格、圖片、數(shù)據(jù)庫(kù)中的數(shù)據(jù)甚至視頻等一切你想要發(fā)布到Internet、Intranet以及Extranet網(wǎng)站的信息。CMS—項(xiàng)目背景本系統(tǒng)來源一個(gè)真實(shí)的項(xiàng)目需求,是美國(guó)的一個(gè)外包項(xiàng)目,該項(xiàng)目是一個(gè)美國(guó)公司運(yùn)營(yíng)一個(gè)體育網(wǎng)站,該網(wǎng)站主要以提供P2P播放源,網(wǎng)友從該網(wǎng)站上獲取、分享P2P種子,能夠從該網(wǎng)站上查看最近所有比賽,能夠看到各大博彩公司的的賠率,能夠?qū)Ω鲌?chǎng)比賽進(jìn)行投票,由于每天頂級(jí)的比賽非常多,所以要求該網(wǎng)站細(xì)分頻道,分頻道管理。
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 小學(xué)研學(xué)活動(dòng)方案6篇
- 工程造價(jià)咨詢服務(wù)合同范本9篇
- 學(xué)校矛盾糾紛排查工作情況匯報(bào)三篇
- 中國(guó)小動(dòng)物技能大賽骨科專賽理論考試題庫(kù)(含答案)
- 《反電信網(wǎng)絡(luò)詐騙法》知識(shí)考試題庫(kù)150題(含答案)
- 大拇指腱鞘炎偏方課件
- 2025年河北女子職業(yè)技術(shù)學(xué)院高職單招語文2018-2024歷年參考題庫(kù)頻考點(diǎn)含答案解析
- 2025年江西現(xiàn)代職業(yè)技術(shù)學(xué)院高職單招高職單招英語2016-2024歷年頻考點(diǎn)試題含答案解析
- 2025年江西冶金職業(yè)技術(shù)學(xué)院高職單招語文2018-2024歷年參考題庫(kù)頻考點(diǎn)含答案解析
- 2025年武漢職業(yè)技術(shù)學(xué)院高職單招職業(yè)技能測(cè)試近5年??及鎱⒖碱}庫(kù)含答案解析
- 2025年度新能源汽車充電站運(yùn)營(yíng)權(quán)轉(zhuǎn)讓合同樣本4篇
- 第5課 隋唐時(shí)期的民族交往與交融 課件(23張) 2024-2025學(xué)年統(tǒng)編版七年級(jí)歷史下冊(cè)
- 2024年全國(guó)職業(yè)院校技能大賽高職組(生產(chǎn)事故應(yīng)急救援賽項(xiàng))考試題庫(kù)(含答案)
- 老年上消化道出血急診診療專家共識(shí)2024
- 廣東省廣州黃埔區(qū)2023-2024學(xué)年八年級(jí)上學(xué)期期末物理試卷(含答案)
- 學(xué)校安全工作計(jì)劃及行事歷
- 《GMP基礎(chǔ)知識(shí)培訓(xùn)》課件
- 數(shù)學(xué)家華羅庚課件
- 貴州茅臺(tái)酒股份有限公司招聘筆試題庫(kù)2024
- 《納米技術(shù)簡(jiǎn)介》課件
- 血液透析高鉀血癥的護(hù)理查房
評(píng)論
0/150
提交評(píng)論