电梯调度项目总结

1.本小组有3名成员 杨昊岚12061202/ 左少辉12061209/吕雨朗

2.结对编程的优点

一、能集百家之长 二、比一个人写程序有趣 三、效率高

结对编程的缺点

一、容易养成对队友的依赖性

3.参照了书中的内容,我觉得

一、Information Hiding,信息隐藏。

将程序模块化时,保证每个模块对其他所有模块都隐蔽自己的设计决策,让模块规定并设计成为在模块中包含的信息不被不需要这些信息的其他模块访问。应用有在多层设计中的层与层之间加入接口层,使所有类与类之间都通过接口类访问和 类的所有数据成员都是private,所有访问都是通过访问函数实现等。

二、Interface Design,接口设计。

软件的接口设计元素描述了信息如何流入和流出系统以及被定义为体系结构一份的构件之间是如何通信的。这次的作业中用到的主要是各种设计构件之间的内部接口,通过这些接口让软件体系结构中的构件之间进行内部通信与协作。接口实现时,保证所有操作和消息传递模式都得到实现,且不同类的操作之间能够进行通信和协作。

三、Loose Coupling,松耦合。

耦合是类之间彼此联系程度的一种定性度量。因为随着通信和协作数量的增长,类之间的联系程度越来越强,系统的复杂性也随之增长了,类之间的耦合程度也就增加了。通过增加接口,使类之间的通信协作通过接口很好的完成,保证程序尽可能保持低耦合。松耦合系统通常是基于消息的系统,此时客户端和远程服务并不知道对方是如何实现的。客户端和服务之间的通讯由消息的架构支配。只要消息符合协商的架构,则客户端或服务的实现就可以根据需要进行更改,而不必担心会破坏对方。松耦合通讯机制提供了紧耦合机制所没有的许多优点,并且它们有助于降低客户端和远程服务之间的依赖性。

4.Code Contracts--设计合同(DBC),也被称为契约编程,通过合同和合同的程序设计编程,是一个设计软件的方法。它规定的软件设计师应该定义形式,精确的、可验证的软件组件的接口规范,从而扩展的先决条件一般抽象数据类型的定义,后置条件和不变量。这些规范被称为“合同”,按照与商业契约的条件和义务概念隐喻。初步了解了设计合同的概念以及其在软件设计中的作用,所以还是试着在程序中运用到这方面的知识,所以在程序中也用到了规范的组件接口,数据类型。

5.uml

6.代码独到之处

本代码的算法囊括为以下几点:首先各电梯有状态,每时每刻都要扫电梯状态。指令来到后,调用最近的能用的电梯,能到目的地就上,然后下一条指令,不能上就将指令重回队列。电梯运行中发现顺路并且总重量和不超过电梯的总重的人就带上,不能则不带。电梯到顶层或底层改变运行方向。电梯空闲回到1层等待。

时间: 2024-10-21 11:14:22

电梯调度项目总结的相关文章

结对编程:电梯调度

电梯调度项目: 项目分析与需求: 从题目上来看,项目要求编写一个掌控电梯的程序.电梯这个东西,大家都乘过,无非就是:乘客上电梯,判断是否超重,乘客选择想要达到的楼层,最后依次去到离需求最近的一个楼层. 项目中要求有四个电梯,其中第一号和第四号电梯是一模一样的,只需要把负载量给修改即可:第二和第三也大同小异,只需要把负载量和输入楼层的判断方式修改一下即可. 在我们的设想中,我们要达到的效果是这样的:得有一个switch语句,来控制一开始的电梯选择界面:之后在case语句之后相应搭载各种需要的语句以

电梯调度 结对开发项目

一:项目名称: 电梯调度模拟程序 二:项目参与人员: 周其范 胡宝月 三:项目开发语言和工具: Java语言和eclipse,涉及内容:面向对象技术.基于Swing的图形化用户界面.多线程启动和休眠 四:问题陈述: 1.电梯要正常运行,能响应内部.外部按钮 2.要怎样选择哪部电梯电梯,使乘坐者和电梯的距离更近,已达到更省电.更快.更经济. 3.同一部电梯可以响应多位乘客的请求 五:任务需求: 1.要模拟一栋6层楼中两部电梯的调度,模拟乘坐电梯的过程. 2.乘坐者在最低层楼:只能乘坐电梯上楼,在电

结对编程项目——电梯调度

