基于SOA的软件过程管理研究与应用

VIP免费
3.0 陈辉 2024-11-19 5 4 1.58MB 60 页 15积分
侵权投诉
摘 要
摘 要
软件过程管理是为了保障软件项目质量而服务的,在软件过程管理发展过
中,国内外对于各种软件过程管理的研究褒贬不一,有的推崇周全、细致的管理
流程如 RUPCMM有的则比较强调软件开发的敏捷性,而采用敏捷开发管理模
式,但不论使用哪种软件过程管理模型,总是不能完全符合现实中软件项目的实
际要求,虽然在各家软件公司都根据自己的一般需求而去裁减、改进软件过程管
理模型。然而在实际的软件过程管理的实施过程中,还是存在一定的缺陷,因为
软件开发的过程的影响因素是不可测的、动态的,对于单一的软件管理模型不能
应对变化的需求,一旦软件项目开发周期变长、系统变复杂后,采用单一的管理
模式将会导致软件项目代价高和质量低的问题,因此在开发的每一阶段应该采用
不同的流程管理方案来调整软件项目管理。
本文分析以 SOAService-Oriented Architecture,面向服务的架构)思想构建
系统的方法,结合软件过程管理模型的实现得到了新的一种解决方案。在传统系
统开发流程,开发一般会采用先开发、后集成的模式;而在 SOA 架构下的软件工
程管理系统,是以服务或组件形式出现的业务逻辑可以被共享、重用和配置。消
除信息系统“孤岛”现象实现边开发边集成的模式。本文深入分析了基于 SOA
基本原则,参考 Web 服务的实现理念,借用了一套轻量级 SOA 框架的实现软件
过程管理系统;本文进一步详细研究了基于该框架实现的软件过程管理系统。分
析软件过程管理的关键流程和一般流程,通过 portlet 实现服务调度器,解决了
portal 之间的通信问题,响应 WEB 服务调用;最终实现软件过 程管理的 SOA 化,
同时本论文把神经网络算法运用到软件过程管理上,使得软件过程管理系统真正
实现灵活应对的特性。
关键词:软件过程;管理系统;SOA;神经网络
ABSTRACT
ABSTRACT
With the continuous development of the software industry as well as society as a
whole needs to improve the software, software architecture has become increasingly
complex.in the past years, Application software development methods has many major
changes in many process-oriented development methodologies, object-oriented
development method, component-oriented development methodologies, as well as
service-oriented development method. Every time the changes in software development
methods have a common purpose, which is to improve production efficiency and reduce
production costs.
In order to become more competitive, enterprises must create a business-oriented
and Service Oriented Architecture(SOA), to replace the past scattered, dedicated
application platform. so SOA has gradually become suitable for the design of a modern
enterprise application architecture forms, its core idea is to package them into standard
business functions of the service, followed by the assembly of these services into
enterprise applications. The use of service-oriented enterprise architecture, enterprises
can effectively reuse those existing systems, and the timely development of new
functions.
Development of future applications and business processes of the recommended
method is to achieve a formal SOA framework, which is dynamic, flexible and scalable
enough to meet the changing and complex business needs.Whatever the framework, a
basic principle is available to enterprises a highly scalable, dynamic framework for the
definition, configuration, access and manage business services. Based on this research
software company's software development processes, and improve its software based on
this process management systems, new early warning system. Not only from the
structure and management on the entire management system to enhance the flexibility
and the face of ever-changing environment adaptability.
Key Words: Software Engineering Management SystemSOA
Neural network
目 录
目 录
摘 要.................................................................................................................................1
ABSTRACT ......................................................................................................................1
目 录...............................................................................................................................1
第一章 引言 ................................................................................................................. 1
§1.1 软件过程管理在国内外的研究进展 ................................................................... 1
§1.2 问题的提出 .......................................................................................................... 2
§1.3 研究内容 .............................................................................................................. 3
第二章 软件过程和 SOA 思想概述 ........................................................................... 5
§2.1 软件过程的定义 ................................................................................................... 5
§2.2 软件过程管理的几种开发方法 ........................................................................... 5
§2.2.1 统一软件开发过程.........................................................................................5
§2.2.2 瀑布模型........................................................................................................6
§2.2.3 极限编程.........................................................................................................7
§2.3 传统软件过程方法中的不足 ............................................................................... 8
§2.4 SOA 的体系结构 .................................................................................................. 9
§2.5 SOA 的实现技术介绍 ........................................................................................ 11
§2.6 SOA 系统构建思路 ............................................................................................ 13
§2.7 SOA 与软件过程管理的关系 ............................................................................ 14
§2.8 小结 .................................................................................................................... 16
第三章 基于 SOA 软件过程管理系统流程改进 ..................................................... 17
§3.1 基于 SOA 思想的软件过程改进模型概述 ....................................................... 17
§3.1.2 需求分析阶段改进......................................................................................19
§3.1.3 环境配置阶段改进......................................................................................20
§3.1.4 分析与设计阶段改进..................................................................................22
§3.1.5 发布阶段改进..............................................................................................24
§3.1.6 测试阶段改进..............................................................................................26
§3.2 软件过程管理评估模块概述 ............................................................................. 27
§3.3 小结 ..................................................................................................................... 27
第四章 基于 SOA 软件过程管理评估模块设计 ..................................................... 29
基于 SOA 的软件过程管理改进研究与应用
2
§4.1 软件过程管理系统评估部分设计 .................................................................... 29
§4.1.1 基于 BP 神经网络原理介绍........................................................................29
§4.1.2 软件预警评估概要.......................................................................................31
§4.2 基于 BP 神经网络算法的软件预警评估应用 ..................................................32
§4.2.1 评估指标体系建立.......................................................................................32
§4.2.2 评估指数分析...............................................................................................35
§4.2.3 评估后的对策建议.......................................................................................37
§4.2.4 基于 BP 神经网络算法与其他方法比较....................................................38
§4.3 总结 ..................................................................................................................... 39
第五章 基于 SOA 软件过程管理系统实例分析 ..................................................... 40
§5.1 基于 SOA 的实现框架 JBOSSPORTAL 介绍.................................................... 40
§5.2 JBOSS-PORTAL 实现 SOA 软件过程流程管理系统 ............................................41
§5.2.1 jboss-portal 使用步骤 ...................................................................................41
§5.2.2 软件过程管理系统概述...............................................................................43
§5.2.3 系统架构.......................................................................................................44
§5.2.4 系统模块设计...............................................................................................44
§5.2.5 数据库表图设计...........................................................................................45
§5.2.6 portlet 服务接口配置设计.......................................................................... 46
§5.2.7 jboss-portal 的传值问题解决 .......................................................................48
§5.2.8 关于 jboss-portal 后台管理页面的设计......................................................50
§5.3 JBOSS-PORTAL 软件过程管理系统的应用 ..........................................................52
第六章 结论与展望 ................................................................................................... 53
§6.1 结论 .................................................................................................................... 53
§6.2 展望 .................................................................................................................... 53
参考文献.........................................................................................................................55
在读期间公开发表的论文和承担科研项目及取得成果.............................................57
致谢.................................................................................................................................58
第一章 引 言
1
第一章 引言
§1.1 软件过程管理在国内外的研究进展
早期的软件开发仅考虑人的因素,传统的软件过程强调物性的规律,现代软
件过程最根本的就是人跟物的关系,就是人和机器(工具、自动化)在不同层次
的不断循环发展的关系。1968 年,北约委员会会议上,“软件工程”作为正式的术
语被确定下来,标志着一个新学科的开始[1]而作为软件工程的重要组成部分——
软件过程管理也随之被推上软件项目开发的历史舞台。
“软件过程管理”概念的提出促进了需求、分析、设计、实现、维护等软
生命周期概念的成熟。瀑布模型是最早出现的软件过程模型,而当时的瀑布模型
存在一个很大的风险,因为使用瀑布模型不能很早的看到可以运行的产品,而当
产品真的存在问题的时候,最终的交付期将收到影响,
1989 Microsoft 就开始使
Daily Build(每日构建),被成为增量开发,这种增量开发不一定意味着每日构
建,但是程序员可以在软件开发过程中事先发现软件产品可能发生的问题。 在软
件过程管理中,如何调配资源、合理优化、控制人工成本就成了软件过程管理要
为软件项目开发要做的关键所在。
1987 年,
lvar Jacobson 离开 Ericsson 后成立了 Objective Systems 公司。他吸纳
了增量迭代的思想,开发了 Objectory 过程。1991 年,Ericsson 收购了该公司,并
更名为 Objectory AB1995 年,Rational 公司从 Ericsson 公司收购 Objectorylvar
Jacobson 开始和 Grady Booch
James Rumbaugh 一起开发 UML
Phiilippe Kruchten
Rational 公司开发出“Rational Unified Process(RUP)2005 年,Ivar Jacobson
IBM Rational RationalEssential Unified Process
EssUP将之描述为“超轻和超敏捷的”RUP[2]虽然 RUP 相对来说应该是比较
成熟的软件过程管理体系,而在实际中的软件过程不可能完全一样,还是存在很
多差异的,用一种统一的标准过程来推动软件过程管理是不行的,所以 RUP 可以
作为一种规范来借鉴,而很难将其运用到实际的软件研发中去,这也便是后来
CMM 模型需要引入裁减过程的重要原因之一。
在世界上软件过程已经大约有 50 年的发展历史了,但国内还是有很多人对于
什么是软件过程仍然存在误会,以为软件过程就是或主要是编写程序,2004
IEEE-CS
(国际电子与电器工程师学会计算机学会的英文简称)对软件过程包含的
内容作了进一步的刻画,软件不是纯物化的东西,其中包含着人的因素,于是
有很多变动的东西,不可能像物质生产过程,基于物理学等的原理来做。据美国
基于 SOA 的软件过程管理改进研究与应用
2
软件过程管理实施现状调查,软件研发的情况是很难进行预测的,只有大约 10
的项目能够在预定的费用和成本下交付,大多数的软件项目到了后期的维护费用
超出了起初的预算。这一软件开发的方法基本上仍然沿用早期的个体化软件开发
方式,但软件的数量急剧膨胀,软件需求日趋复杂,维护的难度越来越大,开发
成本令人吃惊地高,而失败的软件开发项目却屡见不鲜。
在国内有关软件过程管理本身的研究,都是来源于国外相关成果的理论和
用研究,而对于软件过程管理,我国已经将他列入国家 863 计划项目进行。中国
科学院软件研究所所承担的软件过程技术与质量保障项目,南京大学开展的基于
CMM 的软件质量保障平台和应用等多个项目都涉及到了软件过程管理的研究。
其中较为突出的是北大青鸟平台和 ONTEAM 产品(易思博公司)此类软件以关
注软件过程的底层活动为主,已经在市场上占有很大的市场份额。我国软件产业
年轻并迅速成长,但与发达国家相比,差距仍然很大,尚处在世界软件产业链条
中的最底端,特别是在承接欧美软件外包业务存在瓶颈。我国大多数软件企业规
模不大 生产方式依然是作坊式生产,软件开发缺乏严格的项目管理和质量保证体
系,这其中最重要的原因就是对于国际软件过程管理的规范和标准知之甚少,在
软件项目管理上与欧美存在明显差异。我国软件企业的工程化起步于 20 80
年代初,那时候以研究软件开发方法为重点,以瀑布模型为基础,还停留在理论
研究,与实际脱离的阶段。这种重于结构化设计和分析方法的软件过程,造就了
国内软件企业过于依赖软件开发工具,但实际情况是,仅靠软件开发工具依旧不
能解决软件开发效率低下的问题[3]
如今,越来越多的国内软件企业的管理者和高级技术人员知道了美国存在
软件工业标准,也深知要提高本国软件企业管理水平、缩小与发达国家软件生产
水平以及突破欧美外包瓶颈的根本之道在于学习和引进国际标准,彻底改变国内
软件企业中普遍存在着的“手工也作坊”式的生产管理方式。
由此可见,对于软件过程管理的研究还需要做进一步的探究,特别对处于
展阶段的软件企业,要研究一种如何应对市场变化的软件过程管理方法,在降低
成本和软件危机的前提下,增强企业本身的软件需求变化适应能力的关键所在。
作为高度协调的统一体,软件过程管理在企业中各节点之间的协调对软件项目开
发的成败起着至关重要的作用。
§1.2 问题的提出
软件危机问题的产生真正的原因就在于软件管理的混乱,尤其是软件过程
理的缺陷。传统的软件过程管理,在软件项目准备阶段,根据软件项目的时间范
摘要:

