201771010143-张云飞 实验三 结对项目—《西北师范大学疫情防控信息系统》项目报告 任务二 任务三:采用两人结对编程方式,结合我校师生疫情每日上报系统使用体验,设计开发一款符合我校疫情防控工作需求的信息系统,使之具有以下功能: 结对完成博客作业(未能和队友联系,此处作业为单独借鉴网络代码完成)

项目 内容
班级博客链接 https://edu.cnblogs.com/campus/xbsf/nwnu2020SE/
作业要求链接 https://www.cnblogs.com/nwnu-daizh/p/12521474.html
我的课程学习目标 完成一个功能完善的疫情填报系统的开发工作
结对方姓名 张季跃
结对方本次博客链接 /
本项目Github的仓库链接地址 https://github.com/Fairber/pendemic-control

未能和结伴对象取得联系,无奈只得在网上找了一个合适的项目自己进行运行调试和修改。

在结伴方的博客下评论:
201771010143-张云飞 实验三 结对项目—《西北师范大学疫情防控信息系统》项目报告
任务二
任务三:采用两人结对编程方式,结合我校师生疫情每日上报系统使用体验,设计开发一款符合我校疫情防控工作需求的信息系统,使之具有以下功能:
结对完成博客作业(未能和队友联系,此处作业为单独借鉴网络代码完成)
201771010143-张云飞 实验三 结对项目—《西北师范大学疫情防控信息系统》项目报告
任务二
任务三:采用两人结对编程方式,结合我校师生疫情每日上报系统使用体验,设计开发一款符合我校疫情防控工作需求的信息系统,使之具有以下功能:
结对完成博客作业(未能和队友联系,此处作业为单独借鉴网络代码完成)
201771010143-张云飞 实验三 结对项目—《西北师范大学疫情防控信息系统》项目报告
任务二
任务三:采用两人结对编程方式,结合我校师生疫情每日上报系统使用体验,设计开发一款符合我校疫情防控工作需求的信息系统,使之具有以下功能:
结对完成博客作业(未能和队友联系,此处作业为单独借鉴网络代码完成)

2、克隆结对方项目源码到本地机器,阅读并测试运行代码,参照《现代软件工程—构建之法》4.4.3节核查表复审同伴项目代码并记录。(此处评价的是网络上找来的代码)

201771010143-张云飞 实验三 结对项目—《西北师范大学疫情防控信息系统》项目报告
任务二
任务三:采用两人结对编程方式,结合我校师生疫情每日上报系统使用体验,设计开发一款符合我校疫情防控工作需求的信息系统,使之具有以下功能:
结对完成博客作业(未能和队友联系,此处作业为单独借鉴网络代码完成)

概要部分

(1)代码符合需求和规格说明么?
答:基本符合。
(2)代码设计是否有周全考虑?
答:做得很好,值得我学习。
(3)代码可读性如何?
答:简单易懂,条理清晰。
(4)代码容易维护么?
答:感觉维护难度不大。
(5)代码的每一行都执行并检查过了吗?
答:是的。

设计规范部分

(1)设计是否遵从已知的设计模式或项目中常用的模式?
答:否
(2)有没有硬编码或字符串/数字等存在?
答:有。
(3)代码有没有依赖于某一平台,是否会影响将来的移植(如Win32到Win64)
答:没有依赖,应该不会影响。
(4)开发者新写的代码能否用已有的Library/SDK/Framework中的功能实现?在本项目中是否存在类似的功能可以调用而不用全部重新实现?
答:可以实现,不存在。
(5)有没有无用的代码可以清除?
答:没有,作者的备注相当详细。

代码规范部分

(1)修改的部分符合代码标准和风格么(详细条文略)?
 答:符合代码标准

具体代码部分

(1)有没有对错误进行处理?对于调用的外部函数,是否检查了返回值或处理了异常?
 答:检查并处理了
(2)参数传递有无错误,字符串的长度是字节的长度还是字符(可能是单/双字节)的长度,是以0开始计数还是以1开始计数?
 答:无错误,字符串的长度是字节的长度,以0开始计数
