欢迎光临112期刊网!
网站首页 > 论文范文 > 计算机论文 > 软件技术 > 基于Web服务组合的敏捷软件开发研究

基于Web服务组合的敏捷软件开发研究

日期:2023-01-24 阅读量:0 所属栏目:软件技术


  敏捷思想为软件开发带来了新思路。面向服务应用的普及以及Web服务的出现为敏捷开发关于构件和精益的思想提供了新的实现途径。不同粒度的Web服务组合满足不同业务需求,也符合快速交付可以使用软件思想。

 

  0 引言

 

  当今的软件行业依旧在焦油坑中痛苦挣扎,为平衡项目时间、预算、成本、质量等基本要素,从管理到开发过程提出众多解决方案,可问题依旧很难得到解决[ 1 ]。随着《敏捷宣言》和《敏捷原则》的发布,敏捷开发思想逐步普及。随着互联网的出现,软件开发按老套路很难跟上市场变化。目前,软件功能变化快,业务交叉增多,用户需求变化快,因此需要将新思想和开发技术引入到软件开发中。随着面向服务应用的增多,拥有不同软硬件资源的单位为软件开发用户提供了大量 Web服务。充分利用这些服务也符合敏捷开发中精益思想和快速使用软件的思想。

 

  1 敏捷软件开发思想

 

  瀑布模型将软件开发的过程设计成一个线性过程,主要分为5个阶段:需求分析、设计、编码实现、测试和部署维护,依次线性进行,只有当前一个阶段任务完成后,才能进行下一个阶段。只有到测试阶段才能发现问题,而要解决这些问题,几乎要再来一遍,很难适应中途需要变更的项目。前一个阶段出现错误会被后一个阶段放大,可能造成灾难性后果。在互联网和移动互联网快速发展的今天,业务改变更快、更频繁。业务需求分析和设计往往还没完成,市场和消费需求已经发生变化,这就要求软件开发能适应新时代要求。在这种背景下提出敏捷开发,软件工程的另一个重要进展是基于构件的开发。尽可能利用可复用构件,组装成新系统,提高软件使用率,减少故障和降低成本,提高系统质量。基于构件的系统,更适用Internet技术和分布式系统开发的需要[ 2 ]。二战后日本丰田公司陷入困境,丰田开始从全新的角度思考制造、物流和新产品研发活动,并逐步形成丰田生产系统这一新型的生产方式。丰田生产系统的根本思想是精益原则,即消除浪费,并对浪费的概念重新进行定义,即不能为客户创造价值的事物都是浪费”[ 3 ]。浪费也是软件开发中的常见问题,过度文档设计到最后却不能变成实实在在的软件,导致开发软件反复返工、开发人员频繁跳槽、经常加班等。Web服务能很好地共享资源,减少浪费,方便连通不同企业、不同信息平台,合理整合业务链内的上中下游企业资源。

 

  2 Web服务组合

 

  所谓Web服务组合是指通过服务查找以及服务之间的接口集成,将多个自治Web服务根据需求进行组合,从而提供新的、功能更强的Web服务。从粒度意义上讲,Web服务组合是对Web服务进行更大规模封装,并将该封装结果作为一个Web服务展现给外界。从顺序意义上讲,Web服务组合是一个满足用户需求的Web服务调用序列[ 4 ]。如游客想到北京旅游,希望在提供旅游业务的网站上完成整个旅行安排。其要求如下:首先,选择景点,包括人文和自然;其次,选择交通工具以及所选交通工具的价格类型,希望根据预计的旅游时间和当天的天气选择交通工具,如果天气晴朗则坐飞机,否则坐火车;再次,酒店预定和支付。在这个案例中用户涉及的服务主要是景点服务(ws1)、交通服务(ws2)、酒店服务(ws3)、支付服务(ws4)。提供这些服务的提供商并不是一家,但商家之间需要相互合作。这 4个服务是大的复合型服务,其也是更多具体服务的组合,如图1所示。

 

  具体的服务可以划分为多个层次,每个层次可由复合服务和原子服务组成。叶子节点处的服务都是原子结点。按从上到下逻辑划分,具体组合由下而上填充服务,组合成更具体服务。因此,进行Web服务组合的第一步是对业务流程进行分析,划分业务单元。

 

  图1 Web服务组合层次结构

 

