UML电梯系统建模

合集下载

【UML用例图实例】电梯控制系统用例图

【UML用例图实例】电梯控制系统用例图

【UML⽤例图实例】电梯控制系统⽤例图电梯控制系统⽤例图⼀、案例要求设计电梯控制系统⽤例图,写出其中三个⽤例的描述每部电梯轿厢内都有楼层按钮,每⼀楼层有⼀组上下⾏按钮,乘客进⼊电梯后按下楼层按钮,按钮被按下时会闪亮,然后通知电梯运⾏到⽬的层,等电梯到了⽇的层后,按钮停⽌闪亮。

乘客在必要时候按下紧急救助按钮,该按钮会⾃动发出电梯需要技术修复的求救信号。

技术⼈员可以通过⼀个控制键来激活或者停⽌电梯所有楼层按钮。

处于安全考虑,只有保安可以通过⼀个控制键打开地下室楼层按钮,所有的电梯都是通过中⼼机房控制。

⼆、案例设计三、案例描述描述项说明⽤例名称指定楼层⽤例描述当乘客进⼊电梯时就是这个⽤例的开始。

它指定了乘客想要去往的楼层,当乘客按下所选择的楼层按钮后这个案例就结束了参与者乘客优先级1前置条件乘客进⼊电梯后置条件电梯接收信号基本操作流程1、乘客进⼊电梯 2、乘客选择想去的楼层 3、到达乘客所选楼层乘客离开电梯可选操作流程1、乘客进⼊电梯选择⼀个想去楼层 2、乘客选择多个楼层 3、乘客进⼊电梯电梯故障不能选择楼层被泛化的⽤例⽆被包含的⽤例⽆被扩展的⽤例⽆描述项说明⽤例名称接受救助信号⽤例描述乘客进⼊电梯发⽣紧急情况,乘客按下紧急求救按钮申请救援,此时就是这个⽤例的开始,电梯发送乘客的求救信号,保安接收到乘客的求救信号,⽤例结束。

参与者保安优先级1前置条件乘客寻求救助后置条件⽆基本操作流程1、乘客进⼊电梯 2、乘客在电梯中发⽣紧急事件按下电梯⾥紧急求救按钮 3、电梯发送乘客的求救信号 4、保安接收到乘客的求救信号可选操作流程1、乘客按下紧急求救按钮,保安接收到求救信号被泛化的⽤例⽆被包含的⽤例⽆被扩展的⽤例⽆描述项说明⽤例名称控制电梯⽤例描述当乘客在电梯中遭遇紧急情况时,保安接收到乘客的求救信号是此⽤例的开始此时联系技术⼈员控制电梯来选择是激活所有楼层按钮还是停⽌所有楼层按钮⽤例结束参与者技术⼈员优先级1前置条件保安接收信号后置条件⽆基本操作流程1、当乘客在电梯中遭遇紧急情况2、保安接收到乘客的求救信号3、技术⼈员控制电梯可选操作流程1、按下电梯控制按钮激活所有楼层2、按下电梯按钮停⽌所有楼层流程1、按下电梯控制按钮激活所有楼层2、按下电梯按钮停⽌所有楼层被泛化的⽤例⽆被包含的⽤例1、激活楼层按钮2、停⽌楼层按钮被扩展的⽤例⽆描述项说明。

电梯控制模型

电梯控制模型

