A. 結構化分析方法的定義
結構是指系統內各個組成要素之間的相互聯系、相互作用的框架。結構化開發方法提出了一組提高軟體結構合理性的准則,如分解與抽象、模塊獨立性、信息隱蔽等。針對軟體生存周期各個不同的階段,它有結構化分析(SA)和結構化程序設計(SP)等方法。
B. 結構化方法是什麼意思
首先把「科學觀察方法」更具體地解釋一下吧:所謂科學觀察法,就是用科學的方法來觀察一些大自然的科學現象。運用這種觀察方法,要動手、動腦、動心思考,要依據觀察的事實來得出結論。不能加入任何自己的感情色彩,是什麼,就是什麼,不得誇大和縮小。
換句話說,就是此方法的目的是為了探索世界奧秘,尋找現象背後的真理,從而運用富有邏輯性、結構合理、條理清晰的方法來觀察。
那麼,現在解釋一下結構化方法吧:
結構化分析方法(Structured Method,結構化方法)是強調開發方法的結構合理性以及所開發軟體的結構合理性的軟體開發方法。結構是指系統內各個組成要素之間的相互聯系、相互作用的框架。結構化開發方法提出了一組提高軟體結構合理性的准則,如分解與抽象、模塊獨立性、信息隱蔽等。針對軟體生存周期各個不同的階段,它有結構化分析(SA)、結構化設計(SD)和結構化程序設計(SP)等方法。
結構化分析方法給出一組幫助系統分析人員產生功能規約的原理與技術。它一般利用圖形表達用戶需求,使用的手段主要有數據流圖、數據字典、結構化語言、判定表以及判定樹等。
結構化分析的步驟如下:①分析當前的情況,做出反映當前物理模型的DFD;②推導出等價的邏輯模型的DFD;③設計新的邏輯系統,生成數據字典和基元描述;④建立人機介面,提出可供選擇的目標系統物理模型的DFD;⑤確定各種方案的成本和風險等級,據此對各種方案進行分析;⑥選擇一種方案;⑦建立完整的需求規約。
結構化設計方法給出一組幫助設計人員在模塊層次上區分設計質量的原理與技術。它通常與結構化分析方法銜接起來使用,以數據流圖為基礎得到軟體的模塊結構。SD方法尤其適用於變換型結構和事務型結構的目標系統。在設計過程中,它從整個程序的結構出發,利用模塊結構圖表述程序模塊之間的關系。結構化設計的步驟如下:①評審和細化數據流圖;②確定數據流圖的類型;③把數據流圖映射到軟體模塊結構,設計出模塊結構的上層;④基於數據流圖逐步分解高層模塊,設計中下層模塊;⑤對模塊結構進行優化,得到更為合理的軟體結構;⑥描述模塊介面。
結構化設計方法的設計原則:
(1)使每個模塊執行一個功能(堅持功能性內聚)
(2)每個模塊用過程語句(或函數方式等)調用其他模塊
(3)模塊間傳送的參數作數據用
(4)模塊間共用的信息(如參數等)盡量少
C. 軟體工程的結構化方法是什麼
結構化分析方法(Structured Method)是強調開發方法的結構合理性以及所開發軟體的結構合理性的軟體開發方法。結構是指系統內各個組成要素之間的相互聯系、相互作用的框架。結構化開發方法提出了一組提高軟體結構合理性的准則,如分解與抽象、模塊獨立性、信息隱蔽等。針對軟體生存周期各個不同的階段,它有結構化分析(SA)、結構化設計(SD)和結構化程序設計(SP)等方法。
結構化分析方法給出一組幫助系統分析人員產生功能規約的原理與技術。它一般利用圖形表達用戶需求,使用的手段主要有數據流圖、數據字典、結構化語言、判定表以及判定樹等。
結構化分析的步驟如下:①分析當前的情況,做出反映當前物理模型的DFD;②推導出等價的邏輯模型的DFD;③設計新的邏輯系統,生成數據字典和基元描述;④建立人機介面,提出可供選擇的目標系統物理模型的DFD;⑤確定各種方案的成本和風險等級,據此對各種方案進行分析;⑥選擇一種方案;⑦建立完整的需求規約。
結構化設計方法給出一組幫助設計人員在模塊層次上區分設計質量的原理與技術。它通常與結構化分析方法銜接起來使用,以數據流圖為基礎得到軟體的模塊結構。SD方法尤其適用於變換型結構和事務型結構的目標系統。在設計過程中,它從整個程序的結構出發,利用模塊結構圖表述程序模塊之間的關系。結構化設計的步驟如下:①評審和細化數據流圖;②確定數據流圖的類型;③把數據流圖映射到軟體模塊結構,設計出模塊結構的上層;④基於數據流圖逐步分解高層模塊,設計中下層模塊;⑤對模塊結構進行優化,得到更為合理的軟體結構;⑥描述模塊介面。
D. 簡述結構分析方法基本手段和基本策略
結構化分析方法的基本手段是逐層分解,而數據流圖則是描述分解的基本手段。結構化分析方法能夠長期被人們接受並採納,主要是因為它有以下的特點: 一、強調用戶自始至終的積極參與 在系統分析階段,用戶始終積極參與,使得用戶可以更多的了解新系統,並隨時從業務和用戶角度提出新的要求。另一方面也可使系統分析人員能更多的了解用戶的要求,更深入的調查和分析管理業務,使新系統更加科學、合理。 二、注重整體分析,層層落實 按系統的觀點,任何事情都是相互聯系的有機整體。在分析時應首先站在整體的角度,將各項具體的業務或組織融合成一整體加以考察,首先確保全局的正確,然後再層層分解進行解剖分析。 三、強調系統的適應性 各種事物都是運動和變化的。同理,在進行系統分析時,要充分預料到可能會發生的變化,增強系統的適應性,以應付各種各樣的變化。這些變化主要來自以下幾個方面: 1、系統外部環境的變化。如外部的組織機構發生了變化,將引起信息傳遞渠道變化;上級主管部門需要的信息發生變化,則引起輸出和處理模塊的變化。 2、系統內部處理模式的變化。如系統內部組織機構、管理方式和工藝流程的改變,必將引起數據的收集、輸入以及處理方式的變化。 3、用戶要求的變化。隨著時間的推移、問題的深入、技術的發展,用戶的要求也會隨之變化。
E. 簡述結構化分析方法的基本手段和基本策略
使用的手段主要有數據流圖、數據字典、結構化語言、判定表以及判定樹等。
F. 結構化分析方法的基本手段是什麼
結構化分析方法(Structured Method,結構化方法)是強調開發方法的結構合理性以及所開發軟體的結構合理性的軟體開發方法。
結構化分析方法給出一組幫助系統分析人員產生功能規約的原理與技術。它一般利用圖形表達用戶需求,使用的手段主要有數據流圖、數據字典、結構化語言、判定表以及判定樹等。
它的設計原則包括:
使每個模塊執行一個功能(堅持功能性內聚)
每個模塊用過程語句(或函數方式等)調用其他模塊
模塊間傳送的參數作數據用
模塊間共用的信息(如參數等)盡量少
基本實現手段如下:
一: 數據流圖
含義
數據流圖是SA方法中用於表示邏輯系統模型的一種工具,它從數據傳遞和加工的角度,以圖形的方式來刻畫數據流從輸入到輸出的變換過程。
(1)、元素
A、數據流。是由一組固定成分的數據組成,箭頭的方向表示數據的流向,箭頭的始點和終點分別代表數據流的源和目標。除了流向數據存儲或從數據存儲流出的數據不必命名外,每個數據流必須要有合適的名字,以反映數據流的含義。
B,外部實體。代表系統之外的實體,可以是人、物或其它系統軟體,他指出數據所需要的發源地或系統所產生的數據歸屬地。
C,對數據進行加工處理。加工是對數據進行處理的單元,它接受一定的數據輸入,對其進行處理,並產生輸出。
D、數據存儲。表示信息的靜態存儲,可以代表文件、文件的一部分、資料庫的元素等。
(2) 分層數據流圖
對於一個大型系統,如果在一張數據圖上畫出所有的數據和加工,則會使得數據流圖復雜而難以理解,為了控制復雜性,結構化分析法採用數據流圖分層技術。一套分層的數據流圖由頂層、底層和中間層組成。
(3)保持數據守恆
(4)加工細節隱蔽
二、數據字典
數據字典是關於數據的信息的集合,也就是對數據流圖中包含的所有元素定義的集合。數據字典是結構方法的核心。數據字典有以下幾個條目:數據項條目、數據流條目、文件條目和加工條目。
三、判定表
有些加工的邏輯用語形式不容易表達清楚,而用表的形式則一目瞭然。如果一個加工邏輯有多個條件、多個操作,並且在不同的條件組合下執行不同的操作,就可以使用判定表來描述。
四、判定樹
判定樹和判定表沒有本質的區別,可以用判定表表示的加工邏輯都可以用判定樹來表示。
五、結構化語言
採用一種介於自然語言和形式化語言之間的結構化語言來描述加工邏輯,既可以像自然語言那樣最方便,也可以像形式化語言一樣能夠精確描述事物,且被計算機易於處理。
六、E-R圖
E-R圖包含實體、關系和屬性等3種成分。這三個成分來理解現實問題,接近人們的思維方式。
注意事項:
一,命名。
二,畫數據流而不是控制流。
三,一般不畫物質流。
四,每個加工至少有一個數據流和一個輸出數據流。
五,編號
六,保持父圖和子圖的平衡
七,數據流圖的一致性
八,提高數據流圖的易懂性
G. 為什麼結構化需求分析方法包含三類模型
結構化分析方法
結構化開發方法(Structured Developing Method)是現有的軟體開發方法中最成熟,應用最廣泛的方法,主要特點是快速、自然和方便。結構化開發方法由結構化分析方法(SA法)、結構化設計方 法(SD 法)及結構化程序設計方法(SP 法)構成的。
結構化分析(Structured Analysis,簡稱SA 法)方法是面向數據流的需求分析方法,是70 年代末由Yourdon,Constaintine 及DeMarco 等人提出和發展,並得到廣泛的應用。它適合於分析大型的數據處理系統,特別是企事業管理系統。
SA 法也是一種建模的活動,主要是根據軟體內部的數據傳遞、變換關系,自頂向下逐層分解,描繪出滿足功能要求的軟體模型。
1 SA 法概述
1.1 SA 法的基本思想
1.1. 結構化分析(Structured Analysis,簡稱SA 法)是面向數據流的需求分析方法,是70年代由Yourdon,Constaintine 及DeMarco 等人提出和發展,並得到廣泛的應用。
結構化分析方法的基本思想是「分解」和「抽象」。
分解:是指對於一個復雜的系統,為了將復雜性降低到可以掌握的程度,可以把大問題分解成若干小問題,然後分別解決。
圖4 是自頂向下逐層分解的示意圖。頂層抽象地描述了整個系統,底層具體地畫出了系統的每一個細節,而中間層是從抽象到具體的逐層過渡。
抽象:分解可以分層進行,即先考慮問題最本質的屬性,暫把細節略去,以後再逐層添加細節,直至涉及到最詳細的內容,這種用最本質的屬性表示一個自系統的方法就是「抽象」。
2.SA 法的步驟
⑴建立當前系統的「具體模型」;
系統的「具體模型」就是現實環境的忠實寫照,即將當前系統用DFD 圖描述出來。這樣的表達與當前系統完全對應,因此用戶容易理解。
⑵抽象出當前系統的邏輯模型;
分析系統的「具體模型」,抽象出其本質的因素,排除次要因素,獲得用DFD 圖描述的當前系統的「邏輯模型」。
⑶建立目標系統的邏輯模型;
分析目標系統與當前系統邏輯上的差別,從而進一步明確目標系統「做什麼」,建立目標系統的「邏輯模型」(修改後的DFD 圖)。
⑷為了對目標系統作完整的描述,還需要考慮人機界面和其它一些問題。
3.SA 法的描述工具
⑴ 分層的數據流圖
⑵ 數據詞典
⑶ 描述加工邏輯的結構化語言、判定表或判定樹。
2 數據流圖
數據流圖(Data Flow Diagram,簡稱DFD)是描述系統中數據流程的圖形工具,它標識了一個系統的邏輯輸入和邏輯輸出,以及把邏輯輸入轉換邏輯輸出所需的加工處理。
1.數據流圖的圖符數據流圖有以下4 種基本圖形符號:
箭頭表示數據流,圓或橢圓表示加工。雙杠或者單杠表示數據存儲,矩形框表示數據的源點或終點,即外部實體。
⑴ 數據流 是數據在系統內傳播的路徑,由一組成固定的數據項組成。除了與數據存儲(文件)之間的數據流不用命名外,其餘數據流都應該用名詞或名詞短語命名。數據流可以從加工流向加工,也可以從加工流向文件或從文件流向加工,也可以從源點流向加工或從加工流向終點。
⑵ 加工 也稱為數據處理,它對數據流進行某些操作或變換。每個加工也要有名字,通常是動詞短語,簡明地描述完成什麼加工。在分層的數據流圖中,加工還應有編號。
⑶ 數據存儲 指暫時保存的數據,它可以是資料庫文件或任何形式的數據組織。流向數據存儲的數據流可理解為寫入文件,或查詢文件,從數據存儲流出的數據可理解為從文件讀數據或得到查詢結果。
⑷ 數據源點和終點 是軟體系統外部環境中的實體(包括人員、組織或其他軟體系統),統稱為外部實體。一般只出現在數據流圖的頂層圖中。
還有一些輔助的圖例:
例 1:畫出圖書預定系統的DFD 圖。現有一圖書預定系統,接收由顧客發來的訂單,並對訂單進行驗證,驗證過程是根據圖書目錄檢查訂單的正確性,同時根據顧客檔案確定是新顧客還是老顧客, 是否有信譽。經過驗證的正確訂單,暫存放在待處理的訂單文件中。對訂單進行成批處理,根據出版社檔案,將訂單按照出版社進行分類匯總,並保存訂單存根,然 後將匯總訂單發往各出版社。
畫圖步驟是:
⑴ 首先確定外部實體(顧客、出版社)及輸入、輸出數據流(訂單、出版社訂單)。
⑵ 再分解頂層的加工(驗證訂單、匯總訂單)。
⑶ 確定所使用的文件(圖書目錄文件、顧客檔案等5 個文件)。
⑷ 用數據流將各部分連接起來,形成數據封閉。
特別要注意的是:數據流圖不是傳統的流程圖或框圖,數據流也不是控制流。數據流圖是從數據的角度來描述一個系統,而框圖則是從對數據進行加工的工作人員的角度來描述系統。數據流圖中的箭頭是數據流,而框圖中的箭頭則是控制流,控制流表達的是程序執行的次序。
下 圖是培訓中心管理系統的數據流圖,由於只有一層,因此分解的加工較多不易理解,而且如果其中某個加工較復雜,例如編號為3 的加工「付款」和編號為7 的加工「復審」仍很復雜,一時難以理解,如果不繼續分解下去,直到每個加工都足夠簡單易於理解為止,則會影響需求分析結果的可讀性。
1.畫分層DFD 圖的方法
如圖2.8 所示,如果系統規模較大,僅用一個DFD 圖難以描述,會使得系統變得復雜,且難以理解。為了降低系統的復雜性,採取「逐層分解」的技術,畫分層的DFD 圖。
畫 分層DFD 圖的一般原則是:「先全局後局部,先整體後細節,先抽象後具體」。通常將這種分層的DFD 圖,分為頂層、中間層、底層。頂層圖說明了系統的邊界,即系統的輸入和輸出數據流,頂層圖只有一張。底層圖由一些不能再分解的加工組成,這些加工都已足夠 簡單,稱為基本加工。在頂層和底層之間的是中間層。中間層的數據流圖描述了某個加工的分解,而它的組成部分又要進一步分解。畫各層DFD 圖時,應「由外向內」。
畫分層DFD 圖的具體步驟:
⑴ 先確定系統范圍,畫出頂層的DFD 圖。
⑵ 逐層分解頂層DFD 圖,獲得若干中間層DFD 圖。
⑶ 畫出底層的DFD 圖。
一般來說,在上層可以分解得快些,而在中、下層則應分解得慢些,因為上層是一些綜合性的描述,「易理解性」相對地說不太重要。
下節我們以一個實例來說明畫分層DFD 圖的方法。
2 分層DFD 圖的改進
分層數據流圖是一種比較嚴格又易於理解的描述方式,它的頂層描繪了系統的總貌,底層畫出了系統所有的細部,而中間層則給出了從抽象到具體的逐步過渡。
1.畫分層DFD 圖的基本原則
⑴.數據守恆與數據封閉原則
所謂數據守恆是指加工的輸入輸出數據流是否匹配,即每一個加工既有輸入數據流又有輸出數據流。或者說一個加工至少有一個輸入數據流,一個輸出數據流。
⑵加工分解的原則
自然性:概念上合理、清晰;
均勻性:理想的分解是將一個問題分解成大小均勻的幾個部分;
分解度:一般每一個加工每次分解最多不要超過7個子加工,應分解到基本加工為止。
⑶子圖與父圖的「平衡」父圖中某個加工的輸入輸出數據流應該同相應的子圖的輸入輸出相同(相對應),分層數據流圖的這種特點稱為子圖與父圖「平衡」。
⑷合理使用文件
當文件作為某些加工之間的交界面時,文件必須畫出來,一旦文件作為數據流圖中的一個獨立成份畫出來了,那麼它同其它成份之間的聯系也應同時表達出來。
理 解一個問題總要經過從不正確到正確,從不確切到確切的過程,需求分析的過程總是要不斷反復的,一次就成功的可能性是很小的,對復雜的系統尤其如此,因此, 系統分析員應隨時准備對數據流圖進行修改和完善,與用戶取得共識,獲得無二義性的需求,才能獲得更正確清晰的需求說明,使得設計、編程等階段能夠順利進 行,這樣做是必須和值得的。
3.分層DFD 圖的改進
DFD 圖必須經過反復修改,才能獲得最終的目標系統的邏輯(目標系統的DFD 圖)。改進的原則與畫分層DFD 圖的基本原則是一致的,可從以下方面考慮DFD 圖的改進:
⑴ 檢查數據流的正確性
① 數據守恆
② 子圖、父圖的平衡
③ 文件使用是否合理。特別注意輸入/出文件的數據流。
⑵ 改進DFD 圖的易理解性
① 簡化加工之間的聯系(加工間的數據流越少,獨立性越強,易理解性越好)。
② 改進分解的均勻性。
③ 適當命名(各成分名稱無二義性,准確、具體)。
H. 結構化分析方法都應遵守的准則有哪些
你好!法之橋教育為你服務。
結構化有5種題型,每種題型都有不同答題技巧,買本書看看或者去咨詢一下,然後搞點真題來練練,歡迎來訪。
I. 什麼是需求分析結構化分析的基本任務是什麼結構化分析的步驟有哪些
結構化分析方法(Structured Method,結構化方法)是強調開發方法的結構合理性以及所開發軟體的結構合理性的軟體開發方法。
結構化分析方法給出一組幫助系統分析人員產生功能規約的原理與技術。它一般利用圖形表達用戶需求,使用的手段主要有數據流圖、數據字典、結構化語言、判定表以及判定樹等。
它的設計原則包括:
使每個模塊執行一個功能(堅持功能性內聚)
每個模塊用過程語句(或函數方式等)調用其他模塊
模塊間傳送的參數作數據用
模塊間共用的信息(如參數等)盡量少
J. 什麼是結構化方法
結構化方法(SD方法)是一種傳統的軟體開發方法,它是由結構化分析、結構化設計和結構化程序設計三部分有機組合而成的。它的基本思想:把一個復雜問題的求解過程分階段進行,而且這種分解是自頂向下,逐層分解,使得每個階段處理的問題都控制在人們容易理解和處理的范圍內。
詳細解釋:
結構化方法的基本要點是:自頂向下、逐步求精、模塊化設計、結構化編碼。
結構化分析方法是以自頂向下,逐步求精為基點,以一系列經過實踐的考驗被認為是正確的原理和技術為支撐,以數據流圖,數據字典,結構化語言,判定表,判定樹等圖形表達為主要手段,強調開發方法的結構合理性和系統的結構合理性的軟體分析方法。
結構化設計方法是以自頂向下,逐步求精,模塊化為基點,以模塊化,抽象,逐層分解求精,信息隱蔽化局部化和保持模塊獨立為准則的設計軟體的數據架構和模塊架構的方法學。
結構化方法按軟體生命周期劃分,有結構化分析(SA),結構化設計(SD),結構化實現(SP)。 其中要強調的是,結構化方法學是一個思想准則的體系,雖然有明確的階段和步驟,但是也集成了很多原則性的東西,所以學會結構化方法,不是能夠單從理論知識上去了解就足夠的,要的更多的還是實踐中慢慢的理解個個准則,慢慢將其變成自己的方法學。