培養(yǎng)目標:軟件工程專業(yè)培養(yǎng)面向國民經(jīng)濟信息化建設和發(fā)展的需要,培養(yǎng)具有扎實的計算機應用理論和知識基礎,掌握軟件工程領域的前沿技術和軟件開發(fā)方法,具備較強的軟件項目的系統(tǒng)分析、設計、開發(fā)和測試能力,能夠按工程化的原則和方法從事軟件項目開發(fā)和管理的高級工程技術人才。
主要課程:離散數(shù)學、面向?qū)ο蟪绦蛟O計、數(shù)據(jù)結構、數(shù)據(jù)庫原理、操作系統(tǒng)、計算機網(wǎng)絡、軟件工程、軟件過程與管理、軟件測試技術、軟件質(zhì)量管理、軟件項目管理等。
畢業(yè)去向:軟件工程專業(yè)畢業(yè)生主要在信息產(chǎn)業(yè)和國民經(jīng)濟部門從事信息系統(tǒng)研究、分析、設計、開發(fā)和測試以及軟件工程項目的組織和管理工作,也可考取計算機科學與技術專業(yè)的碩士研究生。
軟件工程專業(yè)是今后的熱門,就業(yè)前景非常好!目前軟件工程9個專業(yè)的內(nèi)容和就業(yè)情況如下:
1 可視化編程
掌握程序設計方法及可視化技術,精通一種可視化平臺及其軟件開發(fā)技術。獲取Delphi程序員系列、Java初級或VB開發(fā)能手認證。
就業(yè)方向:企業(yè)、政府、社區(qū)、各類學校等可視化編程程序員。
2 WEB應用程序設計
具有美工基礎和網(wǎng)頁動畫設計能力,掌握交互式網(wǎng)頁程序的設計技術,能進行網(wǎng)站建設和維護。獲取Macromedia多媒體互動設計師或Delphi初級程序員或Delphi快速網(wǎng)絡開發(fā)工程師認證。
就業(yè)方向:企業(yè)、政府、社區(qū)、各類學校等WEB應用程序員。
3 軟件測試掌握軟件測試的基本原理、方法和組織管理,精通軟件測試工具。獲取ATA軟件測試工程師或Delphi初級程序員或Java初級程序員認證。
就業(yè)方向:企業(yè)、政府、社區(qū)、各類學校等軟件測試員。
4 數(shù)據(jù)庫管理
能應用關系范式進行數(shù)據(jù)庫設計,精通SQL語言,勝任數(shù)據(jù)庫服務器管理與應用工作。獲取Oracle數(shù)據(jù)庫管理或SQL Server數(shù)據(jù)庫應用或Windows XP應用認證。
就業(yè)方向:企業(yè)、政府、社區(qū)、各類學校等部門的中、大型數(shù)據(jù)庫管理員。
5 圖形圖像制作
精通國際上流行的圖形/圖像制作工具(如CorelDraw、Photoshop、Pagemaker等)。獲取平面設計師相關的認證。
就業(yè)方向:廣告制作公司、建筑設計公司、包裝裝璜設計公司、居室裝修公司、出版印刷公司。
6 網(wǎng)絡構建技術
熟悉網(wǎng)絡結構和組網(wǎng)方式,掌握建網(wǎng)方法,能利用工具分析和排除常見網(wǎng)絡故障。獲取Cisco路由配置或華為網(wǎng)絡工程或AMP應用工程師認證。
就業(yè)方向:企業(yè)、政府、社區(qū)、各類學校等網(wǎng)絡構建工程師。
7 網(wǎng)絡系統(tǒng)管理
掌握網(wǎng)絡系統(tǒng)管理的基本知識與應用技能,能進行網(wǎng)絡系統(tǒng)的安全設置。獲取Window2000 Server或TurboLinux TLCE或Cisco路由配置專家認證。
就業(yè)方向:企業(yè)、政府、社區(qū)、各類學校等網(wǎng)絡系統(tǒng)管理員。
8 多媒體制作
具有多媒體程序設計與多媒體制作策劃的能力?;菊莆彰嫦?qū)ο蟪绦蛟O計與建模、造型設計、場景設計、分鏡頭原理等技能。獲取多媒體設計師相關的認證。
就業(yè)方向:多媒體設計與制作公司、動畫美術制作出版公司、廣告制作公司。
9 計算機辦公應用
精通辦公自動化應用與管理,熟悉服務器的安裝、管理和維護,基于應用服務器的相關服務和軟件系統(tǒng),具備對服務器的網(wǎng)絡安全設置、郵件、網(wǎng)頁發(fā)布、FTP、OA、BBS等系統(tǒng)的應用和維護能力。就業(yè)方向:企業(yè)、政府、社區(qū)、各類學校等系統(tǒng)管理
軟件工程師需要學習以下知識:
(1) 熟悉計算機系統(tǒng)的基礎知識;
(2) 熟悉網(wǎng)絡操作系統(tǒng)的基礎知識;
(3) 理解計算機應用系統(tǒng)的設計和開發(fā)方法;
(4) 熟悉數(shù)據(jù)通信的基礎知識;
(5) 熟悉系統(tǒng)安全和數(shù)據(jù)安全的基礎知識;
(6) 掌握網(wǎng)絡安全的基本技術和主要的安全協(xié)議與安全系統(tǒng);
(7) 掌握計算機網(wǎng)絡體系結構和網(wǎng)絡協(xié)議的基本原理;
(8) 掌握計算機網(wǎng)絡有關的標準化知識;
(9) 掌握局域網(wǎng)組網(wǎng)技術,理解城域網(wǎng)和廣域網(wǎng)基本技術;
(10) 掌握計算機網(wǎng)絡互聯(lián)技術;
(11) 掌握TCP/IP協(xié)議網(wǎng)絡的聯(lián)網(wǎng)方法和網(wǎng)絡應用服務技術;
(12) 理解接入網(wǎng)與接入技術;
(13) 掌握網(wǎng)絡管理的基本原理和操作方法;
(14) 熟悉網(wǎng)絡系統(tǒng)的基本性能測試和優(yōu)化技術,以及可靠性設計技術;
(15) 理解網(wǎng)絡應用的基本原理和技術;
(16) 理解網(wǎng)絡新技術及其發(fā)展趨勢;
(17) 了解有關知識產(chǎn)權和互聯(lián)網(wǎng)的法律、法規(guī);
(18) 正確閱讀和理解本領域的英文資料。
軟件工程師英文是Software Engineer,是從事軟件職業(yè)的人員的一種職業(yè)能力的認證,通過它說明具備了工程師的資格。軟件工程師是從事軟件開發(fā)相關工作的人員的統(tǒng)稱。
它是一個廣義的概念,包括軟件設計人員、軟件架構人員、軟件工程管理人員、程序員等一系列崗位,工作內(nèi)容都與軟件開發(fā)生產(chǎn)相關。軟件工程師的技術要求是比較全面的,除了最基礎的編程語言(C語言/C++/JAVA等)、數(shù)據(jù)庫技術(SQL/ORACLE/DB2等)等,還有諸多如JAVASCRIPT、AJAX、HIBERNATE、SPRING等前沿技術。此外,關于網(wǎng)絡工程和軟件測試的其他技術也要有所涉獵。
軟件工程師要看呢,是.NET的還是JAVA的。
下面提供一些資料希望你喜歡 35公里 寫道 "出色的軟件工程師善用設計模式,勤于代碼重構,編寫單元測試,并對簡單有宗教般的追求。除了這些,優(yōu)秀的軟件工程師還要通曉10個概念,這10個概念超越了編程語言與設計模式,軟件工程師應當從更廣的范圍內(nèi)明白這些道理(全文閱讀): 接口 (Interfaces ) 慣例與模板 (Conventions and Templates) 分層 (Layering ) 算法的復雜性 (Algorithmic Complexity) 散列法 (Hashing ) 緩存 (Caching ) 并發(fā) (Concurrency ) 云計算(Cloud Computing ) 安全(Security ) 關系數(shù)據(jù)庫 (Relational Databases ) 10. 關系數(shù)據(jù)庫 (Relational Databases) 關系數(shù)據(jù)庫因為在大規(guī)模 Web 服務上缺乏可擴充性而頗受微詞,然而,關系數(shù)據(jù)庫仍然是近20年來計算機技術中最偉大的成就。
關系數(shù)據(jù)庫對處理訂單,公司數(shù)據(jù)方面有著出色的表現(xiàn)。 關系數(shù)據(jù)庫的核心是以記錄表示數(shù)據(jù),記錄存放在數(shù)據(jù)庫表,數(shù)據(jù)庫使用查詢語言(SQL)對數(shù)據(jù)進行搜索與查詢,同時,數(shù)據(jù)庫對各個數(shù)據(jù)表進行關聯(lián)。
數(shù)據(jù)庫的標準化技術(normalization)講的是使用正確的方式對數(shù)據(jù)進行分存以降低冗余,并加快存取速度。 9. 安全 (Security) 隨著黑客的崛起與數(shù)據(jù)敏感性的上升,安全變得非常重要。
安全是個廣義的概念,涉及驗證,授權與信息傳輸。 驗證是對用戶的身份進行檢查,如要求用戶輸入密碼。
驗證通常需要結合 SSL (secure socket layer)進行;授權在公司業(yè)務系統(tǒng)中非常重要,尤其是一些工作流系統(tǒng)。最近開發(fā)的 OAuth 協(xié)議可以幫助 Web 服務將相應信息向相應用戶開放。
Flickr 便使用這種方式管理私人照片和數(shù)據(jù)的訪問權限。 另外一個安全領域是網(wǎng)絡設防,這關系到操作系統(tǒng),配置與監(jiān)控。
不僅網(wǎng)絡危險重重,任何軟件都是。Firefox 被稱為最安全的瀏覽器,仍然需要頻頻發(fā)布安全補丁。
要為你的系統(tǒng)編寫安全代碼就需要明白各種潛在的問題。 8. 云計算 (Cloud Computing) RWW 最近的關于云計算的文章 Reaching For The Sky Through Compute Clouds 講到了云計算如何改變大規(guī)模 Web 應用的發(fā)布。
大規(guī)模的并行,低成本,與快速投入市場。 并行算法發(fā)明以來,首先迎來的是網(wǎng)格計算,網(wǎng)格計算是借助空閑的桌面計算機資源進行并行計算。
最著名的例子是 Berkley 大學的 SETI@home 計劃,該計劃使用空閑的 CPU 資源分析太空數(shù)據(jù)。金融機構也大規(guī)模實施網(wǎng)格計算進行風險分析。
空閑的資源,加上 J2EE 平臺的崛起,迎來了云計算的概念:應用服務虛擬化。就是應用按需運行,并可以隨著時間和用戶規(guī)模而實時改變。
云計算最生動的例子是 Amazon 的 Web 服務,一組可以通過 API 進行調(diào)用的應用,如云服務(EC2),一個用來存儲大型媒體文件的數(shù)據(jù)庫(S3),索引服務(SimpleDB),序列服務(SQS)。 7. 并發(fā) (Concurrency) 并發(fā)是軟件工程師最容易犯錯的地方,這可以理解,因為我們一直遵從線形思維,然而并發(fā)在現(xiàn)代系統(tǒng)中非常重要。
并發(fā)是程序中的并行處理,多數(shù)現(xiàn)代編程語言包含內(nèi)置的并發(fā)能力,在 Java,指的是線程。關于并發(fā),最經(jīng)典的例子是“生產(chǎn)/消費”模式,生產(chǎn)方生產(chǎn)數(shù)據(jù)和任務,并放入工作線程消費或執(zhí)行。
并發(fā)的復雜性在于,線程需要經(jīng)常訪問共同數(shù)據(jù),每個線程都有自己的執(zhí)行順序,但需要訪問共同數(shù)據(jù)。Doug Lea 曾寫過一個最復雜的并發(fā)類,現(xiàn)在是 core Java 的一部分。
6. 緩存(Caching) 緩存對現(xiàn)代 Web 程序不可或缺,緩存是從數(shù)據(jù)庫取回,并存放在內(nèi)存中的數(shù)據(jù)。因為數(shù)據(jù)庫直接存取的代價非常高,將數(shù)據(jù)從數(shù)據(jù)庫取回并放在緩存中訪問就變得十分必要。
比如,你有一個網(wǎng)站,要顯示上周的暢銷書,你可以從數(shù)據(jù)將暢銷書榜一次性取回放在緩存中,而不必在每次訪問時都去數(shù)據(jù)庫讀數(shù)據(jù)。 緩存需要代價,只有最常用的內(nèi)容才可以放入緩存。
很多現(xiàn)代程序,包括 Facebook,依靠一種叫做 Memcached 的分布式緩存系統(tǒng),該系統(tǒng)是 Brad Firzpatrick 在工作于 LiveJournal 項目時開發(fā)的,Memcached 使用網(wǎng)絡中空閑的內(nèi)存資源建立緩存機制,Memcached 類庫在很多流行編程語言,包括 Java 和 PHP 中都有。 5. 散列法(Hashing) Hashing 的目的是加速訪問速度。
如果數(shù)據(jù)是序列存儲的,從中查詢一個項的時間取決于數(shù)據(jù)列的大小。而散列法對每一個項計算一個數(shù)字作為索引,在一個好的 Hashing 算法下,數(shù)據(jù)查找的速度是一樣的。
除了存儲數(shù)據(jù),散列法對分布式系統(tǒng)也很重要。統(tǒng)一散列法(uniform hash )用來在云數(shù)據(jù)庫環(huán)境下,在不同計算機之間分存數(shù)據(jù)。
Google 的索引服務就是這種方法的體現(xiàn),每一個 URL 都被散列分布到特定計算機。 散列函數(shù)非常復雜,但現(xiàn)代類庫中都有現(xiàn)成的類,重要的是,如何對散列法進行細調(diào)以獲得最好的性能。
4. 算法的復雜性 (Algorithmic Complexity) 關于算法的復雜性,軟件工程師需要理解這樣幾件事。第一,大O標記法(big O notation);第二,你永遠都不應該使用嵌套式循環(huán)(循環(huán)里面套循環(huán)),你應該使用 Hash 表,數(shù)組或單一循環(huán);第三,如今優(yōu)秀類庫比比皆是,。
軟件工程是一門研究用工程化方法構建和維護有效的、實用的和高質(zhì)量的軟件的學科。
它涉及到程序設計語言,數(shù)據(jù)庫,軟件開發(fā)工具,系統(tǒng)平臺,標準,設計模式等方面。 在現(xiàn)代社會中,軟件應用于多個方面。
典型的軟件比如有電子郵件,嵌入式系統(tǒng),人機界面,辦公套件,操作系統(tǒng),編譯器,數(shù)據(jù)庫,游戲等。同時,各個行業(yè)幾乎都有計算機軟件的應用,比如工業(yè),農(nóng)業(yè),銀行,航空,政府部門等。
這些應用促進了經(jīng)濟和社會的發(fā)展,使得人們的工作更加高效,同時提高了生活質(zhì)量。 軟件工程師是對應用軟件創(chuàng)造軟件的人們的統(tǒng)稱,軟件工程師按照所處的領域不同可以分為系統(tǒng)分析員,軟件設計師,系統(tǒng)架構師,程序員,測試員等等。
人們也常常用程序員來泛指各種軟件工程師。
聲明:本網(wǎng)站尊重并保護知識產(chǎn)權,根據(jù)《信息網(wǎng)絡傳播權保護條例》,如果我們轉(zhuǎn)載的作品侵犯了您的權利,請在一個月內(nèi)通知我們,我們會及時刪除。
蜀ICP備2020033479號-4 Copyright ? 2016 學習鳥. 頁面生成時間:3.105秒