评分总表

下述表格适用于前端、后端、爬虫开发者的评分,基础分数为50分,在此基础上进行增减。

类别 程度 加减分
准时性 提前完成 +0
按时完成 +0
延后完成,迟交时间一天内或未延误进度 -2
延后完成,迟交时间一天以上或延误进度 -4
质量 质量较高,可读性好,可扩展性好 +2
质量过关或者bug极其微小 +0
质量较差,有非架构设计上的功能性bug -2
质量差,且修复较困难,甚至延误项目进度 -4
Bonus 协助他人完成因拖延或技术难题而未完成的工作 +2
完成额外的开发任务 +2

PM由于工作性质较为特殊,所以不参与以上打分。PM若在实际开发阶段中参与了开发,则可适用Bonus相关的规则。PM的分数将由剩下的所有同学,在团队项目验收结束后进行统一打分。打分模板如下。如果该模板不够详细,可进行进一步细化。

评价 分数
非常尽职尽责,积极性强 +4
较为尽职尽责,比预想的好一点 +2
一般,只是做了该做的事情 0
不太尽职尽责,对日期和任务不敏感 -2
非常不尽职尽责,有些PM的本分工作甚至需要开发者来提醒 -4

准时性评分

对于Alpha阶段开始时所开放的issue,大家都有在Alpha阶段结束时较好的完成。不过,在测试这一周,依然出现了不少需要开发的任务,这些任务先前没有分配,会计入“完成额外的开发任务”的bonus中。

因此,在准时性方面,大家都没有扣分。

质量评分

所有的额外开发任务和Bug都有issue进行记录,对issue进行量化评分。统计4月23日~5月4日之间的issue。

issue类别 issue内容 负责人 备注
设计bug 爬虫:无法分析两个老师共用同一节数的课表信息 #84 杜博玮
沟通bug 消息队列:修正格式 #86 李嘉铖、杜博玮
设计bug 后端:ddl上出现未知错误,返回时间为空 #88 胡彬彬 存在截止日期为空的情况
设计bug 后端:成绩查询成绩不全 #89 李嘉铖
设计bug 爬虫:消息队列进程无法正常处理 #92 杜博玮
沟通bug 后端:user_login报错 #94 胡彬彬、杜博玮 爬虫修改错误返回值后沟通不及时
设计bug 后端/爬虫:课表重复课程 #95 杜博玮
设计bug 后端/爬虫:课表没有13、14节课的信息 #97 杜博玮
设计bug 爬虫:课表格式分析再度出错 #98 杜博玮
设计bug 爬虫:Try-catch覆盖不全,对于课程中心的形式无法正确处理 #103 杜博玮
设计bug 后端:两级制GPA计算 #131 李嘉铖
设计bug 爬虫:部署在后端的Chrome没有kill干净 #133 杜博玮
设计bug 爬虫:课程中心页面分析bug #140 杜博玮 截止日期存在“未显示”

胡彬彬的代码bug数量最少,并且每次上交之前都会进行测试,整体代码质量在测试阶段表现较好。对于上一阶段做的不够完善的错误处理,在测试阶段也进行了修改,目前的错误处理信息已经较为完善,会给到加分。

李嘉铖的代码bug数量不多,且都是可以原谅,不太影响功能的bug。不过,在写代码时还是存在一定程度的粗心和考虑不周,需要注意。

