代码大全读书笔记(1)

3.3问题定义的先决条件

码农不为写代码而生,而是为了解决问题而生,只不过是运用coding的手段去解决各种问题。

遇到一个问题,应该对其描述,即就是我们要解决什么问题,专业点的说法就是问题的定义。问题定义清楚之后,我们才能围绕其进行分析,设计的工作,提出解决方案,最终解决问题。所以,问题定义是万里长征的第一步。

问题应该怎么定义呢?问题定义应该是从客户的角度出发,纯粹的对问题进行描述,不涉及任何解决方案,是一个比较宏观的、方向性的指引。


3.4 需求的先决条件

问题定义之后,我们需要详细的阐述系统应该做什么,涉及到较多的细节,也就是需求分析。

通常拿到项目之后,大家都急于开始编码工作,因为功能的实现是最直接的成就感,也是最直观的进度,而忽略了之前的需求分析工作。需求分析为什么重要呢?有以下几点:

1、明确需求,与用户达成书面上的共识,落实需要的功能点;

2、多个码农协同开发时,如果对某个功能点存有争议,那么可以提供一个正确的功能点描述,解决争议;

3、保证开发方向正确。需求错误通常比代码bug严重得多;

需求一次搞定,之后再也不会做更改,是很理想情况。通常,用户一开始对自己的需求也并不是很明确,而随着项目的开展,用户不断的理解真正需要的东西,所以,此时,需求很容易有变更。那么,作为码农,怎么来应对开发过程中的需求变更了,因为这实在是一件很让人头痛的事情。为此,我们可以做如下工作:

1、核对需求表,提高需求质量,尽量能够理解用户需要并进行全面的分析;

2、计算需求变更成本并反馈出来,进行评审,从而协调用户需求和开发成本的矛盾;

3、对于大型项目,可以进行演进交付,模块化的进行调整;

4、需求变更太多、不明确、混乱,可考虑放弃该项目。

说了这些,其实在项目进行过程中,大家都仍然未对需求分析引起足够的重视,而且,即便是这样,项目也在可控范围内,不会导致太恶劣的后果。估计是项目较小的缘故吧,如果大型项目,如果不按标准走,对于项目来说应该是灾难性的吧。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值