zoukankan      html  css  js  c++  java
  • 软件工程:案例分析

    这个作业属于哪个课程 软件工程
    这个作业要求在哪里 作业链接
    这个作业的目标 通过案例分析学习软件工程
    学号 20188437

    CSDN APP

    一.调研,评测

    1.软件截图

    2.功能性Bug

    • Bug发生时的测试环境
      安卓系统下的CSDN app v 4.5.8版本
    • Bug的可复现性及具体复现步骤
      可复现性:必然发生
      具体复现步骤:夜间模式下打开评论或写博客等界面
    • Bug具体情况描述
      夜间模式下,评论、写博客等界面背景扔为白色。
    • Bug分析
      • 可能成因
        该Bug出现的原因可能是评论、写博客等功能的界面和App主要界面是分离的,不属于同一类,就好比我之前写前端网页界面时CSS内设置了登录界面背景颜色,但转到另一个界面时背景颜色没有被更改,就是因为这两个页面用的不是同一个CSS。
      • Bug的严重性
        是个界面样式层面的小Bug,但影响了用户体验。
      • 对于Bug的预期及改进建议
        修复这个小Bug是很简单的,但有助于对软件的完善。

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

    CSDN APP具备博客的基本功能,完美解决了用户在移动端使用CSDN博客的问题;

    • 数据量
      进入APP,加载界面就是“成就一亿技术人!”几个大字,可见用户量之庞大,平时百度搜索问题,CSDN的博客占了大部分,软件的数据量是非常巨大的,拥有丰富的数据资源。
    • 界面
      界面简洁,实用,比较人性化,初次使用的用户也能轻易操作。
    • 功能
      功能还算比较齐全,PC端能做的操作基本都能做,但写博客的功能太基础,不能替代PC端。功能分区为“首页、会员、直播、消息、我的”,感觉不太友好,可以借鉴一下牛客APP的功能分区“学习、社区、消息、我的”按用户使用目的进行分区,会员和直播内容应该内嵌在主要分区之中,而不是单独作为一个分区;可以增加视频分区,作为区别于文字的另一种呈现方式。
    • 准确度
      准确度较高,对博客有准确的分类,搜索到的内容也是用户想了解的。
    • 用户体验
      用户体验整体不错。

    4.对产品有什么改进意见?

    ①分区“首页、会员、直播、消息、我的”不太友好,建议改成“首页、视频直播、学习、消息、我的”。
    ②增强视频功能。
    ③浏览长博客时,回到顶部或底部需要翻很久,不太方便,建议增加书签功能,或者可通过滚动条上下拉动浏览博客。
    ④写博客功能虽然能自动保存为草稿,但不太直观,一开始我还以为没有这个功能,后面才在我的→创作中心→我的创作中发现,可以在写博客的界面增加存为草稿的选项。
    ⑤在博客底部打开另一个博客,重复以上操作,要回到首页或较前方博客就需要一直点返回,不太人性化,可参考浏览器的多窗口浏览模式进行改进。
    ⑥账号与安全中的修改手机号必须通过将验证码发送到已绑定手机号验证修改,当遇到已绑定手机号不能使用的情况,就不能修改了,然而大部分要修改手机号的情况都是手机号不能使用了。可以学习微博进行问题验证或者实名认证等验证方式。

    5.结论:

    经过这么多工作,你一定有充分的理由给这个软件下一个评价:
    a) 非常不推荐
    b) 不推荐
    c) 一般
    d) 好,不错
    e) 非常推荐
    我选d

    类别 描述 评分 (满分 10 分, 良好 6 分, 及格 4 分,聊胜于无 1 分, 很差 -3 分)
    功能 核心功能 博客搜索;博客管理;直播;资源获取与发布 9
    细节 没有很严重的问题,有一些很小的需要完善的问题 6
    用户体验 界面简约,操作简便,资源丰富,很多问题都能在上面找到答案,有些地方不够人性化 6
    辅助功能 夜间模式不错;签到,任务,排行等功能可以增加用户黏性;热搜功能也不错 8
    差异化功能 直播功能 8
    软件的效能 占用内存不多,还可以清理缓存,启动速度较快 8
    体验 软件的适应性 电脑、手机账号信息互通 9
    成长性 记住用户的选择, 自动保存浏览记录,自动保存草稿 7
    广告 广告较少,体验不错 10

    二.分析

    在书上我们看到:

    程序 = 算法 + 数据结构
    软件 = 程序 + 软件工程(软件服务还有数据,内容的因素)
    软件企业 = 软件 + 商业模式

    那么:

    1.使用此服务的所有功能,估计这个软件/网站/服务做到这个程度大约需要多少时间(团队人数6人左右,计算机大学毕业生,并有专业UI支持)。

    如果软件所有功能都从头分析、设计、开发、测试,我估计需要一到两年时间,但是CSDN移动端app是基于PC端开发的,很多需求、功能、技术是有基础的,所以所需时间应该会缩短。

    2.分析这个软件目前的优劣(和类似软件相比),这个产品的质量在同类产品中估计名列第几?

    优势:
    ①.功能定位精确,多方向发展。
    ②.用户基础庞大,知名度高。
    ③.资源丰富。
    劣势:
    ①.内容质量不高,很多重复、垃圾的博客。
    ②.功能比较多但不精,不能替代像牛客、mooc这样专精的app
    ③.作为博客类的app,博客管理方面不是特别完善。
    这个产品的质量在同类中估计名列第一,因为这类产品最重要的就是用户量和资源量,CSDN作为国内IT领域的先锋,拥有大量的用户和资源,这是几十年来累积起来的,其它产品要想挑战它的地位,还是有难度的,但在近几年兴起的视频流和求职方面,CSDN并不强。

    3.从各方面的问题,推理出这个软件团队在软件工程方面可以提高的一个重要方面(具体建议)。

    在一些细节方面需要加强,比如上文所提到的几个意见,都是一些小问题,但不能忽略,需要追求完美的用户体验。

    4.你在第一部分发现的bug,为何软件团队不能在发布前修复?他们是不知道,还是有意不修复?你觉得是什么原因?可以从下面的可能性中选取几个:

    我觉得是开发人员粗心大意,夜间模式的全局性还是很重要的。测试不够细致,还有一些不人性化的地方以及用户反馈需要及时跟进。

    三.建议和规划

    • 市场概况
      • 首先市场有多大?
        目前市场还是比较大的,未来互联网应用的场景会越来越多,编程也将成为一项基础技能,学习的人越来越多,而CSDN是一个不可替代的学习平台,市场前景十分可观。
      • 其次直接的用户有多少?潜在的用户又有多少?
        直接的用户就很庞大,从事it相关工作的人都是其潜在用户,随着编程的普及化,潜在的用户也将越来越多。
    • 市场现状
      • 目前市场上有什么样的产品了?
        目前市场上比较类似的产品有IT之家,开源中国,掘金,博客园,牛客等。
      • 上述产品的定位、优势与劣势在哪里?
        上诉产品的优势在于各自有自己精确的定位,劣势在于其所专注的定位过于单一的话,有很大的被淘汰的风险。
      • 上述产品之间呈现什么样的关系,哪些为竞品关系?以及竞争中的各方态势如何?
        上述产品之间呈现局部竞争关系,他们有些功能是一模一样的,但也都有自己的特色,CSDN目前是领先于其它产品的,但不能完全替代其它产品,其它产品都有其发展潜力,当下还不能下定论。
    • 市场与产品生态
      • 这个产品的核心用户群是什么样的人?典型用户是什么样的?学历,年龄,专业,爱好,收入,表面需求,潜在需求都是什么?
        这个产品的核心用户群是相关专业的学生以及从业人员,典型用户是想通过此产品学习新的专业技能或分享经验,学历一般在本科专科以上,年龄跨度比较大,一般处于上大学和从业中的年纪,专业主要是计算机相关专业,爱好计算机,收入跨度较大,表面需求大部分为解决问题与学习,潜在需求是累积经验。
      • 产品的用户群体之间是否存在一定的关系?是否有利用其相互作用二次构成特定用户生态的可能性?
        产品的用户群体可分为学习者和教学者两大类,如果学习者能在此平台学到知识,教学者能在此平台通过分享经验获得一定收益,就能增加用户的黏性,学习者将来也会成为该平台上的教学者,有利于用户生态的良性发展。
    • 产品规划
      • 你要在当前软件的基础上设计什么样的新功能?为何要做这个功能,而不是其他功能?为什么用户会用你的产品/功能?你的创新在哪里?可以用NABCD分析。
        我想设计一个项目功能,用户可以创建项目或加入项目,项目成员通过博客记录开发流程、进行项目维护与管理等。很多CSDN的用户都停留在专业知识的学习上,缺少项目开发的经验,这一创新功能可以为用户提供参与到项目开发的机会,在这上面发布的项目主要用于新手菜鸟学习软件开发流程。
      • 如果你是项目经理,可以招聘6个人,并且有4个月的时间,你认为应该如何配置角色(开发,测试,美工等等) 才能在第16周如期发布软件的改进版本,并取得预想中的成绩。
        4人开发、1人测试、1人美工。
      • 请为你的团队设计16个周期每周的详细规划。
        第1周需求分析、设计;第2周到第14周开发测试,第15周美工,第16周总结。
      • 产品的子产品,以及其他相关产品之间是否存在一定的关系?是否有利用各个产品特性之间的相互关系二次构成产品生态的可能性?
        产品与产品之间可以是发展与继承的关系,多个产品不同的功能侧重组合起来可以形成良好的产品生态,为用户提供一条龙服务。
  • 相关阅读:
    [JOYOI1326] 剑人合一
    linux hive +mysql(mysql用于hive元数据存储)
    hadoop 伪分布式单机部署练习hive
    pyhton 操作hive数据仓库
    python操作hadoop HDFS api使用
    hadoop伪集群部署
    python 文件指针切割文件
    jdk8 permgen OOM再见迎来metaspace
    java JVM内存区域模型
    java垃圾回收
  • 原文地址:https://www.cnblogs.com/hlywzj/p/14638452.html
Copyright © 2011-2022 走看看