这个作业属于哪个课程 | 2020春软工实践|W班 |
---|---|
这个作业要求在哪里 | 作业的要求 |
结对学号 | 221701416 221701434 |
这个作业的目标 | 设计疫情统计可视化原型,学习原型设计软件的使用,理解客户的需求 |
作业正文 | 博客链接 |
其他参考文献 | 构建之法,网友的博客,视频教程 |
一.疫情统计可视化原型
↓简易功能GIF演示(图示数据不表明真实情况)
客户需求分解与展示
在全国地图上使用不同的颜色代表大概确诊人数区间
- 颜色的深浅表示疫情的严重程度以及图例,可以直观了解高危区域
-
鼠标移到每个省份会高亮显示
-
点击鼠标会显示该省具体疫情情况
点击某个省份显示该省疫情的具体情况
-
显示该省份对应的感染患者人数、疑似患者人数、治愈人数、死亡人数
-
该省份到目前为止的新增确诊趋势、新增疑似趋势、治愈趋势和死亡趋势
二.原型工具:Axure RP9
本次作业我们结对小组使用的是Axure RP9这款原型设计软件,使用这款软件的好处如下:
-
提供团队协作功能,为我们结对小组的分工合作打下了基础
-
插件丰富,我们能够很轻松的找到我们需要的组件,例如:折线图,柱状图,饼状图等
-
有许多的交互设计,能够满足我们需要的交互设计。
-
作为一个专业的快速原型设计工具,它可以让负责定义需求和规格、设计功能和界面的
专家能够快速创建应用软件或Web网站的线框图、流程图、原型和规格说明文档。
三.PSP表格与效能分析
效能分析
- 虽然这次效能分析无法针对代码那其实就是分析结对的效率问题
- 我和曾哥组队在原型设计的时间上花的时间挺多,主要是因为软件的不熟悉造成
以及一开始先使用了墨刀而后才转到Axure RP9,所以这一段时间的效率其实
我们还是认为比较低下的 - 在博客方面先由曾哥打下框架和主要内容,而后我进行一些扩充和修改,这一部分
我们认为比较有结对的味道,效率也还行
PSP表格
PSP2.1 | Personal Software Process Stages | 预估耗时(分钟) | 实际耗时(分钟) |
---|---|---|---|
Planning | 计划 | 120 | 60 |
Estimate | 估计这个任务需要多少时间 | 1480 | 1660 |
Development | 开发 | 500 | 600 |
Analysis | 需求分析 (包括学习新技术) | 120 | 90 |
Design Spec | 生成设计文档 | 60 | 80 |
Design Review | 设计复审 | 30 | 10 |
Coding Standard | 初步设计原型 | 30 | 20 |
Design | 具体设计 | 60 | 30 |
Coding | 具体操作 | 400 | 600 |
Code Review | 原型复审 | 30 | 20 |
Test | 测试(自我测试,修改交互,提交修改) | 30 | 15 |
Reporting | 报告 | 40 | 60 |
Test Report | 测试报告 | 60 | 45 |
Size Measurement | 计算工作量 | 60 | 45 |
Postmortem & Process Improvement Plan | 事后总结, 并提出过程改进计划 | 60 | 45 |
合计 | 1600 | 1720 |
四.基于NABCD模型给出的解决方案
N(Need,需求)
疫情发生以来,疫情数据起到了积极作用。民众也通过疫情信息来判断自己当前地区的感染情况。
当前,全民抗击新冠肺炎疫情进入逐步恢复产能的新阶段,在逐步恢复产能时,民众迫切需要一款能够及时直观的获取疫情分布图以及疫情当前信息的软件。
- 面向对象:全体中国人民
- 发展趋势:目前抗击新冠肺炎疫情处于逐步恢复产能的新阶段,各行各业复工的时,民众迫切的需要能够及时、直观提供实时疫情信息的软件来确定和规划自己的行程。
在疫情结束后,软件还可以进行功能扩展,不仅实现新冠肺炎疫情的查询,还能查询其他疫情,更新为一款成熟的全疫情信息查询软件。- 需求优先级:基本需求优先,扩展需求作为拓展,使得平台信息功能更加丰富
- 用户的基本需求:能够更直观的了解到全国疫情现状,以及当地疫情现状,并且了解治疗人数和死亡人数
功能模块 | 功能细则 |
---|---|
全国疫情分布可视化 | 展示所有省份的感染程度,通过颜色加以区分,以及在图上显示死亡,治愈,累计感染人数 |
指定地区疫情可视化 | 通过折线图,分别展示确诊人数,累计感染,治愈/死亡,以时间为横坐标,人数为纵坐标 |
指定地区疫情信息模块 | 通过数据显示新增,治愈/死亡。累计感染人数的数量,并且和昨日的数量进行对比 |
A(Approach,做法)
- 基于web平台,通过原型软件实现疫情数据可视化,将后端数据有效的呈现出来
- 使用JAVA语言进行后端数据处理,丰富逻辑功能,自行处理日志文件
- 通过数据库存储累计感染,确诊感染,死亡人数,治愈人数,日期等数据
B(Benefit,好处)
- 访问简易化,通过网页能够直观显示当前疫情状况
- 通过日志文件更新,能够及时反应疫情信息,保证时效性
- 简单的操作以及简洁明了的界面,保证了使用上的便携性以及交互性
C(Competitor,竞争)
优势
- 页面直观明了,没有多余的信息,数据简单易懂,易上手
- 信息更新效率高,完美体现时效性
- 开发效率高,及时响应当下需求
- 可视化明显,能让用户在不知道数据的情况下就能了解全国感染情况
劣势
- UI界面做的比较简单,看上去不够美观
- 实现功能较少,没有实现更多模块
D(Deliver,推广)
- 在网页中推送实时疫情信息
- 开通微信公众号,并向微信用户推送实时疫情信息
五.遇到的困难以及解决方法
本次作业中,我们结对小组所遇见的困难还是挺多的
1.原型制作软件的选择难题
起初,我们一同认为友好的中文界面墨刀是我们的不二之选,然而通过
一下午的使用和与其他小组的交流下,我们发现墨刀并不是我们制作web
原型最好的选择,因而我们及时放弃当前的工作转而向Axure RP 9中。
2.交互按钮的颜色更换:
一开始我们每个省份设置的三个按钮设置了焦点以及悬停或是鼠标按下的
交互操作都无法实现将按钮点击与不点击区别开来,后来经过更深的对
Axure的打磨,我们才发现用获取焦点以及鼠标悬停才能做出按钮选定的效果。
3.烦人的文字遮挡问题:
全国地图中点击省份显示详细信息,但是点到省份名字时取消不掉,一开始这个
问题困扰了我们很久,点击名字的话详细信息会浮现出来,但是点击旁边空白处
取消不掉,只能刷新页面才能取消,经过一番研究,我们才发现原来是文字没有
添加获取交互中的获取焦点和鼠标悬停。
六.结对过程的体验
该项任务一发布后,我和我的老舍友能哥早已组队完毕,但是属实是老懒狗了
某日午后,我和能哥开始了本次作业的旅程,一开始我们就直接进入了主题,连接语音,然后打开作业地址,开始了本次作业的模型分析
一开始我们是懵懵懂懂的,不知道从哪里开始,就从百度找了一些简单明了的中国地图,尝试用我们自己的手法进行地图切割,后面发现实行效率太低了,便放弃了
正当我们陷入焦灼的时候,我们发现了SVG图片格式,于是心中又充满了希望。并且了解了能够处理SVG图片格式的原型设计软件Axure RP9,我们便开始了第二轮的分析与学习:学习Axure RP9以及SVG图片的用法
正如我们所期望的,经过一两小时的努力之下,我们成功的完成了全国地图的初步设计
最后一步就是进入各个省份实现人数统计以及折线图分析,并且完成交互功能。经过一个晚上的努力处理,功夫不负有心人,我们初步完成了原型设计,以及大部分的交互功能
七.本次结对任务的感受与收获
曾峻祺:这次任务是我从大一到现在,为数不多的一次团队合作任务,过程时坎坷的,但是是快乐且踏实的。从任务的一开始到结束,我都是怀着边走边学,边学边做的心情一步一步慢慢前进,
过程中当然会遇到很多麻烦以及困难,是队友给予了我至关重要的帮助,帮助我盈科而后进,在这里我也非常感谢能哥,这次任务的队友,很多不会的地方,都是他一步一步指导,帮助我理解,把我们的效率提升了好几个档次。
让我明白了培养团队精神的重要性,不仅能够塑造良好的个性人格,还有利于我们自身综合素质的提高。
当然,这次任务明确的分工是完成任务的基础,分工后的我们各司其职,很快就能做完相应的部分,然后再讨论,将其拼接。让我懂得了分工合作的重要性,不仅能够发挥整体效能,提高工作效率,还能充分发挥我们个人的特长优势,最重要的是队友之间可以互帮互助
弥补个人的不足。
陈华能:这次的结对我和曾哥都是舍友,彼此比较熟悉,也就比较敢于在结对过程中互相交流,
以前都是自己一个人做点作业,或者做点小项目,但这次其实是第一次比较正式的合作也就是
结对,很高兴有这样一个机会,也发现了结对中会存在很多问题,比如用Axure软件原型的时候,
其中的签入签出会对双方当前的工作造成一些困扰,也提醒着分工的一系列问题,但是结对时可以
互相提问,互相商量下一步需要做什么这也让我体会到了结对对工作效率的提升,不至于个人陷入
其中。所以总的来说结对意义很大,这是次很好的小团队任务。