状态转换图
状态转换图(简称为状态图)通过描绘系统的状态 及引起系统状态转换的事件,来表示系统的行为。
状态是任何可以被观察到的系统行为模式,一个 状态代表系统的一种行为模式。在状态图中用圆形框 或椭圆框表示状态,通常在框内标上状态名。状态规 定了系统对事件的响应方式。系统对事件的响应,既 可以是做一个(或一系列)动作,也可以是仅仅改变系 统本身的状态。通常,在表示状态的框内用关键字 do(后接冒号)标明进入该状态时系统的行为(即所做的 动作)。
3. 把策略形式化
在以上这段描述非形式化策略的文字中,共有八 个不同的名词:按钮、电梯、楼层、运动、大厦、指 示灯、请求和门。这些名词所代表的事物可作为控制 对象的初步候选者。其中,楼层和大厦是处于问题边 界之外的,因此可以忽略;运动、指示灯、请求和门 可以作为其他类的属性,例如,指示灯(的状态)可作 为按钮类的属性,门(的状态)可作为电梯类的属性。 经过上述筛选后只剩下两个候选类,即电梯和按钮。 补充了电梯控制器类之后,得到了图1所示的对象 模型。
图1电梯系统对象模型的第一次迭代
图2 电梯系统对象模型的第二次迭代
三、
建立动态模型
1. 编写脚本 这一步的目的是,决定每一个类应该做的操作。 达到这个目的的一种有效的方法,是列出用户和系统
之间相互作用的典型情况,即写出脚本(包括正常情况
脚本和异常情况脚本)。表1和表2分别是正常情况脚本 和异常情况脚本。
事件是在某个特定时刻发生的事情,它是对引起 系统从一个状态转换到另一个状态的外界事件的抽象。 简而言之,事件就是引起系统状态转换的控制信息。 在状态图中,从一个状态到另一个状态的转换用 箭头线表示,箭头表明转换方向,箭头线上标上事件
名。必要时可在事件名后面加一个方括号,括号内写

课件—UML系统建模与分析设计(5)

课件—UML系统建模与分析设计(5)
第五章
系统设计与对象动态交互模型
动态模型主要描述系统的动态行为和控制结构。动态行 为包括系统中对象生存期内可能的状态以及事件发生时状态 的转移,对象之间动态合作关系,显示对象之间的交互过程 以及交互顺序,同时描述了为满足用例要求所进行的活动以 及活动间的约束关系。 在动态模型中,对象间的交互是通过对象间消息的传递来 完成的。对象通过相互间的通信(消息传递)进行合作,并在其 生命周期中根据通信的结果不断改变自身的状态。
16
5.2.1 一个简单的顺序图例子
17
顺序图有两个坐标: 垂直坐标--时间(从上到下),水平坐标—对象。
对象
生存线
时间
18
激活期
消息
顺序图和用例图、类图的关系
19
5.2.2顺序图的主要元素:
(1)对象:顺序图中所包含的每个对象用一个 对象框(短式)表示,对象名需带下划线。
对象图
(2)生存线:对象框下画的一条垂直虚线,称 为该对象的生存线,表示对象的生存时间。 (3)激活期:对象生存线上的一个细长方形框, 表示该对象的激活时间段,即活动期间。一 个激活的对象要么正在执行自己的代码,要 么等待另一个对象的返回。 (4)消息:对象之间消息的发送和接收用两个 对象生存线(激活期)之间的消息箭头线。
28
5.3
对象之间的同步与异步操作
1.对象之间的同步操作
同步消息的发送者把进程控制传递给消息 的接收者,然后暂停活动,等待消息的接收者 放弃或返回控制; 同步消息的接收者执行所请求的操作,如 果需要的话,可以把控制传递给另一个对象角 色,请求做某个操作,并且当该操作完成后把 控制返回给原来的同步消息的发送者; 同步消息的接收者也可以直接返回或发送 信息给原来的消息发送者。

uml基本原理

uml基本原理

uml基本原理UML基本原理UML(Unified Modeling Language)是一种用于软件系统建模的标准化语言,它提供了一套丰富的符号和规范,用于描述软件系统的结构、行为和交互。

UML的设计遵循一些基本原理,这些原理不仅为软件开发人员提供了一种统一的建模方式,还能提高软件系统的可理解性和可维护性。

本文将围绕UML的基本原理展开阐述。

1. 抽象与详细化UML通过抽象和详细化的方式来描述软件系统。

在建模过程中,我们可以从整体上抽象出系统的结构和行为,然后逐步详细化,直至得到具体的实现模型。

