软件工程ch3 需求分析

第三章 需求分析

需求分析应遵守下述准则:
①必须理解并描述问题的信息域,建立数据模型。
②必须定义软件应完成的功能,建立功能模型。
③必须描述作为外部事件结果的软件行为,建立行为模型。
④必须对描述信息、功能和行为的模型进行分解,用层次的方式展示细节。
3.1 需求分析的任务
①功能需求
②性能需求
③可靠性和可用性需求
④出错处理需求
⑤接口需求
⑥约束
⑦逆向需求
⑧将来可能提出的要求

3.2 与用户沟通获取需求的方法

3.3.1 分析建模
所谓模型,是为了理解事物而对事物做出的一种抽象,是一种无歧义的书面描述。
模型由一组图形符号和组织这些符号的规则组成。
需求分析过程应该建立3种模型,它们分别是数据模型、功能模型和行为模型。
3.3.2 软件需求规格说明(SRS)
——Software Requirements Specification
用自然语言完整、准确、具体地描述系统的数据要求、功能需求、性能需求、可靠性和可用性要求、出错处理需求、接口需求、约束、逆向需求以及将来可能提出的要求。
自然语言的规格说明优点:容易书写、容易理解,为大多数人所欢迎和采用。
自然语言的规格说明缺点:不一致、歧义、含糊。

3.4 实体-联系图

3.5 数据规范化

3.6 状态转换图
状态图:通过描绘系统的状态及引起系统状态转换的事件,来表示系统的行为。
在这里插入图片描述
3.6.1 状态
状态:是任何可以被观察到的系统行为模式,一个状态代表系统的一种行为模式。
状态规定了系统对事件的响应方式。
状态通常是通过一个或一组关键属性来刻画,称为状态变量。
状态主要有:①初态(即初始状态,只能有1个);②终态(即最终状态,可以有0至多个);③中间状态有多个。
状态图分类:
①表示系统循环运行过程,通常不关心循环是怎样启动的。
②表示系统单程生命期,需要标明初始状态和最终状态。
3.6.2 事件
事件:是在某个特定时刻发生的事情,它是
对引起系统做动作或(和)从一个状态转换到另一个状态的外界事件的抽象。
3.6.3 符号
初态:用实心圆表示;
终态:用一对同心圆(内圆为实心圆)表示;
中间状态:用圆角矩形表示,分成上、中、下3部分。
①上面部分–为状态的名称;
②中间部分–为状态变量的名字和值(可选);
③下面部分–是活动表(可选)。
带箭头的连线:称为状态转换,箭头指明了转换方向。
活动表的语法格式:事件名(参数表)/动作表达式
事件名可以是任何事件的名称。
常用的3种标准事件:
– entry 事件指定进入该状态的动作;
– exit 事件指定退出该状态的动作;
– do 事件则指定在该状态下的动作。
需要时可以为事件指定参数表。活动表中的动作表达式描述应做的具体动作。在这里插入图片描述

3.7 其他图形工具

3.8 验证软件需求
①一致性:所有需求必须是一致的,任何一条需求不能和其他需求互相矛盾。
②完整性:规格说明书应该包括用户需要的每一个功能或性能。
③现实性:用现有的硬件技术和软件技术基本上可以实现需求的。
④有效性:必须证明需求是正确有效的,确实能解决用户面对的问题。

本章小结

  • 传统软件工程方法学使用结构化分析技术,完成分析用户需求的工作。
  • 为了详细地了解并正确地理解用户的需求,必须使用适当方法与用户沟通。
  • 为了更好地理解问题,人们常常采用建立模型的方法,结构化分析实质上就是一种建模活动,在需求分析阶段通常建立数据模型、功能模型和行为模型。
  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
这是我最喜欢的东东之一!在这个关于软件工程的新专栏里,作者将结合理论知识,实践案例,优秀的工具介绍,经典文章导读,告诉您软件工程中最重要的一个过程――需求过程各方各面的知识。通过阅读,您将了解到,需求的知识体系,需求的过程能力,相关的软件工程知识,在实践中如何做好需求分析。文章虽然有很多的例子,但是,文章主要还是偏向于宣传一种思想,一种面向对象的思想,一种实践的思想。 第一篇 1.1. 从猴子说起有这样一个笑话:一个旅客走进硅谷的一家宠物店,浏览展示的宠物。这时,走进一个顾客,对店主说:"我要买一只C猴。"店主点了点头,走到商店一头的兽笼边,抓出一只猴,递给顾客说:"总共5000美元。"顾客付完款,然后带走了他的猴子。这位旅客非常惊讶,走到店主跟前说:"那只猴子也太贵了!"店主说:"那只猴子能用C编程,非常快,代码紧凑高效,所以值那么多钱。"这时,旅客看到了笼子中的另一只猴子,它标价10000美元。于是又问:"那只更贵了!它能做什么?"店主回答:"哦,那是一只C++猴;它会面向对象的编程,会用Visual C++,还懂得一点Java,是非常有用的。"旅客又逛了一会儿,发现了第三只猴子,它独占一个笼子,脖子上的标价是50000美元。旅客倒抽一口气,问道:"那只猴子比其他所有猴子加起来都贵!它究竟能做什么?"店主说:"我们也不知道它究竟能这是我最喜欢的东东之一!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值