軟件的定義
重新定義軟件
新一代信息技術
區塊鏈
創造性思維
軟件的特點
軟件的種類
支撐軟件:VC++,PyCharm等
應用軟件:QQ,微信
軟件工程的起源
軟件開發的三個階段
軟件工程概念的提出
軟件工程的定義
軟件工程將系統化,可量化,規范化的方法應用在軟件工程中,同時需要建立和使用合理的工程原則,以在成本,范圍,進度范圍內獲取高質量的軟件;同時軟件工程從學科的角度是一門交叉性的學科,需要使用多種學科的方法和技術指導和支持
軟件開發的含義
軟件開發的本質
實現問題域到不同抽象層次概念和計算邏輯的更好地映射:
系統建模:映射
設計模式MVC等:更好的軟件設計,以提高軟件設計的質量和效率
應用框架:更好地實現軟件系統,以提高軟件的質量
軟件開發:從問題域中的概念和處理邏輯到運行平臺的概念和處理邏輯的有效的映射
這一映射過程,通過分層分而治之,降低映射的復雜性
映射:
問題域==》需求領域==》設計層次==》實現層==》部署層
問題空間與解空間的映射案例
抽象:數據相似的部分
實現映射的基本手段-建模
模型:任何抽象的模型都包括基本的能力,屬性和側面的描,這些描述去除了大量的不必要的細節,是對事物本質的概括
軟件系統或項的模型分類
一系列軟件項或軟件模型
在映射過程中需要借助驗證和確認技術和手段,來確認這一映射是否得到了問題域中所想要表達的效果
分層:控制開發的復雜性,在每一個分層上由一組確定的術語來定義
軟件工程框架
軟件工程的三要素:目標,原則,活動
軟件工程的目標
可用性:開發文檔及其可讀性也很重要
軟件工程的活動
需求獲取:與用戶或領域專家交互去獲取需求
軟件工程的原則
需求在不斷地變化