RUP软件工程研究及应用分析

时间:2022-09-25 10:48:37

RUP软件工程研究及应用分析

[摘要]RUP的中文全称为统一软件开发过程,通过运用RUP方法,可以有效地提高软件开发质量和效率,降低开发过程中所存在的风险,使得开发流程和开发管理更加规范、合理,进而极大地提高软件开发效益。

[关键词]RUP;统一过程;迭代

1RUP概述

RUP作为众多软件开发企业的软件开发模型框,一直以来都受到各大企业的认同。在RUP刚被提出之时,它被称为rationalobjectprocess,随着对它不断的升级扩展,同UML的良好集成,并且可以支持多种CASE工具,它广泛走进软件工程研发的企业,在1998年才正式改名为RUP。RUP(统一软件开发过程)从动态结构和静态结构对所开展的软件过程进行了详细的解释,对完成软件工程项目所需的有关软件活动做出非常详细规范的说明,就像是一位软件开发的指导者,为软件开发者提供了开发方针、模版以及事例支持,让项目按照规划高质量地完成。

2RUP软件工程过程的研究

2.1动态结构的阶段和里程碑。在这个过程中,从管理角度分成了初始、细化、构造和交付四个阶段,同时会在每个阶段过程结束的点建有里程碑,由里程碑决定过程是否进入下个阶段。在初始阶段,对开发产品的最终要形成的样子进行说明,定义软件项目的开发范围,该阶段所关注的是项目的整个过程以及会要面临的风险,该阶段的里程碑为生命周期目标;在细化阶段,会对软件开发编制详细的项目计划,计划开发过程所必须的活动和列出所必需的资源,对软件的体系结构做出决策并且完善决策,将开发中风险较高的元素给淘汰,该阶段的里程碑为生命周期结构;在构造阶段,这属于一个制造的过程,编制出软件产品,对软件功能进行测试,不断的优化产品提高提高产品的质量,直到产品被完整的开发出来,该阶段的里程碑为初始功能;在交付阶段,主要是保证所开发出的产品能达到开发的目的,对于最终用户来说是可用的,这个阶段可以可以根据产品用户的反馈对产品的可用性、安装等进行调整,该阶段可以跨越几次迭代,该阶段的里程碑为产品。2.2动态结构的迭代。在这个过程中,从技术角度出发,将每个阶段分为单个或者多个迭代,根据RUP中对迭代的描述,迭代由多个性质不同的活动组成的一系列活动,每个迭代就是一次完成的开发循环,它有自身的评价标准和基线计划,并不会同阶段产生矛盾,每次迭代完成的循环为产品开发需求的一个子集,下一次迭代是在上一次迭代的基础上增加更多的系统需求内容。2.3静态结构模型元素。静态结构模型元素分为了四种,分别是角色、活动、产品和工作流程。RUP中的角色由性质的不同分成五种类型,分析、开发、测试、管理和辅助五类人员,每类人员又可以细分为多个角色,对于每个角色,RUP都给与了相应的工作活动,也称之为角色的行为,这些行为也就是活动,产品则是角色通过完成工作流程产生,工作流程十分重要,它说明了活动执行的时间和顺序,通过执行活动后能够形成的产品,产品按产品集形成分为建模、部署、需求、设计、管理、实现等。2.4核心工作流程。业务建模流程。业务建模是这个流程完成所产生的最主要的产品,通过对业务建模的建立,使得用户和开发人员对产品有着一定的理解,理解所开发的软件的组织结构和动态行为,为下一步的核心工作流程奠定基础,这个流程描述了开发构想。需求流程。这个流程是对开发软件的系统需求进行详细的描述,并且定义了开发的范围,所涉及的静态结构模型角色有分析人员、设计人员等,具体来说就是该流程描述了系统应该做些什么,并且让角色和用户根据这一描述达成共识,同时将需求的功能提取出来。分析设计流程。这个流程主要是将需求变成未来系统的设计,为系统设计出一个完善的结构,实现同实际环境相匹配的目的,让系统的性能得到优化,主要涉及的静态结构模型角色有设计人员和结构师,其中设计人员从实现的角度进行类的设计,根据实际的情况还会对子系统进行设计,而结构师则是对系统体系结构进行分析设计,在软件体系结构和设计模型完成后,需要评审员进行审核,达到设计的要求后才能用于后面的使用。实现流程。这个流程主要是以组件形式实现类和对象,用已经设计完成的层次化子系统对组件的结构进行定义,让完成的组件作为测试的单位进行测试,然后将开发者小组完成的结构集合起来,让开发者产生的结果成为可执行的系统。测试流程。这个流程主要的作用是验证,验证组件集成的正确性,保证所有的需求都已经完成,在交付之前找出当中存在的缺陷并绝对缺陷进行处理。因为RUP采用迭代方式完成,所以进行开发设计的过程中可以同时进行测试,这样就能够更快地找到存在的缺陷,这样就能够降低处理缺陷所需的成本,极大地提高软件开发效益。部署流程。这个流程主要还是将完成的版本软件交给最终的用户,确保最终用户能够使用软件,例如编写用户手册、软件打包、安装软件等活动。配置和变动管理流程。这个流程主要是对软件产品进行控制,提供了管理软件产品项目的准则,同时对产品的修改时间。修改人员以及修改的原因进行记录,实现跟踪软件创建过程的目的。项目管理流程。这个流程主要是为管理软件和管理风险提供框架,保证成功交付给最终用户满意的产品。环境流程。这个流程是为软件的发开提供所必需的环境,涉及到的活动有过程和工具的提供,技术支持和培训等。

