美文网首页
软件行为模型-状态转换图

软件行为模型-状态转换图

作者: WXL_JIANSHU | 来源:发表于2021-02-24 17:16 被阅读0次

什么是状态转换图?

STD:State Transform Diagram,状态转换图,表示行为模型。STD通过描述系统的状态和引起系统状态转换的事件,来表示系统的行为,指出作为特定事件的结果将执行哪些动作(例如,处理数据等)。STD描述系统对外部事件如何响应,如何动作。

STD图发生在软件工程的需求分析阶段。状态模型是一种描述系统对内部或者外部事件响应的行为模型。它描述系统状态和事件,以及事件引发系统在状态间的转换。这种模型适用于描述实时系统。

通过描绘系统的状态及引起系统状态转换的事件,来表示系统的行为。此外状态转换图还指明了作为特定事件的结果系统将做哪些动作(例如,处理数据)。因此状态转换图提供了行为建模机制。

在状态转换图中,每一个节点代表一个状态,其中双圈是终结状态。许多单片机教材上对工作模式的表达通常采用状态图的形式。

状态转换图是软件测试中书写测试用例时一种不常用的方法。

一些模板

1、新建(new):线程对象被创建后就进入了新建状态。如:Thread thread = new Thread();
2、就绪状态(Runnable):也被称为“可执行状态”。线程对象被创建后,其他线程调用了该对象的start()方法,从而启动该线程。如:thread.start(); 处于就绪状态的线程随时可能被CPU调度执行。
3、运行状态(Running):线程获取CPU权限进行执行。需要注意的是,线程只能从就绪状态进入到运行状态。
4、阻塞状态(Blocked):阻塞状态是线程因为某种原因放弃CPU使用权限,暂时停止运行。直到线程进入就绪状态,才有机会进入运行状态。阻塞的三种情况:
    1)等待阻塞:通过调用线程的wait()方法,让线程等待某工作的完成。
    2)同步阻塞:线程在获取synchronized同步锁失败(因为锁被其他线程占用),它会进入同步阻塞状态。
    3)其他阻塞:通过调用线程的sleep()或join()或发出了I/O请求时,线程会进入到阻塞状态。当sleep()状态超时、join()等待线程终止或超时、或者I/O处理完毕时,线程重新转入就绪状态。
5、死亡状态(Dead):线程执行完了或因异常退出了run()方法,该线程结束生命周期。

相关文章

  • 软件行为模型-状态转换图

    什么是状态转换图? STD:State Transform Diagram,状态转换图,表示行为模型。STD通过描...

  • MVC之Model 模型

    Model:模型。状态:即数据。逻辑:即服务、行为、函数、功能。模型就是当我们使用软件去解决真实世界中各种实际问题...

  • 软件开发模型

    软件开发模型(转自百度,以备查看) 软件开发模型(Software Development Model)是指软件开...

  • <UML基础、案例与应用>-状态图

    行为元素 展示UML模型部件如何随时间变化。状态图是一种行为元素。只是对单个对象建立模型。 增加状态细节 状态图标...

  • Java 对象和类

    1.Java中的对象 软件对象也有状态和行为。软件对象的状态就是属性,行为通过方法体现。在软件开发中,方法操作...

  • TCP状态转换图

  • 进程状态转换图

    1)就绪——执行:对就绪状态的进程,当进程调度程序按一种选定的策略从中选中一个就绪进程,为之分配了处理机后,该进程...

  • java中的线程

    java语言里的线程本质上就是操作系统的线程,他们是一 一对应的 线程生命周期 线程状态转换图—— 五态模型 初始...

  • 贫血模型和充血模型

    简述: 一、贫血模型 所谓贫血模型,是指Model 中,仅包含状态(属性),不包含行为(方法),采用这种设计时,需...

  • Android MediaPlayer状态切换图

网友评论

      本文标题:软件行为模型-状态转换图

      本文链接:https://www.haomeiwen.com/subject/eaisfltx.html