Q1:軟件工程專業的學習(研究)對象是什么?
軟件工程是采用工程的概念、原理、技術、和方法來開發、維護軟件,把管理技術與開發技術有效地結合起來。本專業旨在培養具有良好軟件設計能力、國際交流能力、管理與溝通能力和職業發展能力的復合型、應用型高層次軟件工程人才,使學生畢業后能夠從事軟件系統的分析設計與開發、項目管理以及軟件系統的運行維護等方面的工作。
具體而言,學生主要學習數學、科學和人文社會科學基礎知識,計算機與軟件工程方面的基本理論和基本知識,接受系統設計與分析、軟件項目管理、團隊合作與交流等方面能力的訓練。畢業生應達到以下要求:
1、具有寬厚的數學、科學和工程知識基礎,較好的人文社會科學基礎;
2、掌握本專業領域必要的技術基礎和理論知識,包括程序設計技術、系統平臺技術、軟件工程方法等;
3、具有軟件系統分析與設計的初步能力,具備軟件系統的實現能力以及測試能力,具有使用軟件開發工具的能力;
4、了解本領域的技術發展趨勢,了解相關應用領域的基本知識,具有良好的獲取新知識與技術的能力;
5、能認識和遵循職業規范與社會倫理道德,具有職業責任感;
6、有一定的組織、溝通與職業發展能力,國際跨文化交流能力。
Q2:本科核心課程有哪些?
軟件工程專業的核心課程有:離散數學及其應用、數據結構基礎、高級數據結構與算法分析、面向對象程序設計、計算機系統原理、數據庫系統原理、操作系統原理、操作系統分析與實驗、軟件工程基礎、計算機網絡基礎項目管理與案例分析、軟件需求分析與設計、軟件體系結構、人機交互工程。
除此之外,軟件工程專業還結合學院的科研和應用特色,貼合目前技術和就業的熱點,聯合知名企業開設了軟件開發技術、金融信息技術、信息安全技術三個應用領域方向課程。如今,工程專業非常重視國際化的人才培養,學院的主干課程都采用雙語教學,并有多門全英課程可供學生選擇。
軟件工程專業非常重視實踐,在大一的暑假安排了短學期課程實踐,加強大家對于基礎編程技術和工具的掌握;在大二暑假安排了認識實習,由學院組織學生到各種規模、各種類型、各種所有制地IT企業和金融公司去實地走訪,體會IT企業的發展現狀和對個人需求的特點,幫助學生后續的選課和自我定位;在大三暑假安排了項目實訓,學院內部的實訓基地模擬運行一個IT企業,讓學生們提前體驗在企業上班的任務分配、檢查和考核,幫助學生適應真正的企業工作環境;在大四的一整年,學院將幫助同學們聯系好實習單位,或者是到國外公司、高校、進行長時間帶薪實習,提高實干能力。
Q3:學軟件工程專業的學生需要具備什么特質?
從技術和興趣的角度上看,如果你喜歡搭積木(組裝產品),但對于做積木塊本身不是很有興趣,那么你會對軟件工程專業很有興趣。從個性和人生規劃的角度上看,如果你喜歡在商界叱咤風云的感覺,喜歡跟著一批志同道合地伙伴一起創業,喜歡與人溝通,那么你會對軟件工程專業很有興趣。
Q4:軟件工程專業和計算機科學與技術專業的區別是什么?
由于這兩個專業都與計算機和編程技術相關,因此很多同學有這個疑問。確實,這兩個專業都需要掌握計算機科學的基礎知識以及編程的基本功,前兩年的課程非常相似(除了軟件工程專業對硬件的知識要求少一點)。但是這兩個專業的關注點有很大不同。計算機專業學習技術,是為了改進技術,做出更好的技術,研究出更好的理論。扎實地知道計算機底層是怎么工作的,才能研究出更好地解決問題,更關注開發大型軟件系統的組織方法和流程。因此,會有專門的系列課程,訓練學生詳細了解軟件工程的各個環節。
用建筑行業打比方:計算機專業研究物理、力學理論,研究新型材料;而軟件工程專業則聽取客戶的蓋房要求,選擇合適的材料和技術,組織成百上千的工人把房子蓋起來。兩者工作的難度和重心是不同的。從同學們熟知的偶像角度打個比方,計算機專業攢夠圖靈,而軟件工程專業則仰慕蓋茨和喬布斯。
Q5:社會上是否有對這個專業的認知誤區?社會生活中有哪些問題需要通過軟件工程專業的人來解決?
有些人認為,學計算機相關的專業是青春飯,到了30多歲后就沒有發展前途了,總不能一輩子就當個程序員吧?這是一個很大的認識誤區。軟件工程專業更關注開發大型軟件系統的組織方法和流程,培養學生掌握大型軟件開發和管理的能力,隨著經驗和能力的增長,他們更能勝任越來越大的項目的組織和管理,成為千百程序員的管理者。
還有人認為,現在懂編程的人太多了,凡是理工專業都學過編程,抓來就能用。但是,軟件工程專業所掌握的大型軟件開發的組織、軟件和管理技術,不是普通的編程技術可以比擬的。打個比方說,普通的工人稍微訓練一下,讓他蓋個豬圈、砌堵墻沒問題,但是讓他去造一個摩天大樓就不行了。而軟件工程培養的是有能力設計和制造摩天大樓的人才。
Q6:軟件工程專業的畢業生的就業主要面向哪些行業,哪些職業種類?
軟件工程專業的畢業生主要面向兩類就業崗位:一類是各種規模的IT企業,從事項目管理、軟件設計和質量保證等相關崗位;另一類是進入到對IT技術依賴度很高的金融、電信等行業的IT部門,從事這些行業的業務軟件的開發、測試、維護等相關工作。
Q7:軟件工程專業最大的優勢是什么?
軟件的規模和復雜度在不斷上升,僅僅掌握編程技術已經無法勝任當今的軟件工程師。目前,學習編程的學校和專業很多,但是只有軟件工程專業通過完善的培養體系,教會學生通過團隊合作,構建復雜、大型軟件的能力,這些非常有益于學生畢業后在軟件產業占據領導地位。