由于客户对信息系统的不理解加之信息系统自身的复杂性,需求很难在初期明确定义,从而导致在项目在进展中产生偏差。这个偏差的消除的办法有很多,本文以防盗管理系统项目中为例,就如何管控项目的需求管理的经验进行记录。
项目范围
- 要告诉甲方信息系统的复杂性,初期的需求很难严格定义
- 项目范围由双方共同约定,甲方有义务提供尽可能详细的需求说明,乙方有义务帮助甲方理清实际的具体需求。
- 告诉甲方需求到中期主变更的困难性
- 项目范围需要有明确的边界,当无法确定时,双方沟通决定。
项目周期
- 乙方在估计项目周期时,甲方有明确的需求说明,因需求不明确而产生的延期,由甲方负责。
- 乙方的项目周期估计是基于合同上的内容,不包括因变更而产生的延期。
- 最终的工期为 项目预计工期+变更延期时间。
- 因甲方需求变更造成的延期,由甲方承担责任。
质量要求
质量要求其实就是对最终提交物做出的要求。对于信息系统,需要明确以下的质量要求。
- 使用人数,即终端的使用人数;
- 数据量,系统数据的量的级别,这个要根据具体情况分析;
- 可扩展性,系统扩容的方式,需要具体的要求;
- 延时性,消息接收和发放的容量;
- 其他约束,具体系统具体分析,如识别系统有识别率等。
- 数据安全性
- 数据稳定性
- 突发性能处理能力
- 其他要求
项目成本
乙方在项目分析阶段,一定要对需求有充分了解,然后将需求细化后,然后逐一进行成本估计,这样可以得到相对得到比较精准的成本计算。具体来说分为以下几点:
- 功能模块
根据实际使用开发层面的实际耗时的功能进行初步划分,将所有功能划分为尽可能独立的可能模块,如需求分析、系统设计、数据库模块、数据库接口模块、手机端显示、网页端显示等等。 - 功能模块细化
将所有的功能模块逐一进行细化,根据实际的情况,进行子模块划分,如数据库分为数据库初步设计、 - 对所有的功能进行逐一细化,划分成尽可能小的单元,对所有的功能进行逐一细化,划分成尽可能小的单元。
合同(需求)变更
-
任何一方如对合同(需求)内容有异议,可以向对方提出变更申请。
给双方*要求*变更合同的权力。
-
变更申请必需经双方同意签字才可生效。
其实这条非常重要,可以防止甲方随意需求变更。根据此条,乙方可以根据实际的项目进展、技术要求、变更难度等因素,拒绝甲方提出的需求变更。而乙方拒绝变更的原因主要基于开发成本角度考虑,如果甲方提供足够的费用支持,可以支持甲方变更。但务必要注意,变更时要充分考虑到变更对整个系统带来的影响,以避免因变更导致项目无法完成。
-
需求变更必需要有明确的变更要求,包括变更内容、工期、质量和费用。
-
双方同意签字后生效
免责条款(即风险管理)
- 所有的需求都必需符合国家法律法规。任何非法的需求,乙方不予支持,也不承担任何责任。
- 不得与国家政策法规冲突。违法的事情肯定不受支持,这条客户容易接受。
- 凡因国家政策法规等原因造成的问题,不由我方负担。 如地图经纬度的问题,属于这个问题。
- 需求变更所带来的新的工作量由甲方承担。
- 根据沟通渠道的不同,双方约定的有效力由高至低依次为:
合同内容 > 其他书面形式约定 > 口头约定
。其中合同约定为本合同内的所有约定;其他书面约定包括邮件、微信或QQ等聊天软件、电话录音等可以追溯的约定;口头约定指双方在项目沟通中的口头约定。 - 乙方对需求文档中明确表述的需求负责,但不对潜在需求负责。
- 因甲方需求不明确造成的项目无法最终实现,由甲方负责。