




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
軟件設計與體系結構概述(ɡàishù)共三十頁前言(qiányán)書上說的太文藝,我們說通俗的。為什么要學習《軟件工程與體系結構》?你有沒有試過自己開發小app代碼一多就亂了?有沒有試過修改一個簡單的功能(gōngnéng),發現該功能(gōngnéng)的一個字段引用甚多,改起來麻煩,且容易漏改?又有沒有試過和人合作編程序,搞笑了,完全看不懂小伙伴寫得是啥啊!那么《軟件工程與體系結構》這門課就能幫到你,連998都不用!共三十頁前言(qiányán)共三十頁前言(qiányán)共三十頁PART01PART02軟件(ruǎnjiàn)工程與軟件(ruǎnjiàn)危機軟件體系結構的定義(dìngyì)主要內容PART03軟件體系結構的發展歷程PART04軟件體系結構的意義PART05軟件開發過程模型與軟件設計共三十頁軟件工程(ruǎnjiànɡōnɡchénɡ)(SoftwareEngineering)軟件工程(SoftwareEngineering):是將系統的、規范的、可度量的方法應用于軟件的開發、運行(yùnxíng)和維護過程,以及對上述方法的研究。一般認為,軟件工程由方法、工具和過程三個要素組成。計算機軟件是與計算機系統操作有關的程序、規程、規則及任何與之有關的文檔及數據。共三十頁軟件工程的目標是:在給定成本、進度的前提下,開發出具有可修改性、有效性、可靠性、可理解性、可維護性、可復用性、可適應性、可移植性和可追蹤性并滿足用戶需求(xūqiú)的軟件產品。在軟件開發過程中必須遵循下列軟件工程原則:抽象、信息隱藏、模塊化、局部化、一致性、完全性和可驗證性。共三十頁軟件(ruǎnjiàn)危機(SoftwareCrisis)在計算機軟件開發和維護過程中所遇到(yùdào)的一系列嚴重問題。軟件危機的表現:軟件成本日益增加:開發、部署于應用成本高開發進度難以控制:不能按期完成軟件質量差:錯誤率高,不能滿足用戶的需求,沒有生命力軟件維護困難:成本高,維護效果不理想,可能帶來潛在的錯誤共三十頁軟件(ruǎnjiàn)危機(SoftwareCrisis)軟件危機的原因:(1)用戶對軟件需求的描述不精確。(2)軟件開發人員對用戶需求的理解與用戶期望有差異(3)多數管理人員缺乏(quēfá)開發大型軟件系統的經驗。(4)軟件項目開發人員不能有效地、獨立自主地處理大型軟件的全部關系和各個分支。(5)缺乏有力的方法學和工具方面的支持。(6)軟件產品的特殊性和人類智力的局限性。共三十頁軟件體系結構(SoftwareArchitecture)一般描述軟件體系結構(SoftwareArchitecture)最初被稱為“大型軟件設計”,主要對大規模的復雜軟件系統進行總體的結構設計和規格說明。軟件體系結構是軟件工程學的自然延伸。在軟件需求與軟件設計之間的一座橋梁,著重解決軟件系統的結構和需求向實現平坦過渡(guòdù)的問題。共三十頁軟件體系結構(SoftwareArchitecture)定義(dìngyì)軟件體系結構為軟件系統提供了一個結構、屬性和行為的高級抽象。它不僅指定了系統的組織結構和拓撲結構,并且顯示了系統需求和構成系統的元素之間的對應關系,提供了一些設計決策的基本原理。軟件體系結構主要由構成系統的元素的描述、這些元素的相互作用關系、指導元素集成的模式以及這些模式的約束組成。共三十頁軟件體系結構(SoftwareArchitecture)定義Garlan&Shaw模型:軟件體系結構(SA)={構件(Component),連接件(Connector),約束(Constraint)}。構件是組成系統的基本元素。它可以是一組代碼,如程序的模塊;也可以是一個獨立的軟件,如數據庫服務器。連接件把不同的構件連接起來形成(xíngchéng)軟件系統。它可以是過程調用、管道、遠程方法調用等等。約束一般為構件連接時的規則、條件或方式。共三十頁軟件體系結構(SoftwareArchitecture)Garlan&Perry的定義:軟件體系結構是一個軟件系統各個構件(gòujiàn)的結構、它們的相互關系,以及進行軟件系統設計的原則和方針。在此定義中重點強調了設計原則,即如何進行系統設計和組裝構件。共三十頁軟件體系結構(SoftwareArchitecture)定義IEEE610.12-1990中的定義:軟件體系結構(SA)={構件(Component),連接件(Connector),環境(Environment),原理(Principle)}。軟件體系結構是以構件、構件之間的關系、構件與環境之間的關系為內容的某一軟件系統的組織結構以及(yǐjí)指導上述內容設計和演化的原理。共三十頁軟件體系結構(SoftwareArchitecture)補充在基于構件和體系結構的軟件開發方法下,程序開發模式也相應地發生(fāshēng)了變化:軟件開發不再是“算法+數據結構”,而是“構件開發+基于體系結構的構件組裝”。軟件體系結構不是整個系統的描述,而僅僅是系統內的軟件和構建軟件所需環境的描述。同時,體系結構描述中不應該包含諸如算法流程、數據表格式等等底層的實現細節。共三十頁術語(shùyǔ)軟件體系結構設計(SoftwareArchitecting)是指建立(jiànlì)軟件體系結構的過程。軟件體系結構設計師/架構師(SoftwareArchitect)指的是進行軟件體系結構設計,并獲得軟件體系結構的專業人員。軟件體系結構描述(SADescription)是指通過形式化和標準化的描述工具將設計得到的軟件體系結構轉化為文檔產品過程。軟件體系結構風格(SAStyle)是指設計、組織和實現軟件體系結構的各種慣用模式和習慣用法,是對一系列體系結構設計的抽象。共三十頁概念(gàiniàn)軟件重用(Reuse)軟件重用是指在多次不同的軟件開發過程中重復使用相同或相近軟件元素的過程。可重用的元素包括(bāokuò)程序代碼、測試用例、設計文檔、需求分析文檔甚至領域知識。可重用的元素越大,我們就說重用的粒度(Granularity)越大。軟件重用是軟件產業工業化、工程化的重要手段。軟件重用對提高生產率,降低開發成本,縮短開發周期,改善軟件質量以及提高靈活性和標準化程度大有幫助。共三十頁概念(gàiniàn)構件(Component)構件是語義完整、語法正確和有重用價值的單位(dānwèi)軟件。一般來說,任何在系統運行過程中承擔一定功能、發揮一定作用的軟件體都可以看作是構件,譬如設備驅動程序、函數庫、文件、各種服務器軟件等等。構件與外界的若干個交互點稱作“端口”或“接口”。通過端口可以發現構件提供的功能、可以描述的數據以及訪問它們的消息傳遞方式。可以通過形式化的規格說明方式描述構件,也可以用一般的描述語言描述構件。共三十頁概念(gàiniàn)基于構件(gòujiàn)的軟件開發模型共三十頁概念(gàiniàn)連接件(Connector)連接件是用來建立構件之間的交互以及支配這些交互的軟件體系結構模塊(mókuài)。從一般意義上來看,連接件是實現構件之間聯系的特殊機制或特殊構件。構件之間的聯系包括:消息或信號的傳遞功能或方法的請求或調用數據的傳送和轉換構件之間的同步或依賴關系連接件的接口由一組角色組成,連接件的每一個角色定義了該連接件表示的交互參與者。共三十頁概念(gàiniàn)約束(Constraint)約束是構件連接時的規則,如構件是否正確連接,接口是否匹配,連接件形成的通信是否有效等等。約束以特定的結構(jiégòu)反映了軟件體系結構(jiégòu)的基本準則。共三十頁概念(gàiniàn)構件(gòujiàn)、連接件和約束之間的關系共三十頁發展(fāzhǎn)歷程“無體系結構”設計階段:以匯編語言(huìbiānyǔyán)進行小規模應用程序開發。萌芽階段:出現了程序結構設計主題,以控制流圖和數據流圖構成軟件結構。初期階段:出現了從不同側面描述系統的結構模型,以UML為典型代表。高級階段:該階段以Kruchten提出的“4+1”模型為標志,以描述系統的高層抽象結構為中心,不關心具體的建模細節,劃分了體系結構模型與傳統的軟件結構的界限。共三十頁軟件體系結構的意義(yìyì)軟件體系結構是風險承擔者進行交流的手段:系統的各個風險承擔者(客戶、項目管理人員、設計開發人員、測試人員、集成人員)把軟件體系結構作為各自(gèzì)關心的不同方面的描述,并以此作為相互溝通,達成共識的基礎。共三十頁軟件體系結構的意義(yìyì)軟件體系結構是早期設計決策的體現:明確了對系統實現的約束條件決定了開發和維護(wéihù)組織的結構制約著系統的質量屬性通過研究軟件體系結構可以預測軟件的質量使推理和控制軟件更新更加有效有助于循序漸進的原型設計可以作為培訓的基礎共三十頁軟件體系結構的意義(yìyì)軟件體系結構是可傳遞(chuándì)和可重用的模型:軟件體系結構級的重用意味著體系結構的設計決策能夠在具有相似需求的多個系統中發生影響,這比代碼級的重用有更大的好處。通過軟件體系結構的抽象,可以使設計者能夠對一些經過實踐證明是非常有效的體系結構構件進行重用,從而提高設計的效率和可靠性。共三十頁主要研究(yánjiū)內容軟件體系結構理論模型的研究:如何表示體系結構的問題軟件體系結構描述的研究:規范化的體系結構描述語言(ADL)體系結構設計研究:體系結構設計方法、體系結構風格以及計算機輔助實現等方面(fāngmiàn)的研究體系結構分析與驗證基于體系結構的軟件開發過程的研究研究特定領域的體系結構框架共三十頁軟件體系(tǐxì)設計概述軟件體系結構設計(shèjì)包括早期的設計(shèjì)決定,體現了系統的全局結構,對于整個系統的質量有著決定性的影響。為了確保各種質量因素,正確地對體系結構進行抽象很有必要。成功的體系結構設計是開發一個成功的軟件系統的決定性因素之一。成功的體系結構有如下特征:可伸縮、簡單、關系清楚明了、職責分布明確、高效益和技術平衡。共三十頁a
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 交通運輸質量保證技術措施
- 七年級英語下冊作文范例與解析范文
- 荒山造林項目施工安全質量保證措施
- 幼兒園教科研工作績效考核計劃
- 綠色護理服務推廣計劃
- 部編版二年級下冊語文園地四寫話思維訓練范文
- 小學班主任學科教學培訓心得體會他
- 環保工程招投標合同書范文
- 2025年定制家具企業銷售渠道創新計劃
- 企業內部控制下一步工作計劃
- 大學英語六級大綱詞匯正序版
- 《計算機圖形學》課后習題參考答案
- 初三第一學期家長會
- 2022-2023學年天津市北辰區八年級(下)期末語文試卷
- 位置隨動系統的MATLAB計算及仿真畢業設計說明書
- 辦公樓裝飾裝修工程施工組織設計方案
- 勞務合同保證金合同模板
- 湖南省長沙市2024年中考語文真題試卷(含答案)
- 污水管網工程竣工驗收報告
- DB34∕ 1659-2022住宅工程質量常見問題防治技術規程
- 2023-2024學年安徽省安慶市高二(下)期末考試物理試卷(含答案)
評論
0/150
提交評論