软件工程第三周作业:微软必应词典案例分析

0x01 微软必应词典案例分析

0x0104 微软必应词典功能性BUG说明

      0x010404 : BUG – 1 – 模块功能未实现


运行环境或平台


iOS 9.0.1


必应词典软件版本


版本3.5,版权所有@2014 Microsoft


软件测试BUG特征


【优先级1】应用程序模块功能未实现,包含整个模块不能正常运行


重现步骤


1. 打开必应词典软件进入设置中,选择跨软件查词设置,设置为打开和一直运行

2. 按照使用说明所说随意打开某一App(这里选择提醒事项)

3. 按使用说明选中某一单词(这里选择Panacea),点击拷贝


测试结果


与使用说明不同,并未出现以通知的形式显示出来的翻译结果


严重程度


这里严重程度需要折衷分析,因为据同学描述,iOS不支持各种插件的设置,因此可能导致此模块无法实现,若此前提成立,则BUG优先级下调,更正为“使用说明中存在错误提示信息”;否则,保留“模块未实现”的高度优先级;

配图说明如下:

                    

0x010408 : BUG – 2 –进度条与音频不同步


运行环境或平台


iOS 9.0.1


必应词典软件版本


版本3.5,版权所有@2014 Microsoft


软件测试BUG特征


【优先级3】应用程序界面存在不同步现象


重现步骤


1. 打开必应电台后的网络听力后,随意点击某一音频文件,待开始播放后返回至必应电台的本地听力的播放记录处,点击你正在收听的电台的播放记录

2. 此时音频文件不再发声,但播放进度条仍继续前进,等待一段时间后点击暂停

3. 点击开始按钮,我们会发现进度条迅速从01:21跳转至00:52


测试结果


进度条会迅速跳转到刚才音频文件失声的位置,并再次播放


严重程度


这里严重程序根据CMM5的定义规范,建议定义优先级为2或3,既可以定义为除优先级1的功能性严重bug,也可定义为界面不同步bug,定义优先级为3

配图说明如下:

                           

0x01040c : BUG – 3 – 例句高亮混乱且存在语义完全不通顺的语句


运行环境或平台


iOS 9.0.1


必应词典软件版本


版本3.5,版权所有@2014 Microsoft


软件测试BUG特征


【优先级2】非UI相关的非严重性功能性BUG


重现步骤


1. 打开单词本选择任意单词

2. 这里仅列举4种不同的情况来描述这一BUG的存在

@ Bing-4:翻译出现偏差,将“Google, Bing”翻译为“谷歌冰”,释义与例句不符

@ Bing-5 : 高亮未正确显示,且例句前存在错误符号“b”,换而言之,例句错误

@ Bing-8 : 典型的错误语句,两动词间都好相连,且语句与翻译完全不符合

@ Dictionary – 13~16 : 同一类型的例句大量出现,13~16的例句间仅相差形容词和动词,译句几乎完全相同


测试结果


必应词典例句语法混乱,数目虽多但多样性不足,甚至在例句中存在了错误的语法规则,错误的高亮显示,同一类型的句子大量出现等问题


严重程度


这里严重程序根据CMM5的定义规范,建议定义优先级为2或3,既可以定义为除优先级1的功能性严重bug,也可定义为界面不同步bug,定义优先级为3

配图说明如下:

                            

 

0x01040c : BUG – 4 – 机器翻译部分未做到实事的同步


运行环境或平台


iOS 9.0.1


必应词典软件版本


版本3.5,版权所有@2014 Microsoft


软件测试BUG特征


【优先级3】应用程序界面存在不同步现象


重现步骤


1. 打开必应词典的机器翻译界面,输入单词”panacea”并点击翻译

2. 发现翻译的正确结果出现后,删除此单词,并点击翻译按钮(呈灰色)查看


测试结果


原单词结果仍保留在输出的对话框内,未做到时时的同步效果


严重程度


这里严重程序根据CMM5的定义规范,建议定义为3或不认作为BUG,视为测试者和开发者存在的异同理解

配图说明如下:

              

0x010414 : 彩蛋– 5 – 机器翻译/生词本的用户体验


运行环境或平台


iOS 9.0.1


必应词典软件版本