(3)边界条件是如何处理的?Switch语句的Default是如何处理的?循环有没有可能出现死循环?
 答:针对需要的操作进行Switch,Default用来针对输入错误,重新输入,循环不会出现死循环
(4)有没有使用断言(Assert)来保证我们认为不变的条件真的满足?
 答:没有使用
(5)对资源的利用,是在哪里申请,在哪里释放的?有没有可能导致资源泄露(内存、文件、各种GUI资源、数据库访问的连接,等等)?有没有可能优化?
 答:在类内部对接的数据库申请并释放,没有可能导致资源泄漏。
(6)数据结构中是否有无用的元素?
 答:无

效能

(1)代码的效能(Performance)如何?最坏的情况是怎样的?
 答:代码正确,程序运行正常。
(2)代码中,特别是循环中是否有明显可优化的部分(C++中反复创建类,C#中 string 的操作是否能用StringBuilder 来优化)?
 答:有可优化部分,但是代码正确就没有修改
(3)对于系统和网络调用是否会超时?如何处理?
 答:不会超时

可读性

代码可读性如何?有没有足够的注释?
 答:注释很详细,可读性很好。

可测试性

代码是否需要更新或创建新的单元测试?还可以有针对特定领域开发(如数据库、网页、多线程等)的核查表。
 答:不需要,数据库建议属性名进行更直观的更改

任务三:采用两人结对编程方式,结合我校师生疫情每日上报系统使用体验,设计开发一款符合我校疫情防控工作需求的信息系统,使之具有以下功能:

(1)可采集全校各类师生员工疫情信息;
(2)各二级部门疫情防控工作负责人可查看本部门人员疫情汇总,并提供高级查询功能进行多属性组合查询和可视化统计功能;
(3)学校防控办指定负责人登录《西北师范大学疫情防控信息统计》子系统,可浏览所有人员填报汇总数据清单,利用【高级查询】可进行数据组合筛选,系统以图形化方式展示各学院已填报和未填报学生统计情况和关键疫情数据统计情况,可【导出】查询列表的EXCEL文件;
(4)人机交互界面要求GUI界面(WEB页面、APP页面都可);
(5)附加分功能:定时填报提醒

结对完成博客作业(未能和队友联系,此处作业为单独借鉴网络代码完成)

需求分析

2019年12月末,中国武汉发生新型冠状病毒(2019-nCoV) 感染的肺炎疫情,为遏制疫情蔓延,有效切断病毒传播途径,在**指导下,各级*部分采取了一系列防控措施: 2020年1 月23 日10时起对武汉“封城”,全国 31个省市也相继实施了严格的防控措施;全国各省市向武汉和湖北派遣医疗队参与救治工作;在全国范围内调配口罩、防护服、药品等急需的医疗资源支援武汉;指导和督促全国范围内拥有医疗物资生产资质的企业尽快恢复生产能力;定向拨付专项财政资金用于疾病防控;从其他省份调集物资保障武汉市民日常生活。

值得一提的是,中国互联网企业在此次疫情防控中发挥了社会治理方面的重要作用。以腾讯为例,围绕应对疫情管控需求开发了十一款产品。其中疫情在线问诊功能,对于减少发热病人之间的相互交叉感染具有重要的作用,患者在家通过互联网向在线医生问诊,减少了病毒传播或感染的风险;谣言粉碎对于公众采取理性态度看待疫情的发展具有重要意义。滴滴出行还在武汉专门组建车队,服务于医护人员的通勤,这在实施交通管制的武汉具有重要作用。此外,还有新型肺炎确诊患者同行程查询工具,用户只需要输入自己所乘坐交通工具的时间和班次,就可以确认是否与被确诊感染者同行,提前做好自我隔离和就诊工作。在疫情防控中,中国互联网企业不仅发展壮大,在承担社会责任方面也越来越成熟。

为有效配合防控机构有关疫情信息的采集、统计与排查,我校开发了教职工/学生疫情上报系统,该系统由教职工疫情每日上报、学生疫情每日上报、二级部门疫情每日汇总表、疫情防控填报统计四个子系统组成。实现对我校各类人员基本情况、所在区域及活动轨迹及健康状况的信息收集。在此基础上提供了高级查询,相对的可视化功能,定时功能以及导出到excel表中的功能。

ISP:

PSP2.1 内容 计划完成需要的时间(min) 实际完成需要的时间(min)
Planning 计划 20 40
*Estimate 估计这个任务需要多少时间,规划大致工作步骤 60 50
Development 开发 860 935
*Analysis 需求分析 (包括学习新技术) 120 80
*Design Spec 生成设计文档 30 40
*Design Review 设计复审 (和同学审核设计文档) / /
*Coding Standard 代码规范 (为目前的开发制定合适的规范) 30 20
*Design 具体设计 240 300
*Coding 具体编码 200 120
*Code Review 代码复审 60 50
*Test 测试(自我测试,修改代码,提交修改) 60 80
*Reporting 报告 60 120
*Test Report 测试报告 40 35
*Size Measurement 计算工作量 40 30
*Postmortem & Process Improvement Plan 事后总结 ,并提出过程改进计划 40 60

201771010143-张云飞 实验三 结对项目—《西北师范大学疫情防控信息系统》项目报告
任务二
任务三:采用两人结对编程方式,结合我校师生疫情每日上报系统使用体验,设计开发一款符合我校疫情防控工作需求的信息系统,使之具有以下功能:
结对完成博客作业(未能和队友联系,此处作业为单独借鉴网络代码完成)
201771010143-张云飞 实验三 结对项目—《西北师范大学疫情防控信息系统》项目报告
任务二
任务三:采用两人结对编程方式,结合我校师生疫情每日上报系统使用体验,设计开发一款符合我校疫情防控工作需求的信息系统,使之具有以下功能:
结对完成博客作业(未能和队友联系,此处作业为单独借鉴网络代码完成)
201771010143-张云飞 实验三 结对项目—《西北师范大学疫情防控信息系统》项目报告
任务二
任务三:采用两人结对编程方式,结合我校师生疫情每日上报系统使用体验,设计开发一款符合我校疫情防控工作需求的信息系统,使之具有以下功能:
结对完成博客作业(未能和队友联系,此处作业为单独借鉴网络代码完成)
201771010143-张云飞 实验三 结对项目—《西北师范大学疫情防控信息系统》项目报告
任务二
任务三:采用两人结对编程方式,结合我校师生疫情每日上报系统使用体验,设计开发一款符合我校疫情防控工作需求的信息系统,使之具有以下功能:
结对完成博客作业(未能和队友联系,此处作业为单独借鉴网络代码完成)
201771010143-张云飞 实验三 结对项目—《西北师范大学疫情防控信息系统》项目报告
任务二
任务三:采用两人结对编程方式,结合我校师生疫情每日上报系统使用体验,设计开发一款符合我校疫情防控工作需求的信息系统,使之具有以下功能:
结对完成博客作业(未能和队友联系,此处作业为单独借鉴网络代码完成)
201771010143-张云飞 实验三 结对项目—《西北师范大学疫情防控信息系统》项目报告
任务二
任务三:采用两人结对编程方式,结合我校师生疫情每日上报系统使用体验,设计开发一款符合我校疫情防控工作需求的信息系统,使之具有以下功能:
结对完成博客作业(未能和队友联系,此处作业为单独借鉴网络代码完成)
201771010143-张云飞 实验三 结对项目—《西北师范大学疫情防控信息系统》项目报告
任务二
任务三:采用两人结对编程方式,结合我校师生疫情每日上报系统使用体验,设计开发一款符合我校疫情防控工作需求的信息系统,使之具有以下功能:
结对完成博客作业(未能和队友联系,此处作业为单独借鉴网络代码完成)

实验小结:本次的开发工作进行的还算顺利,但是没能联系上结对的对象还是有点心塞,他好像也没有管这件事,只能自己默默优化已有的项目了。但是对于老师布置的任务基本上都完成了,也还是不容易。