首先,流程不是狹義的流程,也就是說不是單隻寫**這個過程,包括了軟體工程整個流程。
其次,我所講的這個流程不見得正確,準確的說是肯定不能適用於全部軟體開發專案,也就是說不是銀彈,其實說起來連大部分都涵蓋不了,頂多就是一部分吧。
可行性分析
這個一般都是做戰略的專家來做的,他們更加有市場的前瞻性,俗話說就是看的更遠一些,搞市場分析、調研,看看我們的想法到底是否可行,可行性有多大,可能會遇到的問題,我們的優勢在**,可以利用的資源有哪些,需要引進那些資源,有多少對手,他們都進行到了什麼程度等等。
這個階段的文件成果是:可行性分析報告等
需求分析
這個已經開始具體操作,經過可行性分析,我們有機會,可以進入這個領域。這時候,需要領域專家參與進來,架構師也要參與進來,還有就是需求分析的專業人士,和最少一名文件員,用來記錄開發討論的結果並形成文件。
工作就是分解專案的需求,到底要做些什麼,要實現什麼功能,就是功能的範圍和功能的細節,主要還是業務方面的梳理。
這個階段的文件成果是:需求分析說明書等
概要設計
經過前面的需求分析,形成了需求分析說明書。這個階段應該是業務建模,形成業務用例,進一步形成業務用例。這個階段是分解需求,可以使用pd(power designer)、
rational
等工具來輔助一下。
這個階段的文件成果是:概要設計說明書、業務用例文件等
詳細設計
有了概要設計,有了模型,可以定義出資料庫模型,甚至是可以定義資料庫的字段,然後可以讓高階程式設計師來輔助架構師進行架構設計,普通程式設計師先寫實現的技術用例。或者讓他們先看看業務用例,熟悉一下業務流程和專案的目標。
這個階段的文件成果是:概要設計說明書、技術用例文件等
具體開發
這個階段就是具體的**編寫了,考驗程式設計師的基本功的時候到了。
關於開發的分工的話,我趨向於分層來分工,這樣有以下幾個好處:
可能會有人說,怎麼沒有測試呢?其實測試時貫穿整個流程的,在需求分析的時候,可以讓他們熟悉業務,出來需求之後,他們就可以編寫一些手動測試的測試用例,後面產品出來就可以測試了。開發人員的開發的時候,他們就要進行自動化測試的準備。
還有就是一定要形成文件,每個階段都會有開會,開會大家都有討論,都需要有結論,有紙質的文件進行儲存,可以買錄音筆,先錄下來,然後整理成文件,因為每個階段都是後面階段的基礎,如果基礎出了問題,後面都會是有問題的,所以後面備查。
軟體工程之開發流程小總結
首先,流程不是狹義的流程,也就是說不是單隻寫 這個過程,包括了軟體工程整個流程。其次,我所講的這個流程不見得正確,準確的說是肯定不能適用於全部軟體開發專案,也就是說不是銀彈,其實說起來連大部分都涵蓋不了,頂多就是一部分吧。可行性分析 這個一般都是做戰略的專家來做的,他們更加有市場的前瞻性,俗話說就是...
軟體工程之開發流程小總結
本文的討論的開發流程的時候,有兩點需要注意 首先,流程不是狹義的流程,也就是說不是單隻寫 這個過程,包括了軟體工程整個流程。其次,我所講的這個流程不見得正確,準確的說是肯定不能適用於全部軟體開發專案,也就是說不是銀彈,其實說起來連大部分都涵蓋不了,頂多就是一部分吧。可行性分析 這個一般都是做戰略的專...
測試工程之測試流程
幾乎所有公司的測試部門都會定義乙份測試流程,測試部門有新員工進來,首先的培訓就是測試流程。測試流程的重要性不言而喻,測試流程的內容大家也都熟知。測試流程的最終目的是控制產品質量。任何流程都是貴在實施,不能流於形式。但實際上流程的落實質量千差萬別。究其原因並不是流程定義得不合理,或是環節缺失,因為大家...