电梯调度 结对项目开发
本周一的软件工程概论课上,王老师布置了结对开发电梯调度项目的作业,我和小胡结为了一组。
这周五晚上,我们都没有课,我和小胡商量着自己先想想思路,到时候一起讨论一下。因为还要做界面设计,我们把思路放在了首要地位,界面设计还要慢慢学习。
下面是我自己的思路:
时间:2014.3.7 19:20-20:17 电梯调度的接口和类定义。
首先要定义两个类。
Class Elevator{}
属性:
- 承载的最大重量;
- 承载最大数量;
- 所在层数和所有层数;(区分上升和下降问题)
- 电梯有固定速度;
- 开门时间;
- 关门时间;
功能:
- 当乘客按键后,停止运行,打开门;
- 让人进去;
- 把门关上;
- 当到达相应楼层时,打开门;(此时,如果有人上电梯,则不用按键,直接进去)
- 上升;
- 下降;
- 超过负载以后发出警报,下去乘客。
四部电梯分四个不同的对象考虑!
Class Passengers{}
属性:乘客数量,重量
功能:
- 按开门键;
- 按关门键;
3. 按上升到m层键;
4. 按下降到n层键;
5. 进电梯门;
6. 出电梯门;
定义乘客类的对象(一个或多个),总重量,总人数,按键功能也是上该层楼梯的乘客们集体发出的多个动作;
若电梯内仍有乘客,而又有新乘客要上时,新定义出前后对象的动态和,加入到原有的对象中。
当有人下去后,乘客数量和重量自动减少。或者新定义一个动态对象,带功能完成后,自动撤销该对象体的存在。