第1章+SEI-為什么要研究軟件工程課件_第1頁
第1章+SEI-為什么要研究軟件工程課件_第2頁
第1章+SEI-為什么要研究軟件工程課件_第3頁
第1章+SEI-為什么要研究軟件工程課件_第4頁
第1章+SEI-為什么要研究軟件工程課件_第5頁
已閱讀5頁,還剩119頁未讀 繼續免費閱讀

下載本文檔

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

文檔簡介

軟件工程導論(1)

為什么要研究軟件工程軟件工程導論(1)軟件工程體系軟件工程導論需求工程系統設計編程方法軟件測試項目管理質量管理過程管理配置管理軟件工程體系軟件工程導論需求工程系統設計編程方法軟件測試項目內容提要/Kerryzhu

本書圍繞軟件工程最基本的核心——“質量和生產率”展開,力求通過一些具體的實例來說明軟件工程的思想和方法。本書在回答為什么要研究軟件工程問題之后,首先系統地給出軟件工程的知識體系框架,幫助讀者建立其軟件工程的完整而清晰的概念。然后深入軟件過程、軟件工程目標和要求的討論,全面闡述了軟件工程的思想、方法、技術和工具,結合軟件工程環境、軟件項目管理等內容,使讀者堅實地掌握和運用軟件工程的知識內涵。本書在內容組織上,構思新穎,突破軟件工程圖書的傳統框架,使整個軟件工程體系更清晰,從思想和管理出發,自然延伸到流程、方法、工具和環境,重新闡釋了軟件工程體系。本書吸收了軟件工程的最新進展,適應軟件即服務(SaaS)新的開發模式,增加了相應的內容,符合當今軟件工程的實際需求。

內容提要/Kerry引子回答最重要的問題引子回答最重要的問題Q1-什么是軟件工程?

軟件工程是一種工程形式,它運用計算機科學和數學原理,針對軟件問題獲得一種經濟有效的解決方案用系統的、規范的、可度量的方法,開發、運行和維護軟件軟件工程是采用系統工程學和管理學相結合的原理、方法和技術來指導、管理和實施軟件的各種活動,包括軟件開發、運行、維護和服務等Q1-什么是軟件工程?軟件工程是一種工程形式,它運用計算機Q2-軟件工程的基本目標是什么?

高質量就是最大程度地滿足客戶需求、幫助客戶獲得成功高生產力就是以最小的成本獲得最好的收益,即在規定的時間和預算之內完成軟件開發、維護和服務等任務高質量&高生產力Q2-軟件工程的基本目標是什么?高質量就是最大程度地滿足客Q3-為什么要討論軟件工程?

軟件危機的出現和加劇軟件系統越來越復雜軟件環境變化很快軟件用戶的需求越來越高Q3-為什么要討論軟件工程?軟件危機的出現和加劇Q4-軟件工程帶來的益處又是什么?

規范軟件開發的行為,從而提高軟件的可維護、可移植性和可靠性提供許多科學的方法、最佳實踐和工具,幫助人們高效地、系統地、正確地構造軟件幫助我們建立有效的、平穩的并能持續改進的軟件過程,預防缺陷、降低成本,最終多快好省地提供優質的軟件產品或服務,為組織贏得利潤、獲得競爭力Q4-軟件工程帶來的益處又是什么?規范軟件開發的行為,從而Q5-軟件工程的基本思想是什么?

將軟件看成一個系統通過迭代來完善軟件系統,逐漸逼近客戶的需求軟件開發是工程和藝術的統一、創造性和規范性的統一過程決定產品,持續改進過程質量以預防為主、重在文化建設以顧客為導向、軟件即服務個人和團隊并重向傳統的成熟工業學習適合自己的,才是最好的Q5-軟件工程的基本思想是什么?將軟件看成一個系統Q6-如何理解軟件工程?