版本3.5,版权所有@2014 Microsoft


软件测试BUG特征


不属于BUG,是必应的机器翻译本身存在的问题


重现步骤


1. 机器翻译时对特殊字符串检测力度不足,导致部分乱码仍会被正常检测并输出奇怪结果

2. 生词本仅允许添加和删除,没有像扇贝等其他应用存在“保留的生词本”方便你随时复习又不必找不到此单词,按时间排序的策略并没有很好的解决此问题


测试结果


详情观察于配图即可


严重程度


这里是微软本身机器翻译的问题,与软件本身并不存在功能上的问题

配图说明如下:

                             

0x0108 微软必应词典采访摘要

0x010804 : 用户体验和访谈摘要

这里特别鸣谢接受采访的Change少年,锻炼之路Bingo~

给予体验照片(捂脸):


访谈者的背景与需求


2014级本科生,英语成绩为过六级水平。日常使用的单词查询软件为有道,背单词软件为扇贝英语,听力软件为扇贝听力,在十一前尝试使用必应词典进行体验;

对软件的需求主要集中于查询功能,对字句翻译在手机端并不常使用,当然不介意软件中嵌套优秀的听力模块


用户需求满足或问题解决


在查询单词上,具体单词的释义的确都被很好地解释,例句有一些其他软件很难找到的地道用法,不过刚才无聊刷了几个单词发现了非常奇葩的例句,差点就截图了(破涕为笑)

简单尝试了单词挑战功能,感觉挑战题库中的高考部分题目设置过为简单,而其他部分的词汇量相对设置均衡;

而我爱说英语的部分貌似对语速和重音有着更多的要求,尝试了用“乡村风英语”说了一段,给出了80分的“高分”(破涕为笑)

必应电台的感觉一般,不仅因为素材较少,而且感觉没有很符合自己需求的听力材料(比如计算机专业,比如TED视频材料和翻译)


用户对必应词典的看法


其实个人非常喜欢这种简洁直接的界面,界面非常干净而不会因为各种“绚烂”的模块找不到所要的功能;

整体功能感觉有点超出了“词典”所容纳的范围

首先,词典所包含的部分处理地不错,特别是丰富的例句导致我查询某一单词的时候很可能找到我需要的用法,值得推荐;

但超出词典的部分个人认为略显鸡肋;比如我爱说英语,和扇贝听力这种专业帮忙提高听力的软件还是有差距,比如扇贝能“模糊”单词,然后你需要的时候“擦除”就可以了;而这个单词挑战是个不错的想法,不知道能否直接和“高考题库”这种符合高考风格挂钩,可以背单词累的时候刷刷题;


用户对必应词典的改进意见


1. 专心完善词典检索功能,词组那里如果能添加一些介词组合(类似pay attention to),可能会更为合适

2. 界面简洁,但查询结果的界面始终感觉“别扭”却又找不到原因,可能是因为空白太多,如果能在右侧加一栏,然后将“英汉”“网络释义”“词组”那部分整合一下,可能更好看一些吧

3. 其他功能真的略显鸡肋,建议增加一下个性化的东西,比如既然有着微软的背景,能否关联Bing搜索,这样推荐的时候也能推荐一些很好的材料,而非部分“心灵鸡汤和其他平台都泛滥美句”

0x010808 : 结论

软件评价整体应当设置为(C)一般

首先梳理基本的观点,软件本身不存在大量广告,整体界面干净清秀,入手和平时简单查询是值得推荐的产品;按正常角度,必应词典但从“词典”这一方面是值得推荐的产品,但是其夹杂的一些功能略显鸡肋,相比于其他专业辅助背单词或听力的软件,略显逊色,会给这款软件一些不好的印象,不过由于词典本身功能更偏向于词典,所以个人将这款软件置于“一般”等级,也预祝微软能在必应词典上增加推荐力度,通过本身的必应搜索、OneDrive登陆更方式创造更为良好的用户体验吧

这里借用之前高中同学一段非常心碎的吐槽,“如果不是因为打开google搜索失败的话,360界面会提示你选择其他搜索引擎,我想我基本都不知道微软出了必应搜索,后来搜索必应的时候顺带发现了必应词典,发现预期的效果还是蛮不错的,但为什么此前没有很好的宣传呢?”

