软工实践原型设计——PaperRepositories

写在前面

PSP表格

PSP3.1 Personal Software Process Stages 预估耗时(分钟) 实际耗时(分钟)
Planning 计划 10 10
· Estimate · 估计这个任务需要多少时间 10 10
Development 开发 690 775
· Analysis · 需求分析 (包括学习新技术) 200 150
· Design Spec · 生成设计文档 100 30
· Design Review · 设计复审 10 10
· Coding Standard · 代码规范 (为目前的开发制定合适的规范) 20 20
· Design · 具体设计 100 150
· Coding · 具体编码 200 400
· Code Review · 代码复审 10 5
· Test · 测试(自我测试,修改代码,提交修改) 50 10
Reporting 报告 20 30
· Test Repor · 测试报告 10 10
· Size Measurement · 计算工作量 5 10
· Postmortem & Process Improvement Plan · 事后总结, 并提出过程改进计划 5 10
· 合计 720 815

NABCD模型

N——Need 需求

  • 痛点——现有的论文没有很好的分类整合起来,一篇篇查找效率太低,无法及时有效的获得最新的热门领域和研究方向

    他不知道近几年顶会的热门领域和研究方向,根据论文list去一篇一篇查找总结效率又着实太低

  • 需求

    • 用户可给定论文列表
      通过论文列表,爬取论文的题目、摘要、关键词、原文链接;
      可对论文列表进行增删改操作(今年、近两年、近三年);
    • 对爬取的信息进行结构化处理,分析top10个热门领域或热门研究方向;
      可对论文属性(oral、spotlight、poster)进行筛选及分析;
      形成如关键词图谱之类直观的查看方式;
    • 可进行论文检索,当用户输入论文编号、题目、关键词等基本信息,分析返回相关的paper、source code、homepage等信息;
    • 可对多年间、不同顶会的热词呈现热度走势对比(这里将范畴限定在计算机视觉的三大顶会CVPR、ICCV、ECCV内)。
  • 补充需求:
    • 用户可以通过检索功能得到某个关键词的综合搜索结果,包括在此领域最近有相关报告的作者和相关会议记录、论文。
    • 检索结果中还会显示收藏、下载、添加笔记的人数,亦可以查看他人的笔记,方便自己的学习。还可以添加收藏、笔记方便日后查看、学习。

A——Approach 方法

  • 基于Web的设计——Web端的开发更符合用户群体使用此类应用的习惯。同时方便用户访问,提高用户体验和粘性
  • “论文列表功能”——针对用户自定义给定论文列表爬取论文的需求,采用拖拽上传的功能批量操作,使用户快速增删改论文。
  • “检索结果功能”——针对用户结构化处理爬取信息的需求,快速检索筛选出论文的属性和相关信息,并增加了论文下的笔记功能,方便受众使用。
  • “会议热点功能”——针对用户快速了解top10的热门领域和研究方向的需求,在首页采用轮播新闻页和Top10论文榜的展示形式,模仿门户网站展示学术领域内容,提高用户可阅读性。
  • “论文分析和热词分析”——输入通过词云以及饼状图展示出该论文中的高频词汇。丰富筛选条件,从而精确得到用户需要的相关信息。

B —— Benefits 好处

  • 参考了门户网站首页和新浪微博的推送方式,提高了用户体验,避免了学术相关应用的枯燥性。
  • 在传统的搜索、爬取功能上推送了相关领域人士的信息和相关会议,方便用户快速获取信息,提高查找效率,快速上手。
  • 增加了关注功能,便于第一时间掌握相关信息,不至于在信息泛滥中迷失方向。

C —— Compettors 竞争

优势:

  • 形成了类似"问答社区"似的用户交流形式,有利于形成"专家"和"小白"间的良性互动
  • 在传统的搜索结果如作者、会议、论文的基础上增加了笔记的功能,有利于知识碰撞和交流进步。
  • 通过丰富的数据可视化增强信息的可阅读性,在各种图表中加入交互元素,便于用户筛选信息。
  • UI设计轻快活泼,产品设计符合轻松方便的思想,结合了搜索产品、问答社区和门户网站的优点。

劣势:

  • 论文导入时通过excel上传增加了用户的操作流程。
  • 上传文件采用列表形式,当输入条目较多时不够直观。

D —— Delivery 推广

  • 针对研究计算机视觉方向的同学间先进行小部分推广,收集用户体验并进行改进。
  • 扩大受众,不再仅仅局限于计算机视觉方面的资料爬取,并向多方面推广,收集更多的资料后进行优化。
  • 不断进行软件迭代,积累更多用户。

流程思路

结对过程

