中华MBA网校
新用户注册 登录
  首页 初中层管理者    公司战略  |  市场营销  |  人力资源  |  企业经营  |  财务金融  |  项目管理  |  信息科技  |  团队建设  |  运营管理  |  事业规划
   当前位置:首页 ->> 初中层管理者 ->> 项目管理
浅谈软件开发项目需求说明的编写
来自:    时间:2015年   阅读1524次     【


    对于从事软件工程的程序员们来说,在进行项目开发之前创建和管理良好的需求是非常重要的第一步,同时也是一项挑战。需求表述不当可带来重大影响,如耗时返工、延期交付及预算超支,严重的还可造成业务违规。目前,有关需求管理的实践大量应用于软件开发工程等领域,软件开发团队在开始一个新的项目之前,会通过详细的用户需求调研准确捕获了用户需求并汇总分析后,再进行下一步的设计与实施工作,以避免因未能正确识别用户的真正需求而导致不断返工和工作成本增加。

  因此,开发团队需要首先有效定义和管理需求,才能确保在保证进度和控制预算的同时,产品能够满足用户所需。本文旨在阐述良好需求描述的特征,并介绍有助于更好地编写软件工程需求说明文档的几点经验,以帮助软件开发团队能够更快更好地取得投资收益。

1.高质量需求的特征

  首先的问题是,何为良好的需求?一般而言,一项编写良好的需求描述,应该包含以下特征:

  良好需求的特征 含义

  正确(Correct) 技术可行,内容合法

  完整(Complete) 能够表达一个完整的想法

  清晰(Clear) 不模棱两可,不易被误导

  一致性(Consistent) 不与其它需求相冲突

  可验证性(Verifiable) 可验证系统能够满足用户需要

  可追踪性(Traceable) 可唯一识别并进行跟踪

  可行性(Feasible) 可在预期成本和计划进度内完成

  模块化(Modular) 可单独变更而不会造成较大影响

  独立于设计(Design-independent) 不包括项目设计和实现的细节、计划信息等

2. 提高需求编写质量的经验

  在明确了何为良好的需求之后,以下介绍几点可以帮助开发团队编写出更好的需求描述的方法,加速软件工程投资回报率。

  经验1:将需求结构化(Structuring)

  每一项需求既不能被重复描述也不能被遗漏,诀窍之一是将需求结构化。需求组织应具有良好的结构,以增进理解,同时避免出现重复和忽略的情况。同时,须具备对需求的向上和向下的追溯能力之后,团队才能够评估需求的覆盖范围。结构化组织需求是控制和改善需求质量的第一步。

  经验2:重视非功能性需求(Constraints)

  对于编写需求说明书而言,涉及法规遵从和提高软件系统质量的非功能性需求(又称约束条件,Constraints)同样重要,它们通常包括软件的性能、界面和可维护性等方面。编写良好需求应包含对约束条件的覆盖,原因是一旦如下领域(例如,性能、可靠性和易用性等)在开发完成后出现缺陷,通常都无法在系统中对其进行重新设计。因此,在项目初期将所有类型的非功能性需求考虑在内,可帮助开发团队大幅提高项目成功的几率。

  经验3:将需求可视化(Visualization)

  大多数需求分析人员发现建模有助于直观化文字形式的需求。无论是在白板上绘图、使用Microsoft PowerPoint演示工具,还是仅仅在脑海中构建一个模型,都可视为一种建模方法。以上这种图型化的文档应与文字形式的需求描述一起统一管理,以确保一致性、可跟踪性和变更控制能力。可视化需求建模提供了一种与客户及最终用户
沟通的简单而有效的方法,通过该方法可较容易地掌握客户和最终用户的需求。此外,图型化还有助于阐明需求,增进软件项目所有相关人员之间的沟通与协作。

  经验4:使需求具备可测试性(Testable)

  产生良好需求的另一种行之有效的方法,就是从初期就确保每个需求具备明确的可验证性,这种做法不仅有助于为项目后续阶段做好准备,还可以帮助编写者保持正确的思路。对于非功能性需求此规则也同样适用,例如,对于“软件必须具有高可用性”这种表述的需求我们无法进行测试,而改写为明确的“普通用户应能够在3分钟内生成一个报告”就使该需求具备了可测试性。

  经验5:管理好需求变更

  大多数软件工程项目中,来自用户的需求经常会发生变化。随着项目的进展,开发团队要保持清醒的头脑、按照工程要求做出相应调整,并响应不断变化的市场形势和客户需要。仅仅编写出完美的首版需求描述是不够的,如果未能对需求的变更过程进行恰当管理,那么控制不善的变更便可能导致系统和软件功能缺失、返工以及利润损失。开发团队应该实施可靠的、可重复的变更控制流程。 

  经验6:正确的重用以往优秀需求