管理,針對不同的領域建立目標、標準和規則過程:定義完成軟件各項任務的工作階段、內容、流程、階段性成果和驗收要求方法:軟件開發、運行和維護等所需的技術方法工具:為方法的運用提供自動或半自動的軟件支撐環境首先就是一種指導軟件管理和實施的先進思想。其次,是針對軟件特點而建立的科學管理體系。最后,是一門學科,研究適合軟件的過程、方法和工具Q6-如何理解軟件工程?管理,針對不同的領域建立目標、標準Q7-軟件工程知識體系包含哪些內容?

軟件工程分為:軟件工程方法學和軟件工程管理學

10個知識域:軟件需求、軟件設計、軟件構造、軟件測試、軟件維護、軟件配置管理、軟件工程管理、軟件工程過程、軟件工程工具和方法和軟件質量管理。Q7-軟件工程知識體系包含哪些內容?軟件工程分為:軟件工程巴比倫塔可能是第一個工程上的徹底失敗,但它不是最后一個巴比倫塔可能是第一個工程上的徹底失敗,但它不是最后一個本章內容1.1軟件危機1.2軟件的問題在哪里?1.3軟件工程的誕生1.4軟件工程的命題1.5軟件工程知識體系1.6現代軟件工程/Kerryzhu

本章內容1.1軟件危機http://blog.csdn.n本章內容1.1軟件危機1.2軟件的問題在哪里?1.3軟件工程的誕生1.4軟件工程的命題1.5軟件工程知識體系1.6現代軟件工程/Kerryzhu

本章內容1.1軟件危機http://blog.csdn.n軟件危機1.1.1軟件不再只是程序1.1.2危機四伏1.1.3軟件危機之證/Kerryzhu

軟件危機(SoftwareCrisis)是在軟件開發和維護過程中所遭遇的一系列嚴重問題,導致開發延期、成本激增或者軟件運行質量事故等。

軟件危機1.1.1軟件不再只是程序http://blog.軟件不再只是程序軟件=程序

人機交互、實時系統、業務系統/Kerryzhu

軟件不再只是程序軟件=程序http://blog.cs世界上第一位軟件工程師

AdaLovelace(1815-1851)數學家穿孔機程序創始人,建立了循環和子程序概念英國著名詩人拜倫的女兒世界上第一位軟件工程師AdaLovelace典型的例子IBM360系列機的操作系統

FredBrooks在的《人月神話》(TheMythicalMan-Month)

/Kerryzhu

典型的例子IBM360系列機的操作系統http://bl軟件危機四伏對軟件開發成本和進度的估計不足,超預算、完成日期一再被推遲的現象屢屢出現不能滿足客戶需求,用戶不滿意缺乏質量保證體系,沒有成熟的開發流程,產品的質量得不到保證

軟件不容易被維護,錯誤難以糾正,新功能難以擴充軟件發展速度跟不上硬件發展的要求……/Kerryzhu

軟件危機四伏對軟件開發成本和進度的估計不足,超預算、完成日期軟件危機之證(1)1994年,英特爾奔騰CPU芯片曾經存在一個浮點運算的缺陷丹佛新國際機場的自動化行李處理系統中存在嚴重的程序缺陷,導致行李箱被絞碎……1999年美國宇航局的火星基地登陸飛船在試圖登陸火星表面時突然墜毀失蹤。Windows2000存在許多安全性漏洞2002年7月23日,我國首都機場因計算機軟件系統故障,6000多人滯留機場,150多個航班延誤。2003年8月14日發生的美國及加拿大部分地區史上最大停電事故是由軟件錯誤所引起/Kerryzhu

質量事故的例子

軟件危機之證(1)1994年,英特爾奔騰CPU芯片曾經存在一軟件危機之證(2)/Kerryzhu

項目拖延或取消的事例

44%challenged軟件危機之證(2)/惡化的趨勢惡化的趨勢本章內容1.1軟件危機1.2軟件的問題在哪里?1.3軟件工程的誕生1.4軟件工程的命題1.5軟件工程知識體系1.6現代軟件工程/Kerryzhu

