1 軟件工程的本質(zhì)特征
1.1軟件工程關(guān)注于大型程序的構(gòu)造齐疙。
1.2軟件工程的中心課題是控制復(fù)雜性姆吭。
1.3軟件經(jīng)常變化噪馏。
1.4開發(fā)軟件的效率非常重要序苏。
1.5和諧的合作是開發(fā)軟件的關(guān)鍵刊懈。
1.6軟件必須有效的支持它的用戶这弧。
1.7在軟件工程領(lǐng)域中通常有具有一種文化背景的人替具有另一種文化背景的人創(chuàng)造產(chǎn)品。
2 軟件工程的基本原理
下面是軟件工程的七條基本原理虚汛。
2.1用分階段的生命周期計(jì)劃匾浪,嚴(yán)格管理。
2.2堅(jiān)持進(jìn)行階段評審卷哩。
2.3實(shí)行嚴(yán)格的產(chǎn)品控制蛋辈。
2.4采用現(xiàn)代程序設(shè)計(jì)技術(shù)。
2.5結(jié)果應(yīng)能清楚地審查将谊。
2.6開發(fā)小組的人員應(yīng)該少而精冷溶。
2.7承認(rèn)不斷改進(jìn)軟件工程實(shí)踐的必要性。
3 軟件工程方法學(xué)
目前使用最廣泛的軟件工程方法學(xué)尊浓,分別為傳統(tǒng)方法學(xué)和面向?qū)ο蟮姆椒▽W(xué)逞频。
3.1傳統(tǒng)方法學(xué)也稱為生命周期方法學(xué)或結(jié)構(gòu)化范型。它采用結(jié)構(gòu)化技術(shù)來完成軟件開發(fā)的各項(xiàng)任務(wù)眠砾,并使用適當(dāng)?shù)能浖ぞ呋蜍浖こ汰h(huán)境來支持結(jié)構(gòu)化技術(shù)的運(yùn)用虏劲。這種方法血源八軟件生命周期的全過程依次劃分為若干個(gè)階段,然后順序的完成每個(gè)階段的任務(wù)褒颈。
3.2面向?qū)ο蟮姆椒▽W(xué)
面向?qū)ο蟮姆椒毦哂幸韵滤膫€(gè)特點(diǎn)柒巫。
一,把對象作為融合了數(shù)據(jù)及在數(shù)據(jù)上的操作行為的統(tǒng)一軟件構(gòu)架谷丸。
二堡掏,把所有對象都劃分成類。
三刨疼,按照父類與子類的關(guān)系泉唁,把若干個(gè)相關(guān)類組成一個(gè)層次結(jié)構(gòu)的系統(tǒng)。也稱為類等級揩慕。
四亭畜,對象彼此間只能通過發(fā)送消息互相聯(lián)系。
傳統(tǒng)方法學(xué)強(qiáng)調(diào)自頂向下順序的完成軟件開發(fā)的各階段任務(wù)迎卤。而用面向?qū)ο蠓椒▽W(xué)開發(fā)軟件的過程是一個(gè)主動(dòng)的多次反復(fù)迭代的演化過程拴鸵。面向?qū)ο蠓椒ㄔ诟拍詈捅硎痉椒ㄉ系囊恢滦裕WC了在各項(xiàng)開發(fā)活動(dòng)之間的平滑過渡。
4 軟件生命周期
概括的說劲藐,軟件生命周期由軟件定義八堡,軟件開發(fā)和運(yùn)行維護(hù)三個(gè)時(shí)期組成。
感覺生命周期的階段主要分為聘芜。問題定義兄渺,可行性研究,需求分析汰现,總體設(shè)計(jì)挂谍,詳細(xì)設(shè)計(jì)編碼和單元測試,綜合測試服鹅,軟件維護(hù)八個(gè)階段凳兵。