2018軟體工程碩士開題報告範文(精選)

1.文獻綜述

①國內外現狀

上世紀90年代至今,以internet和ethernet區域網路為代表的計算機網路得到了飛速的發展,並且已經成為實現信息化社會的命脈和發展互聯的知識經濟的重要通信設施,對社會生活的很多方面以及對社會經濟的發展已經產生不可估量的影響[1]。同時,以asp.net、jsp、和php為代表的web開發技術,以及以.net、j2ee框架為代表的伺服器端軟體開發技術和模型飛速發展,使得各種類型的web站點已經深入人們的日常生活和工作,成為人們獲取信息和交流溝通的最主要平台之一。基於b/s (browser/server)模式的web套用系統因其在開發、部署、更新及維護方面的優勢,逐步代替了基於c/s(client/server)模式的應用程式,並被廣泛地套用於各種企業信息化套用系統之中。

XX年之後,以blog、tag、sns、rss、wiki等社會軟體的套用為核心,依據六度分隔、xml(extensible markup language,可擴展標記語言)以及ajax(asynchronous javascript and xml,異步javascript和xml)等新理論和技術實現網際網路新一代模式的web 2.0概念不斷地發展,使得如今的各種web應用程式更加注重用戶體驗與個性化。現階段主流的web開發技術包括了html、dhtml、java applet、javascript、vbscript、cgi、php、jsp、asp、asp.net、xml和web services等。

xml以sgml(標準通用標記語言)為基礎,並已經成為w3c推薦使用的標準,是整個web的基本結構和未來技術發展的基礎[2]。xml允許開發人員根據實際業務需求自定義標籤,彌補了html在可擴展性方面的不足。xml結構化地描述信息,使內容描述與現實方式相分離,已作為應用程式間的數據傳遞格式被廣泛套用。同時,xml可以很好地與現有的關係型資料庫相結合,將關係型數據與xml數據相互轉換,如今各大資料庫公司都改進了自己的產品,db2、sybase、oracle、informix和微軟公司的sql server XX均提供了對xml的支持[3]。

ajax是一種新的web開發方法或模式,使用客戶端腳本javascript與web伺服器實現數據互動,使得動態地更新web頁面,增強用戶體驗[4]。同時,ajax並不是一門新的語言或技術,它實際上是基於xhtml、css、dom、javascript、xml和xmlhttprequest幾項技術按一定的方式組合在一起共同協作中發揮各自的作用。ajax的工作原理相當於在客戶端瀏覽器和伺服器之間增加了一個ajax引擎的中間層,使用戶操作與伺服器回響異步化。

asp.net是微軟公司推出的一項以.net framework為基礎的動態web開發技術[5]。最新的asp.net正式版本已經隨著.net framework 3.5一起更新到asp.net 3.5,並融合了linq、lambda表達式、匿名類型等c#語言新特性[6],同時asp.net 3.5還提供了支持ajax技術的asp.net ajax構件技術[7]。

由於html、dhtml等標記語言在瀏覽器下對圖形、音頻、視頻等多媒體技術支持不足,並不能滿足用戶在web 2.0大環境下對web應用程式的最新需求,產生了以adobe公司發布的flash/flex、微軟公司發布的silverlight、sun公司發布的javafx等web瀏覽器外掛程式技術為代表的ria (rich internet application,富網際網路應用程式)概念[8]。其中silverlight是一款跨瀏覽器、跨平台,基於.net framework,用於實現下一代富媒體體驗和ria web應用程式的瀏覽器外掛程式技術[9]。silverlight中包含了wpf(windows presentation foundation, windows展現基礎)的技術特性,可以使用xaml (extensible application markup language,可擴展應用程式標記語言)語言創建融合了圖形、動畫、多媒體及其他的富客戶端特性的應用程式[10]。xaml是基於xml的、用於創建用戶界面元素的聲明式標記語言,提供了強大的矢量圖形開發支持。在系統開發中使用微軟expression blend 與visual studio進行聯合開發,提高系統開發效率,實現系統的快速構建。silverlight提供了基於http的跨域網路訪問支持。silverlight應用程式能訪問wcf、簡單對象訪問協定(soap)和asp.net ajax服務,並能接收xml、json和rss等格式的數據[11]。XX年7月,微軟公司正式發布了最新的silverlight 3.0。

