软件工程导论——需求分析总结

软件工程导论——需求分析总结

需求分析是软件定义的最后一个阶段,它的基本任务是准确的回答“系统必须做什么”这个问题(系统必需完成哪些工作,而不是确定系统怎样完成它的工作)

需求分析任务:

  1. 确定对系统的综合要求
  2. 分析系统的数据要求
  3. 导出系统的逻辑模型
  4. 修正系统的开发计划

软件系统的综合要求:

  1. 功能需求

(指定系统必须提供的服务)

  1. 性能需求

(指定系统必须满足的定时约束或容量约束,eg:速度(响应时间)、信息量速率、主存容量、磁盘容量、安全性等)

  1. 可靠性和可用性需求

(可靠性定量地指定系统的可靠性,可用性量化了用户可以使用系统的程度)

  1. 出错处理需求

(系统对环境错误应该怎样响应)

  1. 接口需求

(描述应用系统与它的环境通信的格式)

  1. 约束

(设计约束或实现约束描述在设计或实现应用系统时应该遵守的限制条件)

  1. 逆向需求

(说明系统不应该做什么)

  1. 将来可能提出的要求

(明确列出那些虽然不属于当前系统开发范畴,但是据分析将来很可能会提出来的要求)

分析系统的数据要求通常采用建立数据模型的方法

数据结构表示数据元素之间的逻辑关系

概念数据模型是一种面向问题的数据模型

数据模型中包含3种相互关联的信息:数据对象、数据对象的属性以及数据对象彼此间相互连接的关系

数据对象:是对软件必须理解的复合信息的抽象。所谓复合信息是指具有一系列不同性质或属性的事物,仅有单个值的事物(例如宽度)不是数据对象

属性定义了数据对象的性质

数据对象彼此间相互连接的方式称为联系,也成为关系

ER图包含实体(数据对象),关系和属性这三种基本成分。经常用矩阵代表实体,连接相关实体的菱形框表示关系,椭圆或圆角矩形表示实体(或关系)的属性,并用直线把实体(或关系)与其属性连接起来

验证需求的正确性:

  1. 一致性
  2. 完整性
  3. 现实性
  4. 有效性

问:为什么要进行需求分析?

答:项目需求分析是一个项目的开端,也是项目建设的基石。在以往建设失败的项目中,大多数是由于需求分析的不明确而造成的。软件需求分成:①目标需求②业务需求③功能需求④性能需求⑤约束与限制。因此一个项目成功的关键因素之一,就是对需求分析的把握程度。

问:通常对软件系统有哪些需求?

答:需求分析是软件工程中的一个关键过程。在这个过程中,分析师和软件工程师确定顾客的需要。只有在确定了这些需要后,他们才能够分析和寻求新系统的解决方法。需求分析阶段的任务是确定软件系统功能。需求分析是一项重要的工作,也是最困难的工作。进行需求分析,我们能够更好了解顾客需要什么,也行会出现矛盾,我们也可以根据双方的情况解决,就好比你去演讲啊,开会啊什么的,你必需要做准备吧,哪怕上去念稿子也是要准备的啊。

问:简述可行性研究过程的步骤。

答:复查系统规模和目标;研究目前正在使用的系统;导出新系统的高层逻辑模型;进一步定义问题;导出和评价供选择的解法;推荐行动方针;草拟开发计划书;写文档提交审查。

你可能感兴趣的:(软件工程导论——需求分析总结)