2) RUP的质量保证思想之二:软件工程成功经验共同铸就软件质量的思想
激烈的市场竞争催生高质量的软件。同时,软件行业经过几十年的发展,软件生产工艺、软件开发方法和工具都大大进步、日趋成熟,这一切使软件开发质量越来越好。RUP以迭代式软件开发、架构为核心的软件开发、用例驱动的软件开发和风险驱动的软件开发为特色,集中体现了以下六个软件工程成功经验,通过它们共同铸就了高品质软件:
迭代式软件开发:能够有效控制项目风险、增加对项目控制能力、减少需求变更对项目的影响,实现持续的质量验证;
有效管理需求:能够做到质量保证从头作起,在软件开发一开始,就把好需求质量关,实现需求的可追踪性和需求变更的有效管理;
基于构件和面向服务的软件架构:采用可视化建模技术来构建以构件为基础、面向服务的系统框架,可以有效地管理系统的复杂度,增强系统的灵活性和可扩展性;
可视化建模:能够有效解决团队沟通、管理系统复杂度、提高软件重用;
持续的质量验证:借助迭代式软件开发方法,可以大大提前软件集成测试和系统测试在整个开发生命周期中的时间,实现持续地软件质量验证,做到尽早测试、尽早反馈,从而确保产品满足客户的需求;
管理变更:能够为整个软件开发团队提供基本协作平台,使企业管理好自己的软件资产,通过有效管理所有的变更请求,使开发团队能够很好的控制开发进度、及时了解项目状况,同时为项目的量化管理提供帮助。
由此可见,在软件开发过程中,高品质软件是由以上软件工程的成功经验共同铸就的。
3 高品质软件,源自Rational工艺
成就高品质软件,除了注重过程质量、采用软件工程成功经验以外,还需要帮助开发团队实现高效的过程管理、构建运作良好的协作平台和有效运用能够提高团队生产力的自动化软件工具。"方法"+"工具"永远是我们解决问题的永恒主题。
3.1 IBM Rational软件开发平台实现软件规模化生产的过程质量
IBM Rational软件开发平台是体现软件工程成功经验的强大工具。它基于Rational的软件工程方法和工具构造出了覆盖整个软件开发生命周期的软件开发平台,它通过提供高效的软件生产线,为软件开发团队的生产过程提供高品质的过程质量保证,使得大规模的软件生产过程成为可能。没有平台支撑的过程质量和成功经验只能是纸上谈兵。
首先,IBM Rational软件开发平台为整个软件生产企业提供了一个完整的企业级项目管理平台:IBM Rational Portfolio Mananger。一方面,通过它可以使企业的管理者实现业务发展战略和IT战略的融合,作为以业务发展战略为核心,组织IT投资和企业人力资源;另一方面,它为整个项目管理团队提供了高效的项目计划、实施、监控等项目管理活动的完整平台,通过提高企业的管理方法和团队效率,最终提高软件质量。
其次,IBM Rational基于以RUP、ClearCase和ClearQuest为核心的团队统一平台:Team Unified Platform,为整个开发团队提供了基本协作平台,提供日常的开发活动管理和支撑,也为项目的质量监控和量化管理奠定基础。
第三,IBM Rational的软件开发平台根据软件开发的角色组织软件开发工具,为分析人员提供业务建模和业务流程的模拟、监控能力;为系统架构师提供各种系统建模和架构分析能力;为开发人员提供快速的软件构建、单元测试及运行时分析能力;为测试人员提供功能、性能测试和系统性能监控能力;为部署人员提供了快速部署、监控和管理能力。
与汽车生产过程相比,企业级项目管理平台和团队统一平台就好比汽车生产过程的生产线,统一了整个软件的开发活动和管理活动,而其它各种根据软件开发角色组织的开发工具,就好比生产线上的各种智能机床,大大提高软件生产过程的生产力和质量保证。如果说福特使用的生产线技术实现了汽车行业的规模化生产,那么IBM Rational软件开发平台无疑为软件的规模化生产揭开了序幕。
3.2 IMB Rational软件开发平台为软件生产提供生命周期的质量保证
IBM Rational软件开发平台为软件生产提供了涵盖分析员、架构师、设计员在内的全生命周期的质量保证,而不仅仅是对测试人员的质量解决方案。
在RUP质量保证思想的指导下,IBM Rational的软件开发平台坚持软件质量从头抓起的宗旨,使用业务建模工具和可视化建模技术,准确描述企业的业务流程、模拟企业的业务执行过程,帮助企业找出业务流程中存在的问题,优化业务流程。系统分析人员借助业务模型,可以准确理解企业需求,解决企业真正需要解决的问题,正确构建企业需要的系统。需求管理工具(RequisitePro)则可以帮助客户完成需求管理和需求的变更管理,实现需求的可追踪性,帮助企业在项目启动阶段把好需求质量关。
借助IBM Rational的新一代建模工具Rational Software Architect(简称RSA),系统分析人员甚至可以使用模型驱动的软件开发(MDA),从业务模型自动推导出用例模型、分析模型、设计模型和代码,从而实现业务驱动的软件开发。模型驱动软件开发的优点是帮助企业建立强健的软件架构,统一整个软件开发团队的分析设计和开发活动,使整个开发团队对高层系统架构有一个统一的认识。同时,RSA基于开放的Eclipse平台,提供了代码复审功能,帮助开发员自动完成代码规范性的检测;运行时分析功能,为开发员提供自动完成代码内存错误检测、性能调优、线程分析和代码覆盖率的收集能力;它的构件测试能力,帮助开发员更快更好地完成单元测试任务。此外IBM Rational还提供了Purifyplus,用于帮助开发人员快速解决软件开发过程中难于发现的内存及运行时错误、性能调优和测试覆盖率信息收集等问题;实时系统测试工具Test Realtime,则能解决实时系统的单元测试、集成测试和运行时分析问题。所有这些都为整个软件开发团队完成高质量的需求分析、构建灵活的软件架构、生成高品质的代码提供了有力保证。
IBM Rational软件测试解决方案以RUP的软件工程方法为基础,首先提供了以TestMananger和ClearQuest为核心的测试管理平台,完成从测试输入、测试计划、测试设计、测试执行到测试结果分析的整个测试流程的统一管理,提供对项目需求、变更请求、测试资料及其他数据的共享,提高了团队的工作效率;其次,Robot以自动化的功能和性能测试脚本录制、回放为基础,实现企业的自动化功能和性能测试,帮助企业解决回归测试和大批量的数据驱动软件测试所带来的工作量和工作效率问题;Tivoli Monitoring for Transaction Performance(TMTP)完成软件的性能检测和分析工作,进一步帮助系统测试人员分析、定位、解决系统性能问题。第三,最令人刮目相看的是IBM在2005年的Atlantic版本中新推出的功能测试工具RATIONAL FUNCTIONAL TEST、性能测试工具RATIONAL PERFORMANCE TEST和手工测试工具RATIONAL MANUAL TEST,它们第一次为Java和Web测试人员,提供了和开发人员同样的操作平台(Eclipse),具备完整的自动化功能、性能测试和手工测试的管理能力,而且其中还推出了许多IBM的最新专利技术,例如基于Wizard的智能数据驱动的软件测试技术、提高测试脚本重用的ScriptAssurance技术等,同时它也提供了对开放软件测试架构Hyades的支持。
由此可见,IBM Rational的软件开发平台通过实现了对整个软件开发全生命周期,包括从业务分析、需求管理、架构设计到系统构建、测试、部署的全方位支持,为企业提供了软件生产全生命周期的质量保证能力。
4 小结
在软件工程领域发展初期,各路英雄逐鹿中原,产生了各种软件开发过程的成功经验和工具。在经历了多年的努力搏杀,体会到对抗的酸甜苦辣以后,英雄们终于认识到:高品质软件,需要完整的软件开发过程和整合的软件开发平台来共同铸就。IBM Rational软件开发平台,就是以各种国际标准和开放平台为基础,为软件产品的开发和生产过程提供了前所未有的开发速度和质量保证。IBM Rational二十几年铸一剑,如今宝剑挥出,必将掀起软件行业的产业革命浪潮。
文章来源于领测软件测试网 https://www.ltesting.net/