如何给软件做需求分析
需求分析是开发人员对系统需要做什么和如何做的定义过程。从系统分析的经验来看,这个过程往往是个循序渐进的过程,一次性对系统形成完整的认识是困难的。只有不断地和客户领域专家进行交流确认,方能逐步明了用户的需求。从系统开发的过程得知,系统分析时犯下的错误,会在接下来的阶段被成倍的放大,越是在开发的后期,纠正分析时犯下的错误所花费的代价越是昂贵,也越发影响系统的工期和系统的质量。
项目开发过程中,可以邀请甲方技术负责人参与需求调研,以便保证需求调研质量,同时形成用户需求说明书。需求评审时会同双方管理层、项目实施层共同进行,对于通过用户确认的需求,交由配置管理员形成需求基线。
用户需求在甲方确认后,由系统分析人员形成软件需求分析报告,同时对软件需求分析报告进行评审,对于评审通过的软件需求分析报告可以交由测试人员进行测试计划和测试用例的编写。
对于开发过程存在的需求变动,甲方填写变更申请单发给项目经理,在质量保证人员参加的情况下,对这个变更进行评审,由项目经理组织项目组成员一起讨论实施变更的可行性及实施后所带来的影响,对于影响小的变更直接记录,大的变更则需要形成正式的变更报告,无论那种变更都需要对相应的文档实施同步变更(包括需求分析报告、系统设计、安装手册、操作手册等)。但是对于无法实现或是变更会带来巨大的影响而将导致进度的延期,这时,我们将变更报告提交给甲方并召开协调会议,讨论变更取舍问题或是项目进度变更问题。
决定变更之后,由项目负责人组织实施变更,测试人员检测变更结果,而质量保证人员监督变更实施过程,并协助配置管理员对变更后的成果进行配置管理。变更实施完后,运行前还需要协助用户一同测试并由甲方签字后同意方可上线。
系统设计
优良的体系结构应当具备可扩展性和可配置性,而好的体系结构则需要好的设计方法,需要针对项目的结构、项目的特征和用户的需求来分析。本项目中将安排实施方高级系统架构师担当项目总体设计师,汇同总体设计组完成系统设计。
另外对公共类模块的开发。由总体设计组通过对用户需求的仔细研究,尽可能的识别出公共类,并进行定义和设计,以减少重复工作。对于项目组提供的设计文档,由项目经理组织,质保小组成员参与,对其设计文档进行评审,及时发现设计中可能存在的错误,降低项目开发风险,同时确保设计文档能为开发人员、测试人员提供切实的指导。对于可复用的设计进行提取作为公共库设计和开发,提供项目组。最后交由配置管理员进行设计文档的版本控制。