本章內容1.1軟件危機http://blog.csdn.n1.2軟件的問題在哪里?1.2.1軟件特性 1.2.2軟件業所面臨的問題1.2.3軟件問題的幽默畫/Kerryzhu

1.2軟件的問題在哪里?1.2.1軟件特性 http:/軟件特性創造性

軟件技術日新月異

易修改性

需求不斷變化

非標準化

/Kerryzhu

軟件是邏輯的、知識性的智力產品,是對物理世界的一種抽象軟件特性創造性/K軟件開發=焦油坑/Kerryzhu

軟件開發被喻為讓眾多史前巨獸痛苦掙扎,卻無力擺脫的焦油坑。軟件開發=焦油坑軟件所面臨的問題軟件系統的復雜性,使我們理解程序如何工作也變得非常難,團隊工作效率低下,容易產生問題軟件需求不充分,同時經常變更大規模的軟件會使開發人員數量的增長很快,導致團隊溝通不暢(二次級數增長)其它問題/Kerryzhu

軟件所面臨的問題軟件系統的復雜性,使我們理解程序如何工作也變軟件問題的幽默畫/Kerryzhu

客戶是如何解釋的的項目經理這樣理解的分析人員的設計程序員代碼寫成這樣業務咨詢師描述成那樣項目文檔這樣記載軟件安裝后的結果客戶遭到亂收費支持人員的工作客戶的真正需求軟件問題的幽默畫/K本章內容1.1軟件危機1.2軟件的問題在哪里?1.3軟件工程的誕生1.4軟件工程的命題1.5軟件工程知識體系1.6現代軟件工程/Kerryzhu

本章內容1.1軟件危機http://blog.csdn.n概念來源1968年北大西洋公約組織(NATO)的計算機科學家在聯邦德國召開國際會議,討論軟件危機問題,正式提出了“軟件工程”概念來源1968年北大西洋公約組織(NATO)的計算機科學家GOTO語句大討論foreachmy$try(@options){nextunlessexists$hash{$try};do_something($try);gotoSUCCESS;}log_failure();SUCCESS:...GOTO語句大討論foreachmy$try(@op本章內容1.1軟件危機1.2軟件的問題在哪里?1.3軟件工程的誕生1.4軟件工程的命題1.5軟件工程知識體系1.6現代軟件工程/Kerryzhu

本章內容1.1軟件危機http://blog.csdn.n軟件工程學科軟件工程從計算機科學中的一個學科方向發展成為與之并重的一門獨立學科,重點研究如何以系統的、可控的、高效的方式開發和維護高質量軟件的問題軟件工程學科軟件工程從計算機科學中的一個學科方向發展成為與之軟件工程的定義

F.L.Bauer:軟件工程是為了經濟地獲得能夠在實際機器上高效運行的、可靠的軟件而建立和應用一系列堅實的軟件工程原則SEI:

軟件工程是以工程的形式應用計算機科學和數學原理,從而經濟有效地解決軟件問題IEEE:

軟件工程是將系統性的、規范化的、可定量的方法應用于軟件的開發、運行和維護軟件工程的定義F.L.Bauer:軟件工程是為了經濟地獲軟件工程的內涵軟件工程學科包含為完成軟件需求、設計、構建、測試和維護所需的知識、方法和工具。軟件工程不局限在理論之上,更重要在實踐上,能夠幫助軟件組織協調團隊、運用有限的資源,遵守已定義的軟件工程規范,通過一系列可復用的、有效的方法,在規定的時間內達到預先設定的目標軟件工程的內涵軟件工程學科包含為完成軟件需求、設計、構建、測交叉性學科計算機科學和數學用于構造軟件的模型與算法工程科學用于制定規范、設計范型、評估成本以及確定權衡等管理科學用于計劃、資源、質量、成本等管理軟件工程由下列3部分組成:交叉性學科計算機科學和數學用于構造軟件的模型與算法軟件工程由學科范圍學科范圍本章內容1.1軟件危機1.2軟件的問題在哪里?1.3軟件工程的誕生1.4軟件工程的命題1.5軟件工程知識體系1.6現代軟件工程/Kerryzhu

