• 软件工程第4次作业


    一、作业地址

    https://edu.cnblogs.com/campus/nenu/2016CS/homework/2505

    二、待分析的产品

    1.评测目标:石墨文档Mac客户端

    2.下载地址:【https://shimo.im/download

    三、调研、评测

    1.下载并使用,描述个人感受

    ①产品介绍:石墨文档是一款轻便、简洁的在线协作文档工具,PC端和移动端全覆盖,支持多人同时对文档编辑和评论,让使用者与他人轻松完成协作撰稿、方案讨论、会议记录和资料共享等工作。

    ②个人感受:石墨文档的产品定位是轻量办公软件,Mac端的界面简洁大方,整体呈灰白色调,符合办公软件的定位 ,也与系统一贯的简洁风格相符。编辑工具丰富,可以满足团队工作的基本需求。Mac端支持导出成pdf、word、md、jpg等格式的文件,满足不同用户的需求。自动实时保存的功能很便捷,用户体验感好。

    2.按照描述的bug定义,找3-5个功能性比较严重的bug

    通过阅读《构建之法》第13章的软件测试,得知bug的定义为:  
    
    ·Bug:软件的缺陷
    
    Bug可以分解为:症状(Symptom)、程序错误(Fault)、根本原因(Root Cause)。
    
    1)症状:即从用户的角度看,软件出了什么问题。
    
          例如,输入(3 2 1 1)时,程序出错退出。
    
    2)程序错误:即从代码的角度看,代码的什么错误导致了软件的问题。
    
          例如,代码在输入为某种情况下访问了非法的内存地址——0X0000000C3)根本原因:错误根源,即导致代码错误的根本原因。
    
          例如,代码对于id1==id2的情况没有做出正确判断,从而引用了未赋初值的变量,出现了以上的情况。

    Mac端功能性bug分析:

    ①初始界面加载缓慢,大概需5s。

    ②插入图片时,进度条增长到一半后重新从原点开始,视觉交互体验感差;若插入的图片格式为.gif,插入速度十分缓慢,2min没有插入成功。

    ③多人协作时,未能成功加载图片,头像显示位置错乱。

    ④正在编辑且经过自动保存的文档搜索相应内容时,未出现结果。(前提:搜索提示中允许输入文件内容搜索。)

    如下图,正在编辑的文档中包含【石墨文档】四个字且已自动保存,但搜索结果中并未出现该文档内容。

    ⑤点击新建文档后会覆盖当前最近使用窗口,编辑新建文档后点击后退键,没有出现新建文档,需手动刷新。用户体验感差。

    3.选择需要使用这样的软件的用户进行采访,记录你的采访,记录形式不限,图片、文字或文档链接。

    ①采访对象背景和需求

    背景:采访对象为东北师范大学校新媒体中心的一位工作人员。

    需求:校新媒体中心负责东师青年公众号的运营,为了制作出精美、打动人心、实用的推送,校新媒体中心的工作人员需要每周开策划会讨论出下星期推送的内容,本次的采访对象主要负责策划会的会议记录并上交给负责人进行筛选,但由于速度问题经常造成内容遗漏、缺失。如果使用石墨文档的多人在线协同编辑功能,每位参与人员可及时键入自己的想法,可通过线上交流的方式进行讨论、筛选,让工作更便捷,提高了工作效率。

    ②让采访对象使用5-15分钟石墨文档的功能

    ③描述用户使用这个产品的过程, 用户的问题解决了么?软件在数据量/界面/功能/准确度上各有什么优缺点?用户体验方面有问题么?

     过程:在本星期策划会中,采访用户新建了一个工作文档,并添加了四人进行多人协作。五人通过多人协作及讨论,搜集、总结、整理、筛选完成了本周的策划任务,石墨文档可以很好地解决采访用户的问题。但是其中在插入图片的时候遇到了插入速度过慢的问题,希望经过反馈后可以进行改进。

    优缺点:

      优点 缺点
    数据量 数据量较大且形式多样化,可供用户进行选择 数据量过大的时候软件会出现速度较慢的问题
    界面 界面简洁大方,整体呈灰白色调,符合办公软件的定位 过于简单,长时间使用易产生视觉疲劳
    功能 在线协作文档工具,支持多人同时对文档编辑和评论,让使用者与他人轻松完成协作撰稿、方案讨论、会议记录和资料共享等工作 有的功能bug较多,比如说多人协作时图片加载不出、显示错位的情况
    准确度 在编辑文档的过程中,自动保存功能以毫秒级速度同步保存在云端 数据量过大造成准确度下降及速度变慢

    用户体验问题:插入图片速度过慢、加载文档速度过慢、有时图片无法加载、导出为word文档时题目无法一同导出、

    ④用户对产品有什么改进意见?

     新建文档时可以打开新窗口而不是覆盖最近使用界面。另外希望能提高插入图片的速度。

    4.请给出你对这款软件的评价和理由。

    评价:c、一般

    理由:Mac端的用户使用体验感较差,比起Windows客户端及移动端来说不足之处较多,部分功能,比如:多人协同操作编辑文档时头像位置错乱的问题,给使用者带来的体验较差。但总体来说自动保存的功能十分便捷,界面设计美观大方,导入、导出、编辑功能强大,对中小团队来说是很便捷、方便的工具。综合考虑,本人对这款产品给出一般的评价。希望以后能加强部分功能的改进与实现。

    四、分析

    1.使用此软件的所有功能(包括新建文档、文档导入等),联系第二部分的分析,估计这个项目做到这个程度大约需要多少时间(以周为单位、团队人数6人左右、计算机专业本科毕业生,并有专业UI 支持),人员如何分工?时间如何规划?

    如果团队人数为6人,且均为计算机专业本科毕业生,并且有专业UI支持,那么我认为这个项目做到这个程度大约需要20周的时间

    通过阅读《构建之法》8.6关于计划和估计的内容,得知:
    软件工程师在长期的实践中,摸索出一套经验公式:实际时间花费主要取决于两个因素——对某件事的估计时间X以及他做过类似开发工作的次数N。
        Y = X ± X ÷ N //注:Y是实际时间花费。中间的±表示加上或减去。

    如果没有理解错,题目将专业UI单独标注出来,所以美工设计不包括在开发团队里面,故预计如下:

    人员分配:

    职位 人数
    项目经理 1人
    前端开发 2人
    后端开发 2人
    产品测试 1人

    项目经理需要对产品前期后期的整体过程统筹规划、合理安排开发和上市时间及后期推广运维工作有一个大局观,所以我认为项目经理的设置是必须的。

    按照Rational Unified Process统一流程,现将时间规划如下:

    时间进度

    工作安排
    第一周 业务建模、需求分析
    第二周至第三周 分析和功能设计
    第四周至第五周 界面设计
    第六周至第十四周 功能实现及开发
    第十五周至第十九周 测试并检验需求是否正确实现
    第二十周 部署,交付或发布产品

    2.分析这个软件目前的优劣(和类似软件相比),并给出团队在软件工程方面可以提高的一个具体建议。

    产品名称 功能 协作 分析
    Google Docs 文件管理、搜索、协作功能、协同编辑 协作功能领先,协同编辑的内容够可以实时查看,协作表格尤其出色 体验感佳,但对于国内用户来说存在使用上的不便。
    Office Online 文件管理、搜索、协作功能、协同编辑 和Google Docs较为类似,允许将编辑好的文档保存到One Drive 协同和编辑功能非常好用,能够使用office365的邮箱实现便捷分享,能够设置权限,支持多终端。
    Quip 轻量、协同办公 即时通讯、协同办公 比起Google Docs与Office Online来说更为轻便,对国内用户来说存在使用上的不便
    一起写 协同办公、多终端办公、团队管理、文档管理、基础的存储功能 协同办公功能很强 团队管理和文档管理的部分不是一起写的重点,可以通过分享链接的形式来实现权限管理,但UI设计比较拙陋
    WPS云文档 WPS
    +一站式办公、多终端、团队管理、文件管理
    文档协作、表格协作、协作流程图和PPT 在目前国内相似产品中性价比最高,功能全,但WPS不支持mac版本,且微信端不能直接编辑文档
    石墨文档 协作功能、基础的团队管理和文档管理功能以及基础的文件权限设置和分享链接权限设置 文档协作 界面美观大方,非常具有设计感,但由于太为轻量,更适合个人使用,与其他类型产品对比功能较为基础

    建议:在文件权限、团队管理功能方面可以更进一步的开发。

    五、建议和规划

    1.这个软件有很多可以提高的部分,如果你是项目经理,如何提高从而在竞争中胜出?

    首先,收集使用者反馈建议,修复功能上的BUG,打造具有更高用户体验感的产品。其次,通过与同类产品的横向、纵向对比,发掘潜在功能,比如说文档主打功能为多人协作,那么应该在团队管理、文档分享权限这些功能上多下功夫,打破目前基础功能的局囿。


    2.目前市场上有什么样的产品了?你要设计什么样的功能?为何要做这个功能,而不是其他功能?为什么用户会用你的产品/功能?你的创新在哪里?可以用 NABCD分析。

    目前市场上类似的产品有Google Docs、Office Online、Quip、一起写、有道云协作、WPS云文档等产品。

    我想设计一个团队标签化搜索的功能,即通过自定义标签的方式来简单、直观的进行搜索。

    因为石墨文档主打团队协作功能,标签化搜索的方式可以让搜索已有文档更加便利,且方便归类整理,可以提高团队的工作效率。

    创新:

    N(Need):团队协作已成为当今社会办公的一种趋势,多人协作产品的出现满足了大家的日常工作需求。 

    A(Approach):  定期进行用户调研,产品经理要随时注意互联网评论导向并收集相关建议,项目团队根据反馈进行整改与维护。或根据用户需求添加新的功能。

    B(Benefit):  多人协作,能同时编辑同一个文档;跨平台Windows、Android、Mac、iOS,受众广;云端实时自动保存,安全性高。

    C(Competitors):同类产品相对于本产品弱点功能的竞争。

    D(delivery):在各大社交平台与软件商店进行推广宣传。


    3.如果你的团队有5个人, 4个月的时间,你作为项目经理,应该如何配置角色(开发,测试,美工等等)?

    如果我的团队开发经验较多,那么配置情况如下:

    开发:2人

    测试:2人

    美工:1人

    如果我的团队开发经验不足,那么配置情况如下:

    开发:3人

    测试:1人

    美工:1人

    4.描述你的团队在16 周期间每周都要做什么,才能在第16周如期发布软件。

    第一周:业务建模及需求分析。理解目前用户的业务流程,利用UML图把用户的活动描述出来。通过用例后,开发人员和用户代表分析并确认产品的需求以及功能的约束条件。

    第二周:分析和功能设计。将需求转化成系统的设计,确定系统有哪些子系统、模块以及它们之间的关系。

    第三周:界面原型设计。设计界面及UI交互。

    第四周-第十周:产品开发和实现。搭建系统。

    第十一周-第十五周:产品测试。验证系统所有组件的正确性、组件之间交互的正确性,已检查所有的需求已被正确的实现。发现、报告、会诊、修复各种缺陷,在产品部署和发布前保证质量达到预期要求。

    第十六周:发布软件。

  • 相关阅读:
    HTML iframe, 获取iframe子页面中的元素(基于JavaScript)
    微信小程序中引入VR全景图
    git创建分支,提交代码详细流程(保姆级)
    Vue项目中使用Axios封装http请求
    node搭建本地服务器后端解决跨域问题
    ant design Upload组件上传文件类型
    使用nodejs连接mysql数据库实现增删改查 连接Node.js时报错“Cannot GET /”
    后端返回文件流,前端处理进行文件下载
    JS判断是否是数组的四种做法
    Js常用方法:JS字符串截取、数组截取等
  • 原文地址:https://www.cnblogs.com/antidotes/p/10171602.html
Copyright © 2020-2023  润新知