这种抽象与详细化的方式使得我们能够以不同层次的抽象度来描述软件系统,从而更好地理解和分析系统的各个方面。

2. 分解与组合UML支持将复杂的系统分解为较小的部分,以便更好地理解和管理系统。

通过分解,我们可以将系统划分为多个模块或组件,每个模块或组件负责特定的功能或任务。

同时,UML也支持将这些部分重新组合成一个整体系统。

这种分解与组合的方式使得软件系统的设计和开发更加模块化,提高了系统的可维护性和复用性。

3. 关注点分离UML提供了一种关注点分离的机制,使得建模人员能够将不同的关注点分开进行建模。

在建模过程中,我们可以将系统的结构、行为和交互等不同方面进行分离,从而使得每个关注点的描述更加清晰和准确。

这种关注点分离的机制有助于降低建模的复杂度,提高建模人员的效率。

4. 可视化表示UML提供了一套丰富的图形符号,用于可视化地表示软件系统的结构和行为。

通过使用这些图形符号,我们可以将抽象的概念转化为直观的图形表示,从而更好地理解和沟通系统的设计和实现。

常用的UML图形包括类图、用例图、活动图、时序图等,它们分别用于表示系统的静态结构、功能需求、流程行为和时序交互。

5. 模型驱动开发UML支持模型驱动开发(Model-Driven Development,简称MDD),这是一种基于模型的软件开发方法。

在MDD中,我们首先通过建模工具创建软件系统的模型,然后通过模型转换和代码生成等技术自动生成系统的代码。

uml的特点和用途

uml的特点和用途

uml的特点和用途UML(Unified Modeling Language)是一种用于软件系统建模的标准化语言,它具有以下特点和用途。

特点:1. 统一性:UML是一种统一的建模语言,它将多种建模技术整合在一起,包括结构建模、行为建模和交互建模等,使得不同的模型之间可以进行无缝的集成和协作。

2. 易学易用:UML采用图形符号和文本描述相结合的方式,使得它的语法和语义非常直观和易于理解,从而降低了学习和使用的难度。

3. 可扩展性:UML提供了一种扩展机制,允许用户根据具体的需求和场景进行定制和扩展,从而满足不同的建模需求。

4. 高度表达性:UML提供了丰富的图形符号和符号组合方式,可以灵活地表达不同的建模概念和语义,使得模型具有更高的表达性和可读性。

5. 易于工具支持:由于UML已成为行业标准,因此有许多建模工具和开发环境提供了对UML的良好支持,便于开发人员进行建模、分析和设计工作。

用途:1. 需求分析:通过使用用例图、活动图和状态图等UML图形,可以帮助分析师和开发团队更好地理解用户需求,明确系统功能和行为,并对需求进行有效的沟通和验证。

2. 系统设计:UML提供了类图、对象图和组件图等建模工具,可以帮助开发人员进行系统结构设计和模块划分,明确系统的组成部分和它们之间的关系,从而指导代码的编写和开发过程。

3. 架构设计:通过使用包图、部署图和组合结构图等UML图形,可以帮助架构师对系统进行整体设计和布局,明确系统的组织结构和部署方案,从而提高系统的可扩展性和可维护性。

4. 测试和验证:UML提供了序列图和协作图等建模工具,可以帮助测试人员进行系统测试和验证工作,明确系统的行为和交互方式,并根据模型生成测试用例和测试脚本,提高测试效率和覆盖率。

5. 文档生成:UML模型可以作为软件系统的文档,包含了系统的结构、行为和交互等信息,可以通过工具自动生成文档,提高文档的可读性和维护性。

6. 项目管理:UML可以作为项目管理工具的一部分,用于描述系统的工作流程、任务分配和资源调度等信息,帮助项目经理进行进度控制和资源管理。

uml建模实例100例

uml建模实例100例

uml建模实例100例UML(统一建模语言)是一种用于软件开发的标准建模语言,它可以帮助开发人员更好地理解、设计和实现软件系统。

