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

    这个作业属于哪个课程 w班
    这个作业要求在哪里 作业要求
    这个作业的目标 回顾报考软件工程的初心,当初怎么看待软件工程和自己是如何学习的,并立下学习目标建立学习路线
    作业正文 ....
    其他参考文献 ...

    一.第一部分 评测

    1.使用记录

    a.安卓客户端

    JS01jx.jpg

    JS08u6.jpg

    b.IOS客户端

    JS0zKx.png

    JS0vx1.png

    c.Web端

    JSBwoF.png

    JSBddU.png

    2.具体项目设想

    a.主要功能

      全匿名聊天系统。用户信息内不设置性别。可以进行匹配聊天,也可以在聊天室里面聊天。聊天软件不具有语音视频功能。对进行性别暗示和询问性别的进行封号处理。

    b.面向对象

      希望交友但不想拘泥于性别,希望能够纯粹交友的用户。

    3.采访

    a.对象

      某个不愿意透露姓名的190斤肥宅

    b.证据

    JCLQeI.jpg

    JCLlwt.jpg

    c.用户体验

      该用户主要使用了聊天室和单人聊天的功能。进行了基础的文字发送,传文件,图片等。他觉得这个软件已经能够很好的满足基础的信息传递的功能,但是界面的美观程度不是很好。

    d.用户的改进意见

      对于简单的聊天已经能够很好的满足基本的功能了,但是界面的设计还有些简陋,界面的美化程度不高,一些常用功能比如文本预览,夜间模式都不具有。

    e.用户对我产品的意见

      对匿名并且隐藏性别的聊天方式表示支持,但是希望增加一个可以互相添加好友的功能(依然匿名)。

    d.结论

      推荐

    二.使用发现的BUG

    1.在WEB端,如果重复登录同一账号,会导致这个设备上WEB端的其他账号也被踢出。

    JSswo8.png

    JSsBFS.png

    JSsrWQ.png

      这个发生的原因可能是因为这个功能是用一个账号(QQ)进行管理,当发现产生重复登录的情况后误认为是最高账号发生错误而关闭其他的账号。

    2.安卓客户端和IOS客户端可以重复登录。从账号使用的安全角度我认为这是具有一定安全隐患的。

    JSrTqP.jpg

    JSrba8.png

      因为这是一个小型的demo程序,可能没有考虑到两种不同系统的手机的使用安全。只校验了同一类型平台的重复登录,而没有校验多平台的重复登录问题。

    3.在手机端添加好友之后,WEB端不能看到好友

    JpyIoV.jpg

    Jpy6JS.png

      不同平台的数据库可能逻辑结构是相同的,但是存储在不同的地方,而且没有进行数据的同步处理,导致数据没有互通。

    第二部分.分析

    1.使用过后

      在使用过后,可以发现这个SDK的完善程度十分的高。如果以一个6人的大学生团体开发到这么多客户端的情况,我认为大概需要六个月的时间。有IOS,macOS,Windows,Android,WEB的不同客户端,很难每个同学都会一样或多样,所以需要进行相应的学习。并且一个程序的开发需要进行相应的测试阶段,一个好的程序通常是在编写之前就有相应的测试代码的。所以我认为时间需要长一些。

    2.比较

      通过多次使用这个软件,觉得这个软件稳定性还是很高的,毕竟是大公司的产品,而且在轻型使用阶段是免费的,对于仅仅用来小型开发的人很友好,但是在免费这种层次上必然会有一些不是那么美好的东西。所以它和网易云信、融云等还是会有一些差别。例如它没有实时音视频服务;漫游消息存储时间较短;群聊没有管理员,没有办法进行很好的管理;没有一些小工具提高使用流畅程度,例如下载文本之后能直接点击预览。

    3.一些小建议

      我认为在现在的通信产品在实时音视频方面是不能缺少的,这个已经成为了现代通信的一种重要手段,可能这个功能所需要的网络资源较多,但是不能没有,可以添加上去,使用的时候进行相应的付费。

    第三部分.规划

    1.同类产品分析

    a.常用通信软件

      对于常用的通信软件微信,QQ。这款软件具有着随机匹配聊天的机制,能够吸引希望认识陌生人的用户。

    b.常用交友软件

      和Soul等相比较,这款软件无法知道对方的性别,你无法抱着某些心态进行使用,所以能够吸引一些单纯希望聊天谈心的用户。

    2.NABCD

    N.需求

      市场上面的交友软件非常多,但除了微信,QQ这种常用软件之外,大多数聊天软件都是位于男女关系的角度。市场中也就缺少了不位于男女关系角度的交友软件。能吸引一部分用户只为了简单交友谈心的需求。

    A.做法

      用户全为匿名制。有一个共同的朋友圈,能创建带有特定标签的聊天室,能随机匹配人聊天,当两人三天不进行联系的情况下自动删除好友。

    B.好处

      能更好的了解他人,结交朋友,别有用心的人会较少。

    C.竞争

      Soul,陌陌等。

    D.推广

      开发完成进行小型试推广,推广成功反应良好再在年轻人比例居多的大型论坛网站之上进行宣传。

    3.团队配置

    专职后端:1人
    美工:2人
    专职测试:1人
    后端兼测试:1人
    

      我认为在现有SDK的基础之上就能够开发该软件后台的大部分功能了。所以一个专职后台进行朋友圈形式的新功能开发及大部分后台的架构,另外一个则进行小范围的帮助,完成简单功能。我觉得这种聊天软件十分需要具有较为赏心悦目的界面,所以需要两个人进行美工,使得界面优美,并且具有良好的人机交互。在测试之中,我认为需要一个人在开发过程中就进行一定的测试,这样可以避免产生不必要的错误,也可以一定程度上的提高开发速度,而另一个人主要负责拿到整个项目之后对项目进行整体的使用。因为聊天软件对稳定性的要求很高,没有良好的稳定性会让用户的使用体验受到极大的影响。

    4.开发计划安排

    第一周:进行需求分析
    第二周:完成项目原型设计
    第三周:后台确定软件开发所使用的技术框架和使用的数据库。订立开发规范,编写数据库使用说明。前端确定使用的框架技术。
    第四周-第十二周:进行软件开发。(存在版本更新)
    第十三周-第十六周:软件测试及修复升级

    5.部署

      刚刚开始进行了很简单的部署设想
    JAeFbj.png
      这样的部署能够满足小规模的应用,Redis既能当缓存,又能当队列服务,并发性能高,可以用在初期项目的使用。

      但当使用人数的上升,简单的部署就会在高并发的情况下产生性能问题。所以如果项目用户增加的情况下会采用下面一种分布式的部署方式。
    JAeAVs.png

    以下是部署配置:
    应用服务器集群:4核8G*3
    关系型数据库:MYSQL数量:3(读写分离*2,备份*1)
    缓存数据库:Redis数量:1
    安全性:ARP(保证通讯数据安全)、DDOS(分布式拒绝服务攻击)

  • 相关阅读:
    工具 Dotnet IL Editor 推荐
    VC6.0开发OCX按钮控件
    变量共享分析(Thread)
    一个月掌握VC++2010?
    细说Angular ngclass
    2013 北京 QCon热点分享
    RadioButtonList
    NSubstitute完全手册1
    使用MEF实用IOC(依赖倒置)
    发布订阅模式 之 同步订阅、异步订阅和离线订阅
  • 原文地址:https://www.cnblogs.com/B-rabbit/p/12714690.html
Copyright © 2011-2022 走看看