目录
摘要(300~330字)
正文(2000~2500字,2200字为宜)
背景介绍(500字做左右)
论点论据(1500字做左右)
收尾(200字左右)
注:本篇论文篇幅稍长,您可以适当删减。
摘要(300~330字)
本文以我参与的“xx省健康促进与教育信息化平台”系统项目建设为例,讨论软件开发中需求管理的有关知识及实际应用过程。该系统项目基于相关部门为进一步落实健康中国行动有关要求而建设,目标是通过建立一个服务于全省疾控系统和居民的信息化平台系统,通过线上线下相结合的方式,全面提示疾控系统健康促进与教工作效率及居民健康素养。项目的特点是用户范围广、业务复杂、质量要求高。我作为该项目团队的骨干人员,主要负责需求分析、架构设计和部分项目管理工作。本文首先介绍了需求管理的基本概念,然后介绍了需求管理中的主要活动及在项目中的实际运用,最后介绍了规范化的需求管理对项目的顺利实施带所来的帮助。
正文(2000~2500字,2200字为宜)
背景介绍(500字做左右)
2023年8月,为进一步落实国家关于健康中国行动中对“实施健康知识普及行动”、“建立并完善健康科普专家库和资源库”、“构建健康科普知识传播和发布机制”、“全面提升健康素养”等要求,某省疾控中心开始启动范围覆盖全省的健康促进与教育信息平台系统项目建设工作,目标是通过建立一个健康信息化平台,通过线上线下相结合的方式,全面提升疾控系统健康促进与教育工作效率和居民健康素养水平。系统的包括两部分,一是建立服务于全省疾控系统的健康促进与教育工作信息平台,二是建立服务于居民的健康知识宣教平台。其中前者又包括健康资源库管理平台、健康促进工作业务协同平台、健康教育作品发布与审核平台、在线培训与考核平台,而后者主要包括由发布健康教育知识的网站和微信小程序组成。项目金额260万,要求在6个月内开发完成并上线。
经公开招标,我所在公司最终中标该项目,我作为公司骨干技术人员之一,被指定参与该项目建设,并负责需求分析、架构设计和部分项目管理工作。
经需求调研我了解到,该项目主要特点是用户范围广、用户量大、业务复杂,同时由于政策及各科室业务的多边性,该项目的需求可能会经常进行变更。客户对项目质量要求较高,并着重提出,项目应具备较高的可修改性,能快速响应需求的变化。基于此,为了保证项目质量,除了精准的需求分析、良好的架构设计等SQA主要活动之外,我特别关注项目的需求管理工作,因为良好的需求管理是保证项目后期质量的重要手段,也是提升客户满意度的重要举措。本文中,我会详细介绍需求管理的概念、需求管理的活动及需求管理在项目中的实际运用。
论点论据(1500字做左右)
论点
软件需求管理是一个对系统需求变更了解和控制的过程,需求管理过程与需求开发过相互关联,初始需求导出的同时就要形成需求管理规划。一旦形成了需求文档的初稿,需求管理活动就开始了。
需求管理主要包含变更控制、版本控制、需求跟踪和需求状态跟踪等四项活动。
变更控制
在当前的软件开发活动中,需求变更已经成为一种常态。需求变更主要包括四项工作:
- 问题分析和变更描述。当客户提出一项需求变更提议后,需要系统分析人员与客户进行进一步的沟通,全面分析问题,对变更背后的原因进行探究,明确变更对系统现有模块及业务的影响,进而更加清晰的描述需求变更对于功能、性能、界面等方面的具体要求,使大家对需求变更有清晰而一直的理解。
- 变更分析和成本计算。组织技术专家、分析人员等对客户所提出的需求进一步的分析,评估需求变更对项目的系统架构、数据库结构、代码逻辑等方面的的影响,同时从人力、物力、时间等方面估算变更所需要付出的成本,计算成本效益比,为领导审批提供依据。
- 变更审批。将需求变更及分析结果提交给CCB(变更控制委员会),CCB根据项目整体目标、业务需求优先级、成本效益比等进行综合考虑,决定是否同意需求变更。如果批准,则应明确变更执行责任人员及时间节点要求。
- 变更实现。开发团队根据变更提议进行具体的开发及实施工作,完成后,进行单元测试、集成测试、回归测试等工作,确保变更质量。变更上线前更新相关文档资料,确保系统与文档处于一致的状态。
需要说明的是,变更控制并不是给需求变更设置障碍。相反地,他是一个渠道和过滤器,可以确保采纳最合适的变更,使变更对项目的负面影响降到最低。
版本控制
版本控制是需求变更管理中的一项重要工作,用于对需求文档的版本和项目代码版本进行管理控制,避免发生混乱,降低失控风险。版本控制的主要工作包括:
1)选择版本控制工具。常见的版本控制工具有Git、SNV、VSS等,用于存储需求文档、代码等资源。通过版本控制工具,可以方便地查看文档、代码的历史版本,对比不同版本之间的差异,还可以将文档、代码恢复到历史版本。
2)制定版本号命名规则。
合理的版本号命名规则可以让人直观地了解需求变更的程度,通常采用主版本号 + 次版本号 + 修订版本号的方式来标识版本,规则如下:如果系统发生了重大变化或不向下兼容的变化,则主版本号递增;如果系统在核心架构不变的情况下增加新的功能或者原有变化的功能不影响和以前的数据和业务,则此版本号递增;修订版本号则主要用于表示系统修复了缺陷,无功能上的变化。
3)变更记录。
每次对需求文档或代码进行修改时,要文档、代码中记录修改的内容、原因、时间、人员等信息,同时在版本控制软件中也要增加变更说明,以备查询。这样可以帮助其他人员了解变更的历史和背景,有利于软件系统的长期维护。
需求跟踪
需求跟踪是指在软件开发过程中,建立并维护需求与项目各个阶段的工作产物(如:设计文档、代码模块、测试用例等)之间对应关系的过程,它可以记录需求从提出到实现的完整路径。需求跟踪的具体工作主要包括建立需求跟踪矩阵和需求跟踪检查。
1)建立需求跟踪矩阵。建立需求跟踪矩阵表,将需求与项目各个阶段的工作产物进行关联,并记录每个需求的状态,如“进行中”、“已完成”等。通过需求跟踪矩阵表,可以方便跟踪需求的实现情况,及时发现和解决需求偏差。
2)需求跟踪检查。在项目的各个关键阶段,如设计、开发、测试等阶段,定期对需求跟踪情况进行检查,确保每个需求都需求都按计划进行,没有遗漏或偏差。如有特殊情况暂时无法实现,应在需求跟踪矩阵表中记录清楚。
需求状态跟踪
需求状态跟踪是为及时了解每个需求的状态变化,以便及时做出调整。需求状态跟踪的主要活动包括:定义需求状态、状态更新与记录。
- 定义需求状态。定义需求的不同的状态,如:待分析、已分析、待开发、已开发、待测试、已测试、已上线、推迟处理。通过定义需求状态,可以对需求全生命周期进行管理。
- 需求状态变更与记录。在需求管理的各个阶段,及时更新需求的状态,并记录需求状态变更的原因和时间。通过状态跟踪,可以及时了解每个需求的进度变化情况,及时发现和处理需求管理中的问题。
论据
在项目的实施过程中,我们基于以上指导思想,实施了规范的需求管理。
首先,我们成立需求变更控制委员会(CCB),成员由项目经理、技术骨干、用户代表组成。明确了各自职责、权限以及详细的会议制度和决策机制。所有需求变更都要经CCB审核通过后才能实施。
其次,我们对项目需求变更流程做了统一的规定和培训,确保所有项目人员对变更流程有了清晰和一致的认识。在项目实施过程中,严格按照流程执行。当客户提出一项新的需求提议后,首先由需求分析师对需求进行深入分析,了解变更背后的原因和目的,然后组织技术人员对变更进行进一步评估和成本估算,之后提交CCB审核,审核通过后,及时实现需求并更新需求跟踪文档。
再次,我们确定了版本控制工具、版本号命名规则和需求跟踪矩阵表格样式。使用Git作为版本控制工具,版本号规则遵循主版本号+此版本号+修订版本号这一命名规则,需求跟踪矩阵表上清晰的体现了每个需求与设计文档、测试用例、代码模块之间的关联关系。
最后,我们是使用项目管理工具禅道对需求状态进行管理和监控。每三天开一次项目例会,对各个状态的需求进行统计和分析,及时发现需求管理中存在的问题并做出调整。
通过采取以上措施,我们实现了对需求的规范化管理,避免了很多无效需求,对项目顺利通过验收提供了很大的帮助,具体体现在:
有效控制了需求变更。对于符合不有关标准要求的需求变更提议,我们给客户做了解释说明,对于一些不太合理的需求,我们也通过深入分析,为客户提供了更好的解决方案。比如有客户提出,登录密码应该允许纯数字,方便记忆和输入,针对这个需求,我们告诉客户复杂的密码设置是网络安全法和计算等级保护条例的有关要求,不能随意改动;还有客户提出,所有专家的手机号应该在系统中公开,方便联系专家,我们经分析后认为,专家手机号属于高度隐私数据,因此,只能向得到授权的操作人员开放,客户非常认可这种做法,并称赞我们专业。
提高了文档与代码的一致性。通过严格的需求跟踪和版本管理工具,我们实现了需求文档与代码之间的一致性,避免了很多潜在的不利因素,为项目长期维护奠定了基础。
提高了项目质量。严格规范的需求管理,使得最终审评通过的需求都是逻辑合理且描述清晰的,这为开发团队和测试团队执行正确的需求变更提供了重要的依据,确保了工作效率的提升和产出物符合客户需求。
提升客户满意度。由于良好规范的需求管理过程,我们很好的满足客户提出各项需求,最终提高了产品质量,提升了客户满意度。
收尾(200字左右)
规范的需求管理是保证项目顺利交付和验收的关键和因素之一。通过有效的变更控制、版本控制、需求跟踪和需求状态跟踪,可很大程度上能提高软件的质量和用户满意度。在本项目中,我们通过一系列有效的需求管理措施,成功实现了软件需求的合理管控,为项目顺利通过验收提供了有力保障。在今后的软件项目开发中,我将继续深入研究和探索需求管理的理论和方法,不断完善需求管理流程和机制,为提高软件项目的开发效率和质量做出更大的贡献。