电梯系统的UML文档05

·Dispatcher 不控制实际的电梯组件,但它在软件系统中是重要的。每一个电梯有一个ispatcher,主要功能是计算电梯的移动方向、移动目的地以及保持门的打开时间。它和系统中除灯控制器以外的几乎所有控制对象交互。

·安全装置也是一个环境对象,它不属于控制软件,但是系统的重要部分。在真实世界中,如果一台电梯的紧急制动被触发,则安全装置动作变化。但在我们的模拟系统中,只显示一些信息。

在我们的系统中,乘客也作为一个环境对象来建模。乘客和楼层呼叫按钮、电梯呼叫按钮交互,使门反转,观察电梯的方向和位置等。为了简单,乘客对象没有在图3 中列出(不像其他的环境对象)。

软件的类图解决了前一节提出的大多数问题。控制任务被分配到几个控制对象中,每个控制一个或两个环境对象,都没有负担过重或空闲。不需要竞争中心控制器的计算资源,因为由控制器控制其受控对象。

但是从这个类图引发的,关于我们系统实现细节问题如下:

·控制对象如何控制环境对象?

·一个对象如何从其他的对象得到必需的信息?

·如何对网络建模

从系统架构的角度,这些问题必须回答。

4.3.3 类图——系统架构图

为了回答上一节提出的问题,类图要加入网络、传感器/传动装置进行细化,以对真实系统的架构进行建模。

从这一点来看,系统的类图和普通UML 图的类图不完全一样。但类图是描述系统静态结构的一种有效的途径,为什么不用它来帮助更好的表达系统架构?

类图中的各个部分如图4,被分成如下8 类:

控制类

·前一节我们对系统中的控制对象作了大量的陈述。从系统架构来看控制对象包括电梯位置控制、电梯按钮控制、灯控制、门控制、驱动控制、楼层按钮控制和Dispatcher(CarPositionControl,CarButtonControl,LanternControl,DoorControl,DriveControl,HallButtonControl and Dispatcher.)。

·所有的控制对象连接到网络,从网络得到输入并发送输出消息到网络给其他的对象。

·控制对象控制一个和传感器及传动装置相连的系统实体(如门和按钮),从传感器得到信息,并发送反馈到传动装置执行控制功能。

网络

·所有的控制对象和通信网络连接,在图的中间用网络类来建模。网络是(编注:此处缺1 页,抱歉)

图4:类图——软件架构图

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/67543.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Spring Boot】掌握 Spring 事务:隔离级别与传播机制解读与应用

前言 🌟🌟本期讲解关于spring 事务传播机制介绍~~~ 🌈感兴趣的小伙伴看一看小编主页:GGBondlctrl-CSDN博客 🔥 你的点赞就是小编不断更新的最大动力 🎆那么废话…

go语言zero框架通过chromedp实现网页在线截图的设计与功能实现

在 GoZero 框架中实现网页在线截图的功能,可以通过集成 chromedp 库来控制 Chrome 浏览器进行截图。chromedp 是一个基于 Chrome DevTools 协议的 Go 包,可以用来在 Go 程序中模拟浏览器操作,如页面截图、DOM 操作、表单提交等。 下面是一个…

新星杯-ESP32智能硬件开发--SoC基础

本博文内容导读 1、当前嵌入式系统的发展情况,分析SoC作为物联网开发的重要技术,是未来物联网发展重要方向。 2、介绍SoC系统的组成和系统特点,了解SoC打下SoC基础。 3、介绍基于ESP32的SoC系列开发板,ESP32开发的系统功能进行总…

《开源与合作:驱动鸿蒙Next系统中人工智能技术创新发展的双引擎》

在当今科技飞速发展的时代,鸿蒙Next系统作为一款具有创新性和前瞻性的操作系统,为人工智能技术的发展提供了广阔的舞台。而开源和合作则是推动鸿蒙Next系统中人工智能技术创新和发展的两大关键引擎。 开源:创新的源泉 代码共享与知识传播&am…

深度学习常见术语解释

正例与负例: 在分类任务中,通常将目标类别称为正例(positive),非目标类别称为负例(negative)。 True Positives(TP): 被正确地划分为正例的个数,…

如何使用 Redis 作为高效缓存

如何使用 Redis 作为高效缓存 Redis(Remote Dictionary Server)是一个高性能的 内存存储系统,通常被用作 缓存 来加速数据访问,提高应用的吞吐量和响应速度。本文详细讲解如何使用 Redis 作为高效缓存,包括基本原理、…

AUTOSAR从入门到精通-自动驾驶测试技术

目录 前言 算法原理 测试场景定义与作用 测试场景要素 测试场景分类 场景信息提取与挖掘方法 自动驾驶感知测试分类 自动驾驶图像系统测试 自动驾驶激光雷达系统测试 自动驾驶融合感知系统测试 自动驾驶仿真测试 1. 功能安全 2. 预期功能安全 3. 软件测试 4.敏捷…

