通過RUP用例進行需求管理的可追蹤性策略(1)

發表于:2007-06-11來源:作者:點擊數: 標簽:
本文作者將結合理論知識,實踐案例,優秀的工具介紹,經典文章導讀,告訴您 軟件工程 中最重要的一個過程――需求過程各方各面的知識。通過閱讀,您將了解到,需求的知識體系,需求的過程能力,相關的軟件工程知識,在實踐中如何做好 需求分析 。文章雖然有

本文作者將結合理論知識,實踐案例,優秀的工具介紹,經典文章導讀,告訴您軟件工程中最重要的一個過程――需求過程各方各面的知識。通過閱讀,您將了解到,需求的知識體系,需求的過程能力,相關的軟件工程知識,在實踐中如何做好需求分析。文章雖然有很多的例子,但是,文章主要還是偏向于宣傳一種思想,一種面向對象的思想,一種實踐的思想。

1.1. 從猴子說起

有這樣一個笑話:一個旅客走進硅谷的一家寵物店,瀏覽展示的寵物。這時,走進一個顧客,對店主說:"我要買一只C猴。"店主點了點頭,走到商店一頭的獸籠邊,抓出一只猴,遞給顧客說:"總共5000美元。"顧客付完款,然后帶走了他的猴子。

這位旅客非常驚訝,走到店主跟前說:"那只猴子也太貴了!"

店主說:"那只猴子能用C編程,非???,代碼緊湊高效,所以值那么多錢。"

這時,旅客看到了籠子中的另一只猴子,它標價10000美元。于是又問:"那只更貴了!它能做什么?"

店主回答:"哦,那是一只C++猴;它會面向對象的編程,會用Visual C++,還懂得一點Java,是非常有用的。"

旅客又逛了一會兒,發現了第三只猴子,它獨占一個籠子,脖子上的標價是50000美元。旅客倒抽一口氣,問道:"那只猴子比其他所有猴子加起來都貴!它究竟能做什么?"

店主說:"我們也不知道它究竟能做什么,不過它是做項目顧問出身的。"

雖然這只是一個笑話,但是有一點是可以肯定的,項目管理是非常重要的,而項目管理的人才又是極為缺乏的。在軟件工業發達的國家,大家多少都知道點軟件工程規劃的重要性。在我們身邊的臺灣、印度、日本,都不乏因實施軟件工程而成功的軟件團體,更不用說身為軟件大國的美國,已經從較低級的軟件實現擺脫出來,進入了設計和營銷的境界。

軟件首先是一種產品(軟件是服務還是產品的問題,向來未有定論),看看世界上制造業的發展歷程,就會發現一些很有意思的現象。在本世紀早些的年代,西方國家的制造業經歷了規模生產、提高質量等等促進生產力提高的過程??墒怯捎谖鞣絿业娜肆Y源成本不斷的攀升,越來越難降低產品成本,所以西方國家又不可避免的經歷了一次將制造業外移的過程(制造業外移的結果是成本大幅下降、國際貿易頻繁、接受制造業的國家發展了自身的制造業),而西方國家只留下營銷和設計的能力,掌握了產品生產的重點。

同樣,IT行業也在經歷這種過程:美國將軟件外包給印度,硬件外包給臺灣。而中國的硬件也在崛起,但是在軟件行業,中國和其他國家的差距還是太大了,且不說在軟件行業中處于核心地位的操作系統、數據庫。即便是應用軟件,中國的軟件水平也實在低的可憐。在國外制造業剛剛遷移進中國的時候(改革開放),中國的小企業家同樣沒有任何管理經驗、質量意識。但是隨著制造業的發展和國外先進思想的進入,中國也誕生了極為出色的全球制造業巨頭。而中國的軟件行業現在正是處于剛剛有了一點管理思想,但還沒有成熟的地步。我們有理由相信,在不久的將來中國也會誕生出出色的全球性軟件企業。

憧憬歸憧憬,現實的問題還是必須要考慮的。軟件這個產品很奇特,軟件企業的管理思想同樣很奇特。不同于現在企業推崇的各種管理思想,軟件企業的管理思想主要是針對項目的管理,確保項目的成功。

1.2. 項目和需求

笑話里的猴子對應到項目就是指項目管理人員,這里要引入一個角色的概念(同樣的人可以擔任多種的角色),通常的項目管理角色包括:項目經理、項目復審員、變更控制經理、企業流程分析師、業務模型設計師、需求分析員、需求復審員、系統分析員…在一個成功的項目里,多種角色職責明確,分工合作,共同完成項目的設計實施。

那么這些"猴子"在項目中都做了些什么呢?RUPRational Unified Process 瑞理統一過程,本文采用了眾多的RUP的思想)把一個項目分成10個核心工作流程(Core Workflows)和4個階段(Phases),并以核心工作流程為Y軸,階段為X軸建立起一個項目視圖(圖一)。

本文將主要對先啟階段做介紹。在先啟階段,需求是重中之中,這里指的需求不僅僅是RUP的一個工作流程(在業務建模下),而是比較廣義的概念,包括了RUP的工作流程中的業務建模、需求、一部分的分析、測試計劃、配置和變更管理。

1.3. 需求是根本

由于忽略需求過程造成的項目返工是惡性的,大量的項目在需求階段就注定了它的失敗。以下是需求過程不科學的典型例子:

開發人員在用戶處呆了兩三天就埋頭開發;

用戶告訴開發人員我要開發一個XX系統,但是我很忙,你先開發一個讓我看看; 

上面的這兩種態度都意味著項目的不成功,應該說上面的開發人員和用戶都應該對此負責。需求是開發者和用戶交互的一個過程,任何一方的不投入都會導致項目的失敗。當然,由于用戶不是專業人士,開發者有權利告訴用戶應該采用何種態度來對待項目的需求。曾經和幾個朋友聊過他們公司開發過的項目,最后得出一個結論,所有最成功的項目都有一個重要的特性:用戶非常的支持。

評判一個軟件項目成功的標準是看它是否解決了用戶的問題,而用戶的問題就是體現為用戶的需求,需求也就順理成章的成為項目的成功標準。而需求階段的一個不慎都有可能導致軟件實現階段的大量返工,而需求的不慎不是說你小心就可以的,因為很多需求是隱性的,連用戶都不清楚自己的需求。這時候就需要一種科學的方法來幫助軟件組織實施需求過程。


共5頁: 1 [2] [3] [4] [5] 下一頁

原文轉自:http://www.anti-gravitydesign.com

...
国产97人人超碰caoprom_尤物国产在线一区手机播放_精品国产一区二区三_色天使久久综合给合久久97