邹杨旭
摘要:在软件分析的过程中,需求分析涉及到软件组的开发活动,文章先对集成了风险、立项、结项、需求开发及需求管理等模型进行研究,在这一基础上开发软件需求管理平台,对实现软件需求管理的经验与知识进行分享。
关键词:CMM;需求管理;平台设计;实现CMM标准是当前世界上关于软件过程的一个标准之一,其产生已有70余年,主要用于对软件过程的改进进行指导,为了对软件过程能力进行评价,CMM建立了一种有效的准则,在软件开发与维护的过程中进行应用。目前,在国外CMM已经被软件行业广泛应用,且取得了较为突出的成绩,在我国是近几年才开始应用,并且受到了越来越多人的追捧。
1基于CMM软件需求管理平台的设计
CMM提供的是一种软件开发目标,而对开发的方法没有明确指出,因此在应用中,需要制定符合CMM标准的软件过程体系,保证CMM体系的实施。标准软件过程体系一般包含质量方针文件、工作流程文件及操作指南文件三个层面。而以上几个层面文件实施中,存在很多重复性工作,具有一定的弊端,为了对这一问题进行解决,就需要对软件过程进行改进,提高软件的预测性,因此集成化软件过程改进模型被提出来。该模型的建立有效的实现了软件项目在立项、结项、风险、需求等活动分析,利用管理与实践经验,及时预测可能出现的问题,优化工作流程,提高产品的质量。
⑴瀑布模型是最早出现的软件开发模型,具有线性顺序的特点,在一定程度上被广泛应用,但是在与到非线性问题的时候,需要进行分解与转化为线性问题才能解决。基于此,在进行如那件需求管理平台的设计与实现时,以线性开发为主,以并行、迭代方法为辅,多种方法结合,消除瀑布模型中的不足,即并行开发。减少了等待的时间,不需要等到上一步工作完成以后才能进行下一步工作。根据实践经验,需求开发、系统设计、技术预测及实现等过程中,发生变更的可能性较大。所以,迭代方法的引入,主要是针对一些易变更问题的需求。为了防止并行开发、迭代开发对产品质量产生影响,在过程域各个阶段,都要进行成果评价,使线形、并行、迭代综合模型发挥巨大的优势。
⑵结合软件技术管理过程域,参考CMM理论模型,中的初始化、诊断、建立、行动、学习五个实施阶段,对SPI软件过程实施改进时,开发出IPSDCA周期模型,选择该模型主要是由于其与全面质量管理中的连续改进结构是相同的,并且实践与术语在CMM模型中已度化,包含大多数IDEAL模型目标需求。
2软件需求管理平台的实现方案
当前,从工具类型来看,国内已经研发成功的软件过程辅助工具中,配置、项目、产品、变更等管理类的使用率比较高。而在实际应用中,企业的需求比例一般是需求、计划、工程、跟踪监控、质量、配置及评审等。
⑴技术要求。处理满足需求管理业务需求外,平台在系统的其它性能方面也有诸多要求。首先,在三层分布体系结构基础上,目的是为了方便快速部署系统的扩展性与缺省功能,满足异地协同产品开发的需求。其次,紧密集成过程域管理工具系统,保证开发过程中的客观需求。第三,平台要有较好的扩展性,由于不同产品的开发流程具有不同的特点,所以在以后的需求管理业务中必须要具有扩展性,便于大规模的投入使用该系统;第四,平台要方便操作,满足不同人员对于需求管理的不同操作需求,使系统更具友好性。除此以外,还应该考虑大规模并发的可能性,持续保持系统的良好性能。
⑵平台框架结构。一方面,平台提供需求业务应用操作程序,例如功能与非功能需求管理、立项与结项管理、风险管理、系统管理等等,提供给用户必须的操作工具,构成运行的环境;另一方面,也会提供一些结构,使平台的扩展性能提升。需求管理平台采用三层分布式的平台搭建结构,在该系统中,前端客户层提供给单个用户浏览器应用程序,满足客户端的需求。操作一方面能够从浏览器登录系统,实现查看表单、填写表单以及角色定义、文档管理等工作;一方面也可以从应用程序登录系统,实现以上工作,也可以利用编辑工具对过程进行自定义等。在后端数据库服务器内,存储有标准过程库、邮件库、定义过程库及其它相关的支持部件。中间应用服务器主要提供管理框架需求的一些服务,如文档管理服务、角色定义服务、过程监控服务等。此外,系统还提供后台对象管理服务,如果预设多个数据多项存取数据库数据,并且设定多个子功能及若干服务功能,如果客户机连接服务器失败的时候,能够自动连接到应用服务器,实现分布式软件工程管理。
3结语
随着计算机技术和软件技术的飞速发展,在商业竞争中,软件所发挥的作用越来越大,软件工程学的发展促进了软件开发的发展,但是在开发的过程中,仍然存在着一些问题。为了提高軟件开发的质量,在软件需求管理平台设计与实现中采用CMM标准,成为当前软件开发与管理中的重点。在实践中,CMM具有非常大的应用价值,同时还存在一些缺陷,需要不断的进行研究与完善。
[参考文献]
[1]雷辉,李怀璋,王青.基于ISO9001和CMM的软件需求管理的研究[J].计算机科学,2012(15).