本章內容1.1軟件危機http://blog.csdn.n1.5軟件工程知識體系1.5.1軟件工程知識體系的構成1.5.2軟件工程要素1.5.3SWEBOK/Kerryzhu

1.5軟件工程知識體系1.5.1軟件工程知識體系的構成h多視角觀察

多視角觀察軟件工程學的構成軟件工程學的構成軟件工程方法學

軟件方法學實際上就是研究在軟件工程中可以采用的軟件方法、技術和工具,即完成軟件構建和維護所需要的有效方法和技術軟件方法學離不開軟件過程,包括軟件過程的定義、監控、管理和改進軟件開發環境是方法和工具的結合軟件工程方法學軟件方法學實際上就是研究在軟件工程中可以采用軟件工程管理學

計劃管理成本管理人員組織軟件配置管理質量管理軟件度量軟件工程管理學計劃管理軟件工程要素

從項目管理看,自然涉及到人員與組織、成本、風險、軟件配置項、基線、質量等要素從技術看,會涉及到設計模式、編程語言、開發平臺、網絡、通用組件、中間件、接口、數據庫、人機界面、服務器、客戶端等要素總體上看,有軟件質量、標準、過程、方法、技術、工具、團隊等主要因素流程、方法和工具

軟件工程要素從項目管理看,自然涉及到人員與組織、成本、風險基本要素軟件工程=思想+流程+方法+工具+最佳實踐思想流程方法工具最佳實踐基本要素軟件工程=思想+流程+方法+工具+最佳實SWEBOK實施三階段草人階段(~1997年5月)產生軟件工程本體知識指南的雛型,主要是為該指南確定恰當的組織結構。石人階段(~2001年4月18日),草稿完成、進入試用階段,SWEBOK0.95版的發布標志著該階段結束。鐵人階段(~2004年),從正式版本——1.0版開始到現在,包括最新的2004版本SWEBOK實施三階段草人階段(~1997年5月)產生軟10個知識域

