- 相關(guān)推薦
軟件工程實(shí)驗(yàn)心得體會(huì)范文
經(jīng)過(guò)這學(xué)期軟件工程實(shí)驗(yàn)的學(xué)習(xí),深深感到用戶(hù)需求對(duì)軟件的重要性,
軟件工程實(shí)驗(yàn)心得體會(huì)范文
。成功的軟件產(chǎn)品是建立在成功的需求基礎(chǔ)之上的,而高質(zhì)量的需求來(lái)源于用戶(hù)與開(kāi)發(fā)人員之間有效的溝通與合作。當(dāng)用戶(hù)有一個(gè)問(wèn)題可以用計(jì)算機(jī)系統(tǒng)來(lái)解決,而開(kāi)發(fā)人員開(kāi)始幫助用戶(hù)解決這個(gè)問(wèn)題,溝通就開(kāi)始了。需求獲取可能是最困難、最關(guān)鍵、最易出錯(cuò)及最需要溝通交流的活動(dòng)。對(duì)需求的獲取往往有錯(cuò)誤的認(rèn)識(shí):用戶(hù)知道需求是什么,我們所要做的就是和他們交談從他們那里得到需求,只要問(wèn)用戶(hù)系統(tǒng)的目標(biāo)特征,什么是要完成的,什么樣的系統(tǒng)能適合商業(yè)需要就可以了,但是實(shí)際上需求獲取并不是想象的這樣簡(jiǎn)單,這條溝通之路布滿(mǎn)了荊棘。首先需求獲取要定義問(wèn)題范圍,系統(tǒng)的邊界往往是很難明確的,用戶(hù)不了解技術(shù)實(shí)現(xiàn)的細(xì)節(jié),這樣造成了系統(tǒng)目標(biāo)的混淆。
其次是對(duì)問(wèn)題的理解,用戶(hù)對(duì)計(jì)算機(jī)系統(tǒng)的能力和限制缺乏了解,任何一個(gè)系統(tǒng)都會(huì)有很多的用戶(hù)或者不同類(lèi)型的用戶(hù),每個(gè)用戶(hù)只知道自己需要的系統(tǒng),而不知道系統(tǒng)的整體情況,他們不知道系統(tǒng)作為一個(gè)整體怎么樣工作效率更好,也不太清楚那些工作可以交給軟件完成,他們不清楚需求是什么,或者說(shuō)如何以一種精確的方式來(lái)描述需求,他們需要開(kāi)發(fā)人員的協(xié)助和指導(dǎo),但是用戶(hù)與開(kāi)發(fā)人員之間的交流很容易出現(xiàn)障礙,忽略了那些被認(rèn)為是"很明顯"的信息。最后是需求的確認(rèn),因?yàn)樾枨蟮牟环(wěn)定性往往隨著時(shí)間的推移產(chǎn)生變動(dòng),使之難以確認(rèn)。為了克服以上的問(wèn)題,必須有組織的執(zhí)行需求的獲取活動(dòng)。
需求獲取活動(dòng)要完成的任務(wù)或者步驟的過(guò)程如下:
1、編寫(xiě)項(xiàng)目視圖和范圍文檔
系統(tǒng)的需求包括四個(gè)不同的層次:業(yè)務(wù)需求、用戶(hù)需求和功能需求、非功能性需求。業(yè)務(wù)需求說(shuō)明了提供給用戶(hù)新系統(tǒng)的最初利益,反映了組織機(jī)構(gòu)或用戶(hù)對(duì)系統(tǒng)、產(chǎn)品高層次的目標(biāo)要求,它們?cè)陧?xiàng)目視圖與范圍文檔中予以說(shuō)明。用戶(hù)需求文檔描述了用戶(hù)使用產(chǎn)品必須要完成的任務(wù),這在使用實(shí)例文檔或方案腳本說(shuō)明中予以說(shuō)明。功能需求定義了開(kāi)發(fā)人員必須實(shí)現(xiàn)的軟件功能,使得用戶(hù)能完成他們的任務(wù),從而滿(mǎn)足了業(yè)務(wù)需求。
非功能性需求是用戶(hù)對(duì)系統(tǒng)良好運(yùn)作提出的期望,包括了易用性、反應(yīng)速度、容錯(cuò)性、健壯性等等質(zhì)量屬性。需求獲取就是根據(jù)系統(tǒng)業(yè)務(wù)需求去獲得系統(tǒng)用戶(hù)需求,然后通過(guò)需求分析得到系統(tǒng)的功能需求和非功能需求。項(xiàng)目視圖和范圍文檔就是從高層次上描述系統(tǒng)的業(yè)務(wù)需求,應(yīng)該包括高層的產(chǎn)品業(yè)務(wù)目標(biāo),評(píng)估問(wèn)題解決方案的商業(yè)和技術(shù)可行性,所有的使用實(shí)例和功能需求都必須遵從的標(biāo)準(zhǔn)。而范圍文檔定義了項(xiàng)目產(chǎn)品所包括的所有工作及產(chǎn)生產(chǎn)品所用的過(guò)程。項(xiàng)目相關(guān)人員對(duì)項(xiàng)目的目標(biāo)和范圍能達(dá)成共識(shí),整個(gè)項(xiàng)目組都應(yīng)該把注意力集中在項(xiàng)目目標(biāo)和范圍上。
2、用戶(hù)群分類(lèi)
系統(tǒng)用戶(hù)在很多方面存在著差異,例如:使用系統(tǒng)的頻度和程度、應(yīng)用領(lǐng)域和計(jì)算機(jī)系統(tǒng)知識(shí)、所使用的系統(tǒng)特性、所進(jìn)行的業(yè)務(wù)過(guò)程、訪問(wèn)權(quán)限、地理上的布局以及個(gè)人的素質(zhì)和喜好等等。根據(jù)這些差異,你可以把這些不同的用戶(hù)分成不同的用戶(hù)類(lèi)。與ULM中Usecase的Actor概念一樣,用戶(hù)類(lèi)不一定都指人,也可以包括其他應(yīng)用系統(tǒng)、接口或者硬件,這樣做使得與系統(tǒng)邊界外的接口也成為系統(tǒng)需求,
資料共享平臺(tái)
《軟件工程實(shí)驗(yàn)心得體會(huì)范文》(http://www.szmdbiao.com)。將用戶(hù)群分類(lèi)并歸納各自特點(diǎn),并詳細(xì)描述出它們的個(gè)性特點(diǎn)及任務(wù)狀況,將有助于需求的獲取和系統(tǒng)設(shè)計(jì)。3、建立核心隊(duì)
通常用戶(hù)和開(kāi)發(fā)人員不自覺(jué)的都有一種"我們和他們"的想法,產(chǎn)生一種對(duì)立關(guān)系,把彼此放在對(duì)立面,每一方都定義自己的"邊界",只想自己的利益而忽略對(duì)方的想法。他們通過(guò)文檔、記錄和對(duì)話來(lái)溝通,而不是作為一個(gè)合作的整體去識(shí)別和確定需求完成任務(wù)。實(shí)踐證明這樣的方法是不正確的,不會(huì)給雙方帶來(lái)一點(diǎn)益處,良好的溝通關(guān)系沒(méi)有建立導(dǎo)致了誤解和忽略重要的信息。只有當(dāng)雙方參與者都明白要成功自己需要什么,同時(shí)也知道要成功對(duì)方需要什么時(shí),才能建立起一種合作關(guān)系。
為了建立合作關(guān)系通常采取一種組隊(duì)的方式來(lái)獲取需求,建立一個(gè)由用戶(hù)代表和開(kāi)發(fā)人員組成的聯(lián)合小組作為需求獲取的核心隊(duì)伍。聯(lián)合小組將負(fù)責(zé)識(shí)別需求、分析解決方案和協(xié)商分歧,小組成員可以采用會(huì)議、電子郵件、綜合辦公系統(tǒng)等方式進(jìn)行交流,但交流時(shí)應(yīng)注意以下原則:小組會(huì)議應(yīng)該由中立方來(lái)組織和主持,用戶(hù)和開(kāi)發(fā)人員都要參加;交流預(yù)先要確定準(zhǔn)備和參與的規(guī)則;議題要明確并覆蓋所有關(guān)鍵點(diǎn),但信息來(lái)源應(yīng)該自由;交流目標(biāo)要明確,并告知所有的成員。
4、確定使用實(shí)例
從用戶(hù)代表處收集他們將使用系統(tǒng)完成所需任務(wù)的描述,討論用戶(hù)與系統(tǒng)間的交互方式和對(duì)話要求,這就是使用實(shí)例,一個(gè)單一的使用實(shí)例可能包括完成某項(xiàng)任務(wù)的許多邏輯相關(guān)任務(wù)和交互順序。使用實(shí)例方法給需求獲取帶來(lái)的好處來(lái)自于該方法是用以任務(wù)為中心和以用戶(hù)為中心的觀點(diǎn),比起使用以功能為中心和以開(kāi)發(fā)者為中心的方法,使用實(shí)例方法可以使用戶(hù)更清楚地理解和認(rèn)識(shí)到新系統(tǒng)允許他們做什么和怎么做。描寫(xiě)使用實(shí)例的時(shí)候要注意使用簡(jiǎn)潔直白的表述,盡量使用主動(dòng)語(yǔ)態(tài),用"系統(tǒng)"或者"用戶(hù)"作為主語(yǔ),比如"用戶(hù)提交用戶(hù)密碼,系統(tǒng)驗(yàn)證用戶(hù)密碼是否正確",還有一點(diǎn)在描述中不要設(shè)計(jì)界面細(xì)節(jié),比如"用戶(hù)從下拉框中選擇產(chǎn)品類(lèi)型"。使用實(shí)例為以后寫(xiě)用例場(chǎng)景描述中的基本路徑和擴(kuò)展路徑提供了素材。
5、分析用戶(hù)工作流程
分析用戶(hù)工作流程觀察用戶(hù)執(zhí)行業(yè)務(wù)任務(wù)的過(guò)程,通過(guò)分析使用實(shí)例得到系統(tǒng)的用例圖。編制用例圖文檔將有助于明確系統(tǒng)的使用實(shí)例和功能需求,統(tǒng)一建模語(yǔ)言的使用有助于與用戶(hù)進(jìn)一步交流。每個(gè)用例的描述應(yīng)包括:編號(hào),為每個(gè)用例分配一個(gè)唯一的編號(hào),為需求的追溯提供了方便;參與者,與這個(gè)用例交互的 actor;前置條件,開(kāi)始用例前所必須具備的系統(tǒng)狀態(tài);后置條件,用例完成后系統(tǒng)達(dá)到的狀態(tài);基本路徑,用例完成的關(guān)鍵路徑,也是用戶(hù)期望的路徑;擴(kuò)展點(diǎn),基本路徑的分枝,表示意外情況;字段說(shuō)明,路徑中名稱(chēng)的進(jìn)一步分解說(shuō)明,對(duì)以后類(lèi)屬性的定義和數(shù)據(jù)庫(kù)字段設(shè)計(jì)起作用;設(shè)計(jì)約束,實(shí)現(xiàn)用例的非功能約束。
6、檢查問(wèn)題報(bào)告 【軟件工程實(shí)驗(yàn)心得體會(huì)】相關(guān)文章: 軟件工程師的面試技巧08-09 金山軟件軟件工程筆試題09-28 軟件工程實(shí)踐者的思想[1]09-04 軟件工程實(shí)踐者的思想[3]07-04 軟件工程師的自我鑒定10-19 德?tīng)柛\浖こ處煿P試題07-03