电梯调度 现有一新建办公大厦,共有21层,共有四部电梯,所有电梯基本参数如下表所示: 电梯编号 可服务楼层 最大乘客数量 最大载重量 1 全部楼层 10 800 kg 2 单层 10 800 kg 3 双层 20 1600 kg 4 全部楼层 20 2000 kg 其使用规定如下: 1.楼层号为0~20,其中0号为地下一层: 2.有楼层限制的电梯不在响应楼层停靠,如单双层: 3.所有电梯采用统一按钮控制 请根据上述要求设计并实现一个电梯控制程序,如果有图形显示就更好了. 伙伴介绍与评价: 本次结

结对编程项目--电梯调度(合作伙伴叶思维)

我们所完成的项目是电梯调度,具体要求如下: 一.项目以及合作伙伴 项目:现有一新建办公大厦,共有21层,共有四部电梯,所有电梯基本参数如下表所示: 电梯编号 客服务楼层 最大乘客数量 最大载重量 1 全部楼层 10 800kg 2 单层 10 800kg 3 双层 20 1600kg 4 全部楼层 20 2000kg 其使用规定如下: 1.楼层号为0到20,其中0为地下一层. 2.有楼层限制的电梯不在响应楼层停靠,如单双层. 3.所有电梯采用统一按钮标志. 合作伙伴:叶思维博客网址http://

结对开发--电梯调度报告

“电梯调度”需求分析 一.项目背景 试想一下,石家庄铁道大学基础教学楼的电梯配置如下:大厦有18层, 4部电梯,很多乘客使用这些电梯的日常(旅客重量:平均70公斤最大120公斤,最小45公斤).其他常量数据:电梯速度,开/关门时间,乘客的时间要在/走出电梯.可以对这些合理的假设. 二.数据分析 我们随机选择了一天去现场调查基础教学楼电梯的使用情况,列表如下: 电梯名称 停靠层数 乘客限制 重量限制/kg 电梯开关时间/s 乘客进出电梯时间/s 电梯1 8-18层(双层) 15人 1150 4s

电梯调度之需求分析

电梯调度之需求分析 结对人员:郎国杰.刘伯建 一.项目背景 石家庄铁道大学基础教学楼中有四部电梯,然而基础教学楼却有十八层,每天都有学生们忙碌的去上课,每天都有成群的学生在排队等电梯,而有时候却还不如直接爬上去来的快 二.项目目的 为学生缓解高峰期电梯的压力,提高电梯的利用率. 三.项目调查 (1)总共18层,4部电梯,每部限乘15人,重量限制1150kg. (2)1,2号电梯只停1层以及8-18双层楼,3,4号电梯只停一层以及8-18单层楼. (3)高峰期:7:30--8:00,11:50--

结对编程之电梯调度

编程任务:电梯调度 结对人员:左少辉-12061209,杨昊兰-12061202,吕雨朗 一.此次软工作业确实是让人却步的不敢开始,不过结对编程使得我对完成作业又有了信心,开始没有积极组队的我落单了,后来只能是申请加入已经组好的队伍,所以我们其实是一个三人组,都说人多力量大,想法也就会开阔许多,做起作业来也会顺利许多.起初对作业不是很了解,光是看英文要求就已经醉了,后来还是硬着头皮开始了漫长的代码阅读,浅学c#觉得语法也就一般般,不过看到如此绚丽的代码还是各种懵~确实一个人做起来简直是困难,但是

“电梯调度”需求分析

“电梯调度”需求分析 一.项目背景 试想一下,石家庄铁道大学基础教学楼的电梯配置如下:大厦有18层, 4部电梯,很多乘客使用这些电梯的日常(旅客重量:平均70公斤最大120公斤,最小45公斤).其他常量数据:电梯速度,开/关门时间,乘客的时间要在/走出电梯.可以对这些合理的假设. 二.数据分析 我们随机选择了一天去现场调查基础教学楼电梯的使用情况,列表如下: 电梯名称 停靠层数 乘客限制 重量限制/kg 电梯1 8-18层(双层) 15人 1150 电梯2 8-18层(双层) 15人 1150

软件工程作业之电梯调度

问题描述: 某大楼共有20层,现安装4个电梯参数如下: 1号电梯 全楼层 最大负载800kg 2号电梯 单数层 最大负载800kg 3号电梯 双数层 最大负载1600kg 4号电梯 全楼层 最大负载2000kg 分析: 4个电梯是相互独立工作的,那么分为4个相互独立的调度模块.1号电梯与4号电梯均服务于全楼层且仅有最大负载不同,而2号和3号电梯 服务模式类似.那么1.4号电梯调度模块可合并为一个.同样地,2.3号模块也可以合并.电梯调度的核心功能是接受不同楼层用户的请求并相应,而同一部电梯某时刻