zoukankan      html  css  js  c++  java
  • 个人作业——软件产品案例分析

    # 第一部分 调研,评测 ## 评测: ### 1.下载并使用,描述最简单直观的个人第一次上手体验。 **IOS端:** - 首先打开注册登录页面发现整个页面很整洁,淡绿色背景看起来很清爽很舒服。
    • 然后是注册部分,点击注册后出现了如下情况:

      没错,就是我们比较烦的一个圈圈转啊转,速度方面确实有点慢。

    • 然后是填写注册信息,平时在使用其他APP时我一般会用一个固定的用户名称,比较方便也不用每次都去想一个用户名,所以我常规输入用户名,出现这个提示:最短不能少于5个字符

      既然这样,那行吧,我加一个字总可以了,于是,又提示:只能包含字母、数字或-_字符。这就有点皮了,早说不就好了。。。这方面确实不够人性化。

    • 然后是登录,在玩这个软件时,我登录退出来来回回好几次,发现每次登录都要重新输入密码,所以如果登录方面我觉得如果有一个记住密码的功能那就更棒了。

    • 登录进入APP后的印象是界面简约美观,第一印象挺好的。首先是项目部分,左上方有一个二维码选项,我点击进去并找了一个二维码扫,惊奇的发现:无效的二维码!WHAT???(尼克杨问号脸.jpg)

    • 我尝试着点击进入项目并创建了新工作项,在创建工作项时,一个不舒适的体验还是运行速度的问题,感觉这方面确实是一个短板。如图:

    • 在我只创建了一两个工作项时,条件反射的想采用左右滑动来切换上面的工作项类型,发现他的viewpager并没有实现滑动,

      在我想吐槽时,我突然想到工作项左拉后是有分享和删除选项的,如下图:

      所以当你工作项很多时,比如这样:

      自然不能用滑动来切换工作项类型了,不然就跟工作项进行左拉选择分享删除冲突了,一时短路,惭愧惭愧。

    • 然后是我在一个工作项里面又创建了子工作项,但是在APP中显示的时候却没有相关提示将他们关联起来,我无法从中知道,哪些工作项是父子关系,比如这个界面里“阿森纳”是“欧冠16郎”的父工作项,但是这个界面没有任何提示他们的关系,甚至你点击进去子工作项里面也找不到父工作项的信息,有点皮。

    • 再然后是上面也说了工作项是可以删除的,但是项目,找了好久也没找到哪里可以删除项目,这个地方确实有意思,不知道开发者的想法是什么。

    • 再有一个我感觉有点不舒服的是个人页面那个地方,整个页面不能拉动感觉比较僵硬,是不是可以尝试采用比如微信这种可以上拉下滑的效果,虽然没有什么特别作用,但感觉这样会舒服一点。


    web端:

    • 用过IOS端的后再用一下web端感觉舒服了许多,像登录页面web端可以用手机登录,这是很便利的,如果是用用户名登录则会麻烦一点,说实话,用那么多APP几乎每个APP都有一个用户名,所以很容易搞混用户名,当然了,还有密码,满满的痛,每次都是忘记密码,gg。

    • 进入页面后感觉页面设计很舒适,像这个项目,看起来就很舒服,还有这个工作项的页面设计比起手机IOS端看起来美观一些。

    • 还有这个用户个人信息界面,可以修改头像,比手机端完善。

    • 还有我上面说的那个父子工作项的问题,在web端就完善了,看web端就把子工作项包含在父工作项下,顿时舒爽。

    2.按照描述的bug定义,找出几个功能性的比较严重的bug。至少两个。

    • NO.1

      • bug描述:在scrum类型项目中,当你在其中添加工作项时,会发现只有Bug、Feature、Story三个选项。而在项目中却有四个,也就是添加工作项时缺少了Task这个分类。
      • 图片展示:
    • NO.2

      • bug描述:IOS端在待办界面中,选中一个项目左滑进行分享或删除,当点击分享时,APP会崩溃了,而在项目里的工作项中操作不会崩溃。
      • 图片展示:

    3.你觉得为什么这个产品组的人没有发现这些bug?

    • 我觉得产品组开发过程中像那个工作项类型缺失就是开发中的疏忽问题,同时在测试这方面有点大意,因为我感觉这些bug是比较容易发现的。估计也是因为软件还在初期运营状态,软件相应功能还没有的到很好的完善。跟web端相比较,web端做的就舒服不少。

    4.假设你们团队需要开发这套系统,需要注意哪些方面(架构、部署运维、微服务等)。

    • 首先前期的架构一定要设计好,有一个好的架构才能有方向去做。要考虑到软件的兼容性拓展性等等。部署运维首先要考虑服务器问题,服务器没配置好那么问题就来了,想必大家平时都有体会,维护方面也要细致,有相应问题的准备,其他方面还要考虑到软件的兼容性拓展性等等,最后的收费问题也要权衡好,尽量让大多数用户可以接受。

    采访:

    1.采访对象的背景和需求:

    • 采访的对象并没有使用过这个APP,平时也只用过GitHub进行代码管理。所以对这款软件还是有一定的需求的。

    2.采访对象使用华为软件开发云:

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

    界面:web端界面设计的不错,人性化程度也还可以,相比 web端APP方面还需要进一步加强。
    功能:功能方面比较完善,暂时没发现缺少什么重要功能,就是刚上手还没有非常熟悉的去运用。
    准确度:准确度方面还行,web端移动端同步性可以。
    用户体验方面在加载方面比较不友好,速度有点慢,同时我列举的bug也影响了用户体验。

    4.用户对产品有什么改进意见:

    • 他感觉产品的UI方面可以加以改进,感觉有点单调,再然后就是他也很吐槽APP的运行速度问题,然后就是一些bug要加以修复。

    5.结论:经过这么多工作,你一定有充分的理由给这个软件下一个评价,请选择一个结论:

    • 一般

    第二部分 分析

    • 1.使用此软件的大部分功能,联系第二部分的分析,估计这个项目做到这个程度大约需要多少时间(团队人数6人左右,计算机大学毕业生,并有专业UI 支持)。 分析这个软件目前的优劣(和类似软件相比),并推理出团队在软件工程方面可以提高的一个重要部分(具体建议)。

    • 时间估计:6~8个月
    • 优势:界面整洁舒服(特别是web端),功能全面,作为代码托管平台,能够构建部署,还有免费额度。
    • 劣势:移动端问题较多,有不少bug存在,同时速度较慢,移动端的界面设计也需要加强。
    • 建议:加强移动端的开发设计,特别是bug的解决与加速问题,让用户在移动端能够拥有更好的用户体验。

    2.根据理解和体验,画出整个软件所有功能逻辑框图,根据重要度标识出各模块的重要度、完成度、出发点及效果;

    3.针对不同的维度评分,对用户体验方面、UI界面美观度、核心功能,分别打分。

    IOS端:

    类目 分数
    用户体验 75
    UI界面美观度 80
    核心功能 80

    web端:

    类目 分数
    用户体验 85
    UI界面美观度 85
    核心功能 80

    第三部分 建议和规划

    1.如果你是项目经理,如何提高从而在竞争中胜出?

    • 如果我是项目经理,我觉得可以在这几点进行提高优化。首先是软件的优化完善,闪退崩溃这些问题要一一排查并解决。再者是速度方面,体验了一段时间感觉这个软件的速度方面有很大的优化空间,速度是用户体验非常重要的一个部分。核心功能要细化,注重一些细节,像我上面提出的父子工作项的联系问题是不是考虑一下把他们的关联体现出来。UI方面在一些界面可以加强,比如我上面说的个人界面,增加一些灵动,添加一下头像,让用户体验起来更加舒服,还有一些比较空白的界面可以换种思路,比如这个工作项描述,可不可以用一种dialog对话框的方式来实现更加美观,站在用户的角度去思考去体验。

    2.目前市场上有什么样的产品了?

    • 目前市场上有GitHub、腾讯云等等产品

    3.你要设计什么样的功能?

    • 我在思考是不是可以考虑添加一下类似知识社区的功能,可以供用户交流分享。

    4.为何要做这个功能,而不是其他功能?

    • 作为一个菜鸟,经常要去技术网站查找学习一些新东西,所以我觉得技术这一块交流与分享是很重要的一部分,在这里如果能有一个类似知识社区的地方,用户的一些小问题可以比较方便解决。

    5.为什么用户会用你的产品/功能?

    • 困难时每个人都会遇到的,用户用的同一个软件,可能会有一些共性问题,在这边也容易解决,省去了再去别的地方查找相应解决方法的麻烦。

    6.你的创新在哪里?可以用 NABCD 分析。

    • N:用户会在使用软件时遇到一些问题,还有一些是技术知识问题,这时候他们就需要求助他人或去查找资料。
    • A:添加一个知识社区模块,里面可以发一些经验贴,求助帖,也要有查找功能,查找相类似的问题。
    • B:用户容易方便寻找到自己的答案,因为知识社区上都是在使用这个软件的用户,大家会有一些共性问题 ,分享出来多人受益。
    • C:我们这个知识社区立足于软件用户,用户在使用软件时会因方便而优先选用此软件的知识社区,此时使用会相对其他一些专业技术网站更方便些,而且上面也说了,社区上都是这个软件的用户,在此软件遇到的问题在社区上更容易找到答案。
    • D:从自己从身旁开始,慢慢推广出去,再推广到各个平台,星星之火可以燎原。

    7.如果你来领导这个团队,会有什么不一样?

    • 分工是最重要的,必须要有明确的分工,大家各司其职,然后要计划设定一定的时间用来讨论与分析,大家把问题和进度都表达出来,互相探讨,工作才能井然有序。当整个团队运行起来时大家激情有了,凝聚力有了,剩下的就是一步一步踏实前进了。凝聚力,真的很重要,如果团队内部有意见,那就GG了。

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

    • 初期阶段在进行架构设计的时候大家都要参进来才能对整个项目有一定的了解与熟悉。
    • 在Alpha阶段,开发人员可以多一点,4个人,美工测试1个人,因为我觉得这段时间功能的实现还有服务器搭建等等更关键一些。
    • 在Beta阶段,开发人员3人,美工测试2人。

    9.描述你的团队在16 周期间每周都要做什么,才能在第16周如期发布软件,大小里程碑绩点设定。

    • 第1周主要是项目规划,需求分析,同时对下阶段的任务进行安排,配置好每个人的角色。
    • 之后的4周进行主要功能的开发以及初步测试,同时对界面有初步的设计,主要功能是项目管理和代码管理。
    • 第6周总结前一阶段的工作,根据前一阶段完成情况安排下一阶段的任务和人员配置。
    • 之后的6周对上一阶段的功能进行深入的测试,确保每个功能都能够稳定的实现,不会出现严重的问题,同时对一些附加的功能进行开发,同时根据需求的变化适当的修改对应的功能。
    • 第13周总结前一阶段的工作,根据前一阶段完成情况安排下一阶段的任务和人员配置。
    • 之后的几周就是对所有功能进行最后的整合与测试,将最后的界面和功能进行统一。

    10.项目发布后,有没有考虑过项目该怎么部署才能满足需求。依据下图(某校教务处系统的部署)作为参考,分析16周后你所完成的项目上线需要哪些配套设备(服务器、带宽、数据库需求数量与配置) 。

    • 项目管理功能对服务器与数据库资源的占用并不是特别大,但是代码管理方面,比如代码托管需要比较大的带宽,保证大量用户能够同时上传代码而不发生拥塞,代码检查则需要服务器具有强大的处理能力,同时存储代码等项目资源需要非常大存储空间。而且这个项目是面向全球用户的,随着用户不断增加,对服务器的要求也会越来越大,所以随着时间的推移也需要增加服务器和数据库的配置和数量。
  • 相关阅读:
    WCF简单使用(分别部署在控制台和IIS上)
    WCF系列教程之WCF服务配置工具
    053547
    053546
    053545
    053544
    053543
    053542
    053541
    053540
  • 原文地址:https://www.cnblogs.com/qq805212031/p/7954121.html
Copyright © 2011-2022 走看看