下面是100个UML建模实例。

1. 用例图:描述系统功能和外部用户的行为。

2. 活动图:描述系统中的过程和活动,通常用来描述系统的业务流程。

3. 类图:描述系统中的类、属性和方法、关系等。

4. 对象图:描述系统中的对象及其关系。

5. 状态图:描述系统中的对象或类的状态和状态转换。

6. 序列图:描述系统中的对象或类之间的交互过程。

7. 协作图:描述系统中的对象或类之间的协作过程。

8. 构件图:描述系统的组成部分和它们之间的关系。

9. 部署图:描述系统的物理部署结构和组件之间的关系。

10. 通信图:描述系统中的对象之间的消息传递。

11. 包图:描述系统中的包和它们之间的关系。

12. 组合结构图:描述系统中的组成部分和它们之间的组合关系。

13. 时序图:描述系统中的对象或类之间的时间关系。

14. 交互概述图:描述系统中的对象或类之间的协作过程。

15. 系统顺序图:描述系统中的对象或类之间的时间关系。

16. 概念图:描述系统中的概念和它们之间的关系。

17. 数据流图:描述系统中的数据流和处理过程。

18. 流程图:描述系统中的过程和流程。

19. 参与者图:描述系统中的参与者和它们之间的关系。

20. 视图图:描述系统中的视图和它们之间的关系。

21. 规则图:描述系统中的规则和它们之间的关系。

22. 用例图扩展点:描述用例图中的扩展点和它们之间的关系。

23. 活动图扩展点:描述活动图中的扩展点和它们之间的关系。

24. 类图扩展点:描述类图中的扩展点和它们之间的关系。

25. 对象图扩展点:描述对象图中的扩展点和它们之间的关系。

26. 状态图扩展点:描述状态图中的扩展点和它们之间的关系。

27. 序列图扩展点:描述序列图中的扩展点和它们之间的关系。

28. 协作图扩展点:描述协作图中的扩展点和它们之间的关系。

数据结构设计--电梯模拟系统

