需求分析心得

需求分析是软件计划阶段的重要活动,也是软件生存周期中的一个重要环节,该阶段是分析系统在功能上需要“实现什么”,把用户对开发软件提出的“要求”或“需要”进行分析与整理,确认后形成描述完整、清晰与规范的文档,确定软件需要实现哪些功能,完成哪些工作。经过这一阶段的开发工作,逐渐对需求分析有了了解,也慢慢意识到需求分析对一个项目的开发工作有多么重要。

需求分析一般要考虑功能性需求、非功能性需求以及设计约束这三个方面。我组的项目课题为“基于 Android 的汽车租赁平台”,为了能得到清晰的需求,于是设身处地地将自己模拟成一个普通的目标用户,分析如下:

1,功能性需求:

一个普通的目标用户需要使用我这个项目来做什么呢?如果进行租赁车辆这个功能,会涉及到许多业务逻辑,包括但不限于“选择车辆”,“选择时间”,“选择地点”之类的子功能。如果是管理员对信息进行管理的话,又有“用户管理”、“车辆管理”等等子类。而功能性需求就是要将这些分析明确,充分描述外部行为,形成项目的需求规格说明书。这些在进行多次的小组讨论后,已经得出较为明确的结果。但是可能在项目的进行过程中有更为好的想法,所以也不可以就将需求分析局限于此。

2,非功能性需求:

作为对功能性需求的补充,软件需求分析的内容中还应该包括一些非功能需求。主要包括软件使用时对性能方面的要求、运行环境要求。软件设计必须遵循的相关标准、规范、用户界面设计的具体细节、未来可能的扩充方案等。由于是第一次接触到项目开发,所以对这些还没有明确的认知,分析起来比较吃力。不过最终仍是得到了大体的方向。

3,设计约束:

由于我组的项目课题一开始就已限定为 Android 平台,所以此处分析进行得比较顺利。至于使用的其它工具等等,因为本学期学习数据库主要是以 MySQL 为载体的,所以也选用 MySQL 作为项目的数据库。其它的诸如此类。

整体而言,我觉得小组内的讨论对需求分析帮助很大。因为每个人都有不同的想法,通过进行小组讨论比较容易发现小组成员个人的考虑盲点,从而得到较为明确的需求出来。

posted @ 2018-11-23 20:21  星期日的晚宴  阅读(289)  评论(0编辑  收藏  举报