在企業級套用架構方面,軟體工程領域已經從面向組件的架構方式發展為以web服務為基礎的面向服務架構(services-oriented architecture,soa)。soa將企業中各個應用程式封裝為可組合的、可訪問的、獨立的服務。soa具有技術與平xx立、低耦合、良好封裝性以及靈活性等特徵[12]。服務將業務邏輯以技術平台無關的、可交換的、可互操作的web服務的形式暴露給客戶端,降低了系統各部分之間的耦合性,提供了可維護的、健壯的、安全的分散式應用程式解決方案。soa中使用web服務描述語言(wsdl)和統一描述、發現和集成(universal description discovery and integration,uddi)實現服務元素的公開與查找[13],服務提供者與服務請求者通過基於xml的soap協定實現數據通信[14]。

在微軟公司發布的.net framework 3.0/3.5版本中,新加入了wcf(windows communication foundation, windows通信基礎)技術。wcf是windows平台下開發和部署分散式系統的新型面向服務編程模型[15]。wcf整合了.net remoting、web 服務、訊息佇列(msmq)、web服務增強(wse) 等分散式開發技術,可以實現跨應用程式域、進程和網路的數據通訊,是微軟.net framework 3.0中面向服務套用領域的一項新技術。wcf支持http、tcp、peer network、ipc和msmq等傳輸協定,支持單調服務、會話服務和單例服務的實例管理模式,支持請求/應答操作、單向操作和回調操作的訊息交換模式,支持傳輸安全、身份驗證和授權等安全管理方法,並支持分散式事務處理及服務的並發性管理[16]。wcf允許應用程式將功能以服務的方式提供給客戶端服務請求者,在實現業務邏輯封裝的同時,實現服務代碼與客戶端使用的技術與平台的解耦。

電力網路是保障國民經濟快速發展及人民生產生活正常進行的重要基礎設施[17]。我國通常將電網按所屬行政區域、網路拓撲結構或電氣特徵劃分為多個互聯的子網路,每個子網路擁有各自的調度控制中心。為保障各級、各區域電網的安全經濟運行及保證良好的電能質量,需要以提供電網實時運行數據的監控與數據採集(scada)系統為基礎,結合狀態估計計算、等值計算、潮流計算等電力分散式計算算法理論,開發高效、穩定、可視化的電力分散式計算系統,並通過使用具有電網主接線設備圖形化編輯、數據準備與顯示等功能的矢量圖形編輯系統,對變壓器、電網線路及其供電系統運行方式進行可視化地最佳化組合,以減少電網在供電過程中產生的不合理電網線損,實現電網的經濟運行,提高電網運行的效率和管理水平。

傳統矢量圖形編輯工具大多在單機或區域網路環境下運行。單機環境下,圖形數據完全存放於本地計算機中,很難進行遠程數據通訊。網路環境下的矢量圖形編輯系統大多數以c/s模式運行。雖然該類系統在實現圖形編輯功能的同時,可以實現系統數據集中存儲和遠程數據通訊的功能,但仍存在著開發、部署及升級維護困難等不足。同時,由於html、dhtml等標記語言對瀏覽器下圖形編輯功能支持的不足,以及http自身的無狀態連線方式等特點,基於b/s模式的矢量圖形編輯系統主要通過使用ajax技術,並結合可縮放矢量圖形(svg)技術來實現。但該技術仍存在多用戶設計環境下圖形數據共享的安全性、衝突檢測和消解等方面的不足[18]。因此,需要結合現有最新基於soa的企業級系統架構設計方法、基於ajax和ria的web開發技術、基於xml的面向服務軟體通信技術和資料庫訪問技術,以電網企業實現電網經濟運行時的電網主接線圖形顯示與編輯功能需求為套用背景,開發一個基於b/s模式的電網主接線圖形編輯系統。

②課題學術和實用意義