摘要摘要软件过程管理是为了保障软件项目质量而服务的,在软件过程管理发展过程中,国内外对于各种软件过程管理的研究褒贬不一,有的推崇周全、细致的管理流程如RUP,CMM;有的则比较强调软件开发的敏捷性,而采用敏捷开发管理模式,但不论使用哪种软件过程管理模型,总是不能完全符合现实中软件项目的实际要求,虽然在各家软件公司都根据自己的一般需求而去裁减、改进软件过程管理模型。然而在实际的软件过程管理的实施过程中,还是存在一定的缺陷,因为软件开发的过程的影响因素是不可测的、动态的,对于单一的软件管理模型不能应对变化的需求,一旦软件项目开发周期变长、系统变复杂后,采用单一的管理模式将会导致软件项目代价高和质量...

展开>> 收起<<
基于SOA的软件过程管理研究与应用.pdf

共60页,预览6页

还剩页未读, 继续阅读

作者:陈辉 分类:高等教育资料 价格:15积分 属性:60 页 大小:1.58MB 格式:PDF 时间:2024-11-19

开通VIP享超值会员特权

  • 多端同步记录
  • 高速下载文档
  • 免费文档工具
  • 分享文档赚钱
  • 每日登录抽奖
  • 优质衍生服务
/ 60
客服
关注