博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Grow A Search Result Specification Update
阅读量:5293 次
发布时间:2019-06-14

本文共 1479 字,大约阅读时间需要 4 分钟。

Review

对于之前的spec请,所以就不赘述了。

接下来的三周内我们将对M1已经实现的Grow A Search Result进行M2的开发工作(M = Milestone)。当然这里面有对旧feature的改进和修缮,也有全新feature的加入。不管怎么说,压力还是很大的。

在M1中我们最终实现的是对单个关键词的搜索,用户在输入一个关键词之后软件会持续地从Bing上获取关于关键词的News,按照时间先后的顺序且去掉重复之后,以一棵树的形式展现给用户。

M1的最终形态是这样:

当然这里面有很多很多的问题,比如:

  • 树很容易就长飞了,超出屏幕之外,虽然能够用左下角的方向键卷动,但毕竟不舒服。
  • 搜索结果其实细看的话都不怎么相关,原因是从Bing获取信息的时候按时间排序而不是按照默认的相关度ranking排序。
  • 只能有一棵树,重新输入关键字的话,树就重新生长了。
  • 树干不太好看,也不直,也不弯。
  • 不能对树进行一些操作,比如“修剪”之类。
  • 根节点看起来很不自然。
  • 使用BingAPI有每月5000次query的限制。

所以在M2我们要改进M1不好的地方。

M2 Persona & Scenario

在M1的基础上我们认为对于用户A,在他输入一个关键词后,他希望能够从树中获得有益的信息,并且树不能太大太长(否则不易观看),他会想要好几棵树,这样他就可以将不同的树组织为一个“树林”或者“花园”。当看到他认为没有用的信息时,他会想要将这一个branch手动剪掉,以保证树上的节点都是他喜欢的或者是他想要的。

当然在M1中没有实现的history功能也会在M2中实现。因为有了多棵树的加入所以history功能能够make sense。

Updated Feature list

在M1的基础上我们决定增加一下feature,包括其退出条件:

Feature Priority Exit Condition
Folding Nodes Must Have 对于超过限制(可以是时间或者节点数目)的节点能够自动归为一个特殊节点,同时当点击特殊节点的时候被收入的节点能够作为一个分支显示出来
Move Trees Must Have 用户能够拖动一棵树到其他位置
Prune Trees Must Have 用户能够通过点击某一个分支而将这个分支从树上删除
Get Information Must Have 用户能够从树上获取信息,包括点击树干获得树干的关键词,点击节点获取搜索结果的标题和摘要,并且能够跳转浏览器
History Must Have 在用户关闭软件再重新打开时,上次输入的关键词以及生长结果不应该消失,而应该和上次保持一样的状态

Modifications

有一些feature是我们在M1中加入但是现在觉得并没有必要需要在M2中修改或者去掉的:

  • 不再主要使用BingAPI,而改用BingRSS,当然并非完全不使用,我们也有将BingAPI搜索作为后备资源的想法,只是现在还不成熟。
  • 去掉根节点,整棵树中的keyword信息需要在点击树干之后进行显示,初步的想法是弹出一个label现实keyword信息。
  • 树干不使用多条贝塞尔曲线拼接而成,而改为整条平滑曲线,这样会让树更好看一些。
  • M1中一棵树的节点并没有限制,M2中我们决定不允许一棵树长得过大,但是具体的限制数量可能还要经测试决定。

转载于:https://www.cnblogs.com/smart-code/archive/2012/11/01/2750113.html

你可能感兴趣的文章
JavaScript动画打开半透明提示层
查看>>
Mybatis生成resulteMap时的注意事项
查看>>
jquery-jqzoom 插件 用例
查看>>
1007. Maximum Subsequence Sum (25)
查看>>
《算法》C++代码 快速排序
查看>>
iframe的父子层跨域 用了百度的postMessage()方法
查看>>
Js apply方法与call方法详解 附ES6新写法
查看>>
linux php全能环境一键安装,小白福利!
查看>>
图片生成缩略图
查看>>
关于Mysql select语句中拼接字符串的记录
查看>>
动态规划 例子与复杂度
查看>>
[BZOJ4567][SCOI2016]背单词(Trie+贪心)
查看>>
查看oracle数据库的连接数以及用户
查看>>
【数据结构】栈结构操作示例
查看>>
中建项目环境迁移说明
查看>>
三.野指针和free
查看>>
activemq5.14+zookeeper3.4.9实现高可用
查看>>
TCP/IP详解学习笔记(3)IP协议ARP协议和RARP协议
查看>>
简单【用户输入验证】
查看>>
python tkinter GUI绘制,以及点击更新显示图片
查看>>