系统状态转换图

      为了直观地分析系统的动作,从特定的视点出发描述系统的行为,需要采用动态分析的方法。其中最为常用的动态分析方法有状态转换图、时序图、对话图等。

状态转换图

基本概念

     状态转换图是描述系统的状态如何响应外部的信号进行推移的一种图形表示。在状态转换图中,用圆圈表示可得到的系统状态,用箭头表示从一种状态向另一种状态的转移。在箭头上要写上导致转移的信号或事件的名字。如图,系统中可取得的状态=S1,S2,S3。事件=t1,t2,t3,t4。事件t1将引起系统状态S1向状态S3转移,事件t2将引起系统状态S3向状态S2转移等等。

状态转换图所表示的关系还可以用表格形式表达,我们称这样的表格为状态转换表。

 

 

S1

S2

S3

T1

S3

 

 

T2

 

 

S2

T3

 

S3

 

T4

 

S1

 

 

       如何设置系统的状态,需要根据分析的目标和表达的目的而定。

状态转换图的优点

      状态之间的关系能够直观地捕捉到,这样用眼睛就能看到是否所有可能的状态转换都已纳入图中,是否存在不必要的状态。

      由于状态转换图的单纯性,能够机械地分析许多情况,可以很容易地建立分析工具。

时序图

       时序图用于对比在系统处理时间的时序与相应的处理时间,进行系统分析。我们在《用户需求的编写过程》中已经介绍过。

对话图

       在许多应用程序中,用户界面可以看作是一个有限状态机,在任何情况下仅有一个对话元素(例如一个菜单,工作区,行提示符或对话框)对用户输入是可用的。在激活的输入区中,用户根据他所采取的活动,可以导航到有限个其他对话元素。在一个复杂的图形用户界面中,可能的导航路径会有好多种,但其数目是有限的,并且其选择经常是可知的。因此,许多用户界面可以用状态转换图中的一种称为对话图来建模。

        对话图描绘了系统中的对话元素和它们之间的导航连接,但它没有揭示具体的屏幕设计。对话图可以使您在对需求的理解上探索假设的用户界面概念。用户和开发者可以通过对话图在用户如何利用系统执行任务上达成一致。

       对话图抓住了用户--系统交互作用和任务流的本质,而不会使您太快陷入屏幕布局和数据元素的特定细节中。用户可以通过对话图寻找遗漏、错误或多余的转换,您可以把在需求分析过程中形成的对话图用作详细用户界面设计时的指南,最终形成一个执行的对话图,该对话图记录了真正用户界面的体系结构。

在对话图中,对话元素作为一个状态(矩形框),每一个允许的导航选择作为转换(箭头)。触发用户界面导航的条件用文本标签写在转换箭头上。触发条件的类型:

  • 一个用户动作,例如按下一个功能键或点击一个超链接或对话框的按钮;
  • 一个数据值,例如一个无效的用户输入触发显示一个错误信息;
  • 一个系统条件,例如检测到打印机无纸。

      为了简化对话图,可以省略全局功能,例如按下F1键显示帮助。软件需求规格说明书中用户界面部分必须确定这个功能可用,但把它写入对话图中作为交互工具的模型,其意义并不大。

      对话图时表示在用例中所描述的操作员和系统交互的好方法。对话图可以把可选过程描述成基本过程流的分支。在用例获取讨论会期间,在白板上绘制对话图是有益的,在这一阶段开发组成员正在探索导向任务完成的操作员动作顺序和系统响应的顺序。

       请记住,在需求分析阶段,对话图代表了用户和系统在概念级上可能的交互通信作用,但真正的实现可能是有所不同的。

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

黄鹤的故乡

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值