0x02 :软件基本分析

0x0204 项目时长预估

这里我们首先探讨这一项目的预估时长,不妨根据经典的杀手功能(Core)/外围功能(Context)的方式简要将这一项目的功能进行分类,并根据具体的功能划分对项目时长进行预估


杀手功能


能够依据微软搜索引擎丰富的数据实现高质量例句的选取,能够实现屏幕取词功能

已经和新东方英语合作,授权搜索其题库从而选取更为合适试题用以单词挑战


外围功能


良好的界面设计,在各个平台都能运行

良好的机器翻译效果,能根据用户输入反馈最接近自然语言的输出

单词本功能,能够实现基本的单词的增删改查功能,同时符合基本的单词本设定


必需需求


单词短语释义的准确性


辅助需求


可以丰富UI界面实现各式皮肤,提供部分适合背单词和渴望练习听力的功能,如单词挑战,我爱说英语,必应电台;

因此,我们必须做出如下假设后再进行预估:

         计算机大学本科毕业生均参与过项目的开发,了解软件功能产品开发的基本流程,且各部分基本功能所需要的资源能准确获得

         计算机大学本科毕业生团队功能划分清晰,且每周工作时间不低于60小时

         计算机大学本科毕业生团队稳定存在,不会因为意见一时的分歧而出现消极罢工等情况

在此基础上,我们借用软件工程经典的“生鱼片模型”,从软件概念、需求分析、架构设计、详细设计、编码和调试、系统调试的阶段角度进行分析,总计工作量约为15-20周


工作量2周


1. 项目团队从外围功能选择一项入手,仅需交付初具雏形的软件,团队熟悉各自的角色分配,并磨合团队整体的开发模式,相互熟悉整体的性格

2. 项目团队集体培训,商议基本的编码风格、文档撰写规范、软件开发流程等基本常识,保证后续开发时不会因为基础知识困惑而耽误进度


工作量2-3周


首先从必要的软件概念和需求分析入手,避免弱需求或偏离需求,确定基本的开发方案、规范的设计文档,而开发团队在此时必须协同项目经理迅速学习可能的新技术,以防后期发展过程进度迟滞


工作量3周


完成必须的设计复审工作(1周工作量),同时架构设计和详细设计开始根据前期需求分析的工作,商榷基本的架构;由于目标是“开发类似必应词典”的软件,显然我们可以看到基本的架构已经较为清晰,因此这里仅给2周时间保证架构工作完成,因为架构的工作将主要集中在前后端耦合的规范程度了


工作量5-7周


详细设计开始“干预”架构工作,开始建立“产品需求”和“程序逻辑”的关系,在此阶段最重要的就是接口规定的约束,功能划分的清晰,以防开发过程中出现功能交叉和软件运行不稳定的状况


工作量2-3周


这一部分开始具备一定前提,各模块的单元测试已经顺利通过,且必须通过一定数目的黑盒测试,符合各接口所确定的需求;此部分将完成“编码和调试”工作,注意,这里的编码所指代的是“模块之间耦合”所需的工作


工作量1-2周


此时,软件已经通过了耦合后一定的黑盒测试,且使用文档和测试文档均都齐全,那么可以开始准备初期的“内测”阶段的发布,此阶段我们需要实时接受用户的反馈,并开始基本的维护的工作,此阶段结束后,我们可以初步理解为项目“成功”完成

0x0208 软件优劣势说明

写到这里,突然发觉此前用户的体验的部分,已经陈列很多软件的优劣势,因此这里将再次做一次整合的工作;同时事先声明,我们将与有道词典、扇贝单词这两款目前市场的主流产品进行比较


必应词典优势说明


1. 必应词典的查询单词功能完善,仅从这一点入手,用户可能不会经常使用此款软件,但遇到生僻词时会选用此软件进行查询,因此必应词典的基本功能非常完善;同时,单词查询的例句能够提供非常地道且经典的用法(但有些好奇为什么机器翻译的过程中又将这些用法翻译为奇怪的句子,破涕为笑)

