软件工程导论——软件工程介绍
1. 目的
軟件工程是計算機科學與技術的核心課程,是一門指導軟件開發和維護的工程學科,學習后可以掌握系統的軟件開發理論,技術和方法,使用正確的工程方法開發出成本低,可靠性好,可以高效運行的軟件
如果想要系統性學習軟件工程導論,推薦閱讀以下書籍:
- 《軟件工程導論》作者:張海藩,專業基礎
- 《軟件工程 實踐者的研究方法》作者:Roger.Pressman(美國),專業擴展
- 《軟件工程—理論,方法與實踐》作者:孫家廣,劉強,在面向對象這一點講解較為簡潔明了
- 《UML與系統分析設計》作者:張龍祥,用來快速入門,在面向對象方法時會建模,用的就是UML統一建模語言
?2. 軟件
2.1 軟件定義和分類
軟件指的是計算機程序,文檔,運行程序所必須的數據,方法,規。方法和規則在文檔中說明,在程序中實現。
軟件的方法主要介紹兩種:基于軟件功能的劃分和基于軟件規模的劃分
2.1.1基于軟件功能
基于軟件功能,可以把軟件分為系統軟件,支撐軟件,和應用軟件
系統軟件:指的是與計算機硬件緊密配合使計算機各個部件與相關軟件以及數據協調,高效工作的軟件,比如:操作系統,編譯程序等
支撐軟件:指的是協助用戶開發軟件的工具性軟件
應用軟件:指的是為了特定的應用領域和應用目的開發的軟件
根據應用領域和目的的不同分為很多類:
- 商業數據處理軟件
- 工程與科學計算軟件,比如CAD / CAM,仿真模擬
- 智能產品嵌入軟件:駐留在智能產品內部,控制產品工作的軟件,比如,家用電器
- 人工智能軟件:利用非數值算法來解決復雜性問題的軟件。比如模式識別軟件,人工神經網絡軟件
- 個人計算機軟件,比如掃雷,電子表格等
2.2.2 基于軟件規模劃分
| 分類 | 參加人數 | 開發周期 |
| 微型 | 1 | 1—4周 |
| 小型 | 1 | 1—6月 |
| 中型 | 2—5 | 1—2年 |
| 大型 | 5—20 | 2—3年 |
| 甚大型 | 100—1000 | 4—5年 |
| 極大型 | 2000—5000 | 5—10年 |
3. 軟件模式發展階段
3.1 集中主機模型
把應用程序和數據存取都安裝在一臺計算機上,用戶通過這一臺計算機運行應用程序處理數據
缺點:數據無法共享
3.2 客戶機 / 服務器模型(C/S)
3.2.1兩層模式
用戶可以在客戶端運行應用程序通過網絡訪問服務器進行數據存取。解決了多個用戶數據共享問題
缺點:客戶端負擔太重,所有的應用程序都在客戶端,服務器端只進行存儲數據和簡單的數據存取
?
3.2.2?三層模式
三層模式軟件分為三層,分別是客戶端,應用服務器端,數據庫服務器端
客戶端存放人機交互界面(前端界面),應用服務器端存放業務處理程序,數據庫服務器端存放數據存取
解決了客戶端負擔太重的問題
?
運行流程:多個客戶端運行人機交互程序,通過網絡訪問應用服務器運行業務處理程序,然后再訪問數據庫服務器進行數據存取,然后將結果返回給客戶端?
?3.3 瀏覽器 / 服務器模型(B/S)——三層模式
客戶端不需要安裝軟件,只需要安裝瀏覽器鏈接internet訪問到web服務器就可以,因為所有的處理程序都在web服務器上
?優點:用戶不受地域控制,只要能聯網就可以訪問web服務器運行程序,程序更新時只需要更新web服務器,降低維護成本
3.4 新技術
人工智能,神經網絡,并行運算,云計算等
4. 軟件危機
4.1 軟件危機定義
在計算機軟件開發和維護過程中遇到的一系列嚴重的問題就是軟件危機
4.2 主要表現
?5. 軟件工程
5.1 軟件工程定義
根據1993年IEEE的定義:把系統化,規范化,可度量的途徑應用于軟件開發,運行和維護過程中,研究其實現途徑。
5.2 軟件工程研究的東西
5.2.1 軟件工程技術
- 軟件開發方法學
- 軟件開發過程
- 軟件工具和軟件工程環境
?5.2.2 軟件工程管理
- 軟件管理學
- 軟件經濟學
- 軟件心理學
總結
以上是生活随笔為你收集整理的软件工程导论——软件工程介绍的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Epicor流水编号规则功能
- 下一篇: 千帆竞发 —— 分布式锁