暫無課程簡介,!
暨南大學
軟件工程 教學大綱
課程英文名:Software Engineering
課程性質(zhì):專業(yè)課
課程類別:必修課
先修課程:數(shù)據(jù)結(jié)構(gòu),、離散數(shù)學,、高級語言程序設(shè)計
學 分:3
總學時數(shù):54
周學時數(shù):3
適用專業(yè):計算機科學與技術(shù),、軟件工程,、網(wǎng)絡(luò)工程
開課單位:信息科學技術(shù)學院計算機科學系
教學目標及教學要求
軟件工程導論是計算機相關(guān)專業(yè)的一門重要的專業(yè)基礎(chǔ)課,,它對于培養(yǎng)學生的軟件素質(zhì),,提高學生的軟件開發(fā)能力與軟件項目管理能力具有重要的意義,。通過本課程的學習,,要求學生掌握軟件工程的基本概念,、基本原理、實用的開發(fā)方法和技術(shù),;了解軟件工程各領(lǐng)域的發(fā)展方向,;如何用工程化的方法開發(fā)軟件項目,以及開發(fā)過程中應(yīng)遵循的流程,、準則,、標準和規(guī)范。
這是一門實踐性很強的課程,,教師在講述課程的過程中,,應(yīng)結(jié)合實際的軟件項目或案例的進行講解并組織學生進行課堂討論,以加深學生對理論知識的理解,。
二,、本課程的重點和難點
本課程的重點主要有面向數(shù)據(jù)流的系統(tǒng)分析、面向?qū)ο蟮南到y(tǒng)分析,、設(shè)計及實現(xiàn),。教學中具體的難點分布在各個章節(jié)如:需求分析的中需求建模、面向數(shù)據(jù)流的軟件結(jié)構(gòu)設(shè)計,、邏輯覆蓋及軟件測試用例的設(shè)計,、UML統(tǒng)一建模語言等,。
三、主要實踐性教學環(huán)節(jié)及要求
本課程沒有安排專門的實驗教學環(huán)節(jié),,教師在課堂講授理論知識時,,可以結(jié)合實際的軟件項目或案例的進行講解并組織課堂討論。
四.采用的教學手段和方法
主要利用多媒體課室課堂講授軟件工程的基本理論知識,,其中安排幾次大作業(yè)和習題課,。在講述軟件生命周期的各個階段時結(jié)合實際的軟件項目案例進行分析和討論。在講述軟件工程文檔時,主要介紹軟件文檔的國家標準,。
五,、教材與主要參考文獻
教 材:
[1] 張海藩. 軟件工程導論(第四版),北京:清華大學出版社,,2003.
主要參考文獻:
[1] 史濟民. 軟件工程--原理方法與應(yīng)用.北京:高等教育出版社,1990.
[2] 鄭人杰,殷人昆,陶永雷. 實用軟件工程(第二版).北京:清華大學出版社,,1997.
[3] Roger S. Pressman著.梅宏譯. 軟件工程--實踐者的研究方法(第五版).北京:機械工業(yè)出版社,2002.
六、考核形式與成績計算
閉卷考試,。平時占30%~40%,,期末考試占60%~70%。
七,、基本教學內(nèi)容
軟件危機及軟件工程
了解軟件的特點,軟件生產(chǎn)發(fā)展的三個階段,各階段的特點,,軟件危機的產(chǎn)生及其表現(xiàn)形式;初步了解軟件的生存周期模型,;理解軟件工程的定義及特點,,軟件生存期各階段的特點和內(nèi)容;深刻理解軟件危機產(chǎn)生的原因,。
可行性研究
深刻理解可行性研究的必要性,,掌握可行性研究的任務(wù)及可行性研究的具體步驟;了解系統(tǒng)流程圖的作用及符號表示,,重點掌握數(shù)據(jù)流圖的畫法及數(shù)據(jù)字典的編寫,。
需求分析
深刻理解需要分析階段的概念及任務(wù),熟練掌握數(shù)據(jù)流圖的細化及ER圖,,IOP圖的畫法,。
總體設(shè)計
深刻理解軟件總體設(shè)計的基本任務(wù),軟件設(shè)計的基本原理,。理解模塊化,、抽象、信息隱蔽,、模塊獨立性等概念,,明確度量模塊獨立性的準則---偶和性及內(nèi)聚性,。熟練掌握結(jié)構(gòu)化設(shè)計方法(要求能劃分數(shù)據(jù)流的類型,,將其能換成軟件結(jié)構(gòu)圖,,并能根據(jù)優(yōu)化準則將其優(yōu)化)。
詳細設(shè)計
能熟練的使用詳細設(shè)計描述工具來設(shè)計模塊中的算法及程序的邏輯結(jié)構(gòu),。理解Jackson方法的概念及程序復雜度的度量方法,,學會使用Jackson方法設(shè)計輸入輸出數(shù)據(jù)結(jié)構(gòu)和程序結(jié)構(gòu)。
編 碼
了解幾種常見的程序設(shè)計語言的特點,領(lǐng)會程序設(shè)計中應(yīng)注意的問題,注意培養(yǎng)良好的編程風格,。
軟件測試
總的要求是掌握測試階段的內(nèi)容,,測試方法及測試步驟;深刻理解白盒,,黑盒測試技術(shù),。深刻理解測試過程中單元測試,集成測試,,驗收測試的任務(wù)及使用的方法,;掌握調(diào)試程序的方法;熟練掌握的技能是:能針對某一問題采用白盒法或黑盒法進行測試用例的設(shè)計,。
維護
本章總的要求是:掌握軟件維護的內(nèi)容,、特點、方法,、技術(shù),、文檔;了解軟件維護的各種困難,,軟件維護的特點,,軟件維護的文檔;理解軟件維護的內(nèi)容,,維護任務(wù)的實施,;深刻理解如何提高軟件的維護性。
面向?qū)ο蠓椒▽W
掌握面向?qū)ο蟮母拍钆c面向?qū)ο蠓治龅幕舅枷?、UML 概述(語言機制),、基于UML的軟件開發(fā)過程、基于UML的需求分析(步驟及語言機制詳解),。
管理技術(shù)
總的要求是了解軟件開發(fā)成本結(jié)算,、軟件項目進度安排、軟件項目計劃內(nèi)容及軟件質(zhì)量的定義,、質(zhì)量保證的基本概念,。深入理解軟件項目計劃的重要性及各個環(huán)節(jié)之間的聯(lián)系。