基于Trustie平台的SOA软件设计实践教学改革方案研究
2016-03-29王鲁达
张 澎,王鲁达
(湘南学院 软件与通信工程学院,湖南 郴州 423000)
基于Trustie平台的SOA软件设计实践教学改革方案研究
张澎,王鲁达
(湘南学院软件与通信工程学院,湖南郴州423000)
SOA软件设计类课程的教学所亟需的开源软件开发协同平台是实践教学的基础,运用Trustie为软件开发协同平台,可克服SOA软件设计实践教中存在的不足,最终解决SOA软件设计教学中存在的问题,使学生熟练掌握SOA软件生产线、SOA软件协同开发环境的局限、SOA软件的可信保障与整体集成技术.
Trustie;SOA软件;教学改革
1 引言
Internet及Web service的快速发展与普及,使计算机软件所面临的环境从静态封闭逐步走向开放、动态和多变.这种变化给传统的软件工程理论、方法和技术带来了新的挑战,并导致面向服务的软件架构(SOA,Service-Oriented Architecture)蓬勃发展.当前国内大部分高校的SOA软件设计与开发相关课程实践教学的建设仍为空白或处于起步阶段,普遍缺乏对SOA软件开发协同平台的有效运用,更难以参与开发环境的自主化建设.纵观国内外SOA软件开发协同平台专业实践培训,其实践教学过程中所用的SOA软件开发环境多数未形成集成化的开源平台,且仍未能摆脱实践教学协同开发环境的局限,同时还面临跨团队开发实践中可信保障的缺乏与软件开发整体集成的不便.因此,实践教学环节不同程度的停留在SOA软件构架知识的理解与基本运用,具体表现为:SOA软件设计课程仅包含简单的SaaS开发实验,实践教学尚未能全面贯穿SOA软件设计、开发、测试的完整流程.建立合理的SOA软件设计实践教学方案,增强实践课程的创新性教育作用,在实践教学中实现创新性教育的目的,在SOA软件教学中具有重要意义.
2 基于Trustie平台的SOA软件释义
2.1SOA软件
SOA又称面向服务的体系结构,它不是一种语言,也不是某一项具体的开发技术,更不是一件软件产品,而一种软件组件模型,目前这个模型已趋于成熟,它可以将应用程序的不同功能单元(称为服务)通过服务之间定义的接口和契约联系起来.其接口是采用中立的方式进行定义的,独立于实现服务的硬件平台、操作系统和编程语言,使得构建在软件系统范围内的服务能够以某种统一和通用的方式进行交互.
2.2Trustie平台
Trustie是一个国家软件资源共享与协同生产环境,它集软件协同开发、软件资源共享、软件可信评估于一体,旨在研究可信软件生产的关键性技术,研制面向服务架构软件开发的系列工具、平台与集成环境,其协同开发平台、软件资源库等核心设施及部分工具已经开源.该平台先后获得两项国家863重点项目(“高可信软件生产工具及集成环境”、“大型网构化软件的可信开发、运行和演化技术体系与服务支撑环境”)的直接支持(总体纵向批复经费达1.6亿元),并作为核心成果完成结题.近前,针对SOA软件设计开发的实践操作环境,Trustie2.0的主要特质可归纳为:开源化(免费、开源的SOA软件开发协同平台)、自主化(高等教育机构-企业间协作共建)、社区化(专业技术团队线上互动).
3 当前SOA软件设计实践教学中存在的不足
在高校的软件设计类课程中,SOA软件设计的教学正逐步发展,具代表性的教学工作有国防科技大学计算机学院、北京大学软件与微电子学院与中南大学”大数据&知识工程研究所”的相关课程设置.而SOA软件的设计与开发亟需开源的软件开发协同平台,这一直是困扰湖南省属高校中相关课程实践教学的根本性问题.面临这一问题,在实践教学过程中存在的不足具体包含如下内容:
3.1缺少实践教学所需的软件生产线
目前,互联网上已出现多个SOA软件开发协同平台,为SOA软件提供生产线.作为软件生产线的载体,SOA软件开发协同平台多数为企业级平台,例如:IBM的Rational软件工程解决方案工具集、微软的基于.Net和Windows Azure的SOA开发框架、普巴软件公司的“POBA快速开发平台”、普元软件公司的“普元EOS”、顶点软件公司的“LIVEBOS”、金富瑞公司的“UCML2.0应用框架平台”、方正飞鸿公司的“Founder Fix BPMES”等.上述SOA软件开发协同平台中,仅有“Founder Fix BPMES”平台提供免费的试用版本,其余均需付费使用,且均未作为开源项目发布.多数SOA软件开发协同平台需要付费且闭源的现状导致SOA软件设计的实践教学缺少相关的软件生产线,使软件开发实践难以实施.而在目前教学中的实践环节,缺少对高校自主化的开源SOA软件开发协同平台的运用与建设.
3.2当前实践教学中SOA软件协同开发环境的局限
软件设计开发类课程强调加强课程实践参与者之间的交互与协同来有效地支持课程实践.实践参与者不仅包括直接参与课程实践的学生、指导和评价课程实践的教师,还可包括互联网上具有软件工程经验和技能、愿意为课程实践做出贡献的群体.借助于群体的力量、智慧、技能等来促进软件设计开发类课程实践是当前专业教育倡导的重要理念.现有企业级软件开发协同平台上的开发过程均发生于各企业技术开发团队内部,或在企业间进行开发协同,且多采取RUP(Rational Unified Process)或敏捷开发模式.企业级的SOA软件协同开发具有协同集成接口规则私有、协同开发进程迅速等特点,且易受到软件开发项目保密制度的约束.因此,采用当前的企业级软件开发协同平台,易造成SOA软件设计实践教学中存在协同开发环境的局限性.该局限性可归纳为三方面:师生难以掌握多样性的私有协同集成接口规则、学生难以适应企业迅速的协同开发进程、实践教学中的项目易受到企业级软件开发项目的保密制度的阻碍.
3.3SOA软件开发实践中可信保障的缺乏、软件开发整体集成的不便
软件设计开发类课程强调收集实践教学过程中的相关信息,并通过综合考虑实践的结果和过程信息对课程实践完成情况进行分析,提供可信评价结果,使得教师能基于可信的证据来指导学生的课程实践,提供中肯的评价,确保学生在持续的评价中得到不断改进与提高.企业级SOA软件开发协同平台多面向RUP或敏捷开发,未重视软件的可信性分析,无法提供对课程实践的可信评价结果.就高校的SOA软件设计开发实践教学而言,仍缺乏统一的工具和生产线的可信性分析、保障技术,以及软件生产环境中工具、生产线的应用效能分析技术.因此,在SOA软件设计实践教学中,难以为各种特定领域的软件提供可信度量、分析与保障,在学生的软件开发实践中无法明确软件质量.
同时,由于各种企业级SOA软件开发协同平台中的集成机制由不同的闭源软件工具实现,导致在SOA软件设计实践教学中还缺少便捷、统一的生产线数据集成方法和机制与生产线集成框架.因此,在学生进行开发实践时,SOA软件生产线的组装存在不便,具体场景为:软件资源访问接口标准与资源描述信息的无序、各类软件工具的集成机制的整体化程度不高.
4 基于Trustie平台的SOA软件设计实践教学改革的作用
目前在SOA软件设计实践教学领域,已有极少数专业优势高校进行了大力建设.中国人民解放军国防科技大学建设的“确实”创新实践社区平台(基于Trustie)已用于推动高校和科研机构的在线协同开发实践.由于Trustie的自身特质,可将其运用于对SOA软件设计实践教学的改革,有助于克服实践教学过程中存在的不足.基于Trustie平台的SOA软件设计实践教学改革具体作用可归纳为如下内容:
4.1可为实践教学提供SOA软件生产线
Trustie拥有线上SaaS(Software-as-a-Service)开发组件,可为实践教学提供免费开源SOA软件开发协同平台,通过自主的师资培训可掌握实践教学所需的软件生产线,使SOA软件设计与开发实践得以有效实施.
4.2实践教学中将突破SOA软件协同开发环境的局限
Trustie提供的SOA软件开发协同平台是高等教育机构与企业间共建的产物,同时提供了一个软件资源库,有助于突破实践教学中存在的协同开发环境的局限性,具体效用为:高校与企业间公开的协同集成接口规则易被师生学习和掌握、学生在实践过程中能够适应符合教学要求软件协同开发进程、实践教学中将拥有针对教学的自主化软件开发项目及其各类权限.
4.3实践教学中有利于实现并优化SOA软件的可信保障与整体集成
在SOA软件设计实践教学中,借助于Trustie可为软件设计提供可信保障,有效测评实践开发中的软件质量;并可指导学生参与Trustie平台的可信保障环境建设,用于优化其软件生产环境可信保障机制.
同时,借助于Trustie可实现实践教学所需的便捷的软件组装模式,包括:规范的软件资源访问接口标准与资源描述信息、系统化的软件工具集成机制;并可指导学生参与Trustie平台的整体集成环境建设,用于软件生产环境整体集成机制的优化设计.
5 总结
综上所述,SOA软件设计与开发的特点造成了实践教学中存在诸多不便,基于Trustie平台的SOA软件设计实践教学改革将有效解决实践教学中的相关问题.此教学改革可弥补SOA软件设计实践教学中的不足,解决其中三项实际问题,其具体研究意义在于:①可使学生熟练掌握SOA软件生产线,②可使学生熟练掌握SOA软件协同开发环境的局限,③可使学生掌握与优化SOA软件的可信保障与整体集成技术.同时,此项目的研究可实现相关领域的师资培育,并有利于进一步建设实践教学所需的SOA软件开发协同平台.
〔1〕梅宏,黄罡,赵海燕,等.一种以软件体系结构为中心的网构软件开发方法[J].中国科学(E辑),2006,36(10):1100-1126.
〔2〕Papazoglou M P,Traverso P,Dustdar S,et al.Serviceoriented computing:a research roadmap[J].International Journal of Cooperative Information Systems,2008,17(02):223-255.
〔3〕姜峰,范玉顺.UDDI与Web服务扩展元数据拓扑映射[J].清华大学学报(自然科学版),2009(7):1080-1084.
〔4〕Chen Z,Liang-Tien C,Silverajan B,et al.UX-an architecture providing QoS-aware and federated support for UDDI[C]//Proceedings of the 2003 International Conference on Web Services.Las Vegas,2003:1-6.
〔5〕肖芳雄.面向QoS的Web服务组合建模和验证研究[D].南京:南京航空航天大学,2010.
G642
A
1673-260X(2016)09-0272-02
2016-05-16
湖南省教育厅科研项目(15C1288);国家自然科学基金资助项目(61379109,61402165);郴州市科技计划项目(cz2015036)