一、如何对需求不确定的创新产品进行分析和设计?
1、什么是需求分析?
(1)定义
需求分析也称为软件需求分析、系统需求分析或需求分析工程等,是开发人员经过深入细致的调研和分析,准确理解用户和项目的功能、性能、可靠性等具体要求,将用户非形式的需求表述转化为完整的需求定义,从而确定系统必要功能的过程。
(2)过程
a.问题识别:从系统角度理解软件,确定要求,提出条件和标准。
b.分析与综合:逐步细化所有软件功能,给出综合的系统解决方案。
c.制定规格说明书:即描述需求的文档;软件需求规格说明书是需求分析阶段的主要成果。
d.评审:对功能的正确性、完整性、清晰性等给予评价;评审通过才能进入下一阶段。
2、需求分析的难点
(1)确定问题难
(2)需求时常变化
(3)交流难以达成共识
(4)获取的需求难以达到完备与一致
(5)需求难以进行深入的分析与完善
3、对需求不确定的创新产品的分析和设计方法
(1)使用恰当的软件分析方法
目前存在多种软件分析方法,可以帮助软件开发人员更好地与用户交流沟通、更好的了解用户需求从而能够对创新产品展开分析和设计。
从系统分析的角度,需求分析方法可分为以下四类:
a.功能分解方法:将系统作为多功能模块的组合,每个功能模块又可分为若干子功能和功能接口。
b.结构化分析方法:又称为数据流法,由数据流图和数据词典构成。跟踪数据流,观察数据流动方式和各个环节上的处理。
c.信息建模方法:从数据角度对现实世界建立模型,常用的基本工具是E-R图、信息建模法、语义建模法等。
d.面向对象分析方法:识别问题域内的对象,分析对象之间的关系,并且建立三类模型——对象模型、动态模型和功能模型。
(2)针对需求分析难点提出解决方法
a.应用领域比较复杂且业务经常变化:请教领域专业人士作为专家,在进行分析之前力求对软件应用领域进行一个较为翔实的了解;针对业务经常变化的问题,要将用用户需求随着业务变化而变化,而不是一招鲜用到最后。
b.需求变化问题:可先给出需求的1.0版本,并向用户请求确认,如果有所调整再依此给出2.0、3.0……等版本,等全部确认无误之后,可以在较短时间内开发出一个原型系统,并给用户进行验收,验收通过再进行后续的开发,避免因需求变更而出现做无用功的情况。
c.交流困难问题:采用图、表方式及其他方法展开沟通。
二、以“未来的图书是什么样的”为例给出您的分析和设计
随着目前智能手机等设备的日渐普及,目前图书已经朝着e-book(电子书)的方向发展,从环保的角度考虑纸质书有可能有朝一日会被淘汰掉。但是目前的电子书也基本上是停留在“视觉”领域,未来图书会更加普及“听书”和视频的配置。
对读者来说:
未来图书可以为读者构建一个书中的虚拟场景,类似VR技术,让读者(也许到时候已经不能再称之为“读者”了)能够真实感受并且经历书中的场景,有更加深入的感触。
对写者来说:
(1) 写者不再使用传统的文本编辑器来进行文字的录入,而是使用一个特定的软件,可以由写者为读者自行构建书中的虚拟场景,或者干脆根据写者录入的文字自动生成,写者在对其中的不合适之处进行一定的调整即可;
(2)或者说有朝一日写者不再需要进行手动录入,而是根据脑电波识别,脑中所想就所得,最大程度减轻写者的负担。