




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
一、總體設計基本任務(過程)1、軟件結構設計=模塊設計+接口設計(5)軟件結構設計是以模塊為基礎,以需求分析的結果為依據,從實現的角度進一步劃分模塊,并組成模塊的層次結構(接口)。(1)采用某種方法,將一個復雜的系統按功能劃分成模塊;(2)確定每個模塊的功能;(3)確定模塊之間的調用關系;(4)確定模塊之間的接口(傳遞的信息);(5)評價模塊結構的質量。
CH5總體設計一、總體設計基本任務(過程)CH5總體設計3、書寫文檔(8)總體設計說明書、數據庫設計說明書、詳細的實現計劃4、評審(9)總體設計評價是對設計部分是否完整地實現了需求中規定的功能、性能等要求,設計方案的可行性,關鍵的處理及內外部接口定義正確性、有效性,各部分之間的一致性等都一一進行評審。2、數據設計=數據結構設計+數據庫設計設計(6)(1)根據需求分析階段對系統數據的組成、操作約束和數據間關系的描述,確定數據結構特性。(2)一般軟件系統都有數據存儲,存儲要借助數據庫技術。數據庫的設計包括:概念設計、邏輯設計和物理設計。3、書寫文檔(8)2、數據設計=數據結構設計+數據庫設計設計二、軟件設計的基本原理1、抽象:是認識復雜過程中使用的思維工具,即抽象出事物的本質共同特征而暫不考慮它的細節,不考慮其它因素。2、逐步求精:是在原始說明的基礎上進行詳細說明,隨著不斷細化給出更多的細節。3、模塊化:模塊是可組合、分解和更換的單元,具有:接口、功能、狀態、邏輯4大特征。4、信息隱藏:指設計模塊時,使一個模塊內包含的信息,對不需要這些的其它模塊來說,是不能訪問的。通過信息隱藏可以定義和實施對模塊的過程細節和局部數據結構的存取權限。5、模塊獨立性:指完成系統要求的獨立的子功能,并且與其它模塊的聯系最少且接口簡單。衡量獨立性的標準:內聚性、耦合性。二、軟件設計的基本原理(1)模塊間耦合的類型兩個模塊沒有直接關系一模塊調用另一模塊時,被調用模塊的輸入、輸出都是簡單的數據如兩個模塊通過傳遞數據結構一模塊通過開關量、標志、名字等控制信息,明顯地控制另一模塊的功能一組模塊引用同一個公用數據區一模塊直接訪問另一模塊的內部信息(1)模塊間耦合的類型兩個模塊沒有直接關系一模塊調用另一模塊(2)模塊的內聚性類型模塊內各部分間無聯系把幾種相關功能(邏輯上相似的功能)組合在一模塊內,每次調用由傳給模塊的參數確定執行哪種功能。功能只因時間因素關聯在一起模塊內各處理成分相關,且必須以特定次序執行模塊內各部分使用相同的輸入數據,或產生相同的輸出結果模塊內各部分使用相同的輸入數據,或產生相同的輸出結果模塊僅包括為完成某個功能所必須的所有成分(2)模塊的內聚性類型模塊內各部分間無聯系把幾種相關功能(邏三、軟件結構圖軟件結構往往用樹狀和網狀結構的圖形來表示。結構圖主要內容有:模塊、模塊的控制關、模塊間的信息傳遞。具有如下形態特征:深度、寬度、扇入、扇出。選擇調用數據流循環調用控制流三、軟件結構圖選擇調用數據流循環調用控制流四、軟件結構設計優化標準1、模塊獨立性標準。高內聚、低耦合2、控制與作用范圍之間的標準。一個模塊的作用范圍應在其控制范圍之內。3、結構特征標準。從形態上看,應是頂層扇出較高一些,中間層扇出較低一些,底層扇入數較高一些。4、模塊接口標注。模塊的接口要簡單、清晰及含義明確,便于理解,易于實現、維護與測試。四、軟件結構設計優化標準五、面向數據流的設計方法DFD軟件結構1、變換型數據流圖:由輸入、變換、輸出三部分組成。形成順序結構。2、事務型數據流圖:若某個加工將它的數據流分離成許多發散的數據流,并根據輸入的值選擇其中一個路徑來執行,這個加工稱為“事務處理中心”。五、面向數據流的設計方法六、填空題1、在軟件的體系結構中,模塊是可組合、分解和更換的單元。模塊具有
、
、
、和
等屬性。接口、功能、邏輯、狀態2、總體設計的文檔主要有:
和
。總體設計說明書、數據庫設計說明書3、數據庫設計指
的設計,主要進行一下幾方面的設計
、
、
。數據存儲設計概念設計、邏輯設計、物理設計4、軟件設計的基本任務包括:
、
、
和
4個方面設計軟件結構、數據結構和數據庫設計、編寫設計文檔、評審5、抽象是認識復雜現象過程中使用的思維工具,即抽出事物
的、
的特性而暫不考慮它的
,不考慮其它因素。本質、共同、細節6、軟件結構設計是以
為基礎,以需求分析的結果為依據,從實現的角度進一步劃分
,并組成模塊的
。模塊模塊層次結構六、填空題接口、功能、邏輯、狀態2、總體設計的文7、軟件設計是一個把
轉換為軟件表示的過程,包括總體設計和
。需求分析8、進入了設計階段,要把軟件“做什么”的
模型變換為“怎么做”的
模型,即著手實現軟件需求,并將設計的結果反映在
文檔中。詳細設計9、總體設計評價是對設計部分是否完整地實現了需求中規定的
、
等要求,設計方案的
,關鍵的處理及內外部接口定義
有效性,各部分之間的
等都一一進行評審。邏輯設計10、在一個模塊中,
、
和
反映模塊外部特征,
反映它的內部特性。功能、性能11、
是指在設計和確定模塊時,使得一個模塊的內包含的信息對于不需要遮羞信息的其它模塊來說是不能
的。可行性12、設計軟件結構,具體為:(1)采用某種方法將一個復雜系統按功能劃分為
(2)確定每個模塊的
(3)確定模塊之間的
(4)確定模塊之間的
,即模塊之間傳遞的信息。(5)評價模塊結構的質量。正確性一致性功能、狀態、接口物理邏輯信息隱藏訪問模塊功能調用關系接口7、軟件設計是一個把轉換為軟件表示的過13、模塊間耦合高低取決與模塊間
、
及
。接口的復雜性、調用方式、傳遞信息14、耦合性分
種類型,最強耦合
,最弱耦合
。15、模塊獨立性中每個模塊只完成問題要求的
子功能,并且與其它模塊的聯系
。6、內容耦合、無直接耦合16、內聚性分
種類型,最強內聚
,最弱內聚
。獨立的、最少且接口簡單17、耦合性指軟件結構中
相互聯系緊密程度的一種度量。模塊之間聯系越
,其耦合性就越強,模塊的
則越差。18、
是指兩個模塊之間有調用關系,傳遞的是簡單的數據值,相當于高級語言中的
。7、偶然內聚、功能內聚各模塊間、緊密、獨立性數據耦合、值傳遞13、模塊間耦合高低取決與模塊間、19、
指兩個模塊之間傳遞的是數據結構,如高級語言中的數據名、記錄名、文件名等,其實傳遞的是
。標記耦合、這個數據結構的地址20、功能內聚是內聚程度最
的內聚,指模塊內所有元素共同完成
,缺一不可。功能內聚的模塊與其它模塊的耦合是
的。21、結構圖主要內容有
、
、
。強、一個功能、弱22、變換型DFD由
、
和
三部分組成。模塊、模塊的控制關系、模塊的信息傳遞23、軟件結構從形態上總的考慮是:頂層扇出數較
一些,中間層扇出數較
一些,底層
數較高一些。24、軟件結構設計是以
為基礎,在需求分析階段,已經把系統分解成層次結構。設計階段以需求分析的結果為根據,從實現的角度進一步劃分為模塊,并組成模塊的層次結構。輸入、變換、輸出扇入模塊高低19、指兩個模塊之間傳遞的是數據結選擇題1、軟件設計一般分為總體設計和詳細設計,它們之間的關系是()。A.全局和局部B.抽象和具體C.總體和層次D.功能和結構A2、軟件結構使用的圖形工具,一般采用()圖。
A.DFDB.PADC.SCD.E-RC3、下列中屬于軟件設計的基本原理的是()。A.數據流分析B.變換流分析C.事務流分析D.模塊化4、將幾個邏輯上相似的成分放在一個模塊中,該模塊屬于()內聚。A.邏輯B.時間C.功能D.通信5、模塊內的某成分的輸出是另一成分的輸入,該模塊屬于()內聚。A.功能B.順序C.邏輯D.時間DAB6、結構圖中不是主要成分的是()。A.模塊B.模塊間傳遞數據C.模塊內部數據D.模塊的控制關系C選擇題1、軟件設計一般分為總體設計和詳細設計,它們之間的關系7、模塊中的所有成分結合起來完成一項任務,該模塊屬于()內聚,它具有簡明的外部界面,由它構成的軟件易于理解、測試和維護。A.偶然B.順序C.通信D.功能D8、軟件設計中模塊間的耦合性盡可能()。A.強B.弱C.較強D.適中B9、一個模塊把一個數值量作為參數傳遞給另一模塊。這兩個模塊之間的耦合是()。A.邏輯耦合B.數據耦合C.控制耦合D.內容耦合10、一個模塊把開關量作為參數傳遞給另一模塊。這兩個模塊之間的耦合是()。A.外部耦合B.數據耦合C.控制耦合D.內容耦合11、在面向數據流的軟件設計方法中,一般將信息流分為()。A.變換流和數據流B.變換流和控制流C.事務流和控制流D.數據流和控制流BCD7、模塊中的所有成分結合起來完成一項任務,該模塊屬于(12、()著重反映的是模塊間的隸屬關系,即模塊間的調用關系和層次關系。A.程序流程圖B.數據流圖C.E-R圖D.結構圖D13、首先將系統中的關鍵部分設計出來,再讓系統的其余部分的設計去適應它們,這稱為()。A.模塊化B.逐步求精C.抽象D.信息隱藏C14、模塊(),則說明模塊的獨立性越強。A.耦合越強B.扇入數越多C.耦合越弱D.扇出數越多15、為了提高模塊(),當修改和維護模塊時減少把一個模塊的錯誤擴散到其它模塊中去的機會。A.耦合性B.獨立性C.內聚性D.共享性30、()把已確定的軟件需求轉換成特定形式的設計表示,使其得以實現。A.系統設計B.詳細設計C.邏輯設計D.總體設計CBD12、()著重反映的是模塊間的隸屬關系,即模塊間作業一、填空題:25-50二、選擇題:7-12、16-17、19、21、26、31-33作業一、填空題:25-50CH3需求分析一、需求分析概念需求分析是發現、求精、建模、規格說明和復審的過程,回答“做什么”的問題。為最終用戶所看到的系統建立一個軟件的邏輯模型(將用戶非形式的需求陳述轉化為完整的需求定義)。二、需求分析的基本原則(1)可以把一個復雜問題按功能進行分解并可逐層細化;(2)必須能夠表達和理解問題的數據域和功能域;(3)建立軟件的邏輯模型;三、需求分析四項主要任務(1)確定對系統的綜合要求(2)分析系統的數據要求(3)導出軟件的邏輯模型(4)編寫文檔CH3需求分析一、需求分析概念二、需求分析的基本原則三、五、分析(邏輯)模型①數據模型(E-R圖,層次方框圖,Warnier圖);②功能模型(數據流圖,數據字典);③行為模型(狀態轉換圖,IPO);
四、需求獲取方法(1)訪談(用戶被動)(2)面向數據流自頂向下求精(用戶被動)(3)簡易的應用規格說明技術(用戶主動)(4)快速建立軟件原型(用戶與開發者不區分)五、分析(邏輯)模型四、需求獲取方法六、從哪些方面驗證軟件需求的正確性①一致性:測試;形式化工具;②完整性:原型系統;③現實性:參照以往開發經驗,仿真模擬;④有效性:原型系統;六、從哪些方面驗證軟件需求的正確性七、選擇題1、需求分析的基本任務是要準確地定義
,為了滿足用戶需求,回答系統必須
的問題。扇新系統的目標做什么2、在需求分析階段,首先進行問題識別,即雙方確定對問題的綜合需求,這些需求包括:
需求、
需求、
需求、
需求。另外還有可靠性、安全性、保密性、可移植性、可維護性等方面的需求。功能、性能、環境、用戶界面3、需求分析的困難主要體現在4個方面:問題的復雜性、
、
、需求易變性。交流障礙、不完備性和不一致性4、在需求分析階段進行以下幾個方面的工作:識別系統綜合要求、
、導出軟件邏輯模型、
。分析系統的數據要求、編寫文檔七、選擇題扇新系統的目標做什么2、在需求分析八、填空題1、需求分析()。A.要回答“軟件必須做什么?”B.可概括為:“理解、分解、表達”6個字C.要求編寫需求規格說明書D.以上都對2、需求分析階段研究的對象是軟件項目的()。A.用戶要求B.合理要求C.系統要求D.環境要求3、軟件需求分析階段的工作,可以分成4個方面:確定系統綜合要求、分析系統的數據要求、導出邏輯模型以及()。A.進度規劃B.測試計劃C.需求分析評審D.編寫文檔4、需求規格說明書的作用不應包括()。A.軟件設計的依據B.用戶與開發人員對軟件要做什么的共同理解C.軟件驗收的依據D.軟件可行性行研究的依據DADD八、填空題2、需求分析階段研究的對象是軟件項目的(CH2可行性研究一、可行性研究概念可行性研究是用最小的代價在盡可能短的時間內確定項目是否能夠開發?是否值得去開發。二、可行性研究的任務任務(1)技術可行性(2)經濟可行性(3)操作可行性(4)社會可行性(1)這個系統的經濟效益能超過它的開發成本嗎?(2)短期效益,長遠利益分析。操作規程簡便。容易獲得結果。(1)建立一個項目范圍,該范圍在管理級及技術級均是無二義性的和可理解的。(2)項目計劃的目標提供一個框架,使項目的結果限定在這一個合理的范圍內。(3)確定系統開發可能導致的任何侵權行為、妨礙性后果和責任。(1)能否解決系統中的技術難題,能否實現所要求的功能;(2)所開發的系統能否達到所要求的性能;(3)限制條件研究(資源有效性)①現有系統能實現嗎②現有的技術人員能否勝任;③開發所需要的軟件與硬件能否如期得到等
CH2可行性研究一、可行性研究概念二、可行性研究的任務任三、可行性研究步驟步驟問題定義技術、經濟、操作、社會可行性研究研究結果三、可行性研究步驟步驟問題定義技術、經濟、操作、社會可行性研四、成本-效益分析1、系統成本=開發成本+維護成本2、系統效益=經濟效益+社會效益3、成本估計技術(主要表現為人力消耗)(1)代碼行技術(2)任務分解技術(類似代碼行技術,只是劃分的單位不同)(3)自動估計成本技術(前提是有大量的歷史數據庫)四、成本-效益分析五、數據流圖——DFD1、圖中沒有任何具體物理元素,只是描繪信息在系統中流動和處理的情況。非專業人員容易理解是通信的極好工具。2、由數據流、處理、數據存儲、實體(數據源點/終點)組成。3、數據流:是數據在系統內傳播的路徑,由一組成分固定的數據項組成,用名稱標注(與數據存儲傳播除外)。4、為了表示復雜問題的數據處理過程,用一組分層的數據流圖反映它。5、數據字典(DD)是關于數據信息的集合,是對DFD中包含的所有的定義數據項以一種準確、無二義的描述方式,DD+DFD共同組成了軟件的邏輯模型。6、數據項是數據流和數據存儲的最小單位。五、數據流圖——DFD六、選擇題1、
的目的就是用最小代價在盡可能短的時間內確定該軟件項目是否能夠開發、是否值得開發。2、可行性研究的目的不是是開發一個軟件項目,而是研究這個項目是否
。3、可行性研究需要從
可行性、
可行性、可行性和
可行性四個方面分析研究每種解決方案的可行性。經濟、技術、操作、社會4、技術可行性是對開發項目的
、
、
進行分析,確定現有資源條件下,技術風險有多大,項目是否能實現。功能、性能、限制條件2可行性研究是否做值得5、經濟可行性一般要考慮的情況包括:
和
。成本、效益6、社會可行性所涉及的范圍包括
、
、
、用戶組織的管理模式、范圍以及其他一些技術人員常常不了解的陷阱。合同、責任、侵權六、選擇題2、可行性研究的目的不是是開發一個軟件7、典型的可行性研究有以下步驟:確定項目的規模和目標、
、
、導出和評價各種方案、推薦可行的方案和編寫可行性研究報告。8、系統效益=經濟效益+
。9、效益分有型效益和
兩種。無形10、可行性研究的第一個步驟是
。社會效益建立新系統的高層邏輯模型11、數據字典就是用來定義數據流圖中的
的。它和數據流圖共同構成了系統的
,是
的主要組成部分。確定項目的規模和目標12、由于數據流是流動中的數據,所以必須有
。除了與
之間的數據流命名外,數據流應該采用名詞或名詞短語。各個成分的具體含義、邏輯模型、需求說明書研究正在運行的系統流向、數據存儲7、典型的可行性研究有以下步驟:確定項目的規模和目七、填空題1、研究開發資源有效性是進行()可行性研究的一個方面A.技術B.經濟C.社會D.操作2、在軟件可行性研究中、可以從不同的角度對軟件進行研究,其中從軟件的功能可行性角度考慮的是()可行性A.經濟B.技術C.操作D.社會3、在遵循軟件工程原則開發軟件過程中,計劃階段應該依次完成()A.可行性研究、需求分析、問題定義B.問題定義、可行性研究、需求分析C.需求分析、問題定義、可行性研究D.可行性研究、問題定義、需求分析4、可行性研究要進行的需求分析和設計應是()。A.詳細的B.全面的C.簡化的D.徹底的DBBC七、填空題2、在軟件可行性研究中、可以從不同的角度對軟件進行
CH1軟件工程概念一、基本概念1、軟件工程“軟件工程”的概念是為了有效的控制軟件危機的發生而被提出來的,它的中心目標就是把軟件作為一種物理的工業產品來開發,要求“采用工程化的原理與方法對軟件進行計劃、開發和維護”。
2、軟件生命周期
按照在軟件生命周期全過程中應完成的任務的性質,在概念上可以把軟件生命周期劃分成問題定義、可行性研究、需求分析、概要設計、詳細設計、編碼和單元測試、綜合測試以及維護等八個階段。軟件工程導論復習3、軟件過程
軟件過程是為了獲得高質量軟件產品所需要完成的一系列任務的框架,它規定了完成各項任務的工作步驟。軟件過程必須科學、合理,才能開發出高質量的軟件產品。4、軟件危機軟件的可靠性沒有保障、維護費用不斷上升、進度無法預測、成本增長無法控制、程序員無限度增加等,形成軟件開發局面失控的狀態。3、軟件過程二、軟件的特征抽象性。模糊性。不磨損、不老化。依賴性。高成本。多因性。可復制性。是一種邏輯實體,而不是物理實體受計算機系統的限制,這導致了軟件移植的問題軟件開發不純粹是技術,是門藝術,還涉及法律、倫理、心理學等社會因素沒有明顯的制作過程由軟件維護復雜性決定,大部分是定制的,而不是裝配的與開發成本相比,復制成本很低。二、軟件的特征是一種邏輯實體,而不是物理實體受計算機系統的限①對軟件開發成本和進度的估計常常很不準確②用戶對“已完成的”軟件系統不滿意的現象經常發生③軟件產品的質量往往靠不住④軟件常常是不可維護的⑤軟件通常沒有適當的文檔資料⑥軟件成本在計算機系統總成本中所占的比例逐年上升⑦軟件開發生產率提高的速度遠遠跟不上計算機應用迅速普及深入的趨勢三、軟件危機主要表現①對軟件開發成本和進度的估計常常很不準確⑦軟件開發生產軟件工程的基本原理
四、軟件工程7條基本特性(1)軟件工程關注大型程序的構造(2)軟件工程的中心課題是控制復雜性(3)軟件經常變化(4)開發軟件的效率非常重要(5)和諧的合作是開發軟件的關鍵(6)軟件必須有效地支持它的用戶(7)由具有一種文化背景的人代替具有另一種文化背景的人創造產品軟件工程的基本原理四、軟件工程7條基本特性(1)軟件工程關軟件工程的基本原理
(1)用生命周期計劃嚴格管理
(2)堅持進行階段評審(3)實行產品一致性控制(4)采用最新的軟件設計技術
(5)清楚地審查軟件產品
(6)開發小組的人員應該少而精
(7)承認不斷改進軟件工程實踐的必要性
五、軟件工程的7條基本原理軟件工程的基本原理(1)用生命周期計劃嚴格管理五、軟件工六、軟件生命周期8個階段的基本任務階段關鍵問題結束標準問題定義要解決的問題是什么?關于規模和目標的報告書可行性研究有可行的解嗎?系統的高層邏輯模型需求分析系統必須做什么?系統的邏輯模型總體設計概括地說,應該如何解決這個問題?系統層次圖或結構圖詳細設計怎樣具體地實現這個系統?編碼規格說明編碼和單元測試正確的程序模塊源程序、單元測試方案和結果綜合測試符合要求的軟件綜合測試方案和結果、軟件配置維護持久地滿足擁用戶需要維護記錄六、軟件生命周期8個階段的基本任務階段關鍵問題結束標準問題定七、5種生命周期模型(即軟件過程模型)①瀑布模型的優勢在于它是規范的、文檔驅動的方法;缺點是,最終交付的產品可能不是用戶真正需要的。②快速原型通過快速構建起一個可運行的原型系統,讓用戶試用原型并收集用戶反饋意見的辦法,獲取用戶的真實需求。③增量模型具有能在軟件開發的早期階段使投資獲得明顯回報和易于維護的優點,但是,要求軟件具有開放結構是使用這種模型時固有的困難。七、5種生命周期模型(即軟件過程模型)④風險驅動的螺旋模型適用于大規模的內部開發項目,但是,只有在開發人員具有風險分析和排除風險的經驗及專門知識時,使用這種模型才會獲得成功。⑤當使用面向對象范型開發軟件時,軟件生命周期必須是循環的,也就是說,軟件過程必須支持反饋和迭代。噴泉模型是一種典型的適合于面向對象范型的過程模型。④風險驅動的螺旋模型適用于大規模的內部開發項目,但是八、SE方法學(1)面向過程的分析和設計方法(2)面向數據的分析和設計方法(3)面向對象的分析和設計方法這種方法學把軟件生命周期的全過程依次劃分為若干個階段,然后順序地逐步完成每個階段的任務。也稱結構化方法這種方法學是從信息結構進行分析,產生數據結構圖,再在此基礎上,進行需求分析,導出軟件的結構。
這種方法學把數據和行為看成同等重要,它是一種以數據為主線,把數據和對數據的操作緊密地結合在一起的方法。面向對象的基本原則是盡可能地模擬人類的思維習慣——使問題描述空間與計算機的解空間盡可能保持一致。八、SE方法學(1)面向過程的分析和設計方法這種方法學把軟That'sAll!That'sAll!一、總體設計基本任務(過程)1、軟件結構設計=模塊設計+接口設計(5)軟件結構設計是以模塊為基礎,以需求分析的結果為依據,從實現的角度進一步劃分模塊,并組成模塊的層次結構(接口)。(1)采用某種方法,將一個復雜的系統按功能劃分成模塊;(2)確定每個模塊的功能;(3)確定模塊之間的調用關系;(4)確定模塊之間的接口(傳遞的信息);(5)評價模塊結構的質量。
CH5總體設計一、總體設計基本任務(過程)CH5總體設計3、書寫文檔(8)總體設計說明書、數據庫設計說明書、詳細的實現計劃4、評審(9)總體設計評價是對設計部分是否完整地實現了需求中規定的功能、性能等要求,設計方案的可行性,關鍵的處理及內外部接口定義正確性、有效性,各部分之間的一致性等都一一進行評審。2、數據設計=數據結構設計+數據庫設計設計(6)(1)根據需求分析階段對系統數據的組成、操作約束和數據間關系的描述,確定數據結構特性。(2)一般軟件系統都有數據存儲,存儲要借助數據庫技術。數據庫的設計包括:概念設計、邏輯設計和物理設計。3、書寫文檔(8)2、數據設計=數據結構設計+數據庫設計設計二、軟件設計的基本原理1、抽象:是認識復雜過程中使用的思維工具,即抽象出事物的本質共同特征而暫不考慮它的細節,不考慮其它因素。2、逐步求精:是在原始說明的基礎上進行詳細說明,隨著不斷細化給出更多的細節。3、模塊化:模塊是可組合、分解和更換的單元,具有:接口、功能、狀態、邏輯4大特征。4、信息隱藏:指設計模塊時,使一個模塊內包含的信息,對不需要這些的其它模塊來說,是不能訪問的。通過信息隱藏可以定義和實施對模塊的過程細節和局部數據結構的存取權限。5、模塊獨立性:指完成系統要求的獨立的子功能,并且與其它模塊的聯系最少且接口簡單。衡量獨立性的標準:內聚性、耦合性。二、軟件設計的基本原理(1)模塊間耦合的類型兩個模塊沒有直接關系一模塊調用另一模塊時,被調用模塊的輸入、輸出都是簡單的數據如兩個模塊通過傳遞數據結構一模塊通過開關量、標志、名字等控制信息,明顯地控制另一模塊的功能一組模塊引用同一個公用數據區一模塊直接訪問另一模塊的內部信息(1)模塊間耦合的類型兩個模塊沒有直接關系一模塊調用另一模塊(2)模塊的內聚性類型模塊內各部分間無聯系把幾種相關功能(邏輯上相似的功能)組合在一模塊內,每次調用由傳給模塊的參數確定執行哪種功能。功能只因時間因素關聯在一起模塊內各處理成分相關,且必須以特定次序執行模塊內各部分使用相同的輸入數據,或產生相同的輸出結果模塊內各部分使用相同的輸入數據,或產生相同的輸出結果模塊僅包括為完成某個功能所必須的所有成分(2)模塊的內聚性類型模塊內各部分間無聯系把幾種相關功能(邏三、軟件結構圖軟件結構往往用樹狀和網狀結構的圖形來表示。結構圖主要內容有:模塊、模塊的控制關、模塊間的信息傳遞。具有如下形態特征:深度、寬度、扇入、扇出。選擇調用數據流循環調用控制流三、軟件結構圖選擇調用數據流循環調用控制流四、軟件結構設計優化標準1、模塊獨立性標準。高內聚、低耦合2、控制與作用范圍之間的標準。一個模塊的作用范圍應在其控制范圍之內。3、結構特征標準。從形態上看,應是頂層扇出較高一些,中間層扇出較低一些,底層扇入數較高一些。4、模塊接口標注。模塊的接口要簡單、清晰及含義明確,便于理解,易于實現、維護與測試。四、軟件結構設計優化標準五、面向數據流的設計方法DFD軟件結構1、變換型數據流圖:由輸入、變換、輸出三部分組成。形成順序結構。2、事務型數據流圖:若某個加工將它的數據流分離成許多發散的數據流,并根據輸入的值選擇其中一個路徑來執行,這個加工稱為“事務處理中心”。五、面向數據流的設計方法六、填空題1、在軟件的體系結構中,模塊是可組合、分解和更換的單元。模塊具有
、
、
、和
等屬性。接口、功能、邏輯、狀態2、總體設計的文檔主要有:
和
。總體設計說明書、數據庫設計說明書3、數據庫設計指
的設計,主要進行一下幾方面的設計
、
、
。數據存儲設計概念設計、邏輯設計、物理設計4、軟件設計的基本任務包括:
、
、
和
4個方面設計軟件結構、數據結構和數據庫設計、編寫設計文檔、評審5、抽象是認識復雜現象過程中使用的思維工具,即抽出事物
的、
的特性而暫不考慮它的
,不考慮其它因素。本質、共同、細節6、軟件結構設計是以
為基礎,以需求分析的結果為依據,從實現的角度進一步劃分
,并組成模塊的
。模塊模塊層次結構六、填空題接口、功能、邏輯、狀態2、總體設計的文7、軟件設計是一個把
轉換為軟件表示的過程,包括總體設計和
。需求分析8、進入了設計階段,要把軟件“做什么”的
模型變換為“怎么做”的
模型,即著手實現軟件需求,并將設計的結果反映在
文檔中。詳細設計9、總體設計評價是對設計部分是否完整地實現了需求中規定的
、
等要求,設計方案的
,關鍵的處理及內外部接口定義
有效性,各部分之間的
等都一一進行評審。邏輯設計10、在一個模塊中,
、
和
反映模塊外部特征,
反映它的內部特性。功能、性能11、
是指在設計和確定模塊時,使得一個模塊的內包含的信息對于不需要遮羞信息的其它模塊來說是不能
的。可行性12、設計軟件結構,具體為:(1)采用某種方法將一個復雜系統按功能劃分為
(2)確定每個模塊的
(3)確定模塊之間的
(4)確定模塊之間的
,即模塊之間傳遞的信息。(5)評價模塊結構的質量。正確性一致性功能、狀態、接口物理邏輯信息隱藏訪問模塊功能調用關系接口7、軟件設計是一個把轉換為軟件表示的過13、模塊間耦合高低取決與模塊間
、
及
。接口的復雜性、調用方式、傳遞信息14、耦合性分
種類型,最強耦合
,最弱耦合
。15、模塊獨立性中每個模塊只完成問題要求的
子功能,并且與其它模塊的聯系
。6、內容耦合、無直接耦合16、內聚性分
種類型,最強內聚
,最弱內聚
。獨立的、最少且接口簡單17、耦合性指軟件結構中
相互聯系緊密程度的一種度量。模塊之間聯系越
,其耦合性就越強,模塊的
則越差。18、
是指兩個模塊之間有調用關系,傳遞的是簡單的數據值,相當于高級語言中的
。7、偶然內聚、功能內聚各模塊間、緊密、獨立性數據耦合、值傳遞13、模塊間耦合高低取決與模塊間、19、
指兩個模塊之間傳遞的是數據結構,如高級語言中的數據名、記錄名、文件名等,其實傳遞的是
。標記耦合、這個數據結構的地址20、功能內聚是內聚程度最
的內聚,指模塊內所有元素共同完成
,缺一不可。功能內聚的模塊與其它模塊的耦合是
的。21、結構圖主要內容有
、
、
。強、一個功能、弱22、變換型DFD由
、
和
三部分組成。模塊、模塊的控制關系、模塊的信息傳遞23、軟件結構從形態上總的考慮是:頂層扇出數較
一些,中間層扇出數較
一些,底層
數較高一些。24、軟件結構設計是以
為基礎,在需求分析階段,已經把系統分解成層次結構。設計階段以需求分析的結果為根據,從實現的角度進一步劃分為模塊,并組成模塊的層次結構。輸入、變換、輸出扇入模塊高低19、指兩個模塊之間傳遞的是數據結選擇題1、軟件設計一般分為總體設計和詳細設計,它們之間的關系是()。A.全局和局部B.抽象和具體C.總體和層次D.功能和結構A2、軟件結構使用的圖形工具,一般采用()圖。
A.DFDB.PADC.SCD.E-RC3、下列中屬于軟件設計的基本原理的是()。A.數據流分析B.變換流分析C.事務流分析D.模塊化4、將幾個邏輯上相似的成分放在一個模塊中,該模塊屬于()內聚。A.邏輯B.時間C.功能D.通信5、模塊內的某成分的輸出是另一成分的輸入,該模塊屬于()內聚。A.功能B.順序C.邏輯D.時間DAB6、結構圖中不是主要成分的是()。A.模塊B.模塊間傳遞數據C.模塊內部數據D.模塊的控制關系C選擇題1、軟件設計一般分為總體設計和詳細設計,它們之間的關系7、模塊中的所有成分結合起來完成一項任務,該模塊屬于()內聚,它具有簡明的外部界面,由它構成的軟件易于理解、測試和維護。A.偶然B.順序C.通信D.功能D8、軟件設計中模塊間的耦合性盡可能()。A.強B.弱C.較強D.適中B9、一個模塊把一個數值量作為參數傳遞給另一模塊。這兩個模塊之間的耦合是()。A.邏輯耦合B.數據耦合C.控制耦合D.內容耦合10、一個模塊把開關量作為參數傳遞給另一模塊。這兩個模塊之間的耦合是()。A.外部耦合B.數據耦合C.控制耦合D.內容耦合11、在面向數據流的軟件設計方法中,一般將信息流分為()。A.變換流和數據流B.變換流和控制流C.事務流和控制流D.數據流和控制流BCD7、模塊中的所有成分結合起來完成一項任務,該模塊屬于(12、()著重反映的是模塊間的隸屬關系,即模塊間的調用關系和層次關系。A.程序流程圖B.數據流圖C.E-R圖D.結構圖D13、首先將系統中的關鍵部分設計出來,再讓系統的其余部分的設計去適應它們,這稱為()。A.模塊化B.逐步求精C.抽象D.信息隱藏C14、模塊(),則說明模塊的獨立性越強。A.耦合越強B.扇入數越多C.耦合越弱D.扇出數越多15、為了提高模塊(),當修改和維護模塊時減少把一個模塊的錯誤擴散到其它模塊中去的機會。A.耦合性B.獨立性C.內聚性D.共享性30、()把已確定的軟件需求轉換成特定形式的設計表示,使其得以實現。A.系統設計B.詳細設計C.邏輯設計D.總體設計CBD12、()著重反映的是模塊間的隸屬關系,即模塊間作業一、填空題:25-50二、選擇題:7-12、16-17、19、21、26、31-33作業一、填空題:25-50CH3需求分析一、需求分析概念需求分析是發現、求精、建模、規格說明和復審的過程,回答“做什么”的問題。為最終用戶所看到的系統建立一個軟件的邏輯模型(將用戶非形式的需求陳述轉化為完整的需求定義)。二、需求分析的基本原則(1)可以把一個復雜問題按功能進行分解并可逐層細化;(2)必須能夠表達和理解問題的數據域和功能域;(3)建立軟件的邏輯模型;三、需求分析四項主要任務(1)確定對系統的綜合要求(2)分析系統的數據要求(3)導出軟件的邏輯模型(4)編寫文檔CH3需求分析一、需求分析概念二、需求分析的基本原則三、五、分析(邏輯)模型①數據模型(E-R圖,層次方框圖,Warnier圖);②功能模型(數據流圖,數據字典);③行為模型(狀態轉換圖,IPO);
四、需求獲取方法(1)訪談(用戶被動)(2)面向數據流自頂向下求精(用戶被動)(3)簡易的應用規格說明技術(用戶主動)(4)快速建立軟件原型(用戶與開發者不區分)五、分析(邏輯)模型四、需求獲取方法六、從哪些方面驗證軟件需求的正確性①一致性:測試;形式化工具;②完整性:原型系統;③現實性:參照以往開發經驗,仿真模擬;④有效性:原型系統;六、從哪些方面驗證軟件需求的正確性七、選擇題1、需求分析的基本任務是要準確地定義
,為了滿足用戶需求,回答系統必須
的問題。扇新系統的目標做什么2、在需求分析階段,首先進行問題識別,即雙方確定對問題的綜合需求,這些需求包括:
需求、
需求、
需求、
需求。另外還有可靠性、安全性、保密性、可移植性、可維護性等方面的需求。功能、性能、環境、用戶界面3、需求分析的困難主要體現在4個方面:問題的復雜性、
、
、需求易變性。交流障礙、不完備性和不一致性4、在需求分析階段進行以下幾個方面的工作:識別系統綜合要求、
、導出軟件邏輯模型、
。分析系統的數據要求、編寫文檔七、選擇題扇新系統的目標做什么2、在需求分析八、填空題1、需求分析()。A.要回答“軟件必須做什么?”B.可概括為:“理解、分解、表達”6個字C.要求編寫需求規格說明書D.以上都對2、需求分析階段研究的對象是軟件項目的()。A.用戶要求B.合理要求C.系統要求D.環境要求3、軟件需求分析階段的工作,可以分成4個方面:確定系統綜合要求、分析系統的數據要求、導出邏輯模型以及()。A.進度規劃B.測試計劃C.需求分析評審D.編寫文檔4、需求規格說明書的作用不應包括()。A.軟件設計的依據B.用戶與開發人員對軟件要做什么的共同理解C.軟件驗收的依據D.軟件可行性行研究的依據DADD八、填空題2、需求分析階段研究的對象是軟件項目的(CH2可行性研究一、可行性研究概念可行性研究是用最小的代價在盡可能短的時間內確定項目是否能夠開發?是否值得去開發。二、可行性研究的任務任務(1)技術可行性(2)經濟可行性(3)操作可行性(4)社會可行性(1)這個系統的經濟效益能超過它的開發成本嗎?(2)短期效益,長遠利益分析。操作規程簡便。容易獲得結果。(1)建立一個項目范圍,該范圍在管理級及技術級均是無二義性的和可理解的。(2)項目計劃的目標提供一個框架,使項目的結果限定在這一個合理的范圍內。(3)確定系統開發可能導致的任何侵權行為、妨礙性后果和責任。(1)能否解決系統中的技術難題,能否實現所要求的功能;(2)所開發的系統能否達到所要求的性能;(3)限制條件研究(資源有效性)①現有系統能實現嗎②現有的技術人員能否勝任;③開發所需要的軟件與硬件能否如期得到等
CH2可行性研究一、可行性研究概念二、可行性研究的任務任三、可行性研究步驟步驟問題定義技術、經濟、操作、社會可行性研究研究結果三、可行性研究步驟步驟問題定義技術、經濟、操作、社會可行性研四、成本-效益分析1、系統成本=開發成本+維護成本2、系統效益=經濟效益+社會效益3、成本估計技術(主要表現為人力消耗)(1)代碼行技術(2)任務分解技術(類似代碼行技術,只是劃分的單位不同)(3)自動估計成本技術(前提是有大量的歷史數據庫)四、成本-效益分析五、數據流圖——DFD1、圖中沒有任何具體物理元素,只是描繪信息在系統中流動和處理的情況。非專業人員容易理解是通信的極好工具。2、由數據流、處理、數據存儲、實體(數據源點/終點)組成。3、數據流:是數據在系統內傳播的路徑,由一組成分固定的數據項組成,用名稱標注(與數據存儲傳播除外)。4、為了表示復雜問題的數據處理過程,用一組分層的數據流圖反映它。5、數據字典(DD)是關于數據信息的集合,是對DFD中包含的所有的定義數據項以一種準確、無二義的描述方式,DD+DFD共同組成了軟件的邏輯模型。6、數據項是數據流和數據存儲的最小單位。五、數據流圖——DFD六、選擇題1、
的目的就是用最小代價在盡可能短的時間內確定該軟件項目是否能夠開發、是否值得開發。2、可行性研究的目的不是是開發一個軟件項目,而是研究這個項目是否
。3、可行性研究需要從
可行性、
可行性、可行性和
可行性四個方面分析研究每種解決方案的可行性。經濟、技術、操作、社會4、技術可行性是對開發項目的
、
、
進行分析,確定現有資源條件下,技術風險有多大,項目是否能實現。功能、性能、限制條件2可行性研究是否做值得5、經濟可行性一般要考慮的情況包括:
和
。成本、效益6、社會可行性所涉及的范圍包括
、
、
、用戶組織的管理模式、范圍以及其他一些技術人員常常不了解的陷阱。合同、責任、侵權六、選擇題2、可行性研究的目的不是是開發一個軟件7、典型的可行性研究有以下步驟:確定項目的規模和目標、
、
、導出和評價各種方案、推薦可行的方案和編寫可行性研究報告。8、系統效益=經濟效益+
。9、效益分有型效益和
兩種。無形10、可行性研究的第一個步驟是
。社會效益建立新系統的高層邏輯模型11、數據字典就是用來定義數據流圖中的
的。它和數據流圖共同構成了系統的
,是
的主要組成部分。確定項目的規模和目標12、由于數據流是流動中的數據,所以必須有
。除了與
之間的數據流命名外,數據流應該采用名詞或名詞短語。各個成分的具體含義、邏輯模型、需求說明書研究正在運行的系統流向、數據存儲7、典型的可行性研究有以下步驟:確定項目的規模和目七、填空題1、研究開發資源有效性是進行()可行性研究的一個方面A.技術B.經濟C.社會D.操作2、在軟件可行性研究中、可以從不同的角度對軟件進行研究,其中從軟件的功能可行性角度考慮的是()可行性A.經濟B.技術C.操作D.社會3、在遵循軟件工程原則開發軟件過程中,計劃階段應該依次完成()A.可行性研究、需求分析、問題定義B.問題定義、可行性研究、需求分析
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 財務與稅務的協同管理試題及答案
- 難點突破計算機二級考試試題及答案
- 高級健身試題庫及答案大全
- 高一美術鑒賞試題及答案
- 計算機二級考試信息技術應用試題及答案
- 預測2025年公共衛生執業醫師考試試題及答案趨勢
- 藥劑E-learning學習方式試題及答案
- 黑龍江省佳木斯市建三江一中2025年高考適應性考試物理試卷含解析
- 安全法律法規試題試卷及答案解析
- 安徽初二月考試卷及答案
- 小學一年級班主任工作實習計劃(16篇)
- 腫瘤科護理溝通技巧
- 2024-2030年中國高等教育行業發展策略及投資改革創新模式分析報告
- 一級建造師《港口與航道工程管理與實務》課件-專業工程技術
- 牡蠣養殖及深加工項目可行性研究報告
- 2014-2024年高考語文真題匯編之詩歌鑒賞含答案解析
- 防腐木平臺施工方案
- DB31-T 1468-2024 工貿企業危險化學品安全管理規范
- 金融科技金融大數據風控平臺開發與應用方案
- 初三班級學生中考加油家長會課件
- 國家資格等級證書-驗光員-2.視功能檢查評分表(助教學生填寫)
評論
0/150
提交評論