Bootstrap 下拉菜单

Bootstrap 下拉菜单 Bootstrap 是一个流行的前端框架,它提供了许多预构建的组件,其中之一就是下拉菜单。下拉菜单是一个交互式元素,允许用户从一系列选项中选择一个。在本篇文章中,我们将详细介绍如何在 Bootstrap 中创建和使用下…

蓝桥杯备考:堆和priority queue(优先级队列)

堆的定义 heap堆是一种特殊的完全二叉树,对于树中的每个结点,如果该结点的权值大于等于孩子结点的权值,就称它为大根堆,小于等于就叫小根堆,如果是大根堆,每个子树也是符合大根堆的特征的,如果是…

到底应不应该使用@Builder

大多数同学使用 Builder 无非就是为了链式编程,然而 Builder 并不是链式编程的最佳实践,它会额外创建内部类,存在继承关系时还需要使用 SuperBuilder 注解,设置默认值时也需要额外的 Builder.Default 去设置默认值,无疑…

微软官方Windows 10系统ISO镜像文件下载指南

简介 什么是ISO镜像文件 ISO镜像文件是一种特殊的数字文件格式, 精确复制了物理光盘的所有内容和结构 。这种文件通常用于存储完整的操作系统安装程序或其他大型软件包,便于在网络上传输和长期保存。ISO文件的核心优势在于其高度的完整性和可靠性&…

RabbitMQ-消息可靠性以及延迟消息

目录 消息丢失 一、发送者的可靠性 1.1 生产者重试机制 1.2 生产者确认机制 1.3 实现生产者确认 (1)开启生产者确认 (2)定义ReturnCallback (3)定义ConfirmCallback 二、MQ的持久化 2.1 数据持久…

fgets、scanf存字符串应用

题目1 夺旗(英语:Capture the flag,简称 CTF)在计算机安全中是一种活动,当中会将“旗子”秘密地埋藏于有目的的易受攻击的程序或网站。参赛者从其他参赛者或主办方偷去旗子。 非常崇拜探姬的小学妹最近迷上了 CTF&am…

【C语言系列】深入理解指针(1)

前言 总所周知,C语言中指针部分是非常重要的,这一件我们会介绍指针相关的内容,当然后续我还会出大概4篇与指针相关的文章,来深入的讲解C语言指针部分,希望能够帮助到指针部分薄弱或者根本不会的程序员们,后…

力扣面试150 串联所有单词的子串 分组滑动窗口

Problem: 30. 串联所有单词的子串 参考题解 滑动窗口 class Solution {public List<Integer> findSubstring(String s, String[] words) {int n s.length(), m words.length, w words[0].length();// 统计 words 中「每个目标单词」的出现次数Map<String, Integ…

CSS笔记01

黑马程序员视频地址&#xff1a; 前端Web开发HTML5CSS3移动web视频教程https://www.bilibili.com/video/BV1kM4y127Li?vd_source0a2d366696f87e241adc64419bf12cab&spm_id_from333.788.videopod.episodes 目录 引入方式 CSS特性 继承性 层叠性 优先级 Emmet写法 …

django应急物资管理系统

Django应急物资管理系统是一种高效、智能的管理系统&#xff0c;旨在应对自然灾害、事故灾难等突发事件&#xff0c;确保救援物资能够及时、准确地调配到需要的地方。 一、系统背景与意义 在现代社会&#xff0c;各类突发事件频繁发生&#xff0c;对人民生命财产安全构成严重…

管理口令安全和资源(二)

DBMS_METADATA DBMS_METADATA 是 Oracle 数据库中的一个包&#xff0c;它提供了用于管理数据库元数据的工具和过程。元数据是关于数据的数据&#xff0c;它描述了数据库的结构&#xff0c;包括表、视图、索引、存储过程、用户和其他数据库对象的信息。DBMS_METADATA 包允许用户…

安路FPGA开发工具TD:问题解决办法 及 Tips 总结

安路科技&#xff08;Anlogic&#xff09;是一家专注于高性能、低功耗可编程逻辑器件&#xff08;FPGA&#xff09;设计和生产的公司。其提供的开发工具TD&#xff08;TangDynasty&#xff09;是专门为安路FPGA系列产品设计的集成开发环境&#xff08;IDE&#xff09;。以下是对…

Java常用时间类

JDK7的时间类 1&#xff1a;Date类 2&#xff1a;SimpleDateFormat类 3&#xff1a;Calendar类 JDK8的时间类 1&#xff1a;Zoneld类 2&#xff1a;Instant类 3&#xff1a;ZoneDateTime 4&#xff1a;LocalDate 5&#xff1a;LocalTime 6&#xff1a;LocalDateTime …