zoukankan      html  css  js  c++  java
  • 个人作业——软件测评

    这个作业属于哪个课程 https://edu.cnblogs.com/campus/fzu/2020SpringW
    这个作业要求在哪里 https://edu.cnblogs.com/campus/fzu/2020SpringW/homework/10625
    这个作业的目标 分析腾讯即时通信IM,结合构建之法,写一篇随笔
    作业正文 https://www.cnblogs.com/puzb/p/12722668.html
    其他参考文献 《构建之法》

    第一部分.调研,评测

    一.DEMO试用

    1.web端


    2.小程序


    3.ios端


    二.BUG

    1.web.小程序.ios端用户点击退出登陆后,当前用户的账号密码还会保存在登陆框中

    产品组没有发现bug的原因:只是demo没有很严谨的去做,或是session里的信息没有设置正确

    2.web端用户登陆后,点击刷新页面,没有显示当前页面,而是跳转到了登陆页面,且账号密码仍然保存在登陆框中

    产品组没有发现bug的原因:session里没有保存当前用户的信息,或者过滤器拦截器的功能有错误

    3.web端,没有新消息时,即使已经读了最新消息,聊天对话框消息提醒小红点也一直存在。

    产品组没有发现bug的原因:当点击某个聊天框时,未读消息计数器没有清零

    三.SDK开发

    1.构思你根据该SDK想要开发的产品,包括产品主要功能、产品面向的用户

    我打算开发一个基于该SDK的多人实时通讯聊天软件,类似telegram

    产品功能
    • 用户可一对一或通过群组的方式进行实时的消息共享,文本,视频,图片等格式均可
    • 本产品用手机号注册登陆,因此可以拨打电话给对方
    • 添加好友,删除好友,选择感兴趣的群组加入,或者退出群组等基本的操作
    • 电话通讯模块分为所有电话和未接电话
    产品面向的用户

    面向年轻人或者说在某方面或多个方面有兴趣爱好且热爱接触新鲜事务的人群。本产品的竞品为微信,qq等主流的聊天通讯软件,而我们的优势就是手机号登陆,使用起来功能更加简洁专一。相比微信,qq来说更加专注于新鲜东西的分享,相同兴趣爱好的交流。所以商务人群或需要比较严肃正式交流沟通场合的人群并不是我们产品一开始的目标用户。

    2.你的身边寻找你要开发的产品的潜在用户,记载你对这位用户的采访。使用下面的采访提要:
    • 介绍采访对象的背景和需求

      采访的是兴趣广泛,热衷于社团的同学甲。据他所说,学校里的社团部门等交流多限于微信群和qq群上,由于学习等各个方面的因素,群里的聊天交流不是很频繁,想要和外边的人交流又苦于微信群和qq群的验证。

      急需一个高效的可以交流兴趣的平台

    • 让采访对象使用10-30分钟体验腾讯即时通信的demo

    • 描述用户使用这个demo的过程, 用户的问题解决了么?

      功能上大体满足了需求,在即时通讯分享信息方面比较满意

    • 软件在数据量/界面/功能/准确度上各有什么优缺点?用户体验方面有问题么?

      发送图片视频比微信qq方便,自由,没有大小限制。也遇到了上文说到的几个bug

    • 用户对腾讯即时通信的功能有什么改进意见?

      通讯方面的功能较为满意

    • 用户对你想开发的产品有哪些意见?

      1.功能最好专注于分享新鲜事和交流沟通上

      2.试用起来方便简洁

      3.用户隐私方面要保护

    • 结论:经过这么多工作,你一定有充分的理由给腾讯即时通信下一个评价,请选择一个结论

      非常推荐

    第二部分.分析

    一.估计这个SDK做到这个程度大约需要多少时间?

    个人认为需要5至6个月,项目成员为6人左右的计算机大学毕业生,根据我自身的经验,学校教的知识完全不足以开发出这样的SDK,所以6个月的时间有相当一部分是在学习新技术和犯错debug。当然也可能是本人水平有限见识短浅,如果这6人水平更高,应该需要3个月左右。

    二.分析这个软件目前的优劣

    1.优势

    显然最大的优势就是背后是腾讯大爹,显然这几年的经历经验,在可预见的未来,想要和腾讯在社交通讯娱乐方面分庭抗礼是不太现实的,各方面的优势已经非常明显,就不再赘述。其次的话,这个SDK本身的质量也有目共睹,从界面和人机交互来说,还是比较友好的,也没有很多花里胡哨的东西,和qq 微信类似把,没得挑。

    2.劣势

    硬要说劣势,就是有几个bug,哈哈哈。。。,

    三.团队在软件工程方面可以提高的一个重要部分

    1.个人能力方面,我认为现在的团队成员应该做到尖而精,每个人的能力可以不用很全面,但应该在某个方面有自己的特长和优势,这样团队配合起来效率和进展就会比较可观。

    2.产品方面,重视一些细节上的问题,上文提到的bug,不算是重大的功能无法实现的bug,但是也挺闹心的

    第三部分.建议和规划

    一.同类产品分析

    本产品的同类产品是微信,qq,陌陌等社交软件。显然,单纯从社交以及其拓展出的人力资源,相关的互联网金融方面入手去挑战这些产品是不现实的。微信有其骄傲的用户数和银行卡绑定数,qq也有其作为腾讯娱乐产品登陆入口的优势,陌陌等近几年新兴的产品也依托网红效应等拥有不错的市占率。通过分析,大而广的切入点早已被大公司抢占所剩无几,所以,要我来选择的话,切入点选择一些较小众较有特色又符合最近潮流的功能,是最为合适的。

    二.NABCD

    1.N(需求)

    虽然市面上的社交软件已经很多,但许多功能复杂导致真正只需要交流沟通分享的一些群体的需求得不到满足

    2.A(做法)

    下载并使用腾讯IMSDK,开发即时通讯软件,运用软件工程和相关技术完善产品

    3.B(好处)

    给用户更好更便捷的分享 交流 沟通平台,去除了市面上社交软件集所有功能于一体的复杂。专注于社交方面。

    4.C(竞争)

    参考本部分 一 中的同类产品分析

    5.D(推广)

    通过内部的测试后,在学校社团协会部门中进行推广,若反应良好,可推广到外校,社会上。

    三.如何领导团队

    首先在项目管理平台上进行项目的管理,任务的分配及进度的追踪等,前提是充分了解了每个成员在技术上的优缺点。定期在线下开会,每个成员汇报相关的进展和遇到的困难或者是新的一些想法。

    四.人员安排

    • 前后端业务开发:3人
    • UI设计 原型设计 测试 :2人

    五.16周开发计划

    第一周:需求分析,学习开发技术相关内容。

    第二周:原型设计。

    第三周:系统设计。

    第四周:数据库设计。

    第五周:接口设计,完善前面的工作。

    第六周:根据相关进度布置开发任务。

    第七周:开发。

    第八周:开发。

    第九周:开发。

    第十周:开发。

    第十一周:代码复审,测试完善。

    第十二周:进行较细致的内测。

    第十三周:公测,根据反馈进行调整。

    第十四周:公测,根据反馈进行调整。

    第十四周:准备向市场投放。

    第十五周:推广。

    第十六周:发布软件。

    六.部署

    • 应用服务器:16核32G 2台
    • 后端服务器:32核64G 3台
    • 关系型数据库:MySql 3个(读写分离2,备份1)
    • 缓存数据库:Redis 2个(主备)
    • 网站安全:部署WAF,防DDOS攻击的防火墙等设备
  • 相关阅读:
    spring 04-Spring框架依赖注入基本使用
    spring 03-Spring开发框架之控制反转
    spring 02-Maven搭建Spring开发环境
    spring 01-Spring开发框架简介
    JVM堆内存、方法区和栈内存的关系
    jvm 07-java引用类型
    jvm 06-G1收集器
    jvm 05-JVM垃圾收集策略
    jvm 04-JVM堆内存划分
    CSS书写顺序
  • 原文地址:https://www.cnblogs.com/puzb/p/12722668.html
Copyright © 2011-2022 走看看