分工情况

    • 会议热点(首页)
    • 导航栏
    • 论文列表
    • 个人中心
    • 我的收藏
  • 队友

    • 登陆页
    • 背景块
    • 检索结果
    • 论文分析

做完登录和首页以后我们有意识的做了个大概的模板,然后做每个新的页面时可以直接引用,提高了不少效率。

原型实现

  • 登录页面

    登录之后直接切换到会议热点(首页),为相关会议的热点新闻以及十大热门论文,可以方便使用者了解最新的会议动态。

  • 检索结果

    采用混合检索,可以通过人名、论文名、会议等进行检索,并且将检索到的结果按分类或综合查看。在概要页可查看论文的标题、作者、属性(oral、spotlight、poster)、源代码链接等信息。检索结果中还会显示收藏、下载、添加笔记的人数,亦可以查看他人的笔记,方便自己的学习。还可以添加收藏、笔记方便日后查看、学习。

    通过导航栏的搜索框进行快速查询

  • 论文列表

    可以通过拖拽excel表格的形式上传文件,上传文件后可在下方的列表中查看,并选择论文进行进行添加。添加后即可在论文结果处查看论文的题目、作者、原文链接、摘要、关键词等信息。

    点击进入详情页

  • 论文分析

    • 热度走势分析

      可以通过输入关键词来查看该关键词近10年来的热度对比趋势图。可以自行选定10年内的某个时间。

    • 论文分析

      通过输入论文标题,检索出该论文,并通过词频图以及饼状图展示出该论文中的高频词汇。

  • 我的收藏

    可以查看自己收藏的论文

  • 个人中心

    根据时间轴排序查看下载、笔记、喜欢和浏览记录。

遇到的困难及解决办法

  • 困难1:对需求理解不够准确

    • 相互讨论得到结果
    • 询问有选实践课的同学
  • 困难2:第一次使用原型设计工具,RP为全英文软件,刚开始完全不知道那个按钮在哪里

    • 将RP汉化
    • 观看相关教程视频
  • 困难3:没有UI设计经验,对UI的设计规则不是很了解
    • 查看新浪微博,作为整体布局的参考

心得体会

前两次的作业都是独立完成,而这次的作业需要结对,原本以为两个人做起来会轻松许多。但是在实践中证明这次的工作量还是挺大的,和队友两个人从最初的一起理解题目,到后面的设计,实现中不断的讨论修改细节。每做一个小模块我们都讨论了一下我们是不是理解错题目了。而且有时和队友的理解是不一样的,就出现了做着做着发现和刚开始讨论的有出入,就要重新修改的情况。因为对RP软件的不熟悉,刚开始制作的时候进度很慢,轮播图做了比较久,后面熟悉之后就快了很多了。一步一步的做出一个原型设计还是挺不错的(虽然中间的过程很艰辛)。我们觉得我们设计的页面还是挺友好美观的。

补充作业

  • 你已经具备的专业知识、技能、能力有哪些?

    • 简单的数据库的设计与开发
    • Android开发,只做过小demo
    • 前端三大件(html,css,javascript)
  • 离成为一个合格的 IT专业毕业生,在专业知识、技能、能力上还差距哪些?

    • 各项技能都不是非常精通
    • 专业知识仅限于课本上学习的(考试完之后就比较少用好,例如:数逻、组原)
    • 学习能力还需提高
skill/技能 课前评估 课后评估
Programming:Tst 0 6
Programming Language 3 7
Development on Different Platforms 3 7
Person Software Process:个人源码管理 1 7
Person Software Process:估计,记录工作量 1 6

在学习这门课之前都没有做任何的记录,个人源码管理也只是保存在电脑中,没有上传到github上面过。在每一次的编程作业时只会大概的感觉一下这个我要做多久,做完之后也不会去记录和反思。但是通过这几次的作业,都会去记录每一小项花费的时间。通过学习熟悉git的基本操作,将源码上传到github上,这样就算没有带着自己的电脑也能在别人电脑上继续完成项目。希望能够通过不断地学习实践,达到估计得水平