電力系統是關係到國家經濟建設快速發展及人民生活正常進行的重要基礎設施,在保證安全、可靠地持續供電並保證良好的電能質量的前提下,保證電力系統的經濟運行也十分的重要。電力網路是電力系統中輸送電能的重要基礎設施,電能在變化、輸送和分配過程中損耗絕對值也相當可觀,降低每生產一度電所消耗的能源和降低變換、輸送和分配時的損耗,具有極其重要的意義,因此電網企業還需要保證電力系統運行的經濟性。 本課題以電網企業實現電網的經濟運行為背景,研究並套用微軟公司最新面向ria 套用的silverlight 3.0技術、面向服務的wcf技術、linq數據訪問技術[19]、asp.net 3.5及asp.net ajax技術,並結合軟體設計模式設計開發一個基於b/s模式的、面向服務的電網主接線圖形編輯系統。本系統擬採用silverlight 3.0技術實現例如變壓器、母線、交流線、發電機等電力設備圖形元件及其在瀏覽器中的移動、縮放、連線、刪除等編輯功能,使電力企業或單位工作人員能對電網的拓撲結構及運行狀態的可視化操作,採用wcf服務技術實現電力設備數據在客戶端瀏覽器和伺服器之間的遠程通信,使用asp.net ajax技術實現電力設備數據的動態顯示和編輯功能的無刷新操作,使用linq數據訪問技術訪問後台資料庫管理系統中的電力數據。 系統的實現在滿足電網企業在實現電網經濟運行過程中對電網拓撲結構及電網設備數據進行可視化操作的功能需求的同時,通過採用面向服務的系統架構方式,降低系統組件間的耦合,並使用基於b/s模式的而非傳統的c/s模式,在系統的安裝、部署和維護方面有明顯的優勢,提高電網企業的工作效率、降低系統維護和運行成本。 同時,由於silverlight 3.0、wcf、asp.net 3.5、asp.net ajax和linq等技術均是微軟公司基於.net framework 3.0/3.5版本推出的最新技術,在國內企業級信息化領域的套用尚屬於起步階段,本課題對上述最新技術的研究和套用實踐對今後使用該類技術研發基於ria和面向服務的企業信息化系統具有一定的實踐指導意義和參考價值。

2.課題研究目的、內容、技術路線

①研究目的

近年,微軟公司相繼推出或更新了基於.net framework 3.5的面向ria套用的silverlight 3.0技術、面向soa套用的wcf技術、面向ajax套用的asp.net ajax技術、linq數據訪問技術和asp.net 3.5等軟體開發技術,該類最新技術在面向企業級套用方面在國內尚屬於起步階段。同時,為減少電網在供電過程中產生的不合理電網線損,提高電網運行的效率和管理水平,電網企業需對本區域內電網設備的運行狀態進行監控和可視化、圖形化編輯維護,以實現電網的經濟運行。 本課題通過研究和套用上述微軟公司最新發布的軟體開發技術,以電網企業實現電網經濟運行過程中對電網拓撲結構及電網設備數據進行可視化編輯操作的功能需求為套用背景和研究目的,設計並實現一個基於b/s模式的、面向服務的電網主接線圖形編輯系統。在滿足電網企業實際工作業務需求的同時,通過對最新架構和技術的研究,為今後套用該類技術構建類似企業級套用打下基礎。

②研究內容

本課題主要研究微軟公司發布的silverlight 3.0、wcf、asp.net 3.5、asp.net ajax、linq、cardspace等最新軟體開發技術,並將其套用於電網企業實現電網經濟運行過程中對電網設備及其數據進行可視化、圖形化編輯中,滿足電網企業的實際業務需求,開發一個基於b/s模式的、面向服務的電網主接線圖形編輯系統。具體的研究內容包括如下幾點:(1) 使用silverlight 3.0技術實現電網主接線設備的圖元設計及其在web瀏覽器中的連線、移動、縮放、添加和刪除等編輯功能。(2) 使用silverlight 3.0和wcf服務技術實現電網主接線設備圖形數據在web瀏覽器和伺服器端的通信。(3) 研究silverlight 3.0和wcf服務通信的安全性和效率等問題。(4) 研究asp.net ajax技術在asp.net 3.5 web應用程式的使用問題。(5) 研究silverlight 3.0和asp.net ajax之間的通信問題,以實現web頁面的無刷新,增強用戶體驗。(6) 研究linq數據訪問技術,確保對電網設備數據crud操作的高效、安全。

③技術路線

