- 如何对需求不确定的创新产品进行分析和设计?简要总结一下有哪些方法和策略
- 需求分析也称为软件需求分析、系统需求分析或需求分析工程等,是开发人员经过深入细致的调研和分析,准确理解用户和项目的功能、性能、可靠性等具体要求,将用户非形式的需求表述转化为完整的需求定义,从而确定系统必须做什么的过程。
- 需求分析的内容是针对待开发软件提供完整、清晰、具体的要求,确定软件必须实现哪些任务。具体分为功能性需求、非功能性需求与设计约束三个方面。
1)功能性需求
功能性需求即软件必须完成哪些事,必须实现哪些功能,以及为了向其用户提供有用的功能所需执行的动作。功能性需求是软件需求的主体。开发人员需要亲自与用户进行交流,核实用户需求,从软件帮助用户完成事务的角度上充分描述外部行为,形成软件需求规格说明书。
2)非功能性需求
作为对功能性需求的补充,软件需求分析的内容中还应该包括一些非功能需求。主要包括软件使用时对性能方面的要求、运行环境要求。软件设计必须遵循的相关标准、规范、用户界面设计的具体细节、未来可能的扩充方案等。
3)设计约束
一般也称做设计限制条件,通常是对一些设计或实现方案的约束说明。例如,要求待开发软件必须使用Oracle数据库系统完成数据管理功能,运行时必须基于Linux环境等。
- 需求分析阶段的工作,可以分为四个方面:问题识别、分析与综合、制订规格说明、评审。
1)问题识别:就是从系统角度来理解软件,确定对所开发系统的综合要求,并提出这些需求的实现条件,以及需求应该达到的标准。这些需求包括:功能需求(做什么)、性能需求(要达到什么指标)、环境需求(如机型、操作系统等)、可靠性需求(不发生故障的概率)、安全保密需求、用户界面需求、资源使用需求(软件运行是所需的内存、CPU等)、软件成本消耗与开发进度需求、预先估计以后系统可能达到的目标。
2)分析与综合: 逐步细化所有的软件功能,找出系统各元素间的联系,接口特性和设计上的限制,分析他们是否满足需求,剔除不合理部分,增加需要部分。最后综合成系统的解决方案,给出要开发的系统的详细逻辑模型(做什么的模型)。
3)制订规格说明书: 即编制文档,描述需求的文档称为软件需求规格说明书。请注意,需求分析阶段的成果是需求规格说明书,向下一阶段提交。
4)评审: 对功能的正确性,完整性和清晰性,以及其它需求给予评价。评审通过才可进行下一阶段的工作,否则重新进行需求分析。
- 目前,软件需求的分析与设计方法较多,一些大同小异,而有的则基本思路相差很大。从开发过程及特点出发,软件开发一般采用软件生存周期的开发方法,有时采用开发原型以帮助了解用户需求。在软件分析与设计时,自上而下由全局出发全面规划分析,然后逐步设计实现。
从系统分析出发,可将需求分析方法大致分为功能分解方法、结构化分析方法、信息建模法和面向对象的分析方法。
(1)功能分解方法。
将新系统作为多功能模块的组合。各功能义可分解为若干子功能及接口,子功能再继续分解。便可得到系统的雏形,即功能分解——功能、子功能、功能接口。
(2)结构化分析方法。
结构化分析方法是一种从问题空间到某种表示的映射方法,是结构化方法中重要且被普遍接受的表示系统,由数据流图和数据词典构成并表示。此分析法又称为数据流法。其基本策略是跟踪数据流,即研究问题域中数据流动方式及在各个环节上所进行的处理,从而发现数据流和加工。结构化分析可定义为数据流、数据处理或加工、数据存储、端点、处理说明和数据字典。
(3)信息建模方法。
它从数据角度对现实世界建立模型。大型软件较复杂;很难直接对其分析和设计,常借助模型。模型是开发中常用工具,系统包括数据处理、事务管理和决策支持。实质上,也可看成由一系列有序模型构成,其有序模型通常为功能模型、信息模型、数据模型、控制模型和决策模型。有序是指这些模型是分别在系统的不同开发阶段及开发层次一同建立的。建立系统常用的基本工具是E—R图。经过改进后称为信息建模法,后来又发展为语义数据建模方法,并引入了许多面向对象的特点。
信息建模可定义为实体或对象、属性、关系、父类型/子类型和关联对象。此方法的核心概念是实体和关系,基本工具是E-R图,其基本要素由实体、属性和联系构成。该方法的基本策略是从现实中找出实体,然后再用属性进行描述。
(4)面向对象的分析力法。
面向对象的分析方法的关键是识别问题域内的对象,分析它们之间的关系,并建立三类模型,即对象模型、动态模型和功能模型。面向对象主要考虑类或对象、结构与连接、继承和封装、消息通信,只表示面向对象的分析中几项最重要特征。类的对象是对问题域中事物的完整映射,包括事物的数据特征(即属性)和行为特征(即服务)。
2. 以“未来的图书是什么样的?”为例给出您的分析和设计
- e-book作为纸质图书的电子化,固守着纸质载体的空间顺序图文特点,结合互联网之后出现了慕课、付费阅读、在线课程等新的形态;
- 互联网条件下提供了虚拟高维空间、超链接和多媒体交互性等更好的媒介特性,以游戏、多媒体交互式课件为典型代表;
- 从作者和读者两个角度看,未来的图书会是什么样的?
1)从读者的角度
未来的图书可能是针对每个人会有不同的内容,按照曾经看书的习惯和掌握程度,自动简化图书的内容,或者引申出相关内容。当然未来的图书还是以电子版为主,或者会有更高科技的仿真书的出现,不仅环保,还能减轻重量负担。
未来的图书也可能朝着3D化的方向发展,在阅读文字的同时,可以投影出相关动画帮助理解,增加阅读的兴趣。
甚至有些图书内容的发展剧情可以根据读者的选择去进行,然后得到不同的结果,让读者可以更好的参与到图书的内容中去,而不仅仅是被动的跟随作者的思路,有时候可能并不能让读者满意。
而如今的图书琳琅满目,参差不齐,按照读者的喜爱去推荐内容才是最高效的阅读方式。
2)从作者的角度
在如今电子化图书的时代,盗版的传播更加严重,这对于作者显然是头疼的事情。未来的图书首先要保证作者的权益,杜绝盗版书籍的传播。
在此基础上,作者要关注读者的兴趣和让读者更好的参与到图书的内容中去,改变一下自己的写作风格,从叙述的角度变成一个把自己带入进去的角色,让读者感受到自己仿佛经历了这一切,更能带动读者的感情。