zoukankan      html  css  js  c++  java
  • 2020软件工程第二次结对作业

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

    一、题目要求

    本次作业要求两个人合作完成,驾驶员和导航员角色自定,鼓励大家在工作期间角色随时互换,这里会布置两个题目,请各组成员根据自己的爱好任选一题。我的结伴队友是任恺源,在这次合作编程中我担任驾驶员的角色,他担任领航员的角色。我们分工明确,配合得很默契,共同完成本次作业任务。

    二、题目

    1.我们在商量之后决定选择题目一,作为本次的作业任务。

    2.我们在刚开始上课的时候介绍过一个小学四则运算自动生成程序的例子,请实现它,要求:

    • 能够自动生成四则运算练习题
    • 可以定制题目数量
    • 用户可以选择运算符
    • 用户设置最大数(如十以内、百以内等)
    • 用户选择是否有括号、是否有小数
    • 用户选择输出方式(如输出到文件、打印机等)
    • 最好能提供图形用户界面(根据自己能力选做,以完成上述功能为主)

    3.驾驶员:陈俊汝,在本次结对编程中,我担任驾驶员的角色。能够完成全部代码工作,程序基本实现全部要求功能。

    4.领航员:任恺源,我的结伴队友。能够辅助驾驶员完成全部代码工作,并且为关键函数选用合适的覆盖标准设计测试用例,并编写代码进行单元自动测试

    *** 程序代码:小学四则运算

    三、题目设计

    • 在进行题目分析和设计之后,确定了实现编程的方向,以及在我和领航员的配合下,确定所实现功能的主要部分。

    • 实现功能为整数加减运算、整数乘法运算、整数除法运算、小数加减运算、分数加减运算和分数乘除运算。

    • 选择某一项运算时,可以选择出题的范围和出题的数目,即根据使用者的能力自行选择题目难度。

    • 生成的练习题存储到文件中,附有正确答案,用户可以查看所做过的题目,来进行改正,并且在使用过程中会进行正确和错误提示。

    • 并实现统计所做题目的正确数目和错误数目,给出本次练习得分。

    • 截图如下所示。

    总体实现功能 总体实现功能 总体实现功能 总体实现功能 总体实现功能 总体实现功能

    四、对领航员的评价

    我的领航员是任恺源,彼此之间也是比较熟悉的,这次任务作业由我们共同合作完成。在接触到题目时,我们就开始分配任务,我是本次任务的驾驶员,负责完成全部代码,实现所有功能。但是在结对编程中,领航员事不可或缺的,我们确定编程方向之后,就开始着手编写代码了。当然,在刚开始的时候考虑不周,导致程序逻辑不严谨,很容易出现BUG,在领航员的帮助下,确定了功能模块的设计和测试,避免了在编程过程中所遇到的逻辑上以及功能上的缺失。在基本完成代码编写后,需要考虑的就是测试代码和优化代码。在这个测试代码的过程中,他是一名很值得信赖的领航员,设计测试样例更好的找出代码的不足,在完善代码方面给我提供了很大的帮助。我对他的总体印象就是严谨,谨慎,负责,是一名很不错的领航员。

    五、结对总结

    这次是我们第二次合作了,作为同班同学我们彼此熟悉自己,对各自的能力也比较了解,虽然我们的编程能力都不是很强,但是,我们凭借着做事认真、负责的态度依旧很成功完成了这次作业任务。结对编程的优势之处在于更能拓展思维,两个人经过思想上的碰撞,思维也就发散开来了,并不局限于个人的思想。这次的结对编程就是很好的合作例子,我们的合作实现了1+1>2的效果,每个人都是彼此的导师,在思维上弥合不足之处,在自己的能力范围之内做出最好的成果。这次合作我作为驾驶员负责完成全部代码,我们先是确定程序功能和整体框架,紧接着就开始了忙碌的工作,其中,领航员对功能模块设计方面提供了很大的帮助,设计和测试代码功能,并且在很大程度上避免了程序逻辑和功能上的缺失,设计覆盖范围足够大的测试样例找出程序中隐藏的BUG,为我在完善代码和优化代码的工作中有着很重要的推进。 在这次结对编程中,使我受益匪浅。我认识了自身能力的不足和思维上的局限性,在编写代码的过程中,也是遇到了很多问题,通过我们之间的交流,相互讨论,更好的完成本次任务。在自己比较迷茫的时候,多听听别人的建议还是很好的,学会合作,实现合作共赢。

    六、工作记录

    在任务期间我和我的结对队员任恺源,主要使用QQ进行详细的任务安排,以及商讨程序的功能,多次交流来完成程序的开发。在必要的时候使用腾讯会议通过分享屏幕的方式来进行交互,共同完成本次结对任务。下面是我们一起工作时的照片。使用腾讯会议能够很方便的远程通话和交流。

    项目 预计 实际
    设计时间 2h 3h
    编码时间 5h 大概15h
    测试时间 1h 0.5h
    代码行数 500 580
    错误代码 编码过程中出现错误 修改错误后有警告部分
    错误修复时间 1h 2h
    开发总时间 10h 大概20h
    总体实现功能
  • 相关阅读:
    KBEngine源码:EntityCall
    skynet 学习笔记-sproto模块(2)
    mongodb:为什么用mongodb
    编写高效服务器程序,需要考虑的因素
    b+树
    mysql:架构
    超越函数/微分方程 /积分中的技术/级数
    积分从入门到放弃<2>
    PyQt4 / PyQt5
    图形学算法:
  • 原文地址:https://www.cnblogs.com/chenjr/p/12794743.html
Copyright © 2011-2022 走看看