软工实践原型设计——PaperRepositories的更多相关文章

  1. [福大软工] W班 软工实践原型设计—成绩公布

    作业地址 https://edu.cnblogs.com/campus/fzu/FZUSoftwareEngineering1715W/homework/909 作业要求 详见作业地址 存在问题 1. ...

  2. 助教总结 -【福大软工实践-2017-2018-K班】

    助教总结 -[福大软工实践-2017-2018-K班] 非常抱歉这么晚才来写总结! 助教工作 助教共发表博客39篇. 助教共点评约500条. 起步 对于常规课程的起步,通常都是在第一次课堂上由老师对课 ...

  3. 软工实践——结对作业2【wordCount进阶需求】

    附录: 队友的博客链接 本次作业的博客链接 同名仓库项目地址 一.具体分工 我负责撰写爬虫爬取信息以及代码整合测试,队友子恒负责写词组词频统计功能的代码. 二.PSP表格 PSP2.1 Persona ...

  4. 2018软工项目UML设计(团队)

    团队信息 队名:火箭少男100 本次作业课上成员 短学号 名 本次作业博客链接 2507 俞辛(临时队长) https://www.cnblogs.com/multhree/p/9821080.htm ...

  5. 2018软工实践—Alpha冲刺(10)

    队名 火箭少男100 组长博客 林燊大哥 作业博客 Alpha 冲鸭鸭鸭鸭鸭鸭鸭鸭鸭鸭! 成员冲刺阶段情况 林燊(组长) 过去两天完成了哪些任务 协调各成员之间的工作 测试整体软件 展示GitHub当 ...

  6. 2018软工实践—Alpha冲刺(9)

    队名 火箭少男100 组长博客 林燊大哥 作业博客 Alpha 冲鸭鸭鸭鸭鸭鸭鸭鸭鸭! 成员冲刺阶段情况 林燊(组长) 过去两天完成了哪些任务 协调各成员之间的工作 多次测试软件运行 学习OPENMP ...

  7. 2018软工实践—Alpha冲刺(8)

    队名 火箭少男100 组长博客 林燊大哥 作业博客 Alpha 冲鸭鸭鸭鸭鸭鸭鸭鸭! 成员冲刺阶段情况 林燊(组长) 过去两天完成了哪些任务 协调各成员之间的工作 多次测试软件运行 学习OPENMP ...

  8. 【软工实践】Beta冲刺(4/5)

    链接部分 队名:女生都队 组长博客: 博客链接 作业博客:博客链接 小组内容 恩泽(组长) 过去两天完成了哪些任务 描述 新增数据分析展示等功能API 服务器后端部署,API接口的beta版实现 展示 ...

  9. 【软工实践】Beta冲刺(3/5)

    链接部分 队名:女生都队 组长博客: 博客链接 作业博客:博客链接 小组内容 恩泽(组长) 过去两天完成了哪些任务 描述 新增数据分析展示等功能API 服务器后端部署,API接口的beta版实现 展示 ...

随机推荐

  1. 迪米特法则(LoD)

    如果两个类不必彼此直接通信,那么这两个类就不应当发生直接的相互作用.如果其中一个类需要调用另一个类的某一个方法的话,可以通过第三者转发这个调用.其根本思想是类之间的松耦合. 类之间的耦合越弱,越有利于 ...

  2. MapReduce之Reduce Join

    一 介绍 Reduce Join其主要思想如下: 在map阶段,map函数同时读取两个文件File1和File2,为了区分两种来源的key/value数据对,对每条数据打一个标签(tag), 比如:t ...

  3. HMM笔记

    参考资料: 1.https://www.bilibili.com/video/av24132174/?p=4 2.<数学之美>-吴军 3.<统计学习方法>-李航 HMM(Hid ...

  4. python matplotlibmat 包mplot3d工具 三维视图透视取消

    https://stackoverflow.com/questions/23840756/how-to-disable-perspective-in-mplot3d 简单的解决方法是 ax = fig ...

  5. 对fgets的理解

    gets()函数 因为用gets函数输入数组时,只知道数组开始处,不知道数组有多少个元素,输入字符过长,会导致缓冲区溢出,多余字符可能占用未使用的内存,也可能擦掉程序中的其他数据,后续用fgets函数 ...

  6. C#中如何使用JS脚本

    C#中如何使用JS脚本 目前在做的组态软件中就使用到了js脚本,这部分js脚本是供用户编写的,用户可以通过我们提供的脚本以及js自身的逻辑,用户就可以随心所欲的控制设备的运行.有比较了几款在C#中执行 ...

  7. AtCoder Regular Contest 100 E - Or Plus Max

    一道很好的dp题 dp[K]存的是 i满足二进制1属于K二进制1位置 最大的两个Ai 这样dp[K]统计的两个数肯定满足(i | j) <= K 然后不断做 update(dp[i | (1&l ...

  8. 如何在同一个Excel里,对两个很相似的工作簿比对出不同之处

    如何在同一个Excel里,对两个很相似的工作簿比对出不同之处

  9. Python概述

    1.什么是Python? Python是一种解释型,面向对象,动态数据类型的高级程序设计语言. Python由Guido van Rossum于1989年底发明,第一个公开发行版发行于1991年. 像 ...

  10. JavaScript基础part2

    JavaScript对象 在JavaScript中除了null和undefined以外其他的数据类型都被定义成了对象,也可以用创建对象的方法定义变量,String.Math.Array.Date.Re ...