為什麼軟件工程?
為什麼要提出軟件工程
1.軟件
要知道什麼是軟件工程,當然得先知道什麼是軟件.軟件就是計算機系統中與硬件相互依存的另一部分,它是包括程序,數據和相關文檔的完整組合.注意:軟件不僅包括程序,還包括文檔.所以做軟件也不僅僅是編程序,還需要寫文檔,後者應該提到與前者並重的地位。
2.軟件危機
從50年代到60年代,人們曾經把程序設計看作是一種任人發揮創造才能的技術領域,只要程序能得到正確的結果,程序的寫法可以不受任何約束.人們認為好的程序應該是運用了許多與眾不同的技巧和竅門的程序.這種觀點好象把編程序當成了一種藝術,因為藝術總是宣揚個性,喜歡與眾不同.(實際上,編程序的確可以看做是一種藝術,不過這種藝術是在遵循一定範式和準則這個前提下的藝術,個人觀點) 然而,隨著軟件的規模越來越大,人們在實踐中發現隨心所欲編寫的程序給維護,修改帶來了很大的麻煩.程序晦澀難懂,不同程序員,不同時期編寫的模塊難以接口.因此,軟件開發遇到了很大的困難.往往投入很大,收穫甚微.做的軟件漏洞百出,或無人使用.這就是軟件危機.
於是,人們在茫然中,漸漸的拋棄了原先的觀點,開始探索一種新的軟件開發的思想.這就導致了軟件工程的產生.程序也從按個人意圖創造的"藝術品"轉化為一種工程化的產品。
3.軟件工程的定義
軟件工程的定義很多,如:“軟件工程是開發,運行,維護和修復軟件的系統方法”;“建立並使用完善的工程化原則,以較經濟的手段獲得能在實際機器上有效運行的可靠軟件的一系列方法”等等。
定義是抽象的,掌握精髓才是關鍵。對軟件工程的最好理解就是“只可意會,不可言傳”,試問各位看官,您們都學過化學,但化學的定義是什麼呢?
但是,為了更快的意會,有必要在此廢話幾句。軟件工程可以看作是一種方法,一種思想,就是指導大家如何更好地開發軟件的方法和原則。軟工也可看作是一種工具,就是幫助大家分析,設計軟件的工具,如:流程圖,數據字典,以及一些輔助軟件等。軟工還可以看做是一種過程,就是軟件開發的過程。實際上,方法,工具,過程三者是軟件工程的三要素.
我是大一軟件工程專業的新生呢,上面的我從網上找來的,覺得挺好的,再者,說簡略一點就是,我認為是在做軟件開發的過程中加入了工程化的思想,使軟件開發,管理得更好,質量更高。
為什麼提出軟件工程的理由
為了更方便,系統更強大,更實用。
為什麼需要軟件工程理論?
?匭路⑾秩砑?こ痰謀局省?acobson等撰寫了三篇文章詳細闡述Semat思想,本刊將陸續刊載,本文是其中第二篇。
這種行為可以從很多地方看出來,很多團隊草率地丟棄昂貴的過程和工具的投資,甚至在嘗試它們之前。每個項目都採用新方法。每次工作發生變化,在手頭真正的工作取得進展前,他們必須學習新方法。這是沒有效率的,人們不能從經驗中學習,因為他們永遠從頭開始。底線是,沒有什麼新事物能夠被適當地固定下來即使經過幾種現代軟件開發趨勢,最流行的軟件開發方法仍然是規範型的瀑布開發或自由hacking。作為一個行業,我們沒有什麼真正可以堅守的東西,而且一切似乎沒有什麼變化。
最新橫掃行業的趨勢是敏捷。現在,我們可以很明確地說,敏捷運動對軟件產業做出了非常積極的 [1] 貢獻。它提醒我們,軟件開發中,人是第一位的,也是最重要的。事實上,這不是什麼新觀念,但這是重要的,而且這一點似乎被以前更加技術導向的趨勢所忽視,比如說面向對象和Java編程。通過展現一系列優點,敏捷宣言創造了某種強健和適應力強的東西,可以抵擋下一次趨勢帶來的變革風浪。[2]許多聲稱支持敏捷哲學的敏捷方法,卻沒能做到這一點,這是非常讓人遺憾的。對一項將人的價值放在過程和工具之上的運動來說,這確實帶給了我們很多新的過程和工具。其中的大部分已經顯示出效率,通過將團隊帶回到之前完成的開發軟件工作。但在重新聚焦到這上面之前,許多人已經迷失或迷茫,因為將新術語引入舊事物後,讓人覺得這一切似乎是全新的。這個對舊思想的不斷重新包裝和品牌重樹讓軟件開發團隊的工作方式劇烈搖擺。對他們的工作和產品任意命名,而不是讓人們遠離浪費時間的工作,將精力重新聚焦在對高質量軟件的開發上。
即使有些方法能夠像敏捷哲學一樣正確、有益,但相關的信息可能會在搖擺和炒作中丟失。我們已經開始看到對敏捷的反彈,我們擔心的是利益將會丟失,當早期使用者投入下一個趨勢,而晚期大眾則重新主張自己的權利,拒絕採納這些顯然不再流行的東西。
有可能會發生的事情是,我們增加更多時髦的詞彙和相互衝突的名詞,最終為這一切喧囂所累!
很顯然,我們需要停止對流行和永遠令人失望的簡單答案的追逐,同時不能阻礙創新和新想法。為了做到這一點,人們需要停止對舊思想不斷重新包裝和品牌重樹。相反,他們應側重於幫助人們瞭解如何建立優秀的軟件。但我們如何才能重點推動這一變化?我們認為,這個理論就在眼前我們要做的只是抓住它。首先,我們應該從所有流行的方法、過程和實踐開始,並從中提煉出軟件工程的真理。然後,我們可以描述和捕捉一個最小集合的基本概念,以最小獨立過程的形式我們將這個本質物的最小集合稱之為內核。
然後以這個內核為出發點,我們可以分析現有的過程和方法,並確定它們所包含的實踐。從內核開始,我們可以找到一種描述實踐的方式,使它們能夠進行比較和結合。
現在所說的這種創造理論的方法本身並不是理論。這是我們已經做過的事情。通過研究一些方法,包括XP、Scrum和統一過程,我們的團隊已經確定了20多個內核元素,我們總是做的事情或產生的東西。從表面上看,在這些被研究的方法和我們的工作方式中,有可能會出現很大差異;但在實質上,它們有相同的DNA。舉例來說,你可以捕捉功能或用例或用戶故事的條件,你可以在沒有生命週期與統一過程的生命週期,甚至瀑布生命週期(就像有些人仍然在堅持的那樣)的情況下使用這些條件。這些方法肯定有一個共同基礎,能夠以小的簡單的內核要素集的形式被捕獲。
現在,還不能冒失地聲稱,我們的內核提供了必要的理論。需要有比我們更多、更大的頭腦來做到這一點。但是,我們會將它作為一項證據,證明它......
為什麼軟件工程要招很多人
軟件工程師相對簡單,而且比較新潮,所以學的人多,各大公司很容易就招聘到了人才。
另一方面,目前軟件工程師並不成熟,很多公司對軟件工程師要求並不高,所以很多水平一般的人就可以擔任要職,導致各大公司都不是很缺。
我建議你如果打算學軟件工程師,那就努力成為裡面的精英,相信就業前景還是相當不錯的。
什麼叫做軟件工程?為什麼要採用軟件工程方法開發大型軟件?
軟件工程包括兩方面內容:軟件開發技術和軟件項目管理。軟件開發技術包括軟件開發方法學、軟件工具和軟件工程環境。軟件項目管理包括軟件度量、項目估算、進度控制、人員組織、配置管理、項目計劃等。軟件工程是六十年代末為了解決軟件危機而出現的一門學科,一般來講它包含開發技術與管理技術。而軟件過程是隨作軟件工程的開展,特別是近年來系ISO900系列與CMM方法的實踐而逐漸時髦的一個概念。它基於質量是做出來的,而非檢查出來的現代質量理論。在規範化的軟件生產中,離開了軟件過程是不可思議的。區別在於“工程”和“過程”的不同,軟件工程是指將系統化的、規範的、可度量的方法應用於軟件的開發、運行和維護的過程,即將工程化應用於軟件過程。工程著重應用,軟件工程一定是軟件過程的一個“產出”,一個個性化的實例!工程也是由過程組成的。硬件的一些功能一目瞭然,形象化,就在那兒,更容易理解,比如蓋房子的磚,賽車的輪子,數字電路中的接口電路,以某種方式連結在一塊就好了軟件工程的結構開發思想,是在你對語言又很深理解的基礎上,實現一些功能模塊,使這些模塊的使用者以某種方式把它們放在一塊就安全高效的實現了所要求的功能補充: 隨著企業信息化的深入,對軟件項目的需求日益複雜,並會產生頻繁的變更, 傳統的個人英雄主義的開發方式已經越來越不能適應發展的需要。從軟件企業的發展戰略來說,如何在技術日新月異和人員流動頻繁的情況下,建立本公司的知識庫及經驗庫,把企業中分散的隱性的財富,即個人的知識及經驗,轉變為企業的知識和經驗,以便提高工作效率,縮短產品週期,加強企業的競爭力,具有至關重要的作用。採用科學的管理思想,輔之以先進的管理工具,已經成為企業未來發展必不可少的手段。 如果軟件開發機構不能有效地控制和使用軟件資源,則在面對風險時就可能導致軟件開發活動出現各種問題。由於不能很好地管理軟件過程,會使得一些好的開發方法和技術沒有起到預期的作用。項目的成功往往是通過工作組的傑出努力來達到的,這種僅僅建立在依賴特定高素質開發人員基礎上的成功,不能保證全組織的持續穩定的軟件生產和質量的長期提高。因此,要降低軟件開發過程的風險、保證軟件產品質量,就必須加強管理,而 軟件工程方法開發大型軟件是企業過程改善和能力提升的基礎。 梵谷的左耳 的感言: 謝謝你幫了我大忙!
為什麼需要軟件工程
額,這麼跟你說鄲我是10級軟件工程的學生,正如所說,軟件工程都貴,因為要投入大量的設備。所以收費自然教其他專業貴,如果你很喜歡軟件的話(並不
軟件工程專業怎麼樣?
軟件工程這個專業還是不錯的,不過你還要考慮到學校的因素 因為同是軟件工程,每個學校的培養課程、培養方案、硬件軟件設施……都可能完全不同!
為什麼說軟件工程專業是青春飯
兩個方面來說,一個是這個行業的知識更新換代特別快,例如開發的工具,更新換代很快,在從一個方面說就是,很累,年輕的時候也許你可以熬夜啊,你可以加班,但是隨著年齡增長你可能就撐不住了。
軟件工程專業為何學費高?
我是軟件工程的學生,我可以幫你回答下這個問題。全國有37所示範性軟件學院,學費都比普通專業貴,原因主要有如下幾點:
1,與計算機專業的相比,我們專業的課時費比其他專業高很多。這是為了吸引有能力的老師來軟件學院講課,包括請各種外教;
2,提供了比計算機專業更好的實踐環境。我們的實踐課程非常多,並且在一定時候需要我們到公司或外邊的專業計算機培訓機構進行實訓,我現在就正在中軟進行培訓。學院會為我們提供了更方便的實習條件,只要你能力足夠,在大三、大四期間直接去百度、微軟、IBM等公司去實習都可以的,當然該回來考試的時候你還得回。
3,軟件工程專業就是為了緩解軟件行業的人才缺失問題,專注於培養實踐能力強的學生,而計算機專業更注重理論知識。
總之一句話,你好好學,前途很光明,我們學校軟件學院就業比計算繫好。軟件學院的學費問題不大,大學不僅提供了很完善的綠色通道,也有很多獎學金。並且我們學院提供了比其他學院更多的獎學金。學院排名前10%的人通過各種獎學金把學費賺回來沒有問題。
另外給你建議,大學期間能力範圍內,一定多多參加各種比賽,切記!
為什麼軟件工程學費高
原因主要有如下幾點:
1、專業的課時費比其他專業高很多。這是為了吸引有能力的老師來軟件學院講課,包括請各種外教;
2、提供了比計算機專業更好的實踐環境。實踐課程非常多,並且在一定時候需要到公司或外邊的專業計算機培訓機構進行實訓。需要一定的花費。
3、軟件工程專業就是為了緩解軟件行業的人才缺失問題,專注於培養實踐能力強的學生,而計算機專業更注重理論知識。
4、因為大三大四的專業課會有很多使用的軟件或者工具以及後兩年使用的大多為國外教材,純英文,需要給外國或國內的公司交版權使用費或專利費。
5、軟件學院是20世紀初教育產業化的產物。國家當時在一些大學試點建立軟件學院和開設軟件工程專業,其思路就是教學與實踐相結合。作為教育體制改革的試點,軟件學院要自主承擔相當多的費用,而不像傳統專業那樣主要由國家支持。
6、課程引入,這個花費很大。引入名校的課程體系。
7、資源,有許多類似英語教學的課程。每年從國際上請一些人來開課。