Fork me on GitHub

实践课:i至诚app案例分析---林沁

这个作业属于哪个课程 至诚软工实践F班
这个作业要求在哪里 作业地址
这个作业的目标 通过对i至诚软件测试,更好的从用户的角度来体验软件成熟度
学号 212106722

测试对象:i至诚APP

  • 前言

    i至诚作为我们在校生的一款校园软件,关乎着我们在校全体师生的信息安全以及使用体验,于是,在本次软件测试的情况下选择对i至诚进行系统的测试。
    

第一部分 找Bug

  • Bug发生时的测试环境

    手机型号:小米10
    手机版本:MUI 12.5.10
    i至诚版本:1.9.9.80670(202111081003)
    
  • Bug的可复性及具体复现步骤

    1. 通过手动点击,对软件进行用户体验测试以及Bug测试

      ①离线码无效点击

      ②校园课堂点击进入页面后无有效反应

      ③入馆教育系统中存在点击"视频课程"后却提示无信息

      ④其他

      存在一些不属于学生该有的功能,教师端与学生端没有完全分离开来

      Bug的存在分析:没有更好的从用户的角度去体验i至诚该产品,以及该产品在测试时并没有完全将每个功能进行全部的测试。
      
      Bug的严重性:轻微漏洞,虽然存在某些功能实现不了,但是只是影响了用户的体验程度,没有设计到相关安全信息的泄露。
      
      建议:做好优化,重新对每个功能进行测试以及完善。
      
      
      1. 通过专业测试软件,对软件进行系统测试,查出代码存在中危漏洞9个,安全风险26个

      关于https敏感数据劫持漏洞(9个)

      修复建议:对自定义的 X509TrustManager 实现对证书的严格校验;setHostnameVerifier 接口请设置安全选项级别,如 STRICT_HOSTNAME_VERIFIER
      
    1. Activity组件暴露⻛险 ( 9)

      修复建议:无需暴露的组件请设置 exported="false";若需要外部调用,建议添加自定义 signature 或 signatureOrSystem 级别的私有权限保护;需要暴露的组件请严格检查输入参数,避免应用出现拒绝服务。
      

      Service组件暴露⻛险 ( 6)

      修复建议:无需暴露的组件请设置 exported="false";若需要外部调用,建议添加自定义 signature 或 signatureOrSystem 级别的私有权限保护;需要暴露的组件请严格检查输入参数,避免应用出现拒绝服务。
      

      BroadcastReceiver组件暴露⻛险 ( 9)

      修复建议:进程内动态广播注册建议使用 LocalBroadcastManager;或者使用 registerReceiver(BroadcastReceiver, IntentFilter, broadcastPermission, Handler) 替换 registerReceiver(BroadcastReceiver, IntentFilter)
      

      Intent组件数据组件泄露⻛险 ( 1)

      修复建议:使用显式调用方式发送 Intent;进程内发送消息建议使用 LocalBroadcastManager;或
      者使用 sendBroadcast(Intent, receiverPermission) 替换 sendBroadcast(Intent)
      

      TCP开放端口⻛险 ( 1)

      修复建议:对数据来源做校验
      

      ⑦通过手机抓包软件,对i至诚进行爬取,发现严重漏洞,通过修改网址code值,可以访问到使用i至诚的每一个用户信息,其中包含了照片、基本信息等一些敏感信息(由于信息太过敏感,这里不便多处截图)

      ps:只用作于该课程的学习过程!!!!

      Bug的存在分析:可能i至诚是一个校园类的APP,开发者可能没有考虑到存在潜在攻击者,对于数据安全方面没有考虑到位。
      
      Bug的严重性:高危漏洞,数据安全信息是每个全体在校师生的隐私,数据一旦泄露关乎着使用i至诚的每个用户的信息安全。
      
      建议:对i至诚信息进行技术加密,防止攻击者使用专业手段获取信息。
      
      

第二部分 功能分析

