软件工程第四次作业

博客信息 沈阳航空航天大学计算机学院2020软件工程作业
作业要求 https://edu.cnblogs.com/campus/sau/Computer1701-1705/homework/10685
课程目标 熟悉一个“高质量”软件的开发过程
作业目标 结对编程练习

1.题目介绍

  • 现有一新建办公大厦,共有21层,共有四部电梯,所有电梯基本参数如下表所示,其使用规定如下:
  • 楼层号为0~20,其中0号为地下一层
  • 有楼层限制的电梯不在相应楼层停靠,如单双层
  • 所有电梯采用统一按钮控制
  • 请根据上述要求设计并实现一个电梯控制程序,使得用户平均等待时间尽可能小,如果有图形显示就更好了。
  • 算法设计方面问题,大家也可以咨询助教,或者参考这篇文章
  • 另外大家也可以参考邹老师的这篇文章
电梯编号 可服务楼层 最大乘客数量 最大载重量
1 全部楼层 10 800 kg
2 单层 10 800 kg
3 双层 10 800 kg
4 全部楼层 20 2000 kg

2.角色分配

驾驶员:1704班邱欣野
领航员:1705班穆可鑫

3.开发介绍

(1)图形化操作界面

采用web图形化操作界面

(2)访问路径

运行elevatorRun.jar后访问http://localhost:8080

(3)算法

仿照look算法

4.功能介绍

介绍:

  • 实时状态:可以在实时状态中监听每个电梯目前的属性,如总人数,总重量,当前层数,运行状态。
  • 电梯信息:可以在不同序号对应的不同电梯信息中获取具体信息。
  • 操作:
    • 总控制开关:控制所有电梯的运行和使用。
    • 清除数据/停:清除所有当前已添加的数据。
  • 楼层信息:获取每层楼已添加的总信息,包括层数,总人数,总质量。
  • 添加/删除乘客:添加/删除乘客信息。
  • 电梯运行动画:观察电梯的运行路径。

5.合作讨论照片:

6.运行结果样例:

7.总结:

在本次结对编程作业中,我担任驾驶员角色完成代码的编写工作,穆可鑫同学在本次作业中担任领航员工作。在领航方面,穆可鑫同学给出了很好的解决问题的方针和思想,并画出了相应的流程图,在进行共同的讨论和研究后,我完成了本次作业的代码编程任务。完成本次任务后,穆可鑫同学对我的程序进行了严谨的审查和大量的数据测试,提醒我修改了代码中的不安全语句,提醒我优化了一些复杂的逻辑,以及提醒我补充了一些不完整难以理解的注释。我认为此次结对编程领航员发挥的作用很大,不仅能辅助驾驶员完成代码,还能提升驾驶员的工作效率,并省去了驾驶员的测试和修改时间,优化一些复杂的逻辑。虽然在设计和编写过程中我们遇到了很多的问题,但我们两个人配合默契,相互监督,成功的完成了本次结对编程的作业,实现了所有的基本功能。

8.代码

https://github.com/616926509/elevatorPro

posted @ 2020-04-27 16:20  计算机1704-邱欣野  阅读(226)  评论(0编辑  收藏  举报