軟體工程總體設計
一般是分以下幾個章節:1.引言1.1編寫目的 1.2項目背景1.3定義 1.4參考資料 2.任務內概述2.1目標2.2運行環境2.3需求容概述2.4條件與限制 3.總體設計 3.1處理流程3.2總體結構和模塊外部設計 3.3功能分配4.介面設計4.1外部介面4.2內部介面 5.數據結構設計5.1邏輯結構設計5.2物理結構設計5.3數據結構與程序的關系 6.運行設計6.1運行模塊的組合6.2運行控制6.3運行時間 7.出錯處理設計7.1出錯輸出信息7.2出錯處理對策 8.安全保密設計 9.維護設計
要不你把郵箱給我 我給你傳份模板
『貳』 軟體總體設計過程中需要遵守哪些基本原理
定義
軟體工程一直以來都缺乏一個統一的定義,很多學者、組織機構都分別給出了自己的定義:
Boehm:運用現代科學技術知識來設計並構造計算機程序及為開發、運行和維護這些程序所必需的相關文件資料。
IEEE:軟體工程是開發、運行、維護和修復軟體的系統方法。
Fritz Bauer:建立並使用完善的工程化原則,以較經濟的手段獲得能在實際機器上有效運行的可靠軟體的一系列方法。
目前比較認可的一種定義認為:軟體工程是研究和應用如何以系統性的、規范化的、可定量的過程化方法去開發和維護軟體,以及如何把經過時間考驗而證明正確的管理技術和當前能夠得到的最好的技術方法結合起來。
軟體工程學的內容
軟體工程學的主要內容是軟體開發技術和軟體工程管理.
軟體開發技術包含軟體工程方法學、軟體工具和軟體開發環境;軟體工程管理學包含軟體工程經濟學和軟體管理學。
軟體工程基本原理
著名軟體工程專家B.Boehm綜合有關專家和學者的意見並總結了多年來開發軟體的經驗,於1983年在一篇論文中提出了軟體工程的七條基本原理。
(1)用分階段的生存周期計劃進行嚴格的管理。
(2)堅持進行階段評審。
(3)實行嚴格的產品控制。
(4)採用現代程序設計技術。
(5)軟體工程結果應能清楚地審查。
(6)開發小組的人員應該少而精。
(7)承認不斷改進軟體工程實踐的必要性。
B.Boehm指出,遵循前六條基本原理,能夠實現軟體的工程化生產;按照第七條原理,不僅要積極主動地採納新的軟體技術,而且要注意不斷總結經驗。
軟體工程(SoftWare Engineering)的框架可概括為:目標、過程和原則。
(1)軟體工程目標:生產具有正確性、可用性以及開銷合宜的產品。正確性指軟體產品達到預期功能的程度。可用性指軟體基本結構、實現及文檔為用戶可用的程度。開銷合宜是指軟體開發、運行的整個開銷滿足用戶要求的程度。這些目標的實現不論在理論上還是在實踐中均存在很多待解決的問題,它們形成了對過程、過程模型及工程方法選取的約束。
(2)軟體工程過程:生產一個最終能滿足需求且達到工程目標的軟體產品所需要的步驟。軟體工程過程主要包括開發過程、運作過程、維護過程。它們覆蓋了需求、設計、實現、確認以及維護等活動。需求活動包括問題分析和需求分析。問題分析獲取需求定義,又稱軟體需求規約。需求分析生成功能規約。設計活動一般包括概要設計和詳細設計。概要設計建立整個軟體系統結構,包括子系統、模塊以及相關層次的說明、每一模塊的介面定義。詳細設計產生程序員可用的模塊說明,包括每一模塊中數據結構說明及加工描述。實現活動把設計結果轉換為可執行的程序代碼。確認活動貫穿於整個開發過程,實現完成後的確認,保證最終產品滿足用戶的要求。維護活動包括使用過程中的擴充、修改與完善。伴隨以上過程,還有管理過程、支持過程、培訓過程等。
(3)軟體工程的原則是指圍繞工程設計、工程支持以及工程管理在軟體開發過程中必須遵循的原則。
軟體工程必須遵循什麼原則
圍繞工程設計、工程支持以及工程管理已提出了以下四條基本原則:
(1)選取適宜的開發模型
該原則與系統設計有關。在系統設計中,軟體需求、硬體需求以及其它因素間是相互制約和影響的,經常需要權衡。因此,必需認識需求定義的易變性,採用適當的開發模型,保證軟體產品滿足用戶的要求。
(2)採用合適的設計方法
在軟體設計中,通常需要考慮軟體的模塊化、抽象與信息隱蔽、局部化、一致性以及適應性等特徵。合適的設計方法有助於這些特徵的實現,以達到軟體工程的目標。
(3)提供高質量的工程支撐
工欲善其事,必先利其器。在軟體工程中,軟體工具與環境對軟體過程的支持頗為重要。軟體工程項目的質量與開銷直接取決於對軟體工程所提供的支撐質量和效用。
(4)重視軟體工程的管理
軟體工程的管理直接影響可用資源的有效利用,生產滿足目標的軟體產品以及提高軟體組織的生產能力等問題。因此,僅當軟體過程予以有效管理時,才能實現有效的軟體工程。
軟體工程是指導計算機軟體開發和維護的工程學科。
採用工程的概念、原理、 技術和方法來開發與維護軟體,把經過時間考驗而證明正確的管理技術和當前能夠 得到的最好的技術方法結合起來,這就是軟體工程。
軟體工程強調使用生存周期方法學和各種結構分析及結構設計技術。它們是在七十年代為了對付應用軟體日益增長的復雜程度、漫長的開發周期以及用戶對軟體產品經常不滿意的狀況而發展起來的。人類解決復雜問題時普遍採用的一個策略就是「各個擊破」,也就是對問題進行分解然後再分別解決各個子問題的策略。軟體工程採用的生存周期方法學就是從時間角度對軟體開發和維護的復雜問題進行分解,把軟體生存的漫長周期依次劃分為若干個階段,每個階段有相對獨立的任務,然後逐步完成每個階段的任務。採用軟體工程方法論開發軟體的時候,從對任務的抽象邏輯分析開始,一個階段一個階段地進行開發。前一個階段任務的完成是開始進行後一個階段工作的前提和基礎,而後一階段任務的完成通常是使前一階段提出的解法更進一步具體化,加進了更多的物理細節。每一個階段的開始和結束都有嚴格標准,對於任何兩個相鄰的階段而言,前一階段的結束標准就是後一階段的開始標准。在每一個階段結束之前都必須進行正式嚴格的技術審查和管理復審,從技術和管理兩方面對這個階段的開發成果進行檢查,通過之後這個階段才算結束;如果檢查通不過,則必須進行必要的返工,並且返工後還要再經過審查。審查的一條主要標准就是每個階段都應該交出「最新式的」(即和所開發的軟體完全一致的)高質量的文檔資料,從而保證在軟體開發工程結束時有一個完整准確的軟體配置交付使用。文檔是通信的工具,它們清楚准確地說明了到這個時候為止,關於該項工程已經知道了什麼,同時確立了下一步工作的基礎。此外,文檔也起備忘錄的作用,如果文檔不完整,那麼一定是某些工作忘記做了,在進入生存周期的下一階段之前,必須補足這些遺漏的細節。在完成生存周期每個階段的任務時,應該採用適合該階段任務特點的系統化的技術方法──結構分析或結構設計技術。
把軟體生存周期劃分成若干個階段,每個階段的任務相對獨立,而且比較簡單,便於不同人員分工協作,從而降低了整個軟體開發工程的困難程度;在軟體生存周期的每個階段都採用科學的管理技術和良好的技術方法,而且在每個階段結束之前都從技術和管理兩個角度進行嚴格的審查,合格之後才開始下一階段的工作,這就使軟體開發工程的全過程以一種有條不紊的方式進行,保證了軟體的質量,特別是提高了軟體的可維護性。總之,採用軟體工程方法論可以大大提高軟體開發的成功率,軟體開發的生產率也能明顯提高。
目前劃分軟體生存周期階段的方法有許多種,軟體規模、種類、開發方式、開發環境以及開發時使用的方法論都影響軟體生存周期階段的劃分。在劃分軟體生存周期的階段時應該遵循的一條基本原則就是使各階段的任務彼此間盡可能相對獨立,同一階段各項任務的性質盡可能相同,從而降低每個階段任務的復雜程度,簡化不同階段之間的聯系,有利於軟體開發工程的組織管理。一般說來,軟體生存周期由軟體定義、軟體開發和軟體維護三個時期組成,每個時期又進一步劃分成若干個階段。下面的論述主要針對應用軟體,對系統軟體也基本適用。
軟體定義時期的任務是確定軟體開發工程必須完成的總目標;確定工程的可行性,導出實現工程目標應該採用的策略及系統必須完成的功能;估計完成該項工程需要的資源和成本,並且制定工程進度表。這個時期的工作通常又稱為系統分析,由系統分析員負責完成。軟體定義時期通常進一步劃分成三個階段,即問題定義、可行性研究和需求分析。
開發時期具體設計和實現在前一個時期定義的軟體,它通常由下述四個階段組成:總體設計,詳細設計,編碼和單元測試,綜合測試。
維護時期的主要任務是使軟體持久地滿足用戶的需要。具體地說,當軟體在使用過程中發現錯誤時應該加以改正;當環境改變時應該修改軟體以適應新的環境;當用戶有新要求時應該及時改進軟體滿足用戶的新需要。通常對維護時期不再進一步劃分階段,但是每一次維護活動本質上都是一次壓縮和簡化了的定義和開發過程。
『叄』 在軟體工程學中總體設計階段提交的文檔叫什麼
如果有需要我可以發給你這些是軟體開發的時候需要的全套文檔
『肆』 軟體工程中總體設計階段中的系統架構是什麼,架構圖是指功能模塊圖嗎各位能手快快回答,江湖救急
網上訂餐系統的總體設計和詳細設計報告我幫助 給撰稿啊~原創的.
『伍』 按照軟體工程化設計要求,充分強調在集成概念指導下的總體設計技術
因為是工程化的設計,多需要的人員會很多,不管是面向數據流還是面向內對象的設計,都會採用模容塊的設計方法,一個工程軟體的好壞並不是以模塊的好快來定的,而是以各種模塊集成之後的總體性能來衡量的,所以集成很重要,當然強調的就是總體設計了
『陸』 軟體工程總體設計階段的主要目的是什麼
1、劃分出組成系統的物理元素——程序、文件、資料庫、人工過程和文檔等。
2、設計系統的結構,也就是要確定系統中每個程序是由哪些模塊組成的,以及這些模塊相互間的關系。
總體設計時必修遵守原理:
1、模塊化:把復雜的問題分解成許多容易解決的小問題,原來的問題也就容易解決了。
2、抽象:在實踐中認識到,在現實世界中一定事物、狀態和過程之間從存在某些相似的方面(共性)。把這些相似的方面集中和概括起來,暫時忽略它們之間的差異,這就是抽象。或者說抽象就是考慮事物間被關注的特性而不考慮它們其他的細節。
(6)軟體工程總體設計擴展閱讀:
總體設計階段的工作步驟:
1、尋找實現系統的各種不同的解決方案,參照需求分析階段得到的數據流程圖來做。
2、分析員從這些供選擇的方案中選出若干個合理的方案進行分析,為每個方案都准備一份系統流程圖,列出組成系統的所有物理元素,進行成本效益分析,並且制定這個方案的進度計劃。
3、分析員綜合分析比較這些合理的方案,從中選擇一個最佳方案向用戶和使用部門負責人推薦。
4、對最終確定的解決方案進行優化和改進,從而得到更合理的結構,進行必要的資料庫設計,確定測試要求並且制定測試計劃。
『柒』 軟體工程中總體設計的設計原理!!!
你想幹嘛?
『捌』 軟體工程總體設計包括哪些數據圖
系統總體設計即對全局問題的設計,也就是設計系統總的處理方案,又稱概要設計。回 製造系統工程總體設計包答括:市場調研,技術規格書編寫,初步設計,詳細設計,產品製造等。 軟體工程總體設計包括:計算機配置設計、系統模塊結構設計