软件构建之确定产品可执行性

场景

来了一个新的项目,你用什么方式来保证项目的可执行性,
说直白些就是在自己的把控范围内,在一定期限内完成项目。
你可以尝试使用下面的步骤去做;

一、产品是干什么的,能解决什么样的问题

必须要非常清楚这个产品是做什么的,解决什么问题。

二、复杂度

如果一个产品充满着复杂度或者复杂度难以攻破的时候这个产品的完成不了的风险很高。
所有要合理控制每一个产品的复杂度。
so,怎么做:

  • 把复杂度按0,1标号,0为最低,1为最高。
  • 按复杂度从高到低排序,找出复杂度较高的。
  • 通过和需求方沟通,尽量把复杂度较高的降低它的复杂度,比如:不做些功能或换个复杂度低的方式做。

三、连贯性

原则

a. 从整体连贯性到局部连贯性(示例:从树的主干到分枝)
b.如果项目存在一些实实在在的资源,例如:视频,试题等。
就要从系统资源的生命周期去梳理,保证所有牵涉到这个资源的流程都是顺畅的。
比如:学生在视频网站看到的视频,其实是经过很多的环节才可以最终观看的,视频生产环节,视频有打包环节,视频有成为商品购买的环节,视频有鉴权环节等等。

验证流程是否顺畅

a. 节点是否中断
b. 流向是否正确,有没有反向情况
c. 是否有多余节点
d. 此功能点流程是否合理

四、概念

这里指的概念更多是领域的知识,做教育和做医疗关注的概念肯定不一样,
所以,做产品必须要了解这个产品所在领域中牵涉到的所有概念。

1.将超出你认知范围内的名词列举出来。

比如:一分一段表,录取情况等等.....

2.找产品或者需求方去了解这些名词表示的概念,

使用一句话描述出来, 对其的理解必须到原子不可拆分,
比如,老师就不是原子的,年龄就是。
简单粗暴的方式就是:如果一个名词能够使用一种基本数据类型进行表达就已经达到原子了。

3.找出这些概念之间存在的关系。

找出概念之间的关系让那些孤立看似无关的名词进行关联,让这些名词构成一个完整的系统,保证这些名词能够覆盖整个产品的需求,
其实,这些还直接影响我们下一步做系统设计的时候类图的关系依据。

温馨指导

软件构建下一环节为【需求确认】

posted @ 2016-07-26 21:14  王森  阅读(467)  评论(0编辑  收藏  举报