2. 必应单词界面简洁,不存在传说中的屏幕下方带叉箭头的广告干扰(不知为何,当时和有的小伙伴吐槽的时候说必应这个界面真是太有简单且粗暴的感觉了,感觉强行把WIN8风格带入其中,虽然自己未感觉到)


必应词典劣势说明


1. 从有道词典的界面而看,我们可以发现有道词典开始涉猎非“单词检索”的部分,无论是百科,我的或是发现功能,都朝向“朋友圈”交友或是“果壳网”学习平台的方向发展,但无论如何发展其功能都由词典向单词学习利器的方向过渡,在这一点上,必应的实现的不得不承认相形见绌,因为有些功能真的不是放置在那里就可以了,而是需要一定的整合和修正,“必应电台”等功能可能只是目前的“伪创新”,同同类产品相比仍具有差距。

不过从两点分析,一方面微软已经开始逐步和新东方合作,尝试优化其单词学习的功能软肋,同时微软本身的庞大的数据库和开发经历也是很棒的基础,期待必应词典对后续功能的完善

2. 扇贝单词,这里就不放置扇贝单词的界面,不过从高中同学或是大学同学的反馈中,背单词首选的基本都是扇贝单词这款应用软件(某些直接背牛津词典的大牛真的请收下我的膝盖,捂脸),无论是记忆曲线的设置或是打卡的功能,都非常适合日积月累的准备,唯一遗憾的是缺少单词突击,招来曾经某个用2周备考雅思然后高分的同学的白眼(又是膝盖),因此,微软如果真的想从背单词的角度选择,那么此方面必须滞后,因为在和新东方合作的基础上肯定会带来大量的题库和学习方法,那么这也将是不错的契机

0x03 :必应词典建议和规划

在0x0208部分我们已经通过必应词典的劣势说明,简单阐释了必应词典在市场的竞争对手的基本模式,这里简单概述,有道词典尝试向朋友圈交友和类似学习平台的搭建方向过渡,而扇贝单词则直接从单词记忆、听力口语等学生群体几乎必备的英语技能入手,构建一个适合英语单词学习的平台;

因此,单纯从建议的角度分析此问题,我们不妨在原有基础上,根据经典的杀手功能(Core)/外围功能(Context)的方式对必应词典的新产品进行如下的更改


杀手功能


(不变)能够依据微软搜索引擎丰富的数据实现高质量例句的选取,能够实现屏幕取词功能

(改变)已经和新东方英语合作,授权搜索其题库从而选取更为合适试题用以单词挑战;因此首先改进单词挑战和我爱说英语功能,通过新东方英语的合作,朝着英语学习平台的方向发展,同时更改有种“单词”应用感觉的界面


外围功能


(改变)良好的界面设计,在各个平台都能运行,保证各平台的运行,同时适当丰富UI界面,不至于机器翻译等功能等于网页版的缩小

(不变)良好的机器翻译效果,能根据用户输入反馈最接近自然语言的输出

(改变)单词本功能,单词本是学习平台必备的产品之一,因此,若必应词典有着向学习平台方向发展的趋势,此功能是必需完善的一部分


必需需求


(不变)单词短语释义的准确性


辅助需求


(不变)可以丰富UI界面实现各式皮肤,提供部分适合背单词和渴望练习听力的功能,如单词挑战,我爱说英语,必应电台;

 

0x0208 NABCD分析


Need


用户对辞典最重要的需求集中于单词查询,同时对于学生群体,如果能在查询单词的同时顺带了解它的“考试用法”和常用搭配,也将极大扩充这一软件的应用范围;同时,个性化的单词查询、机器翻译和学习平台也是需求的一部分


Approach


在技术上,能够依据微软搜索引擎丰富的数据实现高质量例句的选取,能够实现屏幕取词功能;在商业模式上,已经和新东方英语合作,授权搜索其题库从而选取更为合适试题用以单词挑战;因此首先改进单词挑战和我爱说英语功能,通过新东方英语的合作,朝着英语学习平台的方向发展,同时更改有种“单词”应用感觉的界面


Benefit


在技术上,微软搜索引擎的技术支持足够为用户带来丰富的用户体验和个性化的设置;在商业模式上,必应词典率先与英语学习机构合作,这将使得必应词典在后期学生群体中的影响逐步扩大