3RUP工程应用

3.1适用范围。RUP作为面向对象领域非常实用的过程框架,随着不断的升级完善,它的适用范围非常广泛,不过根据实际应用的效果,RUP主要在比较大型的系统开发中使用,它能有效地降低大型系统开发中所存在的风险,并且因为阶段的划分,让对项目的检查十分方便。3.2应用步骤。RUP称为统一软件开发过程,它即可以作为软件开发组织级的过程,也可以作为项目级过程,我国对RUP的应用相较于国外较晚,并且划分方法也不完全同国外开发人员的一致,在组织模式方面也存在细微的差别,在应用RUP的过程中,需要根据实际的情况,对其记性完善和改建,下面给出常用的应用步骤。首先对软件开发的组织和项目状态进行评估,对该项目开发的人员配置、采用的开发工具和采用的过程做详细的了解。其次对所采用的过程进行风险评估,达到规范开发风险的目的。然后是对过程实现制定计划,计划中要说明开发组织如何从当前状态变成目标转台。接下去就是过程实现,根据制定的计划,进行实际项目的开发。最终效果进行评价,该过程是对软件开发过程中所采用的过程所取得的效果进行评价,这有助于下次应用RUP时对过程进行优化。3.3改进过程成熟度。应用RUP可以改进软件过程的成熟度,例如可以将只有CMM1的组织的熟练度提升到CMM3级别,通过RUP的改进,让软件开发的效率和质量都有显著的提高。在RUP改进软件过程成熟度的过程中,只是对CMM的关键过程改进,这就要求两者的目标一致,具体的实施需要根据实际情况进行改进。3.4划分迭代。在软件开发中应用RUP,在动态方面主要是对迭代计划进行制定,统一过程的四个阶段的迭代数目划分,在初始阶段一般用一个迭代形成该阶段的需求,在规划阶段用两个迭代分别形成概要和详细规划,同时进行评审,在构造阶段用三个迭代开发出完整的产品,在交付阶段最少用两个迭代,因为系统需要用户进行试用运行,然后根据用户试用运行的结果进行改善。

4结语

RUP非常适用于面向对象系统的开发,在软件开发时可以进行有效的管理和组织,但是在应用RUP过程中,需要根据实际的情况,对RUP进行完善,这样才能真正发挥出RUP的效果。

【参考文献】

[1]张智海.基于RUP及敏捷方法的软件过程的研究与应用[D].合肥:合肥工业大学,2010.

[2]时凯凯,付强.基于RUP的软件过程模型的研究[J].科研,2016(007):184-185.

[3]宋芳菲,张冬玉,相凤华.基于ARUP的桌面虚拟现实教学软件开发模型建构[J].中国教育信息化,2018(23):86-92.

作者:王睿超 孟向军 单位:山东省联合航空公司