基于Web服务组合的敏捷软件开发研究


  3 快速交付可使用软件

 

  当用户提出需求时,不可能一次性将所有需求都表达清楚,而且开发过程不可能一直等待所有需求都最终确定。这就需要开发人员针对用户需求做优先级排序,先解决优先级最高、最紧迫、用户最关心的需求。由于Web服务都是已封装好的业务功能,可快速使用,缩短开发时间。在基于服务架构的系统中,不同业务Web服务可根据需要进行组合和替换,增强软件灵活性和适应性,更好适应多变需求,减少不必要浪费。近年来网络上Web 服务数量急剧上升,从Internet 上寻找满足需求的服务变得困难[ 5 ]。为让Web服务成为计算机可理解的软件实体, 将语义Web技术引入Web 服务, 形成能够在语义层面支持Web服务间互操作的语义Web服务,使基于Web的服务应用更灵活、更智能。基于语义的服务描述主要是利用本体表述领域内知识,使服务描述带有语义。本体是共享的概念模型的形式化的规范说明[ 6 ]。本体对于Web网络的意义在于:本体通过统一术语概念及其联系的解释,阐述网络上的数据、程序、网页及其它网络资源包含的语义[ 7 ]Web服务语义是指服务提供者与服务请求者之间就使用某个具体服务的必需条件、交互过程及服务运行结果所达成的共识或协议[ 8 ]。用语义标识描述Web服务,最终目的是实现语义Web服务自动查找、组合调用,改变软件开发模式,使计算机可以参与到开发过程中,加快软件开发进度、降低人工成本、提高开发效率。由于Web服务不同于传统软件开发,所提供的Web服务并不是针对具体用户需求专门设定,服务功能粒度和用户期望有一定区别。因此,需要一种智能化技术组合Web服务,可以实现动态调整和自我修正。

 

  神经网络是用大量神经元的互连以及对各连接权值分布来表示特定的概念或知识。在知识获取过程中,其只要求专家提出范例及相应的解,通过特定学习算法对样本进行学习, 通过网络内部自适应算法不断修改连接权值分布达到要求, 并将专家求解实际问题的启发式知识和经验分布到网络神经元的权值和阀值上 [ 9 ]。知识表示不 再是规则,而是分布于整个网络中的权值和阈值,神经网

 

  络利用领域专家解决实际问题样本训练神经网络, 使神经网络在测试数据输入条件下能获得与专家方案尽可能接近的结果。根据规则集生成神经网络,如图2所示。

 

  图2 神经网络训练web服务

 

  基于规则的神经网络推导众多的服务组合,可通过计算机自动实现。减少人工选择组合时间,开发人员可以省去繁杂的选择比较过程。知识库集中领域专家经验,使降低开发人员之间沟通不便。使用大量自动化智能技术和软件复用技术,可以快速设计和开发出可使用的软件,从而降低浪费,提高开发效率。

 

  4 结语

 

  敏捷开发强调快速开发能满足业务需求的软件,业务本身随市场变化而变化。用户有更直接体验,与开发人员沟通起来更加明确,也可更清楚描述出自己所需软件产品。Web服务使孤立资源能真正整合,但服务提供者不会按照每个需求者的需求提供个性化服务。为完成具体业务功能,需要进行Web服务组合。不同方案组合就是一次次重构,可避免浪费,同时也可加快开发进度。

 

  作者:孙宗旺 蓝金球 来源:软件导刊 20159

本文链接:http://www.qk112.com/lwfw/jsjlw/ruanjianjishu/229068.html

论文中心更多

发表指导
期刊知识
职称指导
论文百科
写作指导
论文指导
论文格式 论文题目 论文开题 参考文献 论文致谢 论文前言
教育论文
美术教育 小学教育 学前教育 高等教育 职业教育 体育教育 英语教育 数学教育 初等教育 音乐教育 幼儿园教育 中教教育 教育理论 教育管理 中等教育 教育教学 成人教育 艺术教育 影视教育 特殊教育 心理学教育 师范教育 语文教育 研究生论文 化学教育 图书馆论文 文教资料 其他教育
医学论文
医学护理 医学检验 药学论文 畜牧兽医 中医学 临床医学 外科学 内科学 生物制药 基础医学 预防卫生 肿瘤论文 儿科学论文 妇产科 遗传学 其他医学
经济论文
国际贸易 市场营销 财政金融 农业经济 工业经济 财务审计 产业经济 交通运输 房地产经济 微观经济学 政治经济学 宏观经济学 西方经济学 其他经济 发展战略论文 国际经济 行业经济 证券投资论文 保险经济论文
法学论文
民法 国际法 刑法 行政法 经济法 宪法 司法制度 法学理论 其他法学
计算机论文
计算机网络 软件技术 计算机应用 信息安全 信息管理 智能科技 应用电子技术 通讯论文
会计论文
预算会计 财务会计 成本会计 会计电算化 管理会计 国际会计 会计理论 会计控制 审计会计
文学论文
中国哲学 艺术理论 心理学 伦理学 新闻 美学 逻辑学 音乐舞蹈 喜剧表演 广告学 电视电影 哲学理论 世界哲学 文史论文 美术论文
管理论文
行政管理论文 工商管理论文 市场营销论文 企业管理论文 成本管理论文 人力资源论文 项目管理论文 旅游管理论文 电子商务管理论文 公共管理论文 质量管理论文 物流管理论文 经济管理论文 财务管理论文 管理学论文 秘书文秘 档案管理
社科论文
三农问题 环境保护 伦理道德 城镇建设 人口生育 资本主义 科技论文 社会论文 工程论文 环境科学