Competitions


目前市场主要被有道词典(单词检索)、扇贝单词听力(阅读听力写作基本功)等应用占据,因此,微软的必应词典应当更为注重利用当前资源,学生群体的“英语考试”学习平台能吸引到大部分的学生群体和用户,而必应也应当针对某一方面进行指数级的优化(参见杀手功能的介绍部分),才能在激烈的竞争中取胜


Delivery


“如果不是因为打开google搜索失败的话,360界面会提示你选择其他搜索引擎,我想我基本都不知道微软出了必应搜索,后来搜索必应的时候顺带发现了必应词典,发现预期的效果还是蛮不错的,但为什么此前没有很好的宣传呢?”,很可惜,自己也陷入了相同的尴尬场景;因此,微软应充分利用品牌影响力去进行宣传,而不是认为微软除了操作系统和文件其他都不做的“误区”;想到好声音决赛那条60秒超级洗脑的广告,虽说这种60秒广告这种宣传方式并不光彩也不值得推荐,但也是一个不错的方向

0x0208 开发配置和计划


1~2周(2)

此阶段是团队磨合的初始部分,5人团队应在此阶段迅速确定各自的定位,选择出1人作为项目经理,2人作为开发人员,1人作为测试人员,1人作为美工人员,同时项目经理和开发人员相互监督,参与构架和编码工作,以主导者和协同者的模式进行


1. 项目团队从外围功能选择一项入手,仅需交付初具雏形的软件,团队熟悉各自的角色分配,并磨合团队整体的开发模式,相互熟悉整体的性格

2. 项目团队集体培训,商议基本的编码风格、文档撰写规范、软件开发流程等基本常识,保证后续开发时不会因为基础知识困惑而耽误进度


3~4周(2)


1. 项目经理必须确定关键的软件概念和需求分析,此部分强制要求全部成员参与,制定基本的需求筛选、开发方案、设计文档、简单的时间工作计划;

2. 开发团队一方面监督项目经理的工作,随时提问保证其思路不会偏离基本需求,同时根据基础的方案学习可能的新技术,美工在此阶段不妨以收集素材为主,同时研究市场同类产品的架构,为下一阶段的架构提供一定的思路


5~6周(2)


1. 开发团队完成必须的设计复审工作,随后迅速展开架构设计和详细设计;而这一过程由于和编码工作联系密切,因此重点审核“产品需求”和“程序”逻辑的关系,并能根据此前的工作量完成接口规定的约束,功能划分的清晰,以防开发过程中出现功能交叉和软件运行不稳定的状况


7~10(4)


1. 开发团队完成第一轮的迭代开发(Alaph),将重点集中于模块的生成和其单元测试含黑盒测试,测试人员在此时开始参与测试,保证模块的正确性

2. 美工将同步参与开发,重点交流模块功能和UI框架的耦合度,此时很可能因为需求改变或程序逻辑的问题出现矛盾,因此建议每三天设定一次例会,由项目经理总结两方的沟通情况


11~13周(3)

这一部分开始具备一定前提,各模块的单元测试已经顺利通过,且必须通过一定数目的黑盒测试,符合各接口所确定的需求


1. 开发团队完成第二轮迭代开发(Beta),将重点集中于模块和UI框架的耦合,同时修复第一阶段的基本问题,在此阶段基本的分工分配和第一轮的开发相比整体工作流程不变,但测试人员此时开展大量的测试,保证错误不会出现于耦合阶段导致后期问题异常难以调试


14~15(2)

此时,软件已经通过了耦合后一定的黑盒测试,且使用文档和测试文档均都齐全


1. 那么可以开始准备初期的“内测”阶段的发布,此阶段我们需要实时接受用户的反馈,并开始基本的维护的工作


16(1)


1. 在14~15周的进度基础上继续修复问题,同时根据用户的反馈做出一定的调整

2. 准备宣传工作并正式发布产品

时间: 2024-12-09 18:00:57

软件工程第三周作业:微软必应词典案例分析的相关文章

微软必应词典案例分析

