軟體設計雜談(一)--需求分析與系統設計 (轉)

amyz發表於2007-11-28
軟體設計雜談(一)--需求分析與系統設計 (轉)[@more@]

  需求分析是設計的基礎。沒有需求分析,就談不上系統設計,好的設計必然是建立在全面、透徹的需求分析之上的。脫離了需求分析的設計必將是無源之水無根之木。不同的需求要用不同的設計方案來滿足,不存在放之四海皆準的設計方案。在我初次設計向量編輯時,從自己的和習慣出發,認為越傻瓜的越好,能用滑鼠和快捷選單輕鬆完成一切操作就是最好的。但是領導告訴我,我們這款軟體所面向的是專門從事繪圖、描圖的工作人員,他們的工作有一個重要特點就是按件計酬。所以如何能讓使用者以最快的速度完成繪製工作才是設計重點。因此,使用者需要的不是最簡單,而是最快。於是,的設計就成為了重點中的重點。因為這樣可以讓使用者雙手並舉,成倍地提高工作。瞧,連使用者的工資如何計算都得關心,否則設計就會偏離方向,成為糟糕的設計。由此可見,全面、充分的需求分析是系統設計成敗的關鍵。

  需求分析是設計方案優劣的重要評判標準。我們知道,使用者的滿意程度是評價軟體好壞的重要標準,而使用者滿意與否,的關鍵就在於使用者的需求是否能得到滿足。只有充分滿足了使用者需求的軟體,才能稱得上是好的軟體。因此使用者需求的滿足程度就成為評價設計方案優略與否的重要標準。一般說來,使用者的需求總是要分級對待,優先滿足重點需求,在工期和人力、物力允許的情況下逐級滿足更多的需求。但在大多數情況下,給定的工期和人力、物力總是欠缺的,不是工期太緊,就是人手不足(國內現狀)。這就給系統的設計工作提出了更高的要求。設計人員必須認真考慮如何在給定的工期和現有的人力、物力基礎之上,滿足使用者儘可能多的需求,而且,還要在後續的版本中以最小的代價滿足使用者其餘的需求。當然,評判設計優劣的標準並非僅此一條,還有可擴充套件性,易維護性等,但需求的滿足程度無疑是重要的一條。

  需求分析和系統設計是一個互動的過程。需求分析很難做到一步到位,也無法做到真正的充分和全面。所以,需求分析和系統設計之間不是瀑布模型中的上一步和下一步的關係,而是雙向互動,互相反饋的關係。首先是需求分析人員提交簡略的需求分析文件,然後系統設計人員據此做出大致的系統設計方案,並在方案的進一步細化過程中對需求中的細節和疑問提出進一步細化的要求。需求分析人員則針對設計人員提出的要求和疑問做進一步的深入調查,提交更加詳細的需求分析報告。如此反覆,直到系統設計得到完善。有些情況下,需求分析和系統設計任務是由同一個人或同一個小組來擔任的,則以上的反饋過程就在小組內部的交流中完成了。

  綜上所述,需求分析和系統設計是一個密不可分的整體。需求分析既是系統設計的基礎,又是系統設計優劣的評價標準,二者是雙向互動,互相反饋的關係。

  八風不動塗鴉於-11-24

 

 

 


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10752019/viewspace-985538/,如需轉載,請註明出處,否則將追究法律責任。

相關文章