1.2軟件分析
軟件開發(fā)模型:瀑布模型;演化模型(原型法);螺旋模型;噴泉模型(迭代和無間隙);軟件成本模型;可行性分析的任務是從技術(shù)上、經(jīng)濟上、使用上、法律上分析需解決的問題是否存在可行的解。
需求分析是軟件生存周期中相當重要的一個階段。需求分析主要是確定待開發(fā)軟件的功能、性能、數(shù)據(jù)、界面等要求。具體有以下幾點:
Ø 確定軟件系統(tǒng)的綜合要求
Ø 分析軟件系統(tǒng)的數(shù)據(jù)要求
Ø 導出系統(tǒng)的邏輯模型
Ø 修正項目開發(fā)計劃
Ø 如有必要,可開發(fā)一個原型系統(tǒng)
需求分析的基本原則是能夠表達和理解問題的信息域和功能域;以層次化的方式進行分解和不斷細化;要給出系統(tǒng)的邏輯視圖和物理視圖;
描述軟件需求的方法:
功能層次模型:一般來講就是系統(tǒng)的功能圖,模塊分布圖等描述整個系統(tǒng)的功能的分布和功能的層次結(jié)構(gòu);
數(shù)據(jù)流模型:就是以數(shù)據(jù)流為著眼點的分析方法得到的模型,主要通過數(shù)據(jù)在整個系統(tǒng)的流動情況來確定系統(tǒng)的主要功能主線和流程;
控制流模型:通過了解和界定系統(tǒng)中控制線,通過控制流的走向和控制的對象來確定系統(tǒng)的功能分布和控制與被控制的關(guān)系;
結(jié)構(gòu)化分析(SA)方法是一種面向數(shù)據(jù)流的需求分析方法,它適用于分析大型數(shù)據(jù)處理系統(tǒng)。結(jié)構(gòu)化分析方法的基本思想是自頂向下逐層分解,這樣做可以把一個大問題分解成若干個小問題,經(jīng)過多次逐層分解,每個最底層的問題都是足夠簡單、容易解決的,這個過程就是分解的過程。
結(jié)構(gòu)化方法的分析結(jié)果由數(shù)據(jù)流圖DFD、數(shù)據(jù)詞典和加工邏輯說明幾個部分組成。其中,DFD的基本成分有數(shù)據(jù)流(data flow)、加工(process)、文件(file)和源/宿(source/sink)。
n 畫數(shù)據(jù)流圖的基本步驟:自外向內(nèi)、自頂向下、逐層細化、完善求精;
n 數(shù)據(jù)流圖的父圖與子圖要平衡, 即輸入和輸出的數(shù)據(jù)流一致;
n 數(shù)據(jù)流圖中的每個加工至少有一個輸入數(shù)據(jù)流和一個輸出數(shù)據(jù)流;
n 局部的數(shù)據(jù)存儲不畫出來,只有當局部數(shù)據(jù)存儲作為某些數(shù)據(jù)加工之間的數(shù)據(jù)接口才畫出,這有利于信息隱蔽;
n 畫數(shù)據(jù)流的時候不畫控制流,兩者的區(qū)別就是控制流中沒有數(shù)據(jù);
n 一個加工的數(shù)據(jù)流與輸出流不應該同名;
n 允許一個加工有多條數(shù)據(jù)流流向另一個加工,也允許一個加工有兩個相同的輸出流向兩個不同的加工;
n 保持數(shù)據(jù)守恒:一個加工的所有輸出數(shù)據(jù)必須能從該加工的所有的輸入流中獲得;
n 在整套數(shù)據(jù)流圖中,每個文件都必須既有讀文件的數(shù)據(jù)流也有寫文件的數(shù)據(jù)流;
軟件開發(fā)過程中的軟件工程原則(8個):
Ø 抽象;
Ø 自頂向下、逐層細化;
Ø 信息隱蔽和數(shù)據(jù)封裝;
Ø 模塊化;
Ø 局部化;
Ø 確定性;
Ø 一致性和標準化;
Ø 完備性和可驗證性;
軟件工程基本原理(7個):
n 按軟件生存周期分階段指定計劃并認真實施;
n 堅持進行階段評審;
n 堅持嚴格的產(chǎn)品控制;
n 使用現(xiàn)代程序設(shè)計技術(shù);
n 明確責任,使得工作結(jié)果能夠得到清楚的審查;
n 用人少而精;
n 不斷改進開發(fā)過程;
相關(guān)推薦:2010年計算機軟件水平考試時間安排通知北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |