軟件工程筆記整理_第1頁
軟件工程筆記整理_第2頁
軟件工程筆記整理_第3頁
軟件工程筆記整理_第4頁
軟件工程筆記整理_第5頁
已閱讀5頁,還剩18頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、軟件工程概論1、軟件危機北軟論. x( q% V0 w1)、軟件工程的目的:倡導以工程的原理、原則和方法進行軟件開發,以解決當時出現的軟件危機。7 K/ , s0 B9 J# C5 N7 g2)、軟件危機:指在計算機軟件開發和維護過程中所遇到的一系列問題。2 D( h3 S5 a, OA、如何開發軟件以滿足對軟件日益增長的需求。4 A6 Y" O$ c" F8 b' , I北軟論壇,北京大學軟件與微電子學院,PKU,MSE,北軟,攜手北軟,北京大學,北京大學軟件學院,北京大學微電子與軟件學院,北京大學軟微學院,北大軟院,軟院,工程碩士,北大工程碩士,軟件工程碩士,北

2、京大學軟件工程碩士,北大軟件工程碩士,北軟護航,考研,北軟考研B、如何維護數量不斷增長的已有軟件。" q! L& k) g( B  e3)、軟件危機的主要表現形式北京大學軟件A、軟件開發成本高,研制進度無法準確估計,用戶不滿意。3 g  W, q5 X$ j北京大學軟件工程碩士|MSE|北京大學軟件與微電子學院|北軟論壇B、軟件產品的可靠性得不到保證。C、軟件產品難以維護。+ h, U8 A8 2 o( T% & N+ E( H( l. H一個專注于北京大學軟件與微電子學院軟件工程碩士考研的論壇,絕對不會讓你失望!D、軟件發展跟

3、不上硬件的發展和用戶的要求,硬件成本逐年下降,軟件成本越來越昂貴。' P4 F. f& h/ A6 c& U* I3 B一個專注于北京大學軟件與微電子學院軟件工程碩士考研的論壇,絕對不會讓你失望!% S* a" z: Y- d5 E2、軟件工程概念! x6 H8 1 ' : ) |% x9 s北京大學軟件工程碩士|MSE|北京大學軟件與微電子學院|北軟論壇1)、軟件:計算機系統中的程序及其文檔。程序是計算任務的處理對象和處理規則的描述;文檔是為了便于理解程序所需的闡明性資料。細言之,軟件有三層含義:攜手北軟/ y* z- H0 1 k& MA、

4、個體含義:即指計算機系統中的程序及其文檔。一個專注于北京大學軟件與微電子學院軟件工程碩士考研的論壇,絕對不會讓你失望!- y* e6 g' " VB、整體含義:即指在特定計算機系統中所有上述個體含義下的軟件的總稱。C、學科含義:即指在研究、開發、維護以及使用前述含義下的軟件所涉及的理論、方法、技術所構成的學科。北京2)、工程:將理論和所學的知識應用于實踐的科學。研4 4 t# f3 X9 2 ; 3)、軟件工程:應用計算機科學、數學及管理科學等原理,開發軟件的工程。它借鑒傳統工程的原則、方法,以提高質量,降低成本為目的。其中,計算機科學、數學用于構造模型與算法,工程科學用于制

5、定規范、設計范型、評估成本及確定權衡,管理科學用于計劃、資源、質量、成本等管理。8 J! ( v! B* ?; Y9 * k# J5 q+ R/ h# Y; Q$ N3 6 K  A/ H0 r北軟論壇,北京大學軟件與微電子學院,PKU,MSE,北軟,攜手北軟,北京大學,北京大學軟件學院,北京大學微電子與軟件學院,北京大學軟微學院,北大軟院,軟院,工程碩士,北大工程碩士,軟件工程碩士,北京大學軟件工程碩士,北大軟件工程碩士,北軟護航,考研,北軟考研3、軟件工程框架(參見附圖軟件工程框架示意圖)/ l- I* t9 g5 P: o& w北京大學軟件工程碩士|MSE|北

6、京大學軟件與微電子學院|北軟論壇1 H+ c) q: E  7 ( i: o6 Z" r1)、軟件工程目標:生產具有正確性、可用性和開銷合宜的產品。& m& i% x# y2 _* y/ G  Y2 : T北軟論壇,北京大學軟件與微電子學院,PKU,MSE,北軟,攜手北軟,北京大學,北京大學軟件學院,北京大學微電子與軟件學院,北京大學軟微學院,北大軟院,軟院,工程碩士,北大工程碩士,軟件工程碩士,北京大學軟件工程碩士,北大軟件工程碩士,北軟護航,考研,北軟考研A、正確性:是指軟件產品達到預期功能的程度。  0

7、 T# f% j5 e; ?B、可用性:是指軟件基本結構、實現以及文檔為用戶可用的程度。C、開銷合宜:是指軟件開發、運行的整個開銷滿足用戶要求的程度。7 B" A- L" U: S! j( G9 l7 t一個專注于北京大學軟件與微電子學院軟件工程碩士考研的論壇,絕對不會讓你失望!2)、軟件開發活動:生產一個最終滿足需求且達到工程目標的軟件產品所需要的活動。軟件開發的基本活動包括:需求、設計、實現、確認、和支持。北京大學軟件工程碩士|MSE|北京大學軟件與微電子學院|北軟論壇' i$ 5 6 E- o4 D+ yA、需求:就是定義問題。% D- 5 l8 q4 aB、

8、設計:在需求的基礎上,給出被建系統的軟件設計方案。C、實現:在軟件設計的基礎上,編碼被建系統軟件體系結構中的每一模塊或構件。, g+ F2 D1 ?' v& c7 yD、確認:需求復審、設計復審及程序測試。一個專注于北京大學軟件與微電子學院軟件工程碩士考研的論壇,絕對不會讓你失望!  Q$ k: I, / h8 z! c5 s' sE、支持:為系統的運行提供糾錯性維護和完善性維護。北軟論壇,北京大學軟件與微電子學院,PKU,MSE,北軟,攜手北軟,北京大學,北京大學軟件學院,北京大學微電子與軟件學院,北京大學軟微學院,北大軟院,軟院,工程碩士,北大工

9、程碩士,軟件工程碩士,北京大學軟件工程碩士,北大軟件工程碩士,北軟護航,考研,北軟考研) D* A; ; |' s- U9 o3)、軟件工程原則:圍繞軟件開發,提出了以下基本原則。A、選取適宜的開發范型:在系統設計中,經常需要權衡軟件需求、硬件需求以及其它因素之間的相互制約和影響,適應需求的易變性。選用適宜的開發范型,以保證軟件開發的可持續性,并使最終的軟件產品滿足客戶的要求。( M' I& E8 y5 x9 P/ E2 kB、采用好的設計方法:在軟件設計中,通常需要考慮軟件的模塊化、信息隱蔽、局部化、一致性以及適應性等問題。采用合適的設計方法,支持這些問題的解決和實現

10、。% ?+ ' h7 g/ 8 x$ q) N7 MC、提供高質量的工程支持:如其它工程一樣,需要提供高質量的工程支持,例如配置管理、質量保證等,才能按期交付高質量的軟件產品。7 H1 w( J# x) O/ 7 v4 P6 Q& z* e4 ?D、有效的軟件工程管理:軟件工程的管理,直接影響可用資源的有效利用,提高軟件組織的生產能力。僅當對軟件過程實施有效管理時,才能實現有效的軟件工程。5 J6 b' w& b* k4)、軟件工程學科研究的內容:軟件開發模型、軟件開發方法、軟件過程、軟件工具、軟件開發環境、計算機輔助軟件工程以及軟件經濟學等。6 a# ! f8

11、 * J9 v北京大學軟件工程碩士|MSE|北京大學軟件與微電子學院|北軟論壇5)、軟件開發方法學:是一種已定義好的技術集和符號表示習慣,來組織軟件開發的過程,一般表示為一系列步驟,包括結構化方法、面向對象方法、Jackson方法、Warnier方法、PAM方法、可視化方法等。軟件開發模型- S! S3 h3 _/ G9 w) 5 R : T2 s! U6 v1 K- h0 f) r攜手北軟1、軟件開發模型:軟件開發全部過程、活動、任務的結構框架。6   P9 L. k- o% R. V6 u攜手北軟# t* ' A3 J6 V7 & r2、軟件生存周期:軟

12、件產品從定義開始,經過開發、使用和維護,直到最后被淘汰的整個過程。# Z. Y6 D* k% O北軟論壇,北京大學軟件與微電子學院,PKU,MSE,北軟,攜手北軟,北京大學,北京大學軟件學院,北京大學微電子與軟件學院,北京大學軟微學院,北大軟院,軟院,工程碩士,北大工程碩士,軟件工程碩士,北京大學軟件工程碩士,北大軟件工程碩士,北軟護航,考研,北軟考研北軟論壇,北京大學軟件與微電子學院,PKU,MSE,北軟,攜手北軟,北京大學,北京大學軟件學院,北京大學微電子與軟件學院,北京大學軟微學院,北大軟院,軟院,工程碩士,北大工程碩士,軟件工程碩士,北京大學軟件工程碩士,北大軟件工程碩士,北軟護航,考

13、研,北軟考研" f. C+ T  w8 4 f, ?1 Q3、軟件過程:是為了獲得高質量的軟件所需要完成的一系列任務的框架,它規定了完成各項任務的工作步驟。) D% f, I- c9 V0 x! 攜手北軟攜手北軟+ J% b& G3 g% $ K$ J% x( f4、瀑布模型(參見瀑布模型示意圖)( K4 c% $ E2 g+ g" n( b( 1)、概述:將軟件生存周期的各項活動規定為依固定順序連接的若干階段工作,形如瀑布流水,最終得到軟件產品,是一種線性模型。一個專注于北京大學軟件與微電子學院軟件工程碩士考研的論壇,絕對不會讓你失望!$ n+

14、 M- D# |, Q, t( c2)、各階段活動:提出系統需求、提出軟件需求、需求分析、設計、編碼、測試和運行。) m6 ?! D" Q1 k& q  S+ , r北軟論壇,北京大學軟件與微電子學院,PKU,MSE,北軟,攜手北軟,北京大學,北京大學軟件學院,北京大學微電子與軟件學院,北京大學軟微學院,北大軟院,軟院,工程碩士,北大工程碩士,軟件工程碩士,北京大學軟件工程碩士,北大軟件工程碩士,北軟護航,考研,北軟考研3)、每一階段的特征北軟論壇,北京大學軟件與微電子學院,PKU,MSE,北軟,攜手北軟,北京大學,北京大學軟件學院,北京大學微電子與軟件學

15、院,北京大學軟微學院,北大軟院,軟院,工程碩士,北大工程碩士,軟件工程碩士,北京大學軟件工程碩士,北大軟件工程碩士,北軟護航,考研,北軟考研) - T- 5 i0 |+ t1 zA、從上一階段接受本階段工作的對象,作為輸入。: C1 R& H( r+ S/ ( D- G一個專注于北京大學軟件與微電子學院軟件工程碩士考研的論壇,絕對不會讓你失望!B、對上述輸入實施本階段的活動。C、給出本階段的工作成果,作為輸出傳入下一階段。* J# Y; Z$ 7 S1 G. s" b; a北軟論壇,北京大學軟件與微電子學院,PKU,MSE,北軟,攜手北軟,北京大學,北京大學軟件學院,北京大學

16、微電子與軟件學院,北京大學軟微學院,北大軟院,軟院,工程碩士,北大工程碩士,軟件工程碩士,北京大學軟件工程碩士,北大軟件工程碩士,北軟護航,考研,北軟考研D、對本階段工作進行評審,若本階段工作得到確認,則繼續下階段工作;否則返回前一階段,甚至更前階段。2 - R: M; * 6 o% & R: O1 o4)、優缺點攜手北軟9 D0 B$ H$ z: S0 E/ w( x$ x1 ZA、優點:在支持結構化軟件開發、控制軟件開發的復雜性、促進軟件開發工程化等方面起著顯著作用。6 _) M. , R+ C- w4 a一個專注于北京大學軟件與微電子學院軟件工程碩士考研的論壇,絕對不會讓你失望!

17、B、缺點:缺乏靈活性,無法通過開發活動澄清本來不夠確切的軟件需求。北軟論壇,北京大學軟件與微電子學院,PKU,MSE,北軟,攜手北軟,北京大學,北京大學軟件學院,北京大學微電子與軟件學院,北京大學軟微學院,北大軟院,軟院,工程碩士,北大工程碩士,軟件工程碩士,北京大學軟件工程碩/ e9 S* ?6 m: m: w. f+ s* X北京大學軟件工程碩士|MSE|北京大學軟件與微電子學院|北軟論壇5、演化模型(參見演化模型示意圖)* Y6 c3 H' Z9 e& G1)、概述:演化模型主要針對事先不能完整定義需求的軟件開發。北京大學軟件工程碩士|MSE|北京大學軟件與微電子學院|北

18、軟論壇9 V( p" J# b1 L' G7 w- p2 |" J2)、開發過程:首先開發核心系統,當核心系統投入運行后,開發人員根據用戶的反饋,實施開發的迭代過程。每一迭代過程均由需求、設計、編碼、測試、集成等階段組成,直到軟件開發結束。北京大學軟件工程碩士|MSE|北京大學軟件與微電子學院|北+ 3)、優點:一定程度上減少了軟件開發活動的盲目性。一個專注于北京大學軟件與微電子學院軟件工程碩士考研的論壇,絕對不會讓你失望!) 8 + j/ 8 _# 4 ' d8 g% D* F# K: 8 H" k; e# 1 F$ T7 I北京大學軟件工程碩士

19、|MSE|北京大學軟件與微電子學院|北軟論壇北京大學軟件工程碩士|MSE|北京大學軟件與微q; i7 T; g6 # b! m8 S北軟論壇,北京大學軟件與微電子學院,PKU,MSE,北軟,攜手北軟,北京大學,北京大學軟件學院,北京大學微電子與軟件學院,北京大學軟微學院,北大軟院,軟院,工程碩士,北大工程碩士,軟件工程碩士,北京大學軟件工程碩士,北大軟件工程碩士,北軟護航,考研,北軟考研6、螺旋模型(參見螺旋模型示意圖)! U9 ' c( g$ T" p8 v- 8 1)、概述:在瀑布模型和演化模型的基礎上,加入兩者所忽略的風險分析所建立的一種軟件開發模型。一個專注于北京大學

20、軟件與微電子學院軟件工程碩士考研的論壇,絕對不會讓你o* Z' 2)、特點:沿螺旋模型順時針方向,依次表達了四個方面的活動,制定計劃、風險分析、實施工程、客戶評估。* s# a" v- D8 J7、噴泉模型:它體現了軟件創建所固有的迭代和無間隙特征。主要用于面向對象開發過程。(參見噴泉模型示意圖)) W" F& H+ I8 J! _' f; I8、增量模型:在設計了軟件系統整體體系結構之后,首先完整的開發系統的一個初始子集,繼之,根據這一子集,建造一個更加精細的版本,如些不斷地進行系統的增量開發。(參見增量模型示意圖)北軟) A: S& T6

21、 N  D( Z7 L0 c9 f; i% E$ _8 S5 U9 w% X) d# j2 f1 e/ V4 北軟論壇,北京大學軟件與微電子學院,PKU,MSE,北軟,攜手北軟,北京大學,北京大學軟件學院,北京大學微電子與軟件學院,北京大學軟微學院,北大軟院,軟院,工程碩士,北大工程碩士,軟件工程碩士,北京大學軟件工程碩士,北大軟件工程碩士,北軟護航,考研,北軟考研) x2 : 9 l% $ C: q0 U攜手北軟9、各種模型之間的區別與聯系北軟論壇,北京大學軟件與微電子學院,PKU,MS2 O* y1)、瀑布模型、演化模型、螺旋模型之間的異同。一個專注于北京大學軟件與微電

22、子學院軟件工程碩士考研的論壇,絕對不會讓你失望!- C) R% N, C. H6 cA、相同點:都分為多個階段。B、不同點:瀑布模型一次完成軟件;演化模型分為多次完成,每次迭代完成軟件的一個部分;螺旋模型也分為多次完成,每次完成軟件的一個新原型,并考慮風險分析。, t* s7 q- m2 _4 W2 R/ t攜手北軟2)、演化模型和增量模型的區別A、演化模型:首先開發核心系統,每次迭代為系統增加一個子集,整個系統是增量開發和增量提交。B、增量模型:首先完整的開發系統的一個初始子集,然后不斷的建造更精細的版本。_. S% f; Y* 3)、需要完整定義需求的模型:瀑布模型、增量模型。北京大學軟件

23、工程碩士|MSE|北京大學軟4)、屬于迭代風范的模型:演化模型、增量模型、噴泉模型、螺旋模型。第三章 結構化需求分析, k# l+ R7 - x2 f5 m; F; i一個專注于北京大學軟件與微電子學院軟件工程碩士考研的論壇,絕對不會讓你失望!一個專注于北京大學軟件與微電子學院軟件工程碩士考研的論壇,絕對不會讓你失望!. P- S- f; 4 P! $ K1、需求分析1)、基本任務:準確定義未來系統的目標,確定為了滿足用戶的需要系統必須做什么。V& T1 2)、承擔者:系統分析員。O3)、兩個階段:需求獲取和需求規約。) S. d, S) L6 . : V) g# x8 2、需求獲取1

24、)、目的:清楚地理解所要解決的問題,完整地獲取用戶需求。北軟論壇,北京大學軟件與微電子學院,PKU,MSE,北軟,攜手北軟,北京大學,北京大學軟件學院,北京大學微電子與軟件學院,北京大學軟微學院,北大軟院,軟院,工程工2)、主要活動:通過學習、請教領域專家、向用戶提問等。- c/ u& a) s7 s( 9 j+ V/ e4 U3)、三大挑戰:問題空間理解;人與人之間的通信;需求的不斷變化。- y' P- m* C) r# Z北京大學軟件工程碩士|MSE|北京大學軟件與微電子學院|北軟論壇4)、分類及內容% z9 d6 6 N% X3 m3 一個專注于北京大學軟件與微電子學院軟

25、件工程碩士考研的論壇,絕對不會讓你失望!A、功能性需求:定義系統做什么。/ R7 c* T  _  5 B、非功能性需求:定義系統工作時的特性。北京大學軟件工程碩士|MSE|北京大學軟件與微電子學院|北軟論壇2 W: c& N* O9 N# i' E) P. 5)、原則  b$ w9 n4 U# / U( + i) l北軟論壇,北京大學軟件與微電子學院,PKU,MSE,北軟,攜手北軟,北京大學,北京大學軟件學院,北京大學微電子與軟件學院,北京大學軟微學院,北大軟院,軟院,工程碩士,北大工程碩士,軟件工程碩士,北京大學軟

26、件工程碩士,北大軟件工程碩士,北軟護航,考研,北軟考研A、劃分:捕獲問題空間的“整體/部分”關系。2 U3 L% d  h) F北軟論壇,北京大學軟件與微電子學院,PKU,MSE,北軟,攜手北軟,北京大學,北京大學軟件學院,北京大學微電子與軟件學院,北京大學軟微學院,北大軟院,軟院,工程碩士,北大工程碩士,軟件工程碩士,北京大學軟件工程碩士,北大軟件工程碩士,北軟護航,考研,北軟考研B、抽象:捕獲問題空間的“一般/特殊”或“特例”關系。$ r, % 6 X& _$ S攜手北軟C、投影:捕獲問題空間的多維“視圖”。6)、技術A、一種好的需求獲取技術應具備的基本特征。8

27、 P6 j- |6 u* v2 B8 _4 m7 n提供方便的通信;一個專注于北京大學軟件與微電子學院軟件工程碩士考研的論壇,絕對不會讓你失望!3 v% u9 ' b( X4 m/ o提供定義系統邊界的方法; 2 T" H: f提供支持抽象的基本機制;一個專注于北京大學軟件與微電子學院軟件工程碩士考研的論壇,絕對不會讓你失望!) k1 A5 e+ g& J(   鼓勵分析員使用問題空間的術語思考問題,編寫文檔;* V+ A  & A& v& y8 v# T& A* F" # i$ g攜手

28、北軟為分析員提供多種可供選擇的設計方案;5 w% k% M- V( J0 $ B$ P* c適應需求的變化。一個專注于北京大學軟件與微電子學院軟件工程碩士考研的論壇,絕對不會讓你失望!% Q2 j' # d; Z3 U% D3 AB、Jacobson提出的用況法基本符合以上特征,詳見“第五章 面向對象方法”的“用況圖”。$ Q4 ! ) k3 L9 X5 T( j北京大學軟件工程碩士|MSE|北京大學軟件與微電子學院|北軟論壇3、需求規約:對需求陳述進行分析,解決其中存在的二義性和不一致性,并以一種系統化的形式準確地表達用戶的需求,形成所謂的需求規格說明書。, |5 D2 I2 s.

29、9 ?一個專注于北京大學軟件與微電子學院軟件工程碩士考研的論壇,絕對不會讓你失望!$ J0 & a1 I$ D/ v4、結構化方法:是一種系統化開發軟件的方法,該方法基于模塊化的思想,采用“自頂向下,逐步求精”的技術對系統進行劃分,分解和抽象是它的兩個基本手段,結構化方法是結構化分析、結構化設計和結構化編程的總稱。攜手北軟0 H5 i; x; y, c7 6、結構化分析4 N; t+ Y9 7 L& Q7 北京大學軟件工程碩士|MSE|北京大學軟件與微電子學院|北軟論壇1)、基本步驟A、通過對現實系統的了解和分析,或基于需求陳述,建立該系統的數據流圖;- S2 + Y$ f/

30、N# A6 z+ w% 一個專注于北京大學軟件與微電子學院軟件工程碩士考研的論壇,絕對不會讓你失望!B、基于得到的數據流圖,建立該系統的數據字典;. o- _- O9 O, p. P; 一個專注于北京大學軟件與微電子學院軟件工程碩士考研的論壇,絕對不會讓你失望!C、基于得到的數據流圖,對最低層的加工給出其控制結構描述;D、依據需求,建立人機接口和其他性能描述;9 q- b' W: - v5 b) |/ u北京大學軟件工程碩士|MSE|北京大學軟件與微電子學院|北軟論壇E、通過分析和驗證,建立系統完整的需求規約。+ F  g6 v! 1 8 F. p一個專注于北京大學

31、軟件與微電子學院軟件工程碩士考研的論壇,絕對不會讓你失望!2)、結構化分析模型:數據流圖(DFD)是一種描述數據變換的圖形工具,是結構化分析方法最普遍采用的表示手段,數據字典和小說明為數據流圖提供了補充,并用以驗證圖形表示的正確性、一致性和完整性,以上三者構成了結構化分析的模型。北京大學軟件工程碩士|MSE|北京大學軟件與微電子學院|北軟論壇) A' q" I  b; q) d& q/ xA、數據流圖:是一種描述數據變換的圖形工具,系統接受輸入的數據,經過一系列的變換(或稱加工),最后輸出結果數據。包括加工、數據流、數據存儲、數據源和數據潭。&am

32、p; R3 U9 y4 r+ Z! F/ 加工:是對數據進行處理的單元;用圓圈表示;頂層的加工名就是軟件系統的名字,加工的名字最好使用動賓詞組(e.g.計算費用),也可用主謂詞組(e.g.費用計算),不要使用意義空洞的動詞作為加工名(e.g.計算)。' a  s" T8 k" R% C4 r+ J/ p+ u) j數據流:表示數據(由一組數據項組成)和數據流向(三種流向:從加工流向加工;從數據源流向加工或從加工流向數據潭;從加工流向數據存儲或從數據存儲流向加工。兩個加工之間可以有多個數據流,這些數據流之間沒有任何聯系,數據流圖不表明它們的先后次序

33、);用箭頭表示;用名詞或名詞詞組命名,盡量選用現實系統中已有的名字。8 U&   e3 _0 C) l1 I* _9 a5 x北軟論壇,北京大學軟件與微電子學院,PKU,MSE,北軟,攜手北軟,北京大學,北京大學軟件學院,北京大學微電子與軟件學院,北京大學軟微學院,北大軟院,軟院,工程碩士,北大工程碩士,軟件工程碩士,北京大學軟件工程碩士,北大軟件工程碩士,北軟護航,考研,北軟考研數據存儲:表示信息的靜態存儲;用兩條平行線表示;其命名方法同數據流。數據源:數據的來源;用矩形表示;* r- _6 v* O/ j6 q! k4 V一個專注于北京大學軟件與微電子學院軟件工

34、程碩士考研的論壇,絕對不會讓你失望!數據潭:數據的最終目的地;用矩形表示。北軟論壇,北京大學軟件與微電子學院,PKU,MSE,北軟,攜手北軟,北京大學,北京大學軟件學院,北京大學微電子與軟件學院,北京大學軟微學院,北大軟院,軟院,工程碩士,北大工程碩士,軟件工程碩士,北京大學軟件工程碩士,北大軟件工程碩士,北軟護航,考研,北軟考研% . L8 y! 8 M& M) AB、數據字典:以一種準確的和無二義的方式定義所有被加工引用的數據流和數據存儲。包括數據流條目、數據存儲條目、數據項條目。常用邏輯操作符:“=”等價于(定義為)、“+”與(順序結構)、“”重復(循環結構)、“|”或(選擇結構

35、)、“()”任選、“m.n”界域。1 X9 v6 A, 8 S) Y) s8 m: 北軟論壇,北京大學軟件與微電子學院,PKU,MSE,北軟,攜手北軟,北京大學,北京大學軟件學院,北京大學微電子與軟件學院,北京大學軟微學院,北大軟院,軟院,工程碩士,北大工程碩士,軟件工程碩士,北京大學軟件工程碩士,北大軟件工程碩士,北軟護航,考研,北軟考研C、小說明:用于描述底層加工,集中描述一個加工的輸入數據和輸出數據的邏輯關系,即加工邏輯,并不描述具體的加工過程。一般用自然語言、結構化自然語言、判定表和判定樹等描述。- e( R0 c5 X; I3 ( _6 9 Z一個專注于北京大學軟件與微電子學院軟件工

36、程碩士考研的論壇,絕對不會讓你失望!結構化自然語言:分為內外兩層,外層語法描述操作的控制結構,內層語法用自然語言描述。如:在飛機票預訂系統中北軟論壇,北京大學軟件與微電子學院,PKn8 z5 w在旅游旺季的79,12月: t" J8 + L$ F/ N%   i: C北軟論壇,北京大學軟件與微電子學院,PKU,MSE,北軟,攜手北軟,北京大學,北京大學軟件學院,北京大學微電子與軟件學院,北京大學軟微學院,北大軟院,軟院,工程碩士,北大工程碩士,軟件工程碩士,北京大學軟件工程碩士,北大軟件工程碩士,北軟護航,考研,北軟考研     &#

37、160; 如果 訂票超過20張 5 K/ x" E1 L2 W5 ) x一個專注于北京大學軟件與微電子學院軟件工程碩士考研的論壇,絕對不會讓你失望!                     優惠票價的15%: g4 U* U* W8 ?攜手北軟       如果 訂票20張以下. _7 f7 a, 8 j+ h           

38、60;         優惠票價的5%在旅游淡季的16,10,11月份- t) F% C: I: s: M% h  K北京大學軟件工程碩士|MSE|北京大學軟件與微電子學院|北軟論壇       如果 訂票超過20張3 d" g! u+ l0 l& Y7 R7                      優惠30%北京大學

39、軟件工程碩士|MSE|北京大學軟件與微電子學院|北軟論壇% i; I: K/ u) y9 p! Z       如果 訂票20張以下0 y* ?- V5 z- v+ D4 j' I0 F( v                     優惠20%6 D0 w& f0 & B北軟論壇,北京大學軟件與微電子學院,PKU,MSE,北軟,攜手北軟,北京大學,北京大學軟件學院,北京大學微電子與軟件學院,北

40、京大學軟微學院,北大軟院,軟院,工程碩士,北大工程碩士,軟件工程碩士,北京大學軟件工程碩士,北大軟件工程碩士,北軟護航,考研,北軟考研判定表:分四個區,一區列出所有的條件類別,二區列出所有的條件組合,三區列出所有的操作,四區列出在相應的組合條件下某個操作是否執行或執行情況。如:" m) R" j6 7 s! k北軟論壇,北京大學軟件與微電子學院,PKU,MSE,北軟,攜手北軟,北京大學,北京大學軟件學院,北京大學微電子與軟件學院,北京大學軟微學院,北大軟院,軟院,工程碩士,北大工程碩士,軟件工程碩士,北京大學軟件工程碩士,北大軟件工程碩士,北軟護航,考研,北軟考研北京大學軟

41、件工程碩士|MSE|北京大學軟0 C+ Z旅游時間一個專注于北京大學軟件與微電子學院軟件工程碩士考研的論壇,絕對不會讓你失望!+ U) $ Z# O. s79,12月7 O2 o6 M% x7 ( |" L16,10,11月一個專注于北京大學軟件與微電子學院軟件工程碩士考研的論壇,絕對不會讓你失望!1 n3 p7 X3 * w, X訂票量5 - L7 W$ y9 i! y3 T北軟論壇,北京大學軟件與微電子學院,PKU,MSE,北軟,攜手北軟,北京大學,北京大學軟件學院,北京大學微電子與軟件學院,北京大學軟微學院,北大軟院,軟院,工程碩士,北大工程碩士,軟件工程碩士,北京大學軟件工程

42、碩士,北大軟件工程碩士,北軟護航,考研,北軟考研<=20) k. % e( M8 U; H" z. >20  q5 f: 8 f% I' w1 x北軟論壇,北京大學軟件與微電子學院,PKU,MSE,北軟,攜手北軟,北京大學,北京大學軟件學院,北京大學微電子與軟件學院,北京大學軟微學院,北大軟院,軟院,工程碩士,北大工程碩士,軟件工程碩士,北京大學軟件工程碩士,北大軟件工程碩士,北軟護航,考研,北軟考研<=205 X* t. g) T. o* y1 ?6 r1 l>20! x9 C9 9 s折扣量北京大學軟件工程碩士|MSE|北京大學

43、軟件與微電子學n8 0 T$ i/ ; v: P5%7 f# X) S- |( ( l( : L15%# 1 t5 M5 g! V" s! W' X20%+ N/ S  p  A- t0 H+ N$ C0 G* G30%北程碩士,北京大學軟件工程碩士,北大軟件工程碩士,北軟護航,考研,北軟考研/ y  R( q, q2 ) h; _  U: i9 f( |. M$ c" d$ P1 t) G( d2 V9 J( v北軟論壇,北京大學軟件與微電子學院,PKU,MSE,北軟,攜手北軟,北京大

44、學,北京大學軟件學院,北京大學微電子與軟件學院,北京大學軟微學院,北大軟院,軟院,工程碩士,北大工程碩士,軟件工程碩士,北京大學軟件工程碩士,北大軟件工程碩士,北軟護航,考研,北軟考研判定樹:用圖形形式描述加工邏輯。一個專注于北京大學軟件與微電子學院軟件工程碩士考研的論壇,絕對不會讓你失望!3 y+ l  C  L# E4 X$ A3 P% l3)、建立結構化分析模型的步驟(附實例)+ j/ V4 p' K% X# J一個專注于北京大學軟件與微電子學院軟件工程碩士考研的論壇,絕對不會讓你失望!A、確定系統邊界,畫出系統環境圖(參見系統環境示意圖)

45、! w6 & j9 U3 Y& w, y* t) |北京大學軟件工程碩士|MSE|北京大學軟件與微電子學院|北軟論壇B、自頂向下,畫出各層數據流圖) a! _9 9 p2 i( ! 5 k0 d一個專注于北京大學軟件與微電子學院軟件工程碩士考研的論壇,絕對不會讓你失望!功能分解(參見功能分解示意圖)& X' K# K7 q& K7 _' h; M1 F9 Q# u5 p攜手北軟數據流的分派(參見數據流分派示意圖)2 w4 s/ , |4 w* z/ J# N" U  / _  / P1 h7 t攜

46、手北軟文件引入與精化(參見精化示意圖)3 ?5 Y1 % B1 W, F如果有必要,從開始對分解后的加工再次進行分解,建立更下一層的數據流圖一個專注于北京大學軟件與微電子學院軟件工程碩士考研的論壇,絕對不會讓你失望!+ h& h9 W- h7 Z" G, gC、定義數據字典一個專注于北京大學軟件與微電子學院軟件工程碩士考研的論壇,絕對不會讓你失望!0 h7 s0 O, g  , + h, ; CD、定義小說明' 4 j+ _: j, 2 9 7 s( A! y攜手北軟E、匯總前面各步驟的結果) Q2 d1 a- z2 w- x5 2 d一個專注于北

47、京大學軟件與微電子學院軟件工程碩士考研的論壇,絕對不會讓你失望!4)、注意事項北軟論壇,北京?A、模型平衡原則數據流圖中所有的圖形元素必須根據它們的用法規則正確使用;: 8 T: I" + e3 n2 I/ J- p攜手北軟每個數據流和數據存儲都要在數據字典中有定義,數據字典將包括各層數據流圖中數據元素的定義;* W( a( p+ |% l. m數據字典中的定義使用合法的邏輯構造符號;3 H+ 1 ?9 U7 T# 8 y北軟論壇,北京大學軟件與微電子學院,PKU,MSE,北軟,攜手北軟,北京大學,北京大學軟件學院,北京大學微電子與軟件學院,北京大學軟微學院,北大軟院,軟院,工程碩士

48、,北大工程碩士,軟件工程碩士,北京大學軟件工程碩士,北大軟件工程碩士,北軟護航,考研,北軟考研數據流圖中最底層的加工必須在小說明中有定義;北京大學軟件工程碩士|MSE|北京大學軟件與微電子學院|北軟論壇2 |4 b. % Z; s6 V/ 5 J父圖和子圖必須平衡,即父圖中某加工的輸入輸出(數據流)和分解這個加工的子圖的輸入輸出(數據流)必須完全一致;8 E' |& z1 p8 L. 2 O% N/ B攜手北軟小說明和數據流圖的圖形表示必須一致。) x6 o7 p7 a9 6 g* |# ' DB、控制復雜性的一些規則北京大學軟件工程碩士|MSE|北京大學軟件與微電子學

49、院|北軟論壇3 J" F- 8 G1 Y! ?! z上層數據流可以打包,上、下層數據流的對應關系用數據字典描述,同層的數據流也可編號對應在,包內流的性質(輸入/輸出)必須一致;攜手北軟# S. c# z. k2 l/ 4 t為便于理解,一幅圖中的圖元個數控制在7±2以內;6 d% G6   ! ?% U一個專注于北京大學軟件與微電子學院軟件工程碩士考研的論壇,絕對不會讓你失望!檢查同每個加工相關的數據流,并尋找是否有其他可降低界面復雜性的劃分方法;一個專注于北京大學軟件與微電子學院軟件工程碩士考研的論壇,絕對不會讓你失望!4 P5 I6 D4 P5 P3

50、 y/ h7 N分析數據內容,確定是否所有輸入信息都用于產生輸出信息;相應地,由一個加工產生的所有信息是否都能由進入該加工的信息導出。$ |+ n2 G2 h8 J& l. a8 r" Y' c3 m) o/ a: w7 g% G  x2 x7、需求驗證:就是對軟件需求規格說明書(SRS)加以驗證,需要從以下方面進行:正確性,無二義性,完整性,可驗證性,一致性,可理解性,可修改性,可被跟蹤性,可跟蹤性,設計無關性,注釋。) C8 X5 Z9 h+ 5 B5 q1 F! F北軟論壇,北京大學軟件與微電子學院,PKU,MSE,北軟,攜手北軟,北京大學,