(1) 在現有資料和參考文獻的基礎上廣泛收集相關材料,明確電網主接線圖形編輯系統的功能性和非功能性實際需求,結合本課題的前期相關研究成果,對技術方案進行可行性論證,找出最佳的解決方案,然後進行總體方案設計,確保本課題的研究在較高的起點和較好的基礎上進行。(2) 研究silverlight 3.0技術。(3) 研究wcf技術。(4) 研究asp.net 3.5及asp.net ajax技術的結合。(5) 研究linq to sql技術。(6) 研究各項技術的綜合使用情況,構建原型系統。(7) 架構和設計電網主接線圖形編輯系統。(8) 以visual studio XX作為系統開發平台,以sql server XX作為後台資料庫管理系統,編碼實現電網主接線圖形編輯系統。(9) 對系統的運行效果和安全性進行測試驗證,得出本課題的結論。

3.創新之處與擬解決的關鍵問題

①創新之處

本課題以電網企業實現電網的經濟運行時為套用背景,研究微軟公司基於.net framework 3.5的最新軟體開發技術,首次將面向ria套用的silverlight 3.0技術、面向soa套用的wcf服務技術、基於ajax技術的asp.net ajax技術相結合,套用於電網企業的電網主接線圖形編輯系統中,基於b/s模式和面向服務的系統架構在滿足企業業務需求的同時,增強用戶體驗,提高系統可擴展性和可集成性,降低系統在安裝、部署和維護等方面的開銷。

②擬解決的關鍵問題

本課題擬解決的關鍵問題如下:(1) 電網主接線設備圖形元件在silverlight 3.0中的繪製。(2) 電網主接線設備圖形元件在silverlight 3.0中的移動、連線、縮放、刪除等編輯操作。(3) 電網主接線設備數據在客戶端silverlight 3.0程式與伺服器端wcf服務之間的安全、高效通信問題。(4) silverlight 3.0與asp.net ajax在本課題中的聯合使用及其效率問題。(5) linq to sql的資料庫訪問。

4.預期目標

對於本課題的研究,綜合考慮人力物力等各方面的因素,預期目標是:(1) 掌握電力網路相關業務領域基本概念,明確電網主接線設備圖形及其數據參數等系統需求。(2) 使用silverlight 3.0技術實現電網主接線圖形元件的繪製及其在瀏覽器中的編輯操作。(3) 使用linq數據訪問技術實現電網設備圖形及其業務數據高效、安全地進行crud操作。(4) 結合使用silverlight 3.0和wcf服務技術實現電網設備圖形及其業務數據的遠程高效、安全的通信。(5) 結合使用silverlight 3.0和asp.net ajax技術實現本課題web頁面的無刷新操作。

5.可行性論證

本課題屬於對新技術的套用創新研究,相關技術的研究與系統的研發均基於微軟公司正式發布的軟體開發工具產品和技術,有例如msdn、code project等網站提供可靠的技術支持和豐富的資料來源。同時,本人自本科以來至研究生階段,在導師的帶領下長期從事微軟.net平台下軟體開發技術的研究和套用工作,先後參與過多個基於.net平台的web套用系統的開發,具備一定的技術基礎。另外,本課題的研究得到了重慶大學電氣工程學院電力系統專業研究人員的幫助,將提供電力行業相關領域的理論和技術支持,為課題在電力領域的研究和套用提供保障。 本課題的研究將在王成良教授領導的重慶市中間件技術與服務實驗室開展進行,實驗室提供了多台pc機、伺服器、區域網路等硬體設施,以及微軟公司相關軟體開發工具,為課題的順利開展提供了硬體和軟體的基礎保障。

6.參考文獻

[1] 謝希仁. 計算機網路(第五版). 北京:電子工業出版社, XX.1

[2] 王成良. web開發技術及其套用. 北京:清華大學出版社, XX.12

[3] bob beauchemin, dan sullivan 著, 何玉潔, 顧小波 譯. sql server XX開發者指南. 北京:大學出版社, XX.1

[4] dave crane, eric pascarello, darren james著, ajaxcn.org譯. ajax實戰.北京:人民郵電出版社, XX.4

[5] omar al zabir著, 羅江華 譯. asp.net 3.5構建web 2.0門戶站點. 北京:機械工業出版社, XX.7[6] andrew troelsen 著, 朱曄, 肖逵, 張大磊, 王少葵, 范睿 等譯. c#與.net 3.5高級程式設計(第4版). 北京:人民郵電出版社, XX.3