杜博玮作为爬虫开发,bug数量确实非常多。大部分debug时间都在与爬虫交流,或者说一个bug最终总会定位到爬虫身上。不过这不代表其代码本身的质量比其他开发者差,只是这份工作的特殊性导致bug不断。不过这么多的bug应当也有办法去减少。比如:

  • 建立更加完善的错误处理机制,覆盖更全面的try-catch,起码保证不要有chrome没杀掉
  • 与后端沟通,最好是每一个字段都有为空串或者null的准备,预防特殊情况
  • 做好错误局部化处理,不要因为一个错误导致整个爬虫进程瘫痪(例如issue#140,issue#98)

我认为这些都是爬虫可以做到更好的地方。在Beta阶段,在使用python的requests包进行重构的时候,虽然避免了许多内存上的问题,但在网络方面的问题依然无法忽视。希望爬虫能够做到更好。

issue类别 issue内容 负责人 备注
设计bug 按返回键会回到登录界面而不是退出程序 #54 乔玺华
设计bug 空教室查询页面无法下拉 #58 乔玺华
设计bug 登录页面错误处理bug #62 张艺璇
设计bug 主页设置功能在退出程序后重新进入又变成课表 #66 张艺璇
设计bug 成绩查询页面缺少夏季成绩 #98 单彦博

前端总体来说,bug较少,可能是因为使用了较为成熟的框架和模板,但存在一些疏忽的bug。

相对而言,单彦博出的bug更少,且担任了前端code review的职责,在PM不熟悉前端代码的情况下,充当了一个3人组内的PM角色,所以会把加分给到单彦博。

Bonus评分

下面是额外开发任务的评分参考。完全按照issue数量来定开发加分不太合适,因为每个issue的任务量不同。如果是任务量较少但可归为一类的任务,会统一计算。

开发任务 相关issue 负责人
课表界面美化 课表美化 #67
课表显示细节中,对于只有一节课的课程,不应显示n-n节 #87
张艺璇
人性化改动 自定义主页界面增加确定按钮 #57
自定义主页点击确认后应当自动返回 #79
乔玺华
人性化改动2 空教室查询美化 #68
DDL界面增加选项,设置已完成的内容不显示 #93
乔玺华
版本更新功能 版本更新检测功能 #69 单彦博
安全性改善 使用AES算法对传输的“学号”和“姓名”进行加密 #83 单彦博
开发任务 相关issue 负责人
多爬虫适配 后端:user_login支持爬虫的多线程爬取 #107 胡彬彬
后端:消息队列去重、支持爬虫的改动 #108 李嘉铖
爬虫:支持多线程和消息队列交互 #109 杜博玮
GPA计算细化 后端/爬虫:修改GPA算法以适应五级评分制,爬取课程评价信息 #111 李嘉铖、杜博玮
版本更新 后端:增加版本更新功能适配 #141 胡彬彬
安全性改善 后端:使用AES算法对“密码”和“学号”进行加密 #112
后端:能够处理爬虫发送的DELETE请求,并预先和数据库密码、消息队列进行检查 #114
胡彬彬
爬虫:修改并统一解密算法 #113
爬虫:遇到“用户名或密码错误”时,告知前端删除该用户信息 #115
杜博玮
摒弃Chrome 爬虫:重构用户登录检查和获取基本信息 #142 杜博玮

最终评分

折算加权时,前端3人共享150分加权,后端3人共享150分加权。

因为要求不能出现重分,且分数必须为整数,所以如果出现重分,会优先根据代码质量、额外开发issue数量来决定谁的分数更高。

最终分数将等PM分数投票出来后,七人共享350分加权。

姓名 准时性 质量分 Bonus 总分
乔玺华 0 0 4 54
张艺璇 0 0 2 52
单彦博 0 2 4 54
李嘉铖 0 0 4 54
胡彬彬 0 2 6 58
杜博玮 0 -2 8 56

PM分数投票,加权均分53.33,截图如下:

[软工顶级理解组] Alpha阶段团队贡献分评分的更多相关文章

  1. [软工顶级理解组] Beta阶段团队贡献分评分

    贡献分评分依据 下述表格适用于前端.后端.爬虫开发者的评分,在此基础上进行增减. 类别 程度 加减分 准时性 提前完成 +0 按时完成 +0 延后完成,迟交时间一天内或未延误进度 -2 延后完成,迟交 ...

  2. [软工顶级理解组] Alpha阶段测试报告

    [软工顶级理解组] Alpha阶段测试报告 在测试过程中发现了多少Bug? 测试阶段发现并已修复的bug: 尚且存在,但是难以解决或者不影响使用的bug: 计算重修课程的时候,如果重修课程的课程号和原 ...

  3. [软工顶级理解组] Alpha阶段项目展示

    目录 团队成员 软件介绍 项目简介 预期典型用户 功能描述 预期目标用户数 用户反馈 团队管理 分工协作 项目管理 取舍平衡 代码管理 程序测试 代码规范 文档撰写 继续开发指导性 用户沟通 需求分析 ...

  4. [软工顶级理解组] Alpha阶段事后分析

    目录 设想和目标 计划 资源 变更管理 设计/实现 测试/发布 团队的角色,管理,合作 总结 质量提高 会议截图 设想和目标 我们的软件要解决什么问题?是否定义得很清楚?是否对典型用户和典型场景有清晰 ...

  5. [软工顶级理解组] Beta阶段项目展示

    目录 团队成员 软件介绍 项目简介 预期典型用户 功能描述 预期目标用户数 用户反馈 团队管理 分工协作 项目管理 取舍平衡 代码管理 程序测试 代码规范 文档撰写 继续开发指导性 用户沟通 需求分析 ...

  6. [软工顶级理解组] Beta阶段事后分析

    目录 设想和目标 计划 资源 变更管理 设计/实现 测试/发布 团队的角色,管理,合作 总结 质量提高 会议截图 设想和目标 我们的软件要解决什么问题?是否定义得很清楚?是否对典型用户和典型场景有清晰 ...

  7. [软工顶级理解组] Beta阶段测试报告

    在测试过程中发现了多少Bug? 测试阶段发现并已修复的bug: 尚且存在,但是难以解决或者不影响使用的bug: 计算重修课程的时候,如果重修课程的课程号和原课程号不同,则GPA计算会出现误差.但我们无 ...

  8. [软工顶级理解组] 团队任务拆解(Alpha)

    一.任务概述 在alpha阶段,我们需要完成功能规格说明书中所提到的所有功能,在一个阶段的开发周期内,交付最小可行的可用版本. 二.任务分配及时长 分组&成员 具体任务 预计时长(小时) 前端 ...

  9. [软工顶级理解组] 团队规划和任务拆解(Beta)

    目录 需求再分析 功能增减 管理改进 任务分解 人员管理 需求再分析 在Alpha阶段,我们的产品得到了用户的广泛好评,但是还是存在一些问题. 登录不稳定,登录速度慢等问题:这是北航VPN本身的不稳定 ...

随机推荐

  1. Mysql常用sql语句(4)- distinct 去重数据

    测试必备的Mysql常用sql语句系列 https://www.cnblogs.com/poloyy/category/1683347.html 前言 我们使用select进行数据查询时是会返回所有匹 ...

  2. Mybatis-基本学习(下)

    四,MAP的使用--超常用 思考:多表连接查询怎么做?---MAP的好处!---返回List

  3. 方法重载(Override)

    什么是方法的重写(override 或 overwrite)? 子类继承父类以后,可以对父类中同名同参数的方法,进行覆盖操作. 应用: 重写以后,当创建子类对象以后,通过子类对象调用子父类中的同名同参 ...

  4. spark相关介绍-提取hive表(一)

    本文环境说明 centos服务器 jupyter的scala核spylon-kernel spark-2.4.0 scala-2.11.12 hadoop-2.6.0 本文主要内容 spark读取hi ...

  5. 截断误差VS舍入误差

     截断误差:是指计算某个算式时没有精确的计算结果,如积分计算,无穷级数计算等,使用极限的形式表达的,显然我们只能截取有限项进行计算,此时必定会有误差存在,这就是截断误差. 舍入误差:是指由于计算机表示 ...

  6. 彻底解决Hive小文件问题

    最近发现离线任务对一个增量Hive表的查询越来越慢,这引起了我的注意,我在cmd窗口手动执行count操作查询发现,速度确实很慢,才不到五千万的数据,居然需要300s,这显然是有问题的,我推测可能是有 ...

  7. C#中List是链表吗?为什么可以通过下标访问

    使用C#的同学对List应该并不陌生,我们不需要初始化它的大小,并且可以方便的使用Add和Remove方法执行添加和删除操作,但却可以使用下标来访问它的数据,它是我们常说的链表吗?     List& ...

  8. Xshell和Xftp - 下载安装

    简介 Xshell 实际工作运用:连接Linux Xftp 实际工作运用:传输文件到Linux系统 下载安装 三连后评论区留言私发,此贴长期有效!!!

  9. mybatis关系表

    <select id="selectSingleQuestion" resultType="remarkPaper"> select FrontTi ...

  10. 『Python』matplotlib划分画布的主要函数

    1. subplot() 绘制网格区域中几何形状相同的子区布局 函数签名有两种: subplot(numRows, numCols, plotNum) subplot(CRN) 都是整数,意思是将画布 ...