51、北京大學軟件學院,北京大學微電子與軟件學院,北京大學軟微學院,北大軟院,軟院,工程碩士,北大工程碩士,軟件工程碩士,北京大學軟件工程碩士,北大軟件工程碩士,北軟護航,考研,北軟考研! ( . y# o4 y8、需求規格說明書" b# ?4 s3 - l+ T1)、概述:是需求分析階段產生的一份最重要的文檔,它以一種一致的、無二義的方式準確的表達用戶的需求。4 X0 W' p9 Q$ g% s! l  j一個專注于北京大學軟件與微電子學院軟件工程碩士考研的論壇,絕對不會讓你失望!2)、作用$ u3 f& h9 i+ f+ Y一個專注于北京大學軟件與微

52、電子學院軟件工程碩士考研的論壇,絕對不會讓你失望!A、作為軟件開發機構和用戶之間一份事實上的技術合同書;一個專注于北京大學軟件與微電子學院軟件工程碩士考研的論壇,絕對不會讓你失望!: N' 8 % K- U! R# I+ D# SB、作為軟件開發機構下一步進行設計和編碼的基礎; V) J* p+ v/ - f% o' N2 m$ sC、作為測試和驗收目標系統的依據。( S* |# F0 v8 5 N8 + ?北京大學軟件工程碩士|MSE|北京大學軟件與微電子學院|北軟論壇3)、基本結構:引言、概述、數據流圖與數據字典、接口、性能需求、屬性、其他需求。, a" S- n

53、* A- l: q1 d3 0 K北軟論壇,北京大學軟件與微電子學院,PKU,MSE,北軟,攜手北軟,北京大學,北京大學軟件學院,北京大學微電子與軟件學院,北京大學軟微學院,北大軟院,軟院,工程碩士,北大工程碩士,軟件工程碩士,北京大學軟件工程碩士,北大軟件工程碩士,北軟護航,考研,北軟考研9、需求分析階段的另外兩份文檔:初步測試計劃和用戶系統描述。結構化設計北京大學軟件工程碩士|MSE|3 v3 1、軟件設計階段:需求分析階段的主要任務是確定系統必須“做什么”,形成軟件的需求規格說明書,軟件設計階段主要任務是確定系統“怎么做”,從軟件需求規格說明書出發,形成軟件的具體設計方案,軟件設計可以采

54、用多種方法,如結構化設計方法、面向數據結構的設計方法、面向對象的設計方法等,結構化軟件設計可以分為總體設計和詳細設計兩個階段。# S) Z. X# 2 g, o! # e  ! q( j" C# l. b) K北京大學軟件工程碩士|MSE|北京大學軟件與微電子學院|北軟論壇2、數據流圖的類型北軟論壇,北京大學軟件院,PK1)、變換型數據流圖:具有較明顯的輸入、變換、輸出界面的數據流圖。(參見變換型數據流圖示意圖)北京大學軟件工程碩士|MSE|北京大g4 d4 l0 Z4 t" ! J) H$ A) F5 f# X. ! a# l- 0 l) s! 5 T

55、: D2)、事務型數據流圖:當數據到達一個處理T后,該處理T根據輸入數據的類型或數據值,在其后的若干動作序列(稱為一個事務)中選出一個來執行。(參見事務型數據流圖示意圖)6 J8 r, L( R; t9 b  y0 q北京大學軟件工程碩士|MSE|北京大學軟件與微電子學院|北軟論壇北軟論壇,北京大學軟件與微電子學院,PKU,MSE,北軟,攜手北軟,北京大學,北京大學軟件學院,北京大學微電子與軟件學院,北京大學軟微學院,北大軟院,軟院,工程碩士,北大工程碩士,軟件工程碩士,北京大學軟件工程碩士,北大軟件工程碩士,北軟護航,考研,北軟考研8 b+ F- 0 f" f+

56、 ?4 9 s* Z4 D% ?# X, 北京大學軟件工程碩士|MSE|北京大學軟件與微電子學院|北軟論壇/ G; f7 x7 - z, Y/ c! M6 l一個專注于北京大學軟件與微電子學院軟件工程碩士考研的論壇,絕對不會讓你失望!3、設計類型(以上面兩圖為實例)北京大學軟件工程碩士|MSE|北京大學軟件與微電子學院|北軟論壇# i  D/ _* h5 J+ l9 q& W. N1)、變換設計:對應于變換型數據流圖。其步驟如下:7 U, H1 P5 h: i9 Q北京大學軟件工程碩士|MSE|北京大學軟件與微電子學院|北軟論壇A、確定輸入、變換、輸出的邊界:邏輯輸

57、入就是離物理輸入端最遠的,但仍被看作是系統輸入的數據流;邏輯輸出就是離物理輸出端最遠的,但仍被看作是系統輸出的數據流。+ f( N; v$ ! J1 _+ # FB、“第一級分解”-系統模塊結構圖頂層和第一層的設計:主模塊位于最頂層,一般以所建系統的名字命名;輸入模塊部分,一般有幾個不同的邏輯輸入,就設計幾個輸入模塊;變換模塊部分;輸出模塊部分,一般有幾個不同的邏輯輸出,就設計幾個輸出模塊。(參見變換設計之第一級分解示意圖)北京大學軟件工程碩士|MSE|北京大學軟件與微電子學院|北軟論壇( w# M! K2 ) U+ ' s( 4 m$ o. |' f& H一個專注于北

58、京大學軟件與微電子學院軟件工程碩士考研的論壇,絕對不會讓你失望!5 c. 9 B' D3 H8 U& C' GC、“第二級分解”-自頂向下,逐步求精:輸入模塊部分,通常可分解為兩個下屬模塊:一個是接收數據模塊,另一個是把接收的數據變換成它的上級模塊所需的數據的模塊,繼之,對下屬的輸入模塊以同樣方式進行分解,直到一個輸入模塊為物理輸入為止;輸出模塊部分,通常也可分解為兩個下屬模塊:一個將得到的數據向輸出形式轉換的模塊,另一個將轉換后的數據輸出,對下屬的模塊以同樣方式進行分解,直到一個輸出模塊為物理輸出為止;中心變換模塊,通常依據數據流圖的具體情況,并以功能分解的原則,考慮

59、如何對中心變換模塊進行分解。這樣就得到了初始模塊結構圖。(參見變換設計之第二級分解示意圖)" d1 b# e3 N" x& 3 x) S( ) W" T7 g攜手北軟/ $ ?7 b  ( v北京大學軟件工程碩士|MSE|北京大學軟件與微電子學院|北軟論壇D、使用設計度量和啟發式規則,對初始模塊結構圖進行精化。(參見變換設計之精化示意圖)( |4 2 T. G$ B7 C( 北京大學軟件工程碩士|MSE|北京大學軟件與微電子學院|北軟論壇) U* C9 x; i; $ D5 h北京大學軟件工程碩士|MSE|北京大學軟件與微電子學院|北軟

60、論壇3 q! W. g$ 4 W7 r* l, N, ?1 K2)、事務設計:對應于事務型數據流圖,其步驟如下:# p/ q; Z' T( v北軟論壇,北京大學軟件與微電子學院,PKU,MSE,北軟,攜手北軟,北京大學,北京大學軟件學院,北京大學微電子與軟件學院,北京大學軟微學院,北大軟院,軟院,工程碩士,北大工程碩士,軟件工程碩士,北京大學軟件工程碩士,北大軟件工程碩士,北軟護航,考研,北軟考研A、確定事務處理中心。一個專注于北京大學軟件與微電子學院軟件工程碩士考研的論壇,絕對不會讓你失望!, _$ 4 r- 2 E* f. G% BB、“第一級分解”-系統模塊結構圖頂層和第一層的設

61、計:首先為事務中心設計一個主模塊;然后,為每一條活動路徑設計一個事務處理模塊;一般來說,事務型數據流圖都有輸入部分,對其輸入部分設計一個輸入模塊;如果一個事務型數據流圖的各活動路徑又集中于一個加工,則為此設計一個輸出模塊;如果各活動路徑是發散的,則在第一層設計中就不必為其設計輸出模塊。(參見事務設計之第一級分解示意圖)攜手北軟. Q- K* o' S9 E9 ' D2 |6 L! 1 K" OC、“第二級分解”-自頂向下,逐步求精:關于輸入模塊、輸出模塊的細化,如同變換設計對輸入模塊、輸出模塊的細化。關于各條活動路徑的細化,則要根據具體情況進行。0 G6 m9 o: _; A: ! ?: z: E北京大學軟件工程碩士|MSE|北京大學軟件與微電子學院|北軟論壇D、使用設計度量和啟發式規則,對初始的模塊結構圖進行

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論