版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p> Software engineering</p><p> From: http://zh.wikipedia.org/zh-cn/%E8%BD%AF%E4%BB%B6%E5%B7%A5%E7%A8%8B</p><p> Software engineering is the study of the use of engineering methods to
2、build and maintain effective, practical and high-quality software disciplines. It involves the programming language, database, software development tools, system platform, standards, design patterns and so on. In mo
3、dern society, the software used in many ways. Typical software such as email, embedded systems, human-machine interface, office packages, operating systems, compilers, databases, games. Meanwhile, almost all t</p>
4、<p> Construction team of engineers developed the knowledge of large software systems disciplines. the software analysis, design, implementation and maintenance of a systematic method. the systematic application
5、 of tools and techniques in the development of computer-based applications. Software Engineering and Computer Science Software development in the end is a science or an engineering, this is a question to be debated
6、 for a long time. In fact, both the two characteristics of software deve</p><p><b> 軟件工程</b></p><p> From: http://zh.wikipedia.org/zh-cn/%E8%BD%AF%E4%BB%B6%E5%B7%A5%E7%A8%8B</p&
7、gt;<p> 軟件工程是一門研究用工程化方法構(gòu)建和維護(hù)有效的、實(shí)用的和高質(zhì)量的軟件的學(xué)科。它涉及到程序設(shè)計(jì)語(yǔ)言、數(shù)據(jù)庫(kù)、軟件開發(fā)工具、系統(tǒng)平臺(tái)、標(biāo)準(zhǔn)、設(shè)計(jì)模式等方面。</p><p> 在現(xiàn)代社會(huì)中,軟件應(yīng)用于多個(gè)方面。典型的軟件比如有電子郵件、嵌入式系統(tǒng)、人機(jī)界面、辦公包、操作系統(tǒng)、編譯器、數(shù)據(jù)庫(kù)、游戲等。同時(shí),各個(gè)行業(yè)幾乎都有計(jì)算機(jī)軟件的應(yīng)用,比如工業(yè)、農(nóng)業(yè)、銀行、航空、政府部門等。這些應(yīng)
8、用促進(jìn)了經(jīng)濟(jì)和社會(huì)的發(fā)展,提高人們的工作效率,同時(shí)提升了生活質(zhì)量。</p><p> 軟件工程師是對(duì)應(yīng)用軟件創(chuàng)造軟件的人們的統(tǒng)稱,軟件工程師按照所處的領(lǐng)域不同可以分為系統(tǒng)分析員、軟件設(shè)計(jì)師、系統(tǒng)架構(gòu)師、程序員、測(cè)試員等等。人們也常常用程序員來泛指各種軟件工程師。</p><p><b> 由來</b></p><p> 鑒于軟件開發(fā)時(shí)所遭
9、遇困境,北大西洋公約組織(NATO)在1968年舉辦了首次軟件工程學(xué)術(shù)會(huì)議,并于會(huì)中提出“軟件工程”來界定軟件開發(fā)所需相關(guān)知識(shí),并建議“軟件開發(fā)應(yīng)該是類似工程的活動(dòng)”。軟件工程自1968年正式提出至今,這段時(shí)間累積了大量的研究成果,廣泛地進(jìn)行大量的技術(shù)實(shí)踐,借由學(xué)術(shù)界和產(chǎn)業(yè)界的共同努力,軟件工程正逐漸發(fā)展成為一門專業(yè)學(xué)科。</p><p><b> 定義</b></p>&l
10、t;p> 創(chuàng)立與使用健全的工程原則,以便經(jīng)濟(jì)地獲得可靠且高效率的軟件.</p><p> 應(yīng)用系統(tǒng)化,遵從原則,可被計(jì)量的方法來發(fā)展、操作及維護(hù)軟件;也就是把工程應(yīng)用到軟件上。</p><p> 與開發(fā)、管理及更新軟件產(chǎn)品有關(guān)的理論、方法及工具。</p><p> 一種知識(shí)或?qū)W科(discipline),目標(biāo)是生產(chǎn)品質(zhì)良好、準(zhǔn)時(shí)交貨、符合預(yù)算,并滿足用
11、戶所需的軟件。</p><p> 實(shí)際應(yīng)用科學(xué)知識(shí)在設(shè)計(jì)、建構(gòu)電腦程序,與相伴而來所產(chǎn)生的文件,以及后續(xù)的操作和維護(hù)上。</p><p> 使用與系統(tǒng)化生產(chǎn)和維護(hù)軟件產(chǎn)品有關(guān)之技術(shù)與管理的知識(shí),使軟件開發(fā)與修改可在有限的時(shí)間與費(fèi)用下進(jìn)行。</p><p> 建造由工程師團(tuán)隊(duì)所開發(fā)之大型軟件系統(tǒng)有關(guān)的知識(shí)學(xué)科。 </p><p> 對(duì)軟
12、件分析、設(shè)計(jì)、實(shí)施及維護(hù)的一種系統(tǒng)化方法。</p><p> 系統(tǒng)化地應(yīng)用工具和技術(shù)于開發(fā)以計(jì)算機(jī)為主的應(yīng)用。</p><p> 軟件工程與計(jì)算機(jī)科學(xué)</p><p> 軟件的開發(fā)到底是一門科學(xué)還是一門工程,這是一個(gè)被爭(zhēng)論了很久的問題。實(shí)際上,軟件開發(fā)兼有兩者的特點(diǎn)。但是這并不意味著它們可以被互相混淆。很多人認(rèn)為軟件工程基于計(jì)算機(jī)科學(xué)和信息科學(xué)就如傳統(tǒng)意義上的
13、工程學(xué)之于物理和化學(xué)一樣。在美國(guó),大約40%的軟件工程師具有計(jì)算機(jī)科學(xué)的學(xué)位。在世界其他地方,這個(gè)比例也差不多。他們并不一定會(huì)每天使用計(jì)算機(jī)科學(xué)方面的知識(shí),但是他們每天都會(huì)使用軟件工程方面的知識(shí)。</p><p> 例如 Peter McBreen 認(rèn)為,軟件“工程”意味著更高程度的嚴(yán)謹(jǐn)性與經(jīng)過驗(yàn)證的流程,并不適合現(xiàn)階段各類型的軟件開發(fā)。Peter McBreen 在著作《Software Craftsmans
14、hip: The New Imperative》提出了所謂“craftsmanship”的說法,認(rèn)為現(xiàn)階段軟件開發(fā)成功的關(guān)鍵因素,是開發(fā)者的技能,而不是“manufacturing”軟件的流程。</p><p> 軟件工程與計(jì)算機(jī)程序設(shè)計(jì)</p><p> 軟件工程存在于各種應(yīng)用中,存在于軟件開發(fā)的各個(gè)方面。而程序設(shè)計(jì)通常包含了程序設(shè)計(jì)和編碼的反復(fù)迭代的過程,它是軟件開發(fā)的一個(gè)階段。&
15、lt;/p><p> 軟件工程力圖對(duì)軟件項(xiàng)目的各個(gè)方面作出指導(dǎo),從軟件的可行性分析直到軟件完成以后的維護(hù)工作。軟件工程認(rèn)為軟件開發(fā)與各種市場(chǎng)活動(dòng)密切相關(guān)。比如軟件的銷售,用戶培訓(xùn),與之相關(guān)的軟件和硬件安裝等。軟件工程的方法學(xué)認(rèn)為一個(gè)獨(dú)立的程序員不應(yīng)當(dāng)脫離團(tuán)隊(duì)而進(jìn)行開發(fā),同時(shí)程序的編寫不能夠脫離軟件的需求,設(shè)計(jì),以及客戶的利益。</p><p> 軟件工程的發(fā)展是計(jì)算機(jī)程序設(shè)計(jì)工業(yè)化的體現(xiàn)。
16、</p><p><b> 軟件危機(jī)</b></p><p> 軟件工程的興起要根源于20世紀(jì)60,70和80年代的軟件危機(jī)。在那個(gè)時(shí)代,很多的軟件最后都得到了一個(gè)悲慘的結(jié)局。很多的軟件項(xiàng)目開發(fā)時(shí)間大大超出了規(guī)劃的時(shí)間表。一些項(xiàng)目導(dǎo)致了財(cái)產(chǎn)的流失,甚至某些軟件導(dǎo)致了人員傷亡。同時(shí)軟件開發(fā)人員也發(fā)現(xiàn)軟件開發(fā)的難度越來越大。</p><p>
17、 OS 360操作系統(tǒng)被認(rèn)為是一個(gè)典型的案例。到現(xiàn)在為止,它仍然被使用在IBM360系列主機(jī)中。這個(gè)經(jīng)歷了數(shù)十年,極度復(fù)雜的軟件項(xiàng)目甚至產(chǎn)生了一套不包括在原始設(shè)計(jì)方案之中的工作系統(tǒng)。OS 360是第一個(gè)超大型的軟件項(xiàng)目,它使用了1000人左右的程序員。Fred Brooks在隨后他的大作《人月神話》(The Mythical Man-Month)中曾經(jīng)承認(rèn),在他管理這個(gè)項(xiàng)目的時(shí)候,他犯了一個(gè)價(jià)值數(shù)百萬(wàn)美元的錯(cuò)誤。</p>
18、<p> 財(cái)產(chǎn)的損失:軟件的錯(cuò)誤可能導(dǎo)致巨大的財(cái)產(chǎn)損失。歐洲阿里亞娜火箭的爆炸就是一個(gè)最為慘痛的教訓(xùn)。</p><p> 人員傷亡:由于計(jì)算機(jī)軟件被廣泛應(yīng)用于包括醫(yī)院等與生命息息相關(guān)的行業(yè)。因此軟件的錯(cuò)誤也有可能會(huì)導(dǎo)致人員傷亡。</p><p> 在軟件工程界被大量引用的案例是Therac-25的意外. 在1985年六月到1987年一月之間, 六個(gè)已知的醫(yī)療事故來自于The
19、rac-25錯(cuò)誤地超過劑量, 導(dǎo)致患者死亡或嚴(yán)重輻射灼傷[12]。</p><p> 在工業(yè)上,某些嵌入式系統(tǒng)導(dǎo)致機(jī)器的不正常運(yùn)轉(zhuǎn),從而將一些人推入了險(xiǎn)境。</p><p><b> 方法學(xué)</b></p><p> 軟件工程的方法有很多方面的意義。包括項(xiàng)目管理,分析,設(shè)計(jì),程序的編寫,測(cè)試和質(zhì)量控制。</p><p&
20、gt; 軟件設(shè)計(jì)方法可以區(qū)別為重量級(jí)的方法和輕量級(jí)的方法。重量級(jí)的方法中產(chǎn)生大量的正式文檔。</p><p> 著名的重量級(jí)開發(fā)方法包括ISO 9000,CMM,和統(tǒng)一軟件開發(fā)過程(RUP)。</p><p> 輕量級(jí)的開發(fā)過程沒有對(duì)大量正式文檔的要求。著名的輕量級(jí)開發(fā)方法包括極限編程(XP)和敏捷過程(Agile Processes)。</p><p>
21、根據(jù)《新方法學(xué)》這篇文章的說法,重量級(jí)方法呈現(xiàn)的是一種“防御型”的姿態(tài)。在應(yīng)用“重量級(jí)方法”的軟件組織中,由于軟件項(xiàng)目經(jīng)理不參與或者很少參與程序設(shè)計(jì),無(wú)法從細(xì)節(jié)上把握項(xiàng)目進(jìn)度,因而會(huì)對(duì)項(xiàng)目產(chǎn)生“恐懼感”,不得不要求程序員不斷撰寫很多“軟件開發(fā)文檔”。而輕量級(jí)方法則呈現(xiàn)“進(jìn)攻型”的姿態(tài),這一點(diǎn)從XP方法特別強(qiáng)調(diào)的四個(gè)準(zhǔn)則—“溝通、簡(jiǎn)單、反饋和勇氣”上有所體現(xiàn)。目前有一些人認(rèn)為,“重量級(jí)方法”適合于大型的軟件團(tuán)隊(duì)(數(shù)十人以上)使用,而“輕量
22、級(jí)方法”適合小型的軟件團(tuán)隊(duì)(幾人、十幾人)使用。當(dāng)然,關(guān)于重量級(jí)方法和輕量級(jí)方法的優(yōu)劣存在很多爭(zhēng)論,而各種方法也在不斷進(jìn)化中。</p><p> 一些方法論者認(rèn)為人們?cè)陂_發(fā)中應(yīng)當(dāng)嚴(yán)格遵循并且實(shí)施這些方法。但是一些人并不具有實(shí)施這些方法的條件。實(shí)際上,采用何種方法開發(fā)軟件取決于很多因素,同時(shí)受到環(huán)境的制約。</p><p><b> 軟件開發(fā)過程</b></p
23、><p> 軟件開發(fā)過程是隨著開發(fā)技術(shù)的演化而隨之改進(jìn)的。從早期的瀑布式(Waterfall)的開發(fā)模型到后來出現(xiàn)的螺旋式的迭代(Spiral)開發(fā),以致最近開始興起的敏捷開發(fā)方法(Agile),他們展示出了在不同的時(shí)代軟件產(chǎn)業(yè)對(duì)于開發(fā)過程的不同的認(rèn)識(shí),以及對(duì)于不同類型項(xiàng)目的理解方法。</p><p> 注意區(qū)分軟件開發(fā)過程和軟件過程改進(jìn)之間的重要區(qū)別。諸如像ISO 15504, ISO
24、9000, CMM, CMMI這樣的名詞闡述的是一些軟件過程改進(jìn)框架,他們提供了一系列的標(biāo)準(zhǔn)和策略來指導(dǎo)軟件組織如何提升軟件開發(fā)過程的質(zhì)量、軟件組織的能力,而不是給出具體的開發(fā)過程的定義。</p><p><b> 軟件工程的發(fā)展方向</b></p><p> “敏捷開發(fā)”(Agile Development)被認(rèn)為是軟件工程的一個(gè)重要的發(fā)展。它強(qiáng)調(diào)軟件開發(fā)應(yīng)當(dāng)是
25、能夠?qū)ξ磥砜赡艹霈F(xiàn)的變化和不確定性作出全面反應(yīng)的。</p><p> 敏捷開發(fā)被認(rèn)為是一種“輕量級(jí)”的方法。在輕量級(jí)方法中最負(fù)盛名的應(yīng)該是“極限編程”(Extreme Programming,簡(jiǎn)稱為XP)。而與輕量級(jí)方法相對(duì)應(yīng)的是“重量級(jí)方法”的存在。重量級(jí)方法強(qiáng)調(diào)以開發(fā)過程為中心,而不是以人為中心。重量級(jí)方法的例子比如CMM/PSP/TSP。</p><p> 面向方面的程序設(shè)計(jì)(A
溫馨提示
- 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫(kù)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 外文翻譯---軟件和軟件工程
- 外文翻譯---軟件和軟件工程
- 軟件工程專業(yè)外文翻譯
- [雙語(yǔ)翻譯]軟件工程外文翻譯--移動(dòng)應(yīng)用軟件工程研究的未來趨勢(shì)
- [雙語(yǔ)翻譯]軟件工程外文翻譯--移動(dòng)應(yīng)用軟件工程研究的未來趨勢(shì)(英文)
- [雙語(yǔ)翻譯]軟件工程外文翻譯--移動(dòng)應(yīng)用軟件工程研究的未來趨勢(shì)中英全
- 2016年軟件工程外文翻譯--移動(dòng)應(yīng)用軟件工程研究的未來趨勢(shì)
- 2016年軟件工程外文翻譯--移動(dòng)應(yīng)用軟件工程研究的未來趨勢(shì).DOCX
- 2016年軟件工程外文翻譯--移動(dòng)應(yīng)用軟件工程研究的未來趨勢(shì)(英文).PDF
- 外文翻譯--《軟件工程-實(shí)踐者的研究方法》
- 軟件工程外文翻譯--在ios上的即時(shí)opencv
- 軟件工程外文翻譯--在ios上的即時(shí)opencv
- 軟件工程外文翻譯--在ios上的即時(shí)opencv(譯文)
- 軟件工程外文翻譯--在ios上的即時(shí)opencv(英文)
- 軟件工程外文翻譯--在iOS上的即時(shí)OpenCV(譯文).doc
- 軟件工程外文翻譯--在iOS上的即時(shí)OpenCV(英文).pdf
- 軟件工程
- 軟件工程外文翻譯--在iOS上的即時(shí)OpenCV(譯文).doc
- 軟件工程外文翻譯--在iOS上的即時(shí)OpenCV(英文).pdf
- 外文翻譯--軟件工程之需求分析和系統(tǒng)性能評(píng)價(jià)
評(píng)論
0/150
提交評(píng)論