1、根据软件已有的功能,评估其做到这个程度大约需要多少时间?(例如:团队人数6人左右,计算机大学毕业生,并有专业UI支持)

阶段 周数
需求分析、与客户讨论 1-2
模块初步设计 1
软件原型设计 1
系统框架设计、数据库设计等模块设计 4
代码编写 8
代码复审 1
黑白盒测试 1
项目总结 1
交付项目 1

2、分析这个软件目前的优劣(和微信端的“至诚教务助手”相比),哪个更实用?

  • 优势:属于独立软件,拥有单独的服务器,微信出现的卡顿不会影响到i至诚的使用
    劣势:用户体验感较差,有些功能与至诚教务助手重复,例如课表。相对来说,至诚教务助手打开这些功能查看课表就显得异常方便
    总结:相对于用户体验度来说,至诚教务助手虽然格式简略,但是该有的功能都大部分齐全了,且至诚教务助手存在于微信端,对于现代常用微信的我们来说打开是及其方便的,如果能将两者的亮点功能结合,那么我认为会更好一点。
    

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

  • 在设计初多与客户需求进行商讨,以求更好的实现功能模块
  • 在设计时既要完善功能的实现,更加应该注重对信息安全的考虑
  • 在测试时需多与开发人员进行沟通
  • 在项目上线后可以对使用用户进行调用,方便后期更好的改进

4、你在第一部分发现的bug,为何软件团队不能在发布前修复?他们是不知道,还是有意不修复?你觉得是什么原因?

  • 测试对于自身的工作没有到位,敷衍了事,没有注意在特殊的配置或环境下测试
  • 产品设计初期没有与客户更好的进行协商讨论
  • 开发人员的安全性意识不够到位

第三部分 建议和规划

市场现状

  • 目前市场上是否有其他类似功能的产品、竞品?

    校园e码通、智慧校园、完美校园、各大高校专属APP
    
  • 上述产品的定位、优势与劣势在哪里?

    定位:为全国高校师生生活服务
    优势:流量广,使用用户多,能够收集更多的有效意见进行更好的完善功能
    劣势:不属于独立服务器,一旦服务器崩溃那么使用该软件的高校整体都会受到很大的影响
    
  • 上述产品之间呈现什么样的关系,哪些为竞品关系?以及竞争中的各方态势如何?

    除了各大高校专属APP,其余都呈竞争关系,个人认为校园e码通相比于智慧校园与完美校园会显得优势更加明显,不说其他高校,专是我们学校的i至诚内部就调用了校园e码通的接口,通过接口来进行支付功能。其次是智慧校园,最后是完美校园,其原因是感觉功能还是相对于前两者来说还是显得略不足。
    

市场与产品生态

  • 产品的用户群体之间是否存在一定的关系?是否有利用其相互作用二次构成特定用户生态的可能性?

    使用i至诚的都是至诚全体在校师生,i至诚与微信端中的至诚教务助手实现了课表等一些功能的互通,这样就类似于构成用户生态。
    

产品规划

  • 如果你是项目经理,可以招聘6个人,并且有4个月的时间,你认为应该如何配置角色(开发,测试,美工等等) 才能在第16周如期发布软件的改进版本,并取得预想中的成绩。

    前端设计2人,架构设计1人,后端开发2人,软件测试1人
    
  • 请为你的团队设计16个周期每周的详细规划。

规划 周期
需求分析 1
需求分析与客户确认 2
功能原型设计 3
UML模型设计 4
前端模型设计 5
前端模型设计、架构设计 6
前端模型设计、架构设计 7
前端模型设计、后端代码开发 8
前端模型设计、后端代码开发 9
前端模型优化、后端代码开发、软件测试运行 10
前端模型优化、后端代码开发、软件测试运行 11
前端模型优化、后端代码开发、软件测试运行 12
前端模型优化、后端代码开发、软件测试运行 13
软件测试运行 14
软件上线拟运行 15
发布项目 16
posted @ 2022-04-08 14:00  嘻瓜沁  阅读(216)  评论(0编辑  收藏  举报