这个作业属于哪个课程 | https://edu.cnblogs.com/campus/fzu/2020SpringW/ |
---|---|
这个作业要求在哪里 | https://edu.cnblogs.com/campus/fzu/2020SpringW/homework/10400 |
结对学号 | 221701233、221701234 |
这个作业的目标 | 分析需求,设计疫情统计可视化项目原型 |
作业正文 | https://www.cnblogs.com/sillyby/p/12368158.html |
其他参考文献 | 《构建之法(第三版)》 |
PSP
PSP2.1 | Personal Software Process Stages | 预估耗时(分钟) | 实际耗时(分钟) |
---|---|---|---|
Planning | 计划 | 30 | 45 |
Estimate | 估计这个任务需要多少时间 | 30 | 45 |
Development | 开发 | 480 | 550 |
Analysis | 需求分析 (包括学习新技术) | 120 | 100 |
Design Spec | 生成设计文档 | 100 | 90 |
Design Review | 设计复审 | 60 | 40 |
Coding Standard | 代码规范 (为目前的开发制定合适的规范) | 0 | 0 |
Design | 具体设计 | 200 | 320 |
Coding | 具体编码 | 0 | 0 |
Code Review | 代码复审 | 0 | 0 |
Test | 测试(自我测试,修改代码,提交修改) | 0 | 0 |
Reporting | 报告 | 80 | 60 |
Test Report | 测试报告 | 0 | |
Size Measurement | 计算工作量 | 20 | 20 |
Postmortem & Process Improvement Plan | 事后总结, 并提出过程改进计划 | 60 | 40 |
合计 | 590 | 655 |
项目需求分析
Need 需求
目前新型冠状病毒肺炎疫情到了非常关键的时期,关系到全国上下每个人。公众对疫情的走向十分关注,迫切需要一个能够方便及时地获取最新疫情动态的渠道;而对于领导者而言,信息透明是公众的“定心丸”,需要一个好的方式将疫情信息透明化。
必要需求
用户希望可以通过地图的形式来直观显示疫情的大致分布情况,还可以查看具体省份的疫情统计情况。
- 在全国地图上使用不同的颜色代表大概确诊人数区间
- 颜色的深浅表示疫情的严重程度,可以直观了解高危区域;
- 鼠标移到每个省份会高亮显示;
- 点击鼠标会显示该省具体疫情情况
- 点击某个省份显示该省疫情的具体情况
- 显示该省份对应的感染患者人数、疑似患者人数、治愈人数、死亡人数;
- 该省份到目前为止的新增确诊趋势、新增疑似趋势、治愈趋势和死亡趋势
辅助需求
- 可以查看最新的疫情新闻,并可以方便地获取新闻来源;
- 可以查询用户乘坐过的公共交通工具是否存在感染者,
Approach 做法
概述
搭建一个实时显示疫情数据的web应用,基础功能包括全国和具体省份的疫情概览和数据可视化显示,并提供“疫情新闻”,“同程查询”、“谣言鉴别”等额外功能入口。
功能划分
基础功能 | |
---|---|
全国疫情数据可视化 | 1、直接用数字仪表显示现有确诊、累计确诊、治愈、死亡等不同群体人数 2、全国地图上使用不同的颜色划分省,并提供图例,不同颜色代表不同的确诊人数区间,直观了解高危区域,用户焦点位于某个省时该省会高亮显示,单击某省份可查看该省的详细疫情。 3、提供现有确诊、累计确诊、治愈/死亡人数的趋势图,直观反映疫情大致走向。 |
各省疫情数据可视化 | 1、数字仪表显示现有确诊、累计确诊、治愈、死亡人数 2、提供现有确诊、累计确诊、治愈/死亡人数的趋势图 3、详细列出该省所有城市的疫情数据,有序排列 |
外围功能 | |
疫情新闻浏览 | 列出与疫情有关的最新新闻概览,由近至远按日期份块,并提供新闻详情链接 |
同程查询 | 查看指定班次是否存在感染者,支持飞机、列车、公交、出租、轮渡等交通方式的查询,可按照班次/车牌、目的地、时间过滤查询 |
谣言鉴别 | 收集网络流传的谣言,并逐个给出鉴别结果 |
Benifit 好处
-
易于访问。web应用的一大优点,用户只需要有浏览器即可,不需要再安装其他软件。
-
数据直观易懂。采用丰富的图形图表将抽象数据可视化,让普通用户也能容易理解数据并提取有用的信息。
-
实时更新。每次访问,保证用户得到的是最新的疫情数据,同时能够及时获取相关资讯,跟进疫情动态。
-
不仅仅是数据可视化。除了疫情数据可视化这一核心功能,还提供了和疫情有关的额外功能,能让用户能够更加全面地了解疫情。
Competitors 竞争
优势
- 友好的用户交互界面,内容简洁;
- 清晰的数据仪表板和良好的可视化效果,疫情信息直观易懂;
- 集合多项功能,解决用户多种需求;
- 利用web应用的易变性,可根据需求变化及时调整业务。比如至截稿,全国疫情已得到有效控制,而国际疫情则日渐严重,用户可能将疫情关注的焦点转移到国际范围,这时就可能需要添加国际疫情动态的可视化功能;
劣势
- 自疫情扩散以来,市面上类似的产品已经有很多,如百度、丁香医生都推出了优秀的疫情动态数据可视化的网页,功能也相当完善,广为人知,若想与之同台竞争压力很大;
- 我们属于刚刚开始分析并准备开发该产品,无论是开发时在人员的技术水平和时间资源方面,还是在产品的交互流畅度和信息丰富度上与已知竞品都会有较大差距;
- 从本班级范围来说,其他同学的作品也算是我们的竞争对象,更高水平的结对编程小组能实现我们难以实现或者意想不到的,能让用户惊喜的功能。
Delivery 推广
- 可通过校园平台和社交软件进行推广
项目原型概览
使用的原型设计工具:墨刀
疫情地图
疫情新闻
同程查询
谣言鉴别
原型传送门:https://free.modao.cc/app/60d312a367ee10f044e6fdfe526587e007c5ed44?simulator_type=device&sticky
遇到的问题和解决方案
技术问题
-
原型设计和实际开发的边界
-
问题描述:在尝试实现地图高亮需求时,我们发现原型设计工具功能十分有限,想要在这一阶段完全展现地图高亮,我们首先提出了两种方法:
1、分省拼接地图,逐个导入设计原型并添加高亮事件;
2、运用echarts生成地图,内联到设计原型。
然而二者都较为繁琐,似乎都不是最好的解决办法,我们在思考过程中同时提出了一个本质问题——原型设计究竟应该做些什么?
-
解决方案:
经过讨论和浏览了一些原型设计案例,我们得出一个初步结论:原型设计的目标是以较简单灵活的方式快速验证用户需求和统一开发目标。假如采用上述任一方法,内联到设计原型中,如果用户在看完原型后提出了比较重大的需求变更,我们甚至需要去维护地图的代码或者重修大量的地图碎片,失去了原型设计的灵活性。
最终我们采用的方法是:以一个省的高亮效果为需求示例向用户展示,并说明在后续开发中该效果将运用到所有省。这样一来,用户也能理解我们的思路,变更原型的代价也大大减少。
-
协作问题
-
工作成果如何整合
幸运的是,墨刀提供了团队合作的解决方案,我们可以同时在一个设计原型上进行设计,并实时反馈给对方。通过钉钉的视频会议和共享桌面也能很好地解决远程协作的问题。
结对过程
视频讨论
原稿设计(部分)
个人总结
第一次参与结对作业,这可以算是一种全新的编程体验了,互相交流的过程中,我们规避了很多以往单人作业时会犯的低级错误,也能及时淘汰一些不好的idea,还能相互学习对方的优点,有效地推进工作。
但是在如何与同伴进行有效沟通方面我还是做的不够,讨论的时候双方常常陷入尴尬的沉默中,有时候还会出现一个人口若悬河,另一个人一脸懵逼的情况,成为了结对作业的一大阻力。
同时,这次作业还让我接触到了原型设计,我才知道设计不仅仅只是在纸上写写画画,还能够通过设计原型将idea更加生动地展现出来,原型设计不仅是一个设计工具,也是一个优秀的交流工具。