软工实践第三次作业----结对原型设计
软工作业三
PDF链接
队伍人员:  031602402陈璟&031602404陈晓彬
原型设计工具:磨刀
前言
这次的作业还是很有意思的,尝试了新的东西,了解了原型设计,虽然原先想做网页端但做出来的效果一点都不像网页
作业内容
任务:
结对合作,阅读下方的客户描述的现实困扰,以共同发布一份博客随笔的形式,设计一套方案,向客户推销。描述大致方案,以向客户证明你正确理解了客户的需求、提供给客户可行的优化的使用建议,给出原型模型,并提供大概的解决方案预期规划。
问题与需求:
小樱是一名大三的学生,一直痴迷于吃鸡类游戏,某日听闻同宿舍的小狼刚和导师去参加了CVPR会议,内心羡慕不已,便下定决心痛改前非、努力钻研,希望能在毕业前完成一篇站在时代前沿的优秀论文。但令人苦恼的是,他不知道近几年顶会的热门领域和研究方向,根据论文list去一篇一篇查找总结效率又着实太低,于是求助于“软工实践互助爱心组织”,希望我们能帮助他设计一个平台解决现阶段的需求。希望此平台至少具备以下功能。
- 
用户可给定论文列表
- 通过论文列表,爬取论文的题目、摘要、关键词、原文链接;
 - 可对论文列表进行增删改操作(今年、近两年、近三年);
 
 - 
对爬取的信息进行结构化处理,分析top10个热门领域或热门研究方向;
- 可对论文属性(oral、spotlight、poster)进行筛选及分析;
 - b、 形成如关键词图谱之类直观的查看方式;
 
 - 
可进行论文检索,当用户输入论文编号、题目、关键词等基本信息,分析返回相关的paper、source code、homepage等信息;
 - 
可对多年间、不同顶会的热词呈现热度走势对比(这里将范畴限定在计算机视觉的三大顶会CVPR、ICCV、ECCV内)。 顶会背景: 计算机视觉领域世界三大顶级会议分别为国际计算机视觉与模式识别会议(CVPR)、国际计算机视觉大会(ICCV)和欧洲计算机视觉国际会议(ECCV)。
 
PSP表格
| PSP2.1 | Personal Software Process Stages | 预估耗时(分钟) | 实际耗时(分钟) | 
| Planning | 计划 | 30 | 35 | 
| • Estimate | • 估计这个任务需要多少时间 | 30 | 35 | 
| Development | 开发 | 150 | 270 | 
| • Analysis | • 需求分析 (包括学习新技术) | 40 | 90 | 
| • Design Spec | • 生成设计文档 | 10 | 20 | 
| • Design Review | • 设计复审 | 10 | 10 | 
| • Coding Standard | • 代码规范 (为目前的开发制定合适的规范) | 0 | 0 | 
| • Design | • 具体设计 | 90 | 150 | 
| • Coding | • 具体编码 | 0 | 0 | 
| • Code Review | • 代码复审 | 0 | 0 | 
| • Test | • 测试(自我测试,修改代码,提交修改) | 0 | 0 | 
| Reporting | 报告 | 30 | 45 | 
| • Test Repor | • 测试报告 | 0 | 0 | 
| • Size Measurement | • 计算工作量 | 10 | 15 | 
| • Postmortem & Process Improvement Plan | • 事后总结, 并提出过程改进计划 | 20 | 30 | 
| 合计 | 210 | 350 | 
N————(Need,需求)
- 
基本需求
- 
用户可给定论文列表
通过论文列表,爬取论文的题目、摘要、关键词、原文链接;
可对论文列表进行增删改操作(今年、近两年、近三年); - 
对爬取的信息进行结构化处理,分析top10个热门领域或热门研究方向;
可对论文属性(oral、spotlight、poster)进行筛选及分析;
形成如关键词图谱之类直观的查看方式; - 
可进行论文检索,当用户输入论文编号、题目、关键词等基本信息,分析返回相关的paper、source code、homepage等信息;
 - 
可对多年间、不同顶会的热词呈现热度走势对比(这里将范畴限定在计算机视觉的三大顶会CVPR、ICCV、ECCV内)。
 
 - 
 - 
补充需求
- 增加了个人,收藏和足迹的功能。方便将自己感兴趣的文章收集下来,避免再次寻找浪费时间。足迹是记录用户自己的浏览记录,以免手误关掉界面,以至所有记录消失。
 - 做了一个顶会直播的功能,相当于超链接到另外一个网页。
 - 做了一个介绍三大顶会的界面,与直播功能一样放在了论文分析里面。
 
 
A————(Approach,做法)
- 基于web的设计
- 商量要做什么类型的时候,是App还是Web。考虑到如果做成手机App,面向的用户并没有那么多,手机在现代生活中更多充当的娱乐设备,经过讨论,决定做成网页。
 
 - 个人界面
- 实现了用户登录,登陆后可以查看自己的足迹和收藏。足迹,就是自己的浏览记录,可以进行删除,收藏包括下载和删除两个选择。此外还拥有修改密码,联系我们的功能。
 
 - 论文列表功能