当之前项目的已编写的良好需求适用于当前情况时,不要单纯地将原有需求直接复制。重新使用以往需求的正确方法是继续维持两个需求之间的联系,如通常打上re-use标记。此标记使分析人员能够随时查找到原始需求,以检查需求分解分配等信息。通过灵活的方法重新用以往需求,开发团队可以获得技能、经验和知识的共享。

  经验7:在客户需求和开发能力之间找到平衡

  许多情况下,较少的需求数量有助于产生更加优秀的需求描述。软件工程项目不可能实现既采纳和满足企业所有用户的需求、营销理念和商业计划,同时还符合预算并能按期交付。项目经理必须找到客户需求和开发能力之间的平衡点,确定可为客户带来最大价值,并帮助企业提升创新能力的那些需求,而不是一味地试图满足用户所有需求。

  经验8:建立范例知识库( Knowledge Database)

  提高需求质量的另一有效途径是建立范例知识库,并参考其中的典型范例。知识库内容应该包括:良好需求和文档的正、反面示例,以往项目中可反映团队在特定领域内专门知识的良好(和不良)需求。为了使开发团队可以更好的参考,知识库中的需求案例应具备明显的积极或消极意义,而非中规中矩的。通过知识库示例开发团队可以参考以往的经验、吸取教训,避免重蹈覆辙,进而提高需求编写的质量、一致性和完整性。

  如果前期用户需求收集得不明确,那么后期的开发过程注定生产错误的产品。通过应用业界领先的需求管理工具,可以优化项目开发的沟通和协作的过程,提升软件项目过程质量。 开发团队可以通过经验提升需求编写质量。编写好的需求说明是一个开发项目最为重要的活动之一,优秀的需求描述可以改善并加速项目的投资回报。

 

 


>>浏览全部0条评论
主题:
验证码:
 
内容:
您的IP:3.17.174.239,请注意文明用词
账户:
密码:
注册 找回密码
-:::-学员心声 更多..
mmm123123 说:
    人生当中有四堂课,我们是一定要上的,哪四堂课呢?1、读万卷书2、行万里路3、阅人无数4、名师开悟。
bestme 说:
    听了老师讲的领导力是一门情商修炼专题,让我明白情商对一个领导者有多重要啊
bestme 说:
    平庸的员工是昂贵的,只有优秀的员工才是免费
qwerty 说:
    老师讲如何才能让员工自动自发的去工作,总得来说就是让员工有获得感,给企业创造利润也就是给自己增加收入
qwerty 说:
    听了老师讲解的企业管理方法--拆解后,对如何检查部署的执行力有更高的认识。
-:::-学习卡中心

 

说明:为方便广大学员购买经理人网校课程,特推出经理人网校学习卡(共分30、50、100、200、500元五种面值),每张学习卡都有不同的卡号,学员在购买学习卡后,刮开密码覆盖层,进入经理人网校,注册学员代码和密码、然后用已注册的学员代码和密码登录经理人网校,选择所要学习的课程(也可以在充值后选择)、输入学习卡的卡号和密码(如有多张可依次输入,直到充完为止)、学习卡充值完毕、就用“学习卡支付”支付课程费用、等确认支付成功后,用已注册的学员代码和密码登录经理人网校点击所报课程开始学习。
注意:为保障您的听课安全,请务必通过本网公布的正规渠道购卡并自行注册、充值!

-:::-相关软件下载
 媒体播放器下载  Real播放器下载
 FLASH播放器下载  压缩软件下载
 英语通播放器下载  AC课件播放器下载
 视频解码器下载  绿坝-花季护航
-:::-汇款及联系方式

经理人网、职业经理人证书、经理人资格证、是中国经理人获取各类管理类资格证书最佳学习网络机构!

请扫描微信二维码付款,备注您在网校的用户名,我们会把您的资金充到你的帐户里,

或支付后请加微信:gongpansixiang,通知客服人员.

 

网上书店
MBA考试类
管理经典著作
战略管理类
财务管理类
人力资源类
市场销售类
其它类型
网站关键词  |  关于我们  |  联系我们  |  招商中心  |  学习卡购买说明  |  付款及充值方式  |  帮助中心  |  学员心声
经理人网 www.58guanli.com  COPYRIGHT © 2013 - 版权所有  人人都是管理者-我爱经理人网、58管理、经理人证书、职业经理人、经理人培训、经理人招聘、MBA联考、DBA博士-是中国管理者学习交流的共同家园!

有任何问题请加微信:gongpansixiang,通知客服人员

中国工业和信息化部:湘ICP备19004842号-1  湘公网安备 43011102001727号