0x01 :特别鸣谢
首先特别鸣谢《构建之法》中并没有给出固定化格式的功能规格说明书的样例,因此在此次的说明书中将尽可能用生动形象的例子展示软件交互阐释
因此受到它本身的启发,此次团队功能规格说明书尽量用活生生的例子讲述用户和软件交互的场景,并且力求语言的简洁和直白
最后,再次鸣谢bugphobia团队本身的创造力,最终没有局限在模板中,而是能在讨论中共同挖掘出非常欢酷的想法
0x02 :前置条件阐释
0x0200 :定义
<摘要>依据康德理性批判“澄清前提,划清界限”的指导思想,不妨先将功能本身的定义进行简单的阐释
定义 |
基本解析 |
垂直搜索引擎 |
垂直搜索引擎是针对某一个行业的专业搜索引擎,是搜索引擎的细分和延伸,是对网页库中的某类专门的信息进行一次整合,定向分字段抽取出需要的数据进行处理后再以某种形式返回给用户 |
标签(tag) |
Tag本身并不存在统一的中文命名,“分类”、“开放分类”或“大众分类”均是其含义的外延,因此这里不妨统一为“标签”进行叙述。标签本身的目的是为了更好的显示和突出搜寻的重点关键词或者词条,以便更好的索引和指导用户浏览和索引,从形式上来看,如下图所示 |
0x0204 :基本目标
<摘要>为了从宏观上给出学霸在线系统的功能定位,首先定义系统本身的基本目标:
网站能够采集专业化社区中的问答数据、高质量课程资源、专业技术文档中的内容,为使用者提供一体化的、精准的、高质量的搜索内容,同时,用户能够通过网站间接参与到上游社区的讨论中。 |
0x0208:软件使用者的基本假设
<摘要>为了保证软件功能描述的顺利进行,也为了抓住主要矛盾,演示主流用户场景,我们对于目标群体的能力做出基本假设如下:
ü 第一阶段用户:用户可以对计算机进行基础的操作,并具备使用通用搜索引擎(百度、谷歌等)的能力,而在第一轮迭代中基本以第一阶段的用户能力作为基本假设 ü 第二阶段用户:用户能够熟知各类搜索平台并进行查询,但不满于繁琐的搜索过程而浪费大量时间 |
0x03 :典型用户场景分析
0x0300 :典型用户
<摘要>在这里我们构造了4个典型用户,3个典型用户场景,为了避免冗余,我们的图片集中展示在第一个用户场景,后续的两个典型用户场景中不再配以图片示例,而只是进行场景的文字描述
ü 王晓文:典型学霸属性的自称“专业课淡水鱼”的计算机学院学生
名字 |
王晓文 |
用户身份 |
某校计算机系学生,在专业课的大海中是一条淡水鱼 |
年龄 |
21岁 |
用户所占市场比例 |
45% |
用户重要性 |
非常重要,标注5颗星,可谓是我们的主体用户。 |
使用此软件的典型场景 |
查找各种计算机专业相关的资料,完成相应的作业任务;翻阅各种技术文档完成学业相关的研究任务;查阅课业以及研究任务之外的行业相关的知识 |
使用此软件的环境 |
主要环境是教室,宿舍,实验室。家中,地铁以及其他地方也可以成为使用该软件的次要环境。 |
生活工作情况 |
经常为了完成作业或实验室的任务而作息不规律,并且在此过程中需要查阅大量的相关技术和概念。 |
只是层次和能力 |
了解计算机的专业知识,具有比较熟练的编程技能和应用专业软件的能力。 |
用户的动机 |
晓文经常会遗忘一些已经学习过的专业知识,但因为需要的相关知识太多且无法在有限的书籍中快速找到答案,他更倾向于求助网络,寻求答案。 |
用户的困难 |
现有网络的内容庞杂而繁复,很难在有针对性地找到满意的答案,晓文的大量的时间就在甄别与筛选过程中浪费掉。 |
用户的偏好 |
倾向于使用网络作为获取答案的途径,希望快速定位到与自己的问题相关的内容。 |
ü 王如鸣:“技术大牛”把握当前技术动向的计算机学院学生
名字 |
王如鸣 |
用户身份 |
某校计算机学院的学生,是技术大牛,在同学们的眼中,即将羽化而登仙。 |
年龄 |
20岁 |
用户所占市场比例 |
25% |
用户重要性 |
非常重要,标注5颗星,虽然在市场上这样的用户所占的比例不大,但是对于我们的平台的建设有非常重要的意义,这样的技术帝对于我们的优质问答的贡献非常大,需要十足的重视。 |
使用此软件的典型场景 |
翻看网站的热门话题,把握当下的技术动向,和志趣相投的人讨论热门的技术,在完成自己的学习及研究任务时也会参考平台上的文档及资料。 |
使用此软件的环境 |
主要环境是教室,宿舍,实验室。家中,地铁以及其他地方也可以成为使用该软件的次要环境。 |
生活工作情况 |
为了尝试一个最新的技术或者是为了体验一个新的系统而“倒腾”,喜欢探索全新的概念和技术,对前沿的系统的底层的技术很感兴趣。 |
只是层次和能力 |
不仅对编程相关的技术非常熟悉,而且对计算机底层的理解很深入,对于诸多的软硬件开发工具很熟悉,对于前沿的概念有比较深入的理解,认知层次达到了可以进行价值判断的程度。 |
用户的动机 |
如鸣希望获得前沿的知识,希望在最新的领域和志趣相投的人探讨,希望获得对计算机底层的更加深入的理解。 |
用户的困难 |
现下的大部分的网页的内容鱼龙混杂,即便是特定的网站也往往充斥着质量低下的内容,如鸣在这样的环境里很难有高质量的用户体验。 |
用户的偏好 |
如鸣喜欢谈论问题,回答问题以及研究各种计算机相关的疑难杂症 |
ü 钱琳深:需要基础仿真工具训练的电子信息学院学生
名字 |
钱琳深 |
用户身份 |
某校的电子信息系的学生 |
年龄 |
21岁 |
用户所占市场比例 |
15% |
用户重要性 |
相对比较重要,是比较重要的问题贡献群体。 |
使用此软件的典型场景 |
需要使用MATLAB以及mathematica等计算机仿真软件完成课业相关的任务,学习基础的C/C++等语言,用以完成学习或研究的任务,对计算机专业课程的教材视频讲义等有着比较强烈的需求。 |
使用此软件的环境 |
主要环境是教室,宿舍,实验室,以及家中。 |
生活工作情况 |
有自己学科的专业课,但是其专业课又和计算机息息相关,因为没有系统的训练,有需求的时候往往难以找到权威的学习资料,琳深虽然不需要对计算的深入知识有很多的了解,但是往往会被一些小的低级的问题困扰。 |
只是层次和能力 |
琳深对与自己的领域相关的计算机概念有了解,学习基本的C/C++语言,可以使用基本的计算机工具进行仿真任务。 |
用户的动机 |
琳深希望有权威的教程对相关的计算机概念有简单的易于理解的介绍,希望能够快速查找到常见的编程bug的解决方法。 |
用户的困难 |
用户由于没有很好的计算机基础对于问题的描述往往不确切,同时bug的产生原因非常多,难以在现有的网络资源上得到很好的解决。 |
用户的偏好 |
琳深喜欢得到交互式的问答体验,希望得到相关知识的权威的教程。 |
ü 李茹欣:准备计算机等级考试的经管学院学生
名字 |
李茹欣 |
用户身份 |
某校经管学院学生 |
年龄 |
20 |
用户所占市场比例 |
10% |
用户重要性 |
比较重要,在问题的贡献领域有不容忽视的作用。 |
使用此软件的典型场景 |
需要在计算机等级考试中查询计算机相关的基本概念和基本工具的用法。 |
使用此软件的环境 |
主要环境是教室,宿舍,实验室,家中。 |
生活工作情况 |
茹欣学习认真,但是作为文科生,在计算机等级考试备考时,面对大量的计算机相关的概念知识以及从未接触过的工具软件,茹欣感觉到有比较大的压力。 |
只是层次和能力 |
茹欣对计算机相关概念没有深入接触过,平时使用计算机更多的是上淘宝,蘑菇街等购物网站购物。 |
用户的动机 |
茹欣希望能够在网上快速查找到计算机相关的概念,对于基础的编程语言的语法和基本的计算机软件的使用有比较简短和易于理解的介绍,从而可以应对计算机等级考试的试题。 |
用户的困难 |
计算机相关的概念和知识非常庞杂,如欣对基本工具软件的使用也不是很熟,茹欣感觉到有比较大的压力,网络资源的繁杂,概念的不统一,说法的不一致也让茹欣感到比较头疼。 |
用户的偏好 |
茹欣喜欢深入浅出的使用教程和介绍,希望常见的问题可以得到快速的解答。 |
0x0304 :典型用户场景一
首先简要阐释用户的使用背景,
典型用户 |
李茹欣 |
用户需求/迫切需要解决的问题 |
李茹欣需要进行计算机等级考试 A、茹欣对于计算机的基本概念了解不是很深。 B、茹欣对计算机的工具软件如office等的使用不是很多,对其功能理解不深入。 C、茹欣从来没有接触过C语言,对其语法一窍不通 |
假设 |
1)基于tag的课程专业内容分类已经完成 2)用户搜索问题的功能已经实现 3)用户与用户之间的交互式问答系统已经建立 |
因此,在使用的过程中我们大致可以概括出此用户的大致使用场景
李茹欣在他人的推荐下,选择了我们的xuebaonline在线系统,首先茹欣通过注册提交自己的id和password到平台后端成为了该系统的一员,接着茹欣通过登录操作进入平台的用户界面 |
(登陆和注册页面)
(用户资料修改界面)
李茹欣在我们的tag中发现了C语言以及office等她非常感兴趣的标签,她点开相应的标签,发现有PPT,视频,以及pdf等各种形式的教程,茹欣非常高兴,将这两门课程加入到自己的学习计划中,同时茹欣发现推荐栏中有与自己的金融专业相关的数据库的课程的内容,茹欣一鼓作气,将数据库的课程也加入到自己的学习计划中。 |
(tag形式的界面展示)
(课程页面的展示)
李茹欣做了一套计算机等级考试的模拟试卷,她发现自己有好多的知识点没有接触过,于是她自然而然想起了我们的xuebaonline系统,茹欣在我们的搜索框中搜索相关的概念,茹欣得到了许多的相关概念的介绍,这些介绍很精辟另茹欣学到了不少知识。 |
(搜索界面@1)
(搜索界面@2)
李茹欣对我们的网站有了很大的探索兴趣,于是打算尝试一下我们的问答功能,茹欣因为是刚刚注册的用户,用户的等级不高,提问的问题数目有限,但是茹欣提出的问题很快就有了专业的解答,茹欣暗想自己一定要好好运用这个系统,在这个系统里面提升等级,拥有更多的权限。 |
(用户活动记录界面)
(用户资料界面)
0x0308 :典型用户场景二
首先简要阐释用户的使用背景,
典型用户 |
王晓文[主要]、王如鸣[次要] |
用户需求/迫切需要解决的问题 |
王晓文最近选修了学院的面向对象程序设计需要自学JAVA A、晓文不知道JAVA环境如何配置 B、晓文对面向对象的一系列概念没有很好的理解 C、晓文在编写程序的时候经常需要知道那个函数能提供什么样的功能 |
假设 |
1)基于tag的课程专业内容分类已经完成 2)用户搜索问题的功能已经实现 3)用户与用户之间的交互式问答系统已经建立 |
因此,在使用的过程中我们大致可以概括出此用户的大致使用场景
晓文登陆我们的网站,在tag中找到了“java”,点进去后,有大量的不同形式的与java相关的学习资料,晓文选择了BH大学的java教学视频。并且将其加入到学习计划中,在小文的用户界面中出现了学习此课程的标注。 |
晓文在搜索框中查找“java安装教程”,找到了解决的方案。 |
晓文在编写java程序的时候需要实现两个自定义类型的排序,但是晓文在搜索之后发现没有很好的解决方案,于是晓文决定在线问答。于是晓文进入问答模块,作为2星用户,晓文有比较高的权限,可以提问更多的问题,这个时候技术帝王如鸣也在浏览网站希望查看一些有价值的问题,这个时候如明发现了晓文的问题,于是及时对晓文的问题进行了回答。 |
晓文在查看了王如鸣的解答后还有疑问,就问题继续追问,于是两个人一来一往,晓文终于在王如鸣的帮助下对这个问题有了深入的了解。如明因为提供了优质的答案而获得了积分的增加,同时晓文也绝得王如鸣的回答很专业将这个问答记录推荐推广。 |
0x030c :典型用户场景三
首先简要阐释用户的使用背景,
典型用户 |
钱琳深 |
用户需求/迫切需要解决的问题 |
琳深最近的专业课中需要使用F数据库作为工具 A、不知道该数据库的安装教程 B、没有F数据库的基本的使用教程 C、使用F数据库进行开发的时候会遇到比较多的bug,轩遥自己难以解决 |
假设 |
1)基于tag的课程专业内容分类已经完成 2)用户搜索问题的功能已经实现 3)用户与用户之间的交互式问答系统已经建立 |
因此,在使用的过程中我们大致可以概括出此用户的大致使用场景
首先琳深登陆xuebaonline的网站,在搜索框中输入“F数据库教程”,结果返回一系列的与F数据库相关的内容,根据我们专门分类的结果,琳深挑选相关的教程。 |
琳深在我们的首页发现“数据库”这一tag,琳深点击相应的tag进入数据库的课程门类中,琳深挑选了F数据库的视频教程和PPT讲义的内容作为在线学习的资料,以作为课程之下的知识补充。 |
琳深按照教程安装F数据库,但是在安装的过程中出现了小问题,显示安装失败,于是琳深再次登录xuebaonline,将安装失败的原因输入到搜索框中,后台进行相应的搜索获得搜索的结果返回,琳深得到了相应的解决方法,解决了问题。 |
但是做事认真的琳深出于好奇想要知道究竟是什么原因导致了安装失败,于是将安装失败的原因提问到问答模块中,很快的,琳深得到了好几条高质量的回答,轩遥在这一系列的交互中得到了网站积分的加分。 |
0x04 :副作用分析
标签设置问题 |
标签的设置太多可能又会让用户眼花缭乱,用户可能并不会在我们丰富的tag中得到最好的体验 |
用户积分制度 |
用户的积分制度是为了更好的激励用户对网站提供优质的问答对,也希望设置相对比较有门槛的准入法则来保证用户集合的纯粹和一致,但是这样的设置会使得大量的潜在的用户流失掉,这是一种损失 |
0x05 :项目相关数据收集
数据对于我们的项目来讲非常的重要,我们设置用户的等级权限制度就是为了保证数据的质量,在项目发布后我们会更加重视用户数据的搜集,所有的相关的搜索以及平台的问答都会成为我们的项目的数据的来源,我们项目后期的运维过程中也将非常重视数据的搜集,分析和分类添加的工作。 |