1.微软必应词典案例分析 1.1微软必应词典功能性BUG说明 声明:以下版本和运行环境如下: 运行环境:Android 5.0.2 LRX22G MIUI 8.0.1.0(LHMCNDG) 必应词典软件版本:5.2.2 1.1.1:BUG-1-悬浮窗错误弹出 软件测试BUG特征 与其他软件存在使用冲突 重现步骤 0.安装讯飞输入法1.打开必应词典->我的->设置->勾选悬浮窗口->打开微信->在对话框中输入讯飞输入法自带的emoji表情,例如破涕为笑 测试结果 弹出“本地暂无

个人作业—Week2:微软必应词典案例分析

调研.评测 bug报告: 标题:Window 10版必应词典客户端口语练习功能无法使用 环境:Window 10, 微软必应词典(UWP) 版本2.6.1.0,屏幕无重力感应模块 重现步骤: 1)     打开微软必应词典 2)     点击左侧菜单栏中的口语练习 结果:产生名为“微软小英-微软必应词典”的新窗口,窗口中显示:“为了更好的体验,请使用竖屏”.无法在保持横屏状态使用该功能. 预期结果: 1)     窗口提示:横屏状态下无法使用该功能,PC无法使用该功能 2)     允许用户跳过

#个人博客作业Week3——必应词典案例分析

第一部分 调研以及评测 一.BUG分析   1. 翻译部分原文语言检测部分 1) 症状: 当选择原文语言是简体中文时,输入英文查询,程序不报错,继续翻译,选择其他类型语言也是如此. 且如果出现这种情况,翻译结果框中的单词对照功能失效. 2) 程序错误:编程者未考虑这种情况或者控制此功能代码不工作. 3) 根本原因:没看代码不知道…… 2. 字体调节功能 1) 症状:翻译和例句部分默认字体太小,距离稍远就无法看清.如下图所示,我认为这个比例是不合理的. 2) 程序错误:这应该是一个缺陷,开发团队并

[151006] 3rd 个人博客作业 —— 微软必应词典客户端的案例分析

第一部分 调研.评测 微软必应词典桌面版(版本3.5.0) i) BUG 测试 (1) 例句tab中输入框下边的四个下拉菜单的位置.一个好的软件应该具有很好的UI吸引用户.这个四个菜单的位置很影响软件的美观,是一个UI bug.   (2) 翻译机Bug. 输入文字框里输入一段英语后,设置 "自动检测"↔”简体中文" 或者 "英语"↔"简体中文" 后点击翻译,下边的文字框中会正常进行英语对简体中文的翻译.那么,设置 "葡萄牙语

软件工程第三周作业-效能分析

运行三次ptime.exe,时间如下: 平均速度0.511s,我觉得挺快的. profile 等待更新.

现代软件工程第三周作业

白盒测试(逻辑覆盖测试) 本周基于之前做的验证码项目进行了一次白盒测试.采用逻辑覆盖测试法. 逻辑覆盖测试法通过流程图来设计测试用例,此次采用了语句覆盖.条件覆盖.条件组合覆盖进行测试. 图1 白盒测试流程图 1. 语句覆盖 每条语句至少执行一次. 测试用例 用户名 密码 验证码图片位置 预期结果 覆盖路径 1 admin 123456 正确 验证成功 abd 表1 语句覆盖测试用例 2. 条件覆盖 每一判定中的条件,分别按‘真’,‘假’至少各执行一次. 测试用例 用户名 密码 验证码图片位置

软件工程 第三周 作业(二)

问题1: for (Int64 i = 1; i < Int64.MaxValue; i++) { int hit = 0; int hit1 = -1; int hit2 = -1; for (int j = 0; (j < rg.Length) && (hit <=2) ; j++) { if ((i % rg[j]) != 0) { hit++; if (hit == 1) { hit1 = j; } else if (hit == 2) { hit2 = j; }

软件工程第三周作业(2)

using System; using System.Collections.Generic; using System.Text; namespace FindTheNumber { class Program { static void Main(string[] args) { int [] rg ={2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31}; for (Int64

软件工程第三周作业(二)

程序代码: using System; using System.Collections.Generic; using System.Text; namespace FindTheNumber { class Program { static void Main(string[] args) { int [] rg = {2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19, 20,21,22,23,24,25,26,27,28,29,30,31}; for