[目录1.引言 ...................................................... 错误!未定义书签。

2.需求分析................................................... 错误!未定义书签。

3. 概要设计.................................................. 错误!未定义书签。

数据结构描述............................................. 错误!未定义书签。

模块设计................................................. 错误!未定义书签。

电梯的模拟流程图......................................... 错误!未定义书签。

4详细设计及实现............................................. 错误!未定义书签。

%全局变量的定义........................................... 错误!未定义书签。

人具体情况的定义......................................... 错误!未定义书签。

队、栈的类型............................................. 错误!未定义书签。

.电梯类型................................................ 错误!未定义书签。

系统类的定义............................................. 错误!未定义书签。

5.调试分析................................................... 错误!未定义书签。

为简易的电梯建立状态图

协同策略 多部电梯之间通过协同算法,实现最优的乘客分配和电梯调度,提高整体运行效率。
案例三
状态定义
不同类型的电梯定义了各自的状态,包括普通电梯的待机、运行、开门和关门状态,以及无障碍电梯的额外 状态如残疾人呼叫等。
状态转换
各类型电梯在接收到乘客呼叫后,根据呼叫类型和当前电梯状态进行相应的状态转换。
随着人工智能和机器学习技术的发 展,未来的状态图将具备更强的自 主学习和优化能力,能够根据电梯 的实际运行情况进行自我调整和优 化。
目前的研究主要集中在单电梯的控 制上,未来随着高层建筑和智能建 筑的发展,多电梯协同控制将成为 研究热点,状态图将在其中发挥重 要作用。
电梯控制系统将更加 安全可靠
电梯作为现代建筑中不可或缺的交 通工具,其安全性至关重要。未来 的电梯控制系统将更加注重安全性 和可靠性,采用更加先进的控制算 法和安全保护措施,确保乘客的安 全。
控制逻辑
电梯控制系统根据乘客呼叫和当前电梯状态,决定电梯的运行方 向和停靠楼层。
案例二:某智能楼宇中多部电梯协同工作策略
状态定义
每部电梯定义了独立的状态,包括空闲状态、上行状态、下行状态和维修状态。
状态转换
电梯在空闲状态下接收到乘客呼叫后,根据呼叫方向和当前电梯位置,进入上行或下行状态;到达指定楼层并完成乘客接送 后,回到空闲状态;若电梯出现故障,则进入维修状态。
电梯状态转换条件及动作
03
待机至运行状态转换条件及动作
动作
启动电机,使电梯开始运行。
转换条件:电梯门关闭且收到有效的楼层指令。 显示当前楼层和目标楼层。
运行至停止状态转换条件及动作
转换条件:电梯到达目标楼层且速度减为零。
如果有其他楼层指令,则进入待机状态等待 下一次运行;否则保持停止状态。

电梯控制模型ppt课件


在一个m层楼的大厦里,用每层楼的按钮和电梯内 的按钮来控制n
精选PPT课件
3
2.
为了提出一种解决上述问题的非形式化策略,必 须确定问题的约束条件。在上面已经对电梯问题提出 了三种约束。最好能用一小段文字把非形式化策略清 楚地表达出来,对电梯问题来说,解决问题的非形式
在一幢有m层楼的大厦里,用电梯内的和每个楼 层的按钮来控制n部电梯的运动。当按下电梯按钮以请 求在某一指定楼层停下时,按钮指示灯亮;当请求获 得满足时,指示灯熄灭。当电梯无升降操作时,关门
精选PPT课件
13
图3 电梯控精制选P器PT课类件的动态模型
14Leabharlann 精选PPT课件15
精选PPT课件
16
五、 根据从功能模型中获得的信息,重新审查对象模型
(图2)和动态模型(图3),以便进一步完善控制对象分 析的结果。
增加了“电梯门”类和“请求”类之后,得到对象 模型的第三次求精结果,如图5所示。
修改了对象模型之后,必须重新审查动态模型和 功能模型,看看是否需要进一步求精。显然,必须修 改功能模型,把数据存储“电梯门”和“请求”标识 为可做类.
精选PPT课件
17
图5 电梯系统对象模型的第三次迭代
精选PPT课件
18
在一幢有m
n 部电
梯的产品,要求这n部电梯根据下列约束条件在楼层间
精选PPT课件
1
C1:每部电梯有m个按钮,每个按钮代表一个楼层。当按 下一个按钮时该按钮指示灯亮,同时电梯驶向相应的 楼层,当到达由按钮指定的楼层时指示灯熄灭。
C2:除了大厦的最低层和最高层之外,每层楼都有两个 按钮分别指示电梯上行和下行。当这两个按钮之一被 按下时相应的指示灯亮,当电梯到达此楼层时灯熄灭,

UML建模课程设计(史上最全)

UML建模课程设计目录1 引言 (4)2 UML概述 (4)2.1 UML简介 (4)2.2 UML模型图的构成 (4)2.3UML事物 (4)2.3.1构件事物 (5)2.3.2行为事物 (5)2.3.3分组事物 (5)2.3.4注释事物 (6)2.4 UML图及特征 (6)2.4.1 用例图 (6)2.4.2 类图 (6)2.4.3 对象图 (6)2.4.4 时序图 (6)2.4.5 协作图 (7)2.4.6状态图 (7)2.4.7活动图 (7)2.4.8组件图 (7)2.4.9配置图 (8)3 UML结合实例分析 (8)3.1 需求分析 (8)3.1.1系统开发需求 (8)3.1.2系统功能需求 (8)3.2 UML建模分析 (9)3.2.2类图 (10)3.2.3 活动图 (11)3.2.4 顺序图 (12)3.2.5 协作图 (13)3.2.6 状态图 (14)3.2.7 组件图 (15)3.2.8 部署图 (15)4 总结 (16)1 引言建模是开发优秀软件所有活动的核心部分。

在开发中利用UML来编制系统蓝图,并与仓库管理系统开发的特色相结合,提出了自己的一套UML的建模过程。

基于这个过程来进行系统的分析,设计,实现与测试。

运用UML建模思想与各种模型对仓库管理系统进行详细的描述。

2 UML概述2.1 UML简介UML (Unified Modeling Language)为面向对象软件设计提供统一的、标准的、可视化的建模语言。

适用于描述以用例为驱动,以体系结构为中心的软件设计的全过程。

UML的定义包括UML语义和UML表示法两个部分。

UML语义:UML对语义的描述使开发者能在语义上取得一致认识,消除了因人而异的表达方法所造成的影响。

UML表示法:UML表示法定义UML符号的表示法,为开发者或开发工具使用这些图形符号和文本语法为系统建模提供了标准。

2.2 UML模型图的构成事物(Things):UML模型中最基本的构成元素,是具有代表性的成分的抽象关系(Relationships):关系把事物紧密联系在一起图(Diagrams ):图是事物和关系的可视化表示2.3UML事物UML语言的事物,包括四类:结构事物:语言的静态构成要素,有7种:类和对象、接口、主动类、用例、协作、构件、节点。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1.需求陈述
一个无人值守电梯的轿箱通常停放在大楼的第一层.当某楼层有乘客按下按钮,电梯轿箱便会按照指令上升到该楼层接乘客,然后按照乘客的指令升降到指定楼层,到达后的乘客走下电梯。

电梯轿箱停在该楼层,等待下一个乘客的按钮指令。

系统对于等待的时间有一定的限制,在时间限制之内又有乘客按下按钮,电梯则重复前面的动作,电梯轿箱仍按照指令上升或下降到指定楼层,到达后,电梯轿箱继续等待下一个乘客的按钮指令,在每次的等待中,如果等待时间超过限制,电梯轿箱会自动返回到大楼的第一层,在那里继续等待乘客。

2.1 用例图
电梯系统用例图如下,主要包括用例、角色和关系。

用例图
乘客作为电梯里的角色,参与系统的5个用例,呼叫电梯、指定楼层、打开电梯门、关闭电梯门和拨打报警电话。

工作人员参与接受报警的用例。

2.2 类图
类图对系统进行静态建模,静态图主要描述系统功能需求-系统给最终用户提供服务。

类图描述一组类、接口和协作,及他们的关系。

类图
各类的详细声明如下:
(1)Button类
一个抽象类,电梯停或启动的指示器。

(2)E levator_button
电梯内的人需要到达的楼层。

(3)B uilding_button
处于某楼层的人需要进入电梯上行或下行的指示。

(4)help_button
紧急情况下的报警。

(5)controlor
用来控制电梯的上行、下行、关门、开门以及电梯调度工作等。

BState:电梯或楼层按钮的状态,若按下,则给控制器发送一个上行下行命令,否则,控制器控制电梯开门或停止。

3.1建动态模型
●用户A在3楼按上行按钮呼叫电梯,用户希望到7楼去
●上行按钮指示灯亮
●一部电梯到达3楼,电梯内的用户B已按下到9楼的按钮
●上行按钮指示灯熄灭
●电梯开门
●用户A进入电梯
●用户A按下电梯内到7楼的按钮
●7楼按钮指示灯亮
●电梯关门
●电梯到达7楼
●7楼按钮指示灯熄灭
●电梯开门
●用户B走出电梯
●电梯在等待超时到后关门
●电梯载着用户A继续下行到达1楼
3.2异常情况
●用户A在3楼按上行按钮呼叫电梯,用户A希望到1楼去●上行按钮指示灯亮
●一部电梯到达3楼,电梯内的用户B已按下了到9楼的按钮●上行按钮指示灯熄灭
●电梯开门
●用户A进入电梯
●用户A按下电梯内到1楼的按钮
●1楼按钮指示灯亮
●电梯在等待超时后关门
●电梯上行到9楼
●电梯内9楼按钮指示灯熄灭
●电梯开门
●用户B走出电梯
●电梯在等待超时后关门
●电梯载着用户A继续下行到达1楼
3.3状态图
状态图4.1序列图
序列图
4.2协作图
协作图
5. 其它工作及部分代码:
电梯设置
●电梯分为三种状态:静止,上升,下降。

跟随着电梯还有一个数据,
就是电梯当前所在楼层数floor_lift,其中floor_lift<=30&&floor_lift>=1。

●在系统中我们用数组来保存进入电梯的乘客的信息,即目标层数。

●关于超时问题,我们定义时间上限为30分钟。

乘客分析
●ﻩ乘客的需求分为“上”和“下”两种。

此外乘客还有当前层数fl
oor_from以及目标层数floor_to。

当然floor_from、floor_to也是在1~30之间的整数。

初始化
●ﻩ电梯需要初始化,其中状态为静止state=0,层数floor_lift
设置为1。

目标层数数组需要初始化,即: for(i=0;i<30,i++)
●ﻩﻩfloor[i]=0;
电梯工作分析
电梯的上升下降
电梯的上升下降设置为一秒一层,即
ﻩSwitch(state) //state分为0—静止,1—下降,2—上升{
ﻩcase 0:
ﻩbreak;
ﻩﻩcase1:
ﻩﻩfloor_lift-=1;
ﻩbreak;
ﻩcase 2:
ﻩﻩfloor_lift+=1;
ﻩbreak;
ﻩﻩdefault:
ﻩcout<<”error state”<<endl;
}
静止状态检测
ﻩ当数组全部为0时,将state设置为0.
电梯为静止状态时
ﻩ用户输入,信息分为direction和floor_from。