- 对于这个的理解,用户批量上传文件,然后进行爬取所要寻找的论文,我们设计了一个文本框和上传文件的按钮,用户可以选择上传文件,或者进行复制粘贴,进行大批量的寻找。此外,可以对寻找出来的论文进行操作,选择不感兴趣,或者收藏,并且提供下载功能。
 
 - 论文分析功能
- 设计了一个界面,来寻找热门领域的前十个方向,并且把这十个方向的关键词找出来。
 - 在论文分析的界面还有论文的图表分析功能,点击后,会将关键词的出现次数做一个统计。
 - 筛选功能是对论文列表所搜索出来的大量论文进行筛选,有几个筛选选项可以选择:oral,spotlight,poster,今年,近两年,近三年。点击筛选后会出现筛选的结果。
 - 我们擅自把三大顶会的的热刺走势图放到这个论文分析的功能里面来。
 
 - 论文检索功能
- 实现精确找到一篇或者少数几篇高质量的论文,让用户不用苦苦在茫茫论文中寻找。
 
 
B————(Benefit,好处)
- 页面简洁,使用方法简单(平平淡淡才是真)。与现代绝大多数网页的排版不一样,我们的设计更接近于App,会使得操作更加简单方便。
 - 与现代很火的直播相结合,抓住年轻人的喜好。
 
C————(Competitors,竞争)
- 优势:
- 界面十分简洁,白痴化,适合新手,没有繁杂的设计让人觉得无从下手。
 - 拥有收藏夹和足迹,减少用户的误操作所带来的困扰。
 - 批量寻找大量论文的时候,有两种选择传文件或者用文本框。
 - 直播是一种新奇的方式。
 
 - 劣势:
- 面向的用户是小白,新手,可能会错失专家,大牛级别的用户。
 - 功能比较少,不能满足用户的所有需求。
 
 
D————(Delivery,推广)
- 首先,设计出来,可以先找几个同学进行体验,让他们给出意见,我们进行修改;反复几次。再找老师进行询问意见,然后让老师帮我们推广。
 - 其次,这是面向IT小白的Web设计,可以考虑现在本校进行推广,通过进行开设讲座,扫楼的方式,让大家知道这个网站。
 - 最终,拥有一定的用户量后,可以选择与多所高校进行联系,进行推广。在产品的迭代后,与高校进行合作应该不是很大的难题。
 
结对过程
会选择组队是因为两个人是舍友,讨论比较方便。
分工情况

陈晓彬:
- 通过稿纸设计总体布局。
 
陈璟
- 通过磨刀实现布局。
 
原型实现
- 
登陆
![]()
 - 
登陆后
![]()
 - 
收藏
![]()
 - 
足迹
![]()
 - 
论文列表
![]()
 - 
论文分析
![]()
 - 
筛选
![]()
 - 
筛选结果
![]()
 - 
热词走势对比
![]()
 - 
图表分析
![]()
 - 
检索
![]()
 - 
检索结果
![]()
 - 
三大顶会
- 图片暂无
 
 
补充作业
在你一生中身体最健康,精力最旺盛的时候,能在大学学习和研究,是一生中少有的机会。请说明一下,你已经具备的专业知识、技能、能力有哪些?离成为一个合格的 IT专业毕业生,在专业知识、技能、能力上还差距哪些?请看这个技能调查表, 从表中抽取 5 - 7 项你认为对你特别重要的技能, 记下你目前的水平, 和你想在课程结束后达到的水平 (必须至少列出 5 项)。链接: http://www.cnblogs.com/xinz/p/3852177.html
我已经具备的专业知识、技能、能力有那些?
原先我以为我对Java稍有些了解,毕竟以前还使用过Java使用写过一些程序(称不上软件),但看了链接中的《Java核心技术36讲》目录,发现我对Java的了解还是非常的粗浅,这些问题中出现的名词我大多听过,但却没有深入了解过,因此对于我已经具备的专业知识,技能能力这个问题,我的回答是会Java的基本语法,会一定量的算法和数据结构,会C++ 的基本语法,对Github的基本使用,了解少许的计算机操作系统和计算机网络的知识。
离成为一个合格的 IT专业毕业生,在专业知识、技能、能力上还差距哪些?
- 一个合格的基本掌握的编程语言
 - 团队合作的能力
 - 对计算机基础知识的掌握
 - 对一个完整的系统的整体把握能力
 
请看这个技能调查表, 从表中抽取 5 - 7 项你认为对你特别重要的技能, 记下你目前的水平, 和你想在课程结束后达到的水平
| 技能 | 目前的水平 | 想在课程结束后达到的水平 | 
|---|---|---|
| 对编程整体的理解 | 3 | 8 | 
| 架构设计,模块化设计,接口设计 | 4 | 8 | 
| 效能分析和改进 | 4 | 8 | 
| 基本设计模式 | 2 | 6 | 
| 估计,记录工作量 | 2 | 6 | 
| 线程之间/进程之间/不同平台进程之间 | 2 | 7 | 













                
            
        
浙公网安备 33010602011771号