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