其他分享
首页 > 其他分享> > 软件工程--实践者的研究方法[基于场景需求建模]

软件工程--实践者的研究方法[基于场景需求建模]

作者:互联网

基于场景需求建模

8.1 需求分析

需求建模的结果为以下一种或多种模型类型:

8.1.1 需求分析目标和原理

总体目标和原理

三者的关系
在这里插入图片描述

8.1.2 分析的经验原则

8.1.3 域分析

域分析的输入和输出
在这里插入图片描述
说明:
域分析是为了领域内复用,形成过程资产价值。

8.1.4 需求建模的方法

需求模型的元素
在这里插入图片描述

8.2 基于场景建模

8.2.1 创建初始用例

举例:开发一个初始用户场景

用例 - 描述性书写(非正式的)

用例:访问摄像头监视设备 ---- 显示摄像头视图(ACS - DCV)
参与者:房主
描述
  如果我位于远方,我可以使用任何计算机上的合适的浏览器软件登陆SafeHome产品网站。输入我的用户ID和两级密码,一旦被确认,我可以访问已安装的SafeHome系统的所有功能。为取得某个摄像头视图,从显示的主功能按钮中选择”监视“,然后选择”选取摄像头“,将会显示房屋的平面设计图,再选择感兴趣的摄像头,另一种可选方法是,通过选择”所有摄像头“,可以同时从所有的摄像头查看缩略视图快照。当选择了某个摄像头时,可以选择”查看“,然后以每秒一帧速度显示的图像就可以在窗口中显示。如果希望切换摄像头,选择”选取摄像头“,原来窗口显示的信息消失,并且再次显示房间的平面设计图,然后就可以选择感兴趣的摄像头,以便显示新的查看窗口。

用例 - 用活动序列表现交互(正式点)

用例:访问摄像头监视设备 ---- 显示摄像头视图(ACS - DCV)
参与者:房主
描述
  1.房主登录SafeHome产品网站。
  2.房主输入用户ID。
  3.房主输入两个密码(每个至少八个字符长度)。
  4.系统显示所有的主要功能按钮。
  5.房主从主要功能按钮中选择”监视“。
  6.房主选择”选取摄像头“。
  7.系统显示房屋的平面设计图。
  8.房主从平面设计图中选择某个摄像头图标。
  9.房主选择”查看“按钮。

说明:

8.2.2 细化初始用例

举例:次场景

例如,考虑前面描述的主场景的第6步和第7步:
6.房主选择”选取摄像头“。
7.系统显示房屋的平面设计图。
 在这一点上,参与者能进行一些其他活动吗?答案是肯定的。参考非正式的描述说明,参与者可以选择同时查看所有摄像头的缩略视图。因此,一个次场景可能是“查看所有摄像头的缩略视图”。
 在这一点,参与者有没有可能遇到一些错误的情况?作为基于计算机的系统操作,可能出现许多错误情况。在这里,我们仅仅考虑在第6步和第7步中说明的活动的直接错误条件,问题的答案还是肯定的。带有摄像头图标的房屋平面可能还没有形式,这样选择“选取摄像头”就导致错误情况:“没有为该房屋配置平面设计图”。该错误情况就成为一个次场景。
 在这一点,参与者有没有可能遇到一些其他的行为?问题的答案再依次是肯定的。当第6步和第7步发生时,系统可能遇到报警。这将导致系统显示一个特殊的报警通知(类型、地点、系统动作),并向参与者提供和报警性质相关的一组操作。因为这个次场景可以在所有的实际交互中发生,所以不会成为ACS-DCV用例的一部分。而且,将开发一个单独的用例—“遇到报警条件”,这个用例可以根据需要被其他用例引用。

8.2.3 编写正式用例

用例模板举例:监视的用例

用例:通过互联网访问摄像头监视 —— 显示摄像头视图(ACS - DCV)
迭代:2
最新更新记录:1月14日
主要参与者:房主
情境目标:从任何远程地点通过互联网查看遍布房间的摄像头输出
前提条件:必须完整配置系统;获得正确的用户身份证号和密码
启动:房主在远离家的时候决定查看房屋内部
场景
  1.房主登录SafeHome产品网站。
  2. 房主输入用户身份证号。
  3. 房主输入两个密码(每个都至少)。
  4. 系统显示所有的主要功能按钮。
  5. 房主从主要功能按钮中选择“监视”。
  6. 房主选择“选取摄像头”。
  7. 系统显示房屋的平面设计图。
  8. 房主从房屋的平面设计图中选择某个摄像头的图表。
  9. 房主选择“视图按钮”。
  10. 系统显示一个由摄像头编号确定的视图窗口。
  11. 系统在视图窗口中以每秒一帧显示视频输出。
异常
1.身份证号或密码不正确或无法确认。-- 参看用例:“确认身份证号和密码”。
2.没有为该系统配置监视功能。 – 系统显示恰当的错误信息;参看用例:“配置监视功能”。
3.房主选择“查看所有摄像头的缩略视图快照” – 参看用例:“查看所有摄像头的缩略视图快照”。
4.平面设计图不可用或未配置 – 显示恰当的错误信息,参看用例:“配置平面设计图”。
5.遇到报警条件 – 参看用例:“遇到报警条件”。
优先级:必须在基础功能之后实现,中等优先级。
何时可用:第三个增量。
使用频率:中等频度。
使用方式:通过基于个人计算机的浏览器和互联网连接到SafeHome网站。
次要参与者:系统管理员,摄像头。
次要参与者的使用方式
1.系统管理员:基于个人计算机的系统
2.摄像头:无线连接。
未解决的问题
1.有什么机制保护SafeHome产品的雇员在未授权的情况下能使用该功能?
2.足够安全吗?黑客入侵该功能将使最主要的个人隐私受侵。
3.在给定摄像机视图所要求的带宽下,可以接受通过互联网的系统响应吗?
4.当可以使用高带宽的连接时,能开发出比每秒一帧更快的视频速度吗?

说明

1.用例关注功能和行为需求,一般不适合非功能需求。
2.模板也可以做成表格的形式
3.在很多情况下,不需要创建使用场景的图形化表示。
4.图形化表示可以促进理解,尤其是当场景比较复杂时。
5.UML为用例提供了图形化表现能力。

SafeHome系统的初步用例图
在这里插入图片描述
SafeHome系统ACS-DCV功能的活动图
在这里插入图片描述
泳道图
在这里插入图片描述
小节

8.3 用例图

1.用例图的含义

 由参与者(Actor)、用例(Use Case)以及它们之间的关系构成的用于描述系统功能的视图称为用例图

2.用例图的作用

3.用例图构成
在这里插入图片描述
3.用例之间的关系

(1)包含

(2)扩展

(3)泛化

8.4 活动图

1.活动图的基本概念

2.活动图主要作用
1)描述一个操作执行过程中所完成的工作。说明角色、工作流、组织和对象是如何工作的。
2)活动图对用例描述尤其有用。它可描述用例的工作流,显示用例内部和用例之间的逻辑,可以说明用例的实例时如何执行动作以及如何改变对象状态。
3)活动图对理解业务处理过程十分有用。活动图可以画出工作流用以描述业务,有利于与领域专家进行交流。通过活动图可以明确业务处理操作是如何进行的,以及可能产生的变化。
4)描述复杂过程的算法,在一点活动图和传统的程序流程图的功能相似。

3.活动图的组成
1)动作状态

2)活动状态

标签:需求,--,实践者,系统,建模,视图,用例,软件工程,摄像头
来源: https://blog.csdn.net/weixin_40247263/article/details/113751804