Floor_from跟电梯所在楼层floor_lift进行比较,floor_from>f loor_lift,那么把电梯状态改为上升,相对的当小于时改为下降。

当floor_from=floor_lift的时候,将乘客的信息加入数组,将乘客目标层数对应的数组元素设置为1。

即floor[floor_to-1]=1。

ﻩ此时将电梯的状态改为用户的目标方向,即state==direction。

电梯为上升或下降状态时
ﻩ将用户输入与电梯状态相比:
if((direction==state)&&(floor_lift==floor_from))ﻩ//用户目标方向与电梯方向一致时
floor[floor_to-1]=1;ﻩﻩ//允许用户进入并且输入目
标层数
ﻩ超时设置
ﻩ当电梯的状态state为0时开始计时
While(i<1800) //每秒检测一次,静止状态保持30分钟则回到一层
{
If(state=!0)ﻩ//检测状态,一旦状态改变,则停止计时
ﻩﻩbreak;
ﻩSleep(1000);
i++;
ﻩ}
State=1; //设置为下降状态,目标层数改为1楼
ﻩfloor[0]=1;
6.设计总结
经过了一个学期的学习和小组成员的共同努力,终于完成了这个作业。

由于我们只是在系统的设计思想上进行了统一的分析,并没有进行系统代码的设计,所以每人负责部分的方法可能名字上有些出入,不影响实际设计。

虽然完成的效果可能不是很好,但是小组的每个成员都很努力了,我们觉得还是有很多收获的。

由于刚刚学习UML这种统一建模语言,对很多概念和问题的理解不是很到位,所以肯定会犯很多错误,希望老师多多指正。

不过,虽然遇到好多不懂的问题,但是小
组的每一位成员都能主动地去查阅相关资料了解并在一起讨论,通过这次作业,不仅让我们学到了知识,而且培养了团队协作精神,我想这也是我们在课堂里面学不到的东西吧。

7.小组成员信息:
姓名学号
李洪岩2012110238ﻩ负责序列图及协作图李东豫2012110021 负责用例分析及类图建模
张建华2012111177 负责状态图实现及实验报告。

相关文档
最新文档