本文旨在拋磚引玉,由于時間有限寫的比較粗糙,不足之處請諸位指正。軟件的需求分析的主要目的是,通過與用戶廣泛的交流得出所要完成的目標(biāo)系統(tǒng)必須具備那些功能,應(yīng)該為用戶完成些什么工作。即確定"目標(biāo)系統(tǒng)必須做什么?"。需求分析相當(dāng)于從用戶到軟件工程人員之間架設(shè)了一道橋梁,軟件工程人員通過需求分析得到用戶的需求,成為軟件編制所實(shí)現(xiàn)的目標(biāo)。
需求分析的好壞直接關(guān)系到軟件的成功與否,是軟件生命周期中的關(guān)鍵一環(huán)。
一般來說,用戶對計算機(jī)技術(shù)了解并不多,計算機(jī)工程人員又對用戶的問題不很了解,這就阻礙了用戶與計算機(jī)工程人員之間的交流,使計算機(jī)工程人員不能很好地理解問題域,用戶又對目標(biāo)系統(tǒng)存在好多不清楚的地方。傳統(tǒng)的數(shù)據(jù)流分析法,功能分析法等對這個問題并不能有效地解決。面向?qū)ο蟮姆椒ǖ某霈F(xiàn),正好為此問題提供了一個較好的解決方案。因?yàn)槿祟愖匀坏刳呄蛴?quot;對象"的觀點(diǎn)或"方法"來認(rèn)識問題,分析問題以及解決問題,用基于"對象"的概念模型來建立問題域模型自然成為系統(tǒng)分析員與用戶交流的有效工具。
用面向?qū)ο蟮姆椒ㄟM(jìn)行需求分析,其根本要點(diǎn)在于,利用"對象"的概念模型建立一個針對于問題域的模型,用戶和軟件工程師通過該模型進(jìn)行交流。通過在這么一個基?quot;對象"的問題域模型的基礎(chǔ)上形成需求規(guī)格說明書。
下面對面向?qū)ο蟮姆椒ㄟM(jìn)行需求分析的要點(diǎn)作一簡要的介紹:
一、相關(guān)概念
面向?qū)ο蟮姆椒ㄟM(jìn)行需求分析集中在以下幾個概念
上:對象和類、對象之間的動態(tài)交互(劇情)。
對象是問題域中的個體,如人、粉筆等;
類是具有相同屬性的對象的集合;
劇情指為了完成一項(xiàng)功能(或任務(wù))相關(guān)對象的一個有次序的消息傳遞過程。
二、簡要步驟
1、通過查看相關(guān)資料并與用戶廣泛地接觸,自己對問題域有一個大致的了解。在這個基礎(chǔ)上,將問題域中與系統(tǒng)和問題有關(guān)的對象提取出來。這就是標(biāo)識對象的工作。
2、將第一步中抽象出來的對象(類)的之間的關(guān)系考慮清楚;如整體與部分、從屬關(guān)系等;
3、為"類"提取與系統(tǒng)問題域有關(guān)的屬性、服務(wù)等;
4、由于要完成一項(xiàng)任務(wù),肯定是有不同的對象互相協(xié)作完成的。同時一個對象的屬性,服務(wù)也是在與相關(guān)對象的協(xié)作中體現(xiàn)出來的。將問題域中所有任務(wù)的的對象的協(xié)作關(guān)系搞清楚,是面向?qū)ο笮枨蠓治龅年P(guān)鍵一環(huán)。即將問題域中的“劇情”搞清楚,是需求分析的主要工作之一。
以上四步并不是單獨(dú)的而是互有聯(lián)系,可以同時進(jìn)行的。通過,對以上4步工作的反復(fù)執(zhí)行我們就可以建立一個基于對象的問題域的模型。
基于該模型的基礎(chǔ)上,可以比較容易地產(chǎn)生一個符合用戶需求的用戶需求規(guī)格說明書成為后續(xù)工作的基礎(chǔ)。
項(xiàng)目經(jīng)理勝任力免費(fèi)測評PMQ上線啦!快來測測你排多少名吧~
http://m.vanceur.cn/pmqhd/index.html