业务需求,是标志组织或客户高层次的额目标,业务需求通常来自项目投资人,购买产品的用户,实际用户的管理者,市场营销部门或产品策划部门,业务需求描述了组织为什么要开发一个系统,即组织希望达到的目标,使用前景或范围文档来记录业务需求,这份文档有时也被称作项目轮廓图或市场需求
用户需求是描述用户的目标,或用户要求系统必须完成的任务,场景描述,事件一响应表都是表达用户需求的有效途径,也就是说用户需求描述了用户能使用系统来做些什么操作。
功能需求是规定开发人员必须在产品中实现软件功能,用户利用这些功能来完成任务,满足业务需求,功能需求有时也被称作为需求,因为习惯上总是用“应该”对其进行描述:“系统应该发送电子邮件来通知用户已接收其预定”功能需求描述对开发人员需要实现什么。
1. 要做一个什么样的系统
2. 系统要在什么样的环境下进行
在设计新系统的必须去考虑,要花时间去了解以前系统的功能,接口等,如果不了解,等把系统开发完才发现系统脱离了公司原有的业务流程,这样公司无法运作,那就代表开发的系统根本没有价值。
3. 要解决那些问题
开发出来软件系统就是为了解决客户需求,一个B2C网站就是卖商品,主要由客户,商品,购物车,订单组成,把这些核心功能定义好,其他的意外都不会太影响到整个系统的进程。
4. 将来可能会发生那些变化
面对将来的发展,可能会不能考虑完全,考虑到公司的战略发展,就要能想到多少就想多少,开发一个系统不只是满足当前的需求,如果眼光只是放在眼前,那么该系统很快就会被淘汰掉,功能也许不需要现在实现,但接口需要留下,不然以后改进的时候就会变得困难,如果一个稍微的小需求都要系统架构,这个系统会变得不稳定。
5. 系统可以维持任务的周期是多少
系统周期与公司战略发展的关系是很紧凑的,一个系统的功能不可能随着社会的变化,在设计的时候去了解一下公司的战略发展,例如公司多少年内要变成什么样子,客户是多少,网站浏览量,可以做下评估这样就考虑系统架构的问题,例如:刚开始准备了一个复杂的架构,但需求很简单,在实际的运行中,速度缓慢,因为架构复杂,系统运行就变得缓慢,
6. 系统分几个阶段实施
在开发初期,是不可能将系统所有的功能都完成的好,为了加速开发进度,为了系统尽快上线这就好像建楼一样分阶段,分阶段实施可以节约成本,可以加快实施速度,不管是公司还是管理人员还是开发人员,能尽快看到结果
7. 系统开发团队由那些人组成
一个好的团队,必然是发挥团队每个人的优势,在开发团队中,不是技术能力强就是有价值的人,一个人也许有机会经历团队中的每个环节,并深入但这绝不是一个机会,如果有的话就成立一个人开发,一个人的开发也不能叫团队有时候一个人什么都能做,多个人就什么都做不了,如果是大项目那就不得不团队协作。