軟件需求(SoftwareRequirements)軟件設計(SoftwareDesign)軟件構造(SoftwareConstruction)軟件測試(SoftwareTesting)軟件維護(SoftwareMaintenance)軟件配置管理(SoftwareConfigurationManagement)軟件工程管理(SoftwareEngineeringManagement)軟件工程過程(~Process)軟件工程工具和方法(~ToolandMethod)軟件質量(SoftwareQuality10個知識域軟件需求(SoftwareRequirem知識體系的構成知識體系的構成知識域及其子域知識域及其子域本章內容1.1軟件危機1.2軟件的問題在哪里?1.3軟件工程的誕生1.4軟件工程的命題1.5軟件工程知識體系1.6現代軟件工程/Kerryzhu

本章內容1.1軟件危機http://blog.csdn.n1.6現代軟件工程1.6.1開源軟件運動1.6.2SaaS1.6.3現代軟件工程的基本思想/Kerryzhu

1.6現代軟件工程1.6.1開源軟件運動http://b

TimO'ReillyandRichardStallman

RichardStallmanisanactivistintheFREESOFTWAREMOVEMENT(FSM),whichhefoundedin1983.OPENSOURCEMOVEMENTsplitofffromFSMin1998.開源運動

(1998-2008)OpenWisdom=OpenSource=Community=Share

TimO'ReillyandRichardStalSendmail開源軟件產品CVSSendmail開源軟件產品CVS開源軟件的特點日常管理成本則被最小化開源軟件的設計,努力提取其共性而形成參考體系結構,并使其易于移植。核心小組成員及其責任分配是自發形成的,并不是硬性指派產生。非正式交流(如郵件列表、論壇等)在開源軟件開發的活動中發揮著積極的重要作用開源項目用戶的參與度高并不刻意遵循特定的軟件工程方法和過程采取獨特的、靈活的方式來解決標、資源配置和進度安排等問題,開源軟件的特點日常管理成本則被最小化開源軟件開發的經驗早發布、常發布、聽取用戶的建議。把用戶當做協作開發者和測試人員精妙的數據結構和笨拙的代碼所構成的組合肯定好于笨拙的數據結構和精妙的代碼。最好的設計是最精簡的設計好的程序員知道如何寫代碼,偉大的程序員知道重用或重構代碼開源軟件開發的經驗早發布、常發布、聽取用戶的建議。SaaSSoftware-as-a-Service的簡稱新的軟件應用模式廠商統一部署應用軟件客戶按需獲得服務SaaSSaaS服務SaaS服務EssUP的八大過程

EssUP的八大過程現代軟件工程的基本思想讓過程作為指南,而不是“警察”過程等于一組實踐,不等于慣例精益概念,摒棄復雜的公式化元模型,取而代之的是簡單的、可感知的分類法。簡煉的表示方法,使用卡片和指南表來提供實踐及相關工件的一致、簡單的解釋專業人員是知識的主體開放的和可擴展的現代軟件工程的基本思想小結只有技術路線、項目管理和質量管理的有機結合,一個軟件工程項目才能有序、有計劃、高質量地完成工程需要規范和范型,需要建立相對應的標準要系統、徹底地解決軟件工程問題,需要借助系統工程學、管理學、行為組織學、數學等多個學科的幫助小結只有技術路線、項目管理和質量管理的有機結合,一個軟件工程Q&A/Kerryzhu

Q&A/Kerr演講完畢,謝謝觀看!演講完畢,謝謝觀看!軟件工程導論(1)

為什么要研究軟件工程軟件工程導論(1)軟件工程體系軟件工程導論需求工程系統設計編程方法軟件測試項目管理質量管理過程管理配置管理軟件工程體系軟件工程導論需求工程系統設計編程方法軟件測試項目內容提要/Kerryzhu

本書圍繞軟件工程最基本的核心——“質量和生產率”展開,力求通過一些具體的實例來說明軟件工程的思想和方法。本書在回答為什么要研究軟件工程問題之后,首先系統地給出軟件工程的知識體系框架,幫助讀者建立其軟件工程的完整而清晰的概念。然后深入軟件過程、軟件工程目標和要求的討論,全面闡述了軟件工程的思想、方法、技術和工具,結合軟件工程環境、軟件項目管理等內容,使讀者堅實地掌握和運用軟件工程的知識內涵。本書在內容組織上,構思新穎,突破軟件工程圖書的傳統框架,使整個軟件工程體系更清晰,從思想和管理出發,自然延伸到流程、方法、工具和環境,重新闡釋了軟件工程體系。本書吸收了軟件工程的最新進展,適應軟件即服務(SaaS)新的開發模式,增加了相應的內容,符合當今軟件工程的實際需求。

內容提要/Kerry引子回答最重要的問題引子回答最重要的問題Q1-什么是軟件工程?

軟件工程是一種工程形式,它運用計算機科學和數學原理,針對軟件問題獲得一種經濟有效的解決方案用系統的、規范的、可度量的方法,開發、運行和維護軟件軟件工程是采用系統工程學和管理學相結合的原理、方法和技術來指導、管理和實施軟件的各種活動,包括軟件開發、運行、維護和服務等Q1-什么是軟件工程?軟件工程是一種工程形式,它運用計算機Q2-軟件工程的基本目標是什么?

高質量就是最大程度地滿足客戶需求、幫助客戶獲得成功高生產力就是以最小的成本獲得最好的收益,即在規定的時間和預算之內完成軟件開發、維護和服務等任務高質量&高生產力Q2-軟件工程的基本目標是什么?高質量就是最大程度地滿足客Q3-為什么要討論軟件工程?

軟件危機的出現和加劇軟件系統越來越復雜軟件環境變化很快軟件用戶的需求越來越高Q3-為什么要討論軟件工程?軟件危機的出現和加劇Q4-軟件工程帶來的益處又是什么?

規范軟件開發的行為,從而提高軟件的可維護、可移植性和可靠性提供許多科學的方法、最佳實踐和工具,幫助人們高效地、系統地、正確地構造軟件幫助我們建立有效的、平穩的并能持續改進的軟件過程,預防缺陷、降低成本,最終多快好省地提供優質的軟件產品或服務,為組織贏得利潤、獲得競爭力Q4-軟件工程帶來的益處又是什么?規范軟件開發的行為,從而Q5-軟件工程的基本思想是什么?

將軟件看成一個系統通過迭代來完善軟件系統,逐漸逼近客戶的需求軟件開發是工程和藝術的統一、創造性和規范性的統一過程決定產品,持續改進過程質量以預防為主、重在文化建設以顧客為導向、軟件即服務個人和團隊并重向傳統的成熟工業學習適合自己的,才是最好的Q5-軟件工程的基本思想是什么?將軟件看成一個系統Q6-如何理解軟件工程?

管理,針對不同的領域建立目標、標準和規則過程:定義完成軟件各項任務的工作階段、內容、流程、階段性成果和驗收要求方法:軟件開發、運行和維護等所需的技術方法工具:為方法的運用提供自動或半自動的軟件支撐環境首先就是一種指導軟件管理和實施的先進思想。其次,是針對軟件特點而建立的科學管理體系。最后,是一門學科,研究適合軟件的過程、方法和工具Q6-如何理解軟件工程?管理,針對不同的領域建立目標、標準Q7-軟件工程知識體系包含哪些內容?

軟件工程分為:軟件工程方法學和軟件工程管理學

10個知識域:軟件需求、軟件設計、軟件構造、軟件測試、軟件維護、軟件配置管理、軟件工程管理、軟件工程過程、軟件工程工具和方法和軟件質量管理。Q7-軟件工程知識體系包含哪些內容?軟件工程分為:軟件工程巴比倫塔可能是第一個工程上的徹底失敗,但它不是最后一個巴比倫塔可能是第一個工程上的徹底失敗,但它不是最后一個本章內容1.1軟件危機1.2軟件的問題在哪里?1.3軟件工程的誕生1.4軟件工程的命題1.5軟件工程知識體系1.6現代軟件工程/Kerryzhu

本章內容1.1軟件危機http://blog.csdn.n本章內容1.1軟件危機1.2軟件的問題在哪里?1.3軟件工程的誕生1.4軟件工程的命題1.5軟件工程知識體系1.6現代軟件工程/Kerryzhu

本章內容1.1軟件危機http://blog.csdn.n軟件危機1.1.1軟件不再只是程序1.1.2危機四伏1.1.3軟件危機之證/Kerryzhu

軟件危機(SoftwareCrisis)是在軟件開發和維護過程中所遭遇的一系列嚴重問題,導致開發延期、成本激增或者軟件運行質量事故等。

軟件危機1.1.1軟件不再只是程序http://blog.軟件不再只是程序軟件=程序

人機交互、實時系統、業務系統/Kerryzhu

軟件不再只是程序軟件=程序http://blog.cs世界上第一位軟件工程師

AdaLovelace(1815-1851)數學家穿孔機程序創始人,建立了循環和子程序概念英國著名詩人拜倫的女兒世界上第一位軟件工程師AdaLovelace典型的例子IBM360系列機的操作系統

FredBrooks在的《人月神話》(TheMythicalMan-Month)

/Kerryzhu

典型的例子IBM360系列機的操作系統http://bl軟件危機四伏對軟件開發成本和進度的估計不足,超預算、完成日期一再被推遲的現象屢屢出現不能滿足客戶需求,用戶不滿意缺乏質量保證體系,沒有成熟的開發流程,產品的質量得不到保證

軟件不容易被維護,錯誤難以糾正,新功能難以擴充軟件發展速度跟不上硬件發展的要求……/Kerryzhu

軟件危機四伏對軟件開發成本和進度的估計不足,超預算、完成日期軟件危機之證(1)1994年,英特爾奔騰CPU芯片曾經存在一個浮點運算的缺陷丹佛新國際機場的自動化行李處理系統中存在嚴重的程序缺陷,導致行李箱被絞碎……1999年美國宇航局的火星基地登陸飛船在試圖登陸火星表面時突然墜毀失蹤。Windows2000存在許多安全性漏洞2002年7月23日,我國首都機場因計算機軟件系統故障,6000多人滯留機場,150多個航班延誤。2003年8月14日發生的美國及加拿大部分地區史上最大停電事故是由軟件錯誤所引起/Kerryzhu

質量事故的例子

軟件危機之證(1)1994年,英特爾奔騰CPU芯片曾經存在一軟件危機之證(2)/Kerryzhu

項目拖延或取消的事例

44%challenged軟件危機之證(2)/惡化的趨勢惡化的趨勢本章內容1.1軟件危機1.2軟件的問題在哪里?1.3軟件工程的誕生1.4軟件工程的命題1.5軟件工程知識體系1.6現代軟件工程/Kerryzhu

本章內容1.1軟件危機http://blog.csdn.n1.2軟件的問題在哪里?1.2.1軟件特性 1.2.2軟件業所面臨的問題1.2.3軟件問題的幽默畫/Kerryzhu

1.2軟件的問題在哪里?1.2.1軟件特性 http:/軟件特性創造性

軟件技術日新月異

易修改性

需求不斷變化

非標準化

/Kerryzhu

軟件是邏輯的、知識性的智力產品,是對物理世界的一種抽象軟件特性創造性/K軟件開發=焦油坑/Kerryzhu

軟件開發被喻為讓眾多史前巨獸痛苦掙扎,卻無力擺脫的焦油坑。軟件開發=焦油坑軟件所面臨的問題軟件系統的復雜性,使我們理解程序如何工作也變得非常難,團隊工作效率低下,容易產生問題軟件需求不充分,同時經常變更大規模的軟件會使開發人員數量的增長很快,導致團隊溝通不暢(二次級數增長)其它問題/Kerryzhu

軟件所面臨的問題軟件系統的復雜性,使我們理解程序如何工作也變軟件問題的幽默畫/Kerryzhu

客戶是如何解釋的的項目經理這樣理解的分析人員的設計程序員代碼寫成這樣業務咨詢師描述成那樣項目文檔這樣記載軟件安裝后的結果客戶遭到亂收費支持人員的工作客戶的真正需求軟件問題的幽默畫/K本章內容1.1軟件危機1.2軟件的問題在哪里?1.3軟件工程的誕生1.4軟件工程的命題1.5軟件工程知識體系1.6現代軟件工程/Kerryzhu

本章內容1.1軟件危機http://blog.csdn.n概念來源1968年北大西洋公約組織(NATO)的計算機科學家在聯邦德國召開國際會議,討論軟件危機問題,正式提出了“軟件工程”概念來源1968年北大西洋公約組織(NATO)的計算機科學家GOTO語句大討論foreachmy$try(@options){nextunlessexists$hash{$try};do_something($try);gotoSUCCESS;}log_failure();SUCCESS:...GOTO語句大討論foreachmy$try(@op本章內容1.1軟件危機1.2軟件的問題在哪里?1.3軟件工程的誕生1.4軟件工程的命題1.5軟件工程知識體系1.6現代軟件工程/Kerryzhu

本章內容1.1軟件危機http://blog.csdn.n軟件工程學科軟件工程從計算機科學中的一個學科方向發展成為與之并重的一門獨立學科,重點研究如何以系統的、可控的、高效的方式開發和維護高質量軟件的問題軟件工程學科軟件工程從計算機科學中的一個學科方向發展成為與之軟件工程的定義

F.L.Bauer:軟件工程是為了經濟地獲得能夠在實際機器上高效運行的、可靠的軟件而建立和應用一系列堅實的軟件工程原則SEI:

軟件工程是以工程的形式應用計算機科學和數學原理,從而經濟有效地解決軟件問題IEEE:

軟件工程是將系統性的、規范化的、可定量的方法應用于軟件的開發、運行和維護軟件工程的定義F.L.Bauer:軟件工程是為了經濟地獲軟件工程的內涵軟件工程學科包含為完成軟件需求、設計、構建、測試和維護所需的知識、方法和工具。軟件工程不局限在理論之上,更重要在實踐上,能夠幫助軟件組織協調團隊、運用有限的資源,遵守已定義的軟件工程規范,通過一系列可復用的、有效的方法,在規定的時間內達到預先設定的目標軟件工程的內涵軟件工程學科包含為完成軟件需求、設計、構建、測交叉性學科計算機科學和數學用于構造軟件的模型與算法工程科學用于制定規范、設計范型、評估成本以及確定權衡等管理科學用于計劃、資源、質量、成本等管理軟件工程由下列3部分組成:交叉性學科計算機科學和數學用于構造軟件的模型與算法軟件工程由學科范圍學科范圍本章內容1.1軟件危機1.2軟件的問題在哪里?1.3軟件工程的誕生1.4軟件工程的命題1.5軟件工程知識體系1.6現代軟件工程/Kerryzhu

本章內容1.1軟件危機http://blog.csdn.n1.5軟件工程知識體系1.5.1軟件工程知識體系的構成1.5.2軟件工程要素1.5.3SWEBOK/Kerryzhu

1.5軟件工程知識體系1.5.1軟件工程知識體系的構成h多視角觀察

多視角觀察軟件工程學的構成軟件工程學的構成軟件工程方法學

軟件方法學實際上就是研究在軟件工程中可以采用的軟件方法、技術和工具,即完成軟件構建和維護所需要的有效方法和技術軟件方法學離不開軟件過程,包括軟件過程的定義、監控、管理和改進軟件開發環境是方法和工具的結合軟件工程方法學軟件方法學實際上就是研究在軟件工程中可以采用軟件工程管理學

計劃管理成本管理人員組織軟件配置管理質量管理軟件度量軟件工程管理學計劃管理軟件工程要素

從項目管理看,自然涉及到人員與組織、成本、風險、軟件配置項、基線、質量等要素從技術看,會涉及到設計模式、編程語言、開發平臺、網絡、通用組件、中間件、接口、數據庫、人機界面、服務器、客戶端等要素總體上看,有軟件質量、標準、過程、方法、技術、工具、團隊等主要因素流程、方法和工具

軟件工程要素從項目管理看,自然涉及到人員與組織、成本、風險基本要素軟件工程=思想+流程+方法+工具+最佳實踐思想流程方法工具最佳實踐基本要素軟件工程=思想+流程+方法+工具+最佳實SWEBOK實施三階段草人階段(~1997年5月)產生軟件工程本體知識指南的雛型,主要是為該指南確定恰當的組織結構。石人階段(~2001年4月18日),草稿完成、進入試用階段,SWEBOK0.95版的發布標志著該階段結束。鐵人階段(~2004年),從正式版本——1.0版開始到現在,包括最新的2004版本SWEBOK實施三階段草人階段(~1997年5月)產生軟10個知識域

軟件需求(SoftwareRequirements)軟件設計(SoftwareDesign)軟件構造(SoftwareConstruction)軟件測試(SoftwareTesting)軟件維護(SoftwareMaintenance)軟件配置管理(SoftwareConfigurationManagement)軟件工程管理(SoftwareEngineeringManagement)

溫馨提示

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

評論

0/150

提交評論