结对作业一
结对作业一
这个作业属于哪个课程 | 2021春软件工程实践|W班 (福州大学) |
---|---|
这个作业要求在哪里 | 寒假作业2/2 |
结对学号 | 221801102 221801107 |
这个作业的目标 | 完成原型设计,NABCD模型,记录PSP表格 |
其它参考文献 | 无 |
PSP表格和效能分析
PSP表格
PSP2.1 | Personal Software Process Stages | 预估耗时(分钟) | 实际耗时(分钟) |
---|---|---|---|
Planning | 计划 | 70 | 210 |
Estimate | 估计这个任务需要多少时间 | 10 | 10 |
Discuss | 讨论 | 60 | 200 |
Development | 开发 | 300 | 305 |
Analysis | 需求分析 (学习新技术) | 90 | 85 |
Design | 具体设计 | 180 | 200 |
Design Review | 设计复审 | 30 | 20 |
Reporting | 报告 | 70 | 75 |
Blog | 博客 | 60 | 70 |
Postmortem & Process Improvement Plan | 事后总结, 并提出过程改进计划 | 10 | 5 |
合计 | 440 | 590 |
效能分析
主要是讨论比较花时间,也没想到会讨论很久,主要是针对作业给出的需求进行讨论,把有些不明确的地方明确了,因此这一块比较花时间。但是讨论完之后感觉今后在编码阶段的效率会提升,因为考虑到了很多实际编程的问题。
例如
-
账号具体要怎么实现,是采用传统的登录方式还是OAuth来实现,还是都做实现。
-
对用户的增删改查具体要怎么做,最后采用收藏夹的方式。
-
对动图要怎么实现,是使用折线图还是用条形图,最后选择条形图,因为更加直观。
因此讨论比较花时间,不过我们认为是值得的。
原型地址
原型介绍
设计思路
- 根据用户输入的论文题目或者批量通过excel导入的论文题目,设计用户搜索网页,类似于百度或谷歌首页,可以进行论文题目的搜索。也就是说需要有一个界面来承接这个搜索的功能,并在搜索后跳转到搜索详情界面。
因此总的来说需要一个搜索界面和一个搜索详情界面。并且在点击搜索后进入搜索详情界面。
- 在搜索详情界面可以让用户收藏某篇文章进入收藏夹,在助教的题目描述里面,是说可以对论文进行增删改操作,换句话来说,我们得对原网站的论文概要,题目等单独维护一个拷贝,否则不同用户之间会出现数据冲突,而且也需要特殊方式去判别爬取的论文和用户修改后的论文的关联性,因此需要有一个界面来展示用户的收藏情况。
因此总的来说需要一个收藏界面,而且收藏界面可以对收藏的论文进行增删改操作。
- 由于需要统计爬取的论文信息,因此需要进行相关的统计,对于可对多年间、不同顶会的热词呈现热度走势对比,以动图的形式呈现这里的话,需要用户去手动选择Top10关键词,并以动图的形式进行放映给用户,整体上来说应该用条形图实现,由于需要形成关键词图谱,因此用词云实现。另外由于页面可能较空,因此可能会追加一个饼图设计。
因此总的来说需要一个数据统计界面,用来显示统计情况。并且在点击词云的时候可以直接进行数据的搜索。
- 对于维护用户的登录这块,我们采用OAuth2.0和github建立连接。并获取用户的头像和个人信息等。这一块不需要一个单独的界面,需要一个模态框就可以了。在原型上没有体现。
原型图
主页(搜索界面)
图标是一只很可爱的小老虎,以俺的网名作为网站的名字,同时在navbar上有收藏夹和数据统计的功能,会在用户登录后显示,如果用户未登录,则只能使用搜索的功能,并且navbar部分会显示登录按钮,而非用户的用户名和头像。
搜索详情界面
搜索详情界面可以支持关键词搜索,并以卡片的形式显示论文的标题,概要等,提供收藏按钮让用户收藏进收藏夹。还有提供分页功能,并且可以做自适应的设计。
收藏夹界面
收藏夹界面展现用户的收藏信息,也提供了关于收藏夹内容的编辑功能,取消收藏功能,并做了模态框和用户交互设计,比如点击确定的时候会显示编辑成功等信息。
数据统计界面
左上角是关键词图谱,词云,展示top10的关键词信息,右上角是环形图用来更加直观的展示top10关键词的词频情况,最下面是条形图,可以选择关键词查看近几年对某个关键词不同峰会的趋势情况,以动图的形式展现。
困难解决
1. 需求说到需要对论文列表进行增删改查
一开始的思路是对爬取的论文列表直接进行增删改查,也就是说对所有用户只维护一份爬取的论文列表。如下图所示。
这样的话,不同用户之间的增删改查可能会冲突,而且当用户直接修改了论文标题等信息的时候,可能会导致下次爬虫的时候错误的再次把相同的文认为是不同的文章爬取下来。因此考虑用收藏夹对每个用户单独的再维护一份论文列表。如下图所示。
这样解决了对论文列表进行增删改查的一系列,以及上述问题,而且给后续开发减少冗余带来好处。
2. 需求说到可对多年间、不同顶会的热词呈现热度走势对比
一开始的想法是对多年的不同顶会的全部热词进行呈现热度走势的对比,后来发现这样的方式在动图上可能需要三维才可以做到,难度较大。
后来考虑一份动图只对应一个热词进行展示,避免了三维图形的绘制。
NABCD模型
-
N(Need,需求)
小刚不知道近几年计算机视觉领域的热门研究方向,而论文网站非常众多,根据论文列表去一篇一篇查找总结效率又着实太低,希望有一个网站可以全面的搜索论文并提供近几年的计算机视觉领域的热门研究方向。
-
A(Approach,做法)
我们可以通过爬虫,直接爬取各个论文网站上的文章,这样的话,用户就不必去各个论文网站搜索,而只要在本网站上搜索。通过爬取的论文,可以更加系统全面的分析近几年的计算机视觉领域的热门研究方向,而不是仅限于某个论文网站。
-
B(Benefit,好处)
这个产品给用户带来的好处是,不必为了搜索论文去各个网站上搜索,而且相对于百度或者
google
等搜索引擎来说更加的有针对性,可以保证只是收到论文。最主要的也是解决了用户需求。而且提供收藏夹的功能,可以对论文进行增删改查。 -
C(Competitors,竞争)
与我们竞争的相关产品有知网,万方数据库等,这些也是很好的涵盖了部分内容,但是对于知网来说,收费相对较高。而我们的软件是不收费的,完全开源。万方数据库的内容没有明确的针对性,我们仅仅是针对三个顶尖峰会进行查询。另外我们还支持论文标题批量导入的功能。
-
D(Delivery,推广)
可以先明确我们的用户对象,我们的优势是界面总体比较简单,使用起来也比较简单,而且是给相关计算机的研究者使用的,因此可以找计算机领域的有影响力的人进行尝试,如果他们觉得不错,可以请求他们帮忙推广这个产品。
原型开发工具
-
Axure Rp 9
-
使用 Axure antd 组件库 https://library.ant.design/
结对过程,队友评价
非摆拍结对照片,由于疫情原因,还在家中,因此讨论采用腾讯会议屏幕共享以及QQ聊天的方式,一起进行原型设计。
-
原型设计前准备的照片
这是我们正在准备学习 Axure 的用法,使用共享文档等讨论的图片。
-
使用原型模型工具的照片
下面是我们正在使用 Axure 进行原型设计的截图,图中我们正在进行收藏夹界面的原型设计,并设置交互。
第一次结对的感受
结对编程的感受:两个人在交流的过程中可以很好的发现队友身上的问题,这次和队友比较熟,所以两个人之间可以很随意的对有争论的问题进行交流,所以感觉还不错。
对队友的评价
221801107(huro) 对 221801102(noase) 的评价
我觉得队友很靠谱,第一天的时候就在找资料了,包括原型设计的工具,原型设计工具的激活码,在线合作的markdown文档,如何进行原型工具的协作等。而且进度也很快,现在是第三天,我们基本是已经快要做完的状态了。和强哥一起合作,很舒服。不会出现以前有时候团队合作的时候可能出现对方不积极啊,然后我要告诉他说去哪里哪里学啊,基本都是我在带然后很累的情况,这次感觉有点相辅相成,很自然也比较轻松就完成了任务。
221801102(noase) 对 221801107(huro) 的评价
我觉得队友很细节,因为队友对Ant Design比较了解,所以我制作原型的过程基本不用想,因为Axure不能同一个界面同时协作,所以关于原型的各种细节都是他在指导,我来拖动控件进行操作。在我纠结于各种无关紧要的细节时,他总是能指出应该先关注大局内容,整个人给人的感觉可以说是粗中有细,做事干脆。所以我们只用了短短的三天,就已经做了百分之七八十了,进度飞快。很舒服。