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