个人作业——软件产品案例分析

个人作业——软件产品案例分析

第一部分 调研,评测

评测:

第一次上手体验

第一眼看上去功能很全面,但是到点开来发现功能大部分没有实现,体验不太好。

缺陷Bug情况

  1. 课表查询
    bug描述:课表查询没有课表结果,点进去当前周都默认是第一周,没有按照我们的校历来,下拉功能能没有实现。
    1483342-20181209204357956-774460026.jpg

  2. 成绩查询
    bug描述:没有成绩显示,并且没有任何错误提示信息,无法选择2015-2016学年后的成绩,无最新学期更新。
    1483342-20181209204341359-322673237.jpg

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

其实功能还没有完全做完,没有做好充分的测试,因为急于发布所以有这些bug。

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

  1. 架构方面
  • 需要先弄清楚该微信公众号的整体结构和组件,通过思维导图做出直观的架构图,这样子功能就一目了然了
  • 要明白,软件之中唯一不变的就是变化,要根据不同的情况作出不同的当前情景下的最优选择
  • 保持设计的简单,考虑可维护,延伸性,事后优化
  1. 部署运维方面
  • 我觉得应该在整体完成并且检查之后再进行部署,这样会比较方便修改;
  • 运维一切行动听指挥,这样子才能够比较有效率,才不会乱糟糟;
  • 凡是要变更方案什么的必须经过审核,避免因为误操作而产生问题;
  • 定期做好数据库的检查;
  1. 微服务方面
  • 在微服务架构中,有很多可移动的组件,所以对服务的管理将变得更加复杂,因此要考虑使用均衡负载,这会帮助我们解决一些问题
  • 一个应用之中会有不同的服务,因此一个请求会跨多个不同的服务,因此有必要注意网络拥塞和延迟
  • 一般来说,每个微服务都有自己的状态存储,因此必须要注意数据的一致性

采访

介绍采访对象的背景和需求(他们有没有用过这个APP或类似的APP,除了现有的功能还有别的需求么)

采访对象为福州大学2016级计算机专业的学生,平常主要需求时查询成绩和课表。有用过用过福大易班和福大教务通。除了现有的功能,还需要一卡通充值功能

让采访对象使用微信福州大学企业号

1483342-20181210152754622-818363687.png

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

用户主要使用过程就是每个功能点进去感受一下。并没有解决,因为该产品的很多功能没实现,而且实用的比较少,因此没有解决问题。
数据量和准确度还感受不到,因为功能没实现,界面简洁,看过去较为美观,功能方面实用的功能比较少,用户体验不太好。

用户对产品有什么改进意见?

主要就是把现有的bug修复,完成功能,然后最好能添加之别的需求的功能。

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

不推荐,因为大部分比较实用的功能都没有实现

第二部分 分析

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

估计项目用时

该项目做到目前这个程度,大部分主要功能都未完善,团队做到这种程度上需要3周,其中前期需求分析阶段需1周。

功能逻辑图

1.个人模块
1483342-20181209204531843-756148919.png

重要度:95%
完成度:20%
出发点:实现最贴切学生的课表查询、成绩查询、个人日程记录&提醒、学生证附卡信息等功能
效果:个人日程部分大部分可以使用,但是在选择提醒之后就无法保存。其他三个功能基本无法使用。
2.通知、讲座、新闻模块
1483342-20181209204548847-408639030.png

重要度:70%
完成度:95%
出发点:让同学更方便的了解学校的各种新闻
效果:功能基本上都已经实现
3.其他功能模块(企业会话、福大黄页、福大邮箱、校园巴士、失物招领)
1483342-20181209204603480-625308450.png

重要度:80%
完成度:50%
出发点:方便同学在校内的生活
效果:黄页功能已全部实现,其余功能仍存在bug,邮箱在手机端完全无法登陆

优势、劣势、可以提高的一个重要部分

①优势:作为微信公众号,方便同学的使用,无需下载新的app
②劣势:在市面上同类产品有福大助手、福大易班、福大教务处。三款产品都已经事成熟的产品,功能基本都已实现。并且这三款产品的功能多于改公众号。不能退出,一次登录之后就和一个微信号绑定了,无法进行修改。
③可以提高的一个重要部分:产品测试
本产品存在的问题太多,开发人员在开发完成之后可能没有很好的、充分的测试。

针对不同维度打分

评分项分数评分理由
用户体验方面60一眼看功能很多,点开发现大部分功能未实现
UI界面美观度80界面较简洁,看起来还不错
核心功能50核心功能基本未实现

第三部分 建议和规划

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

  • 提高用户体验感,扬长避短,不要求功能多,但是功能完成度要高
  • 线上宣传模式,比如集赞送礼品。
  • 线下宣传,下宿舍扫楼,发传单,摆个帐篷,关注送礼品。和学校沟通,在各个年级群宣传。

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

o福大教务通:福大教务通已具备该公众号中大部分主要功能,除此之外还有考试查询等功能。
o福大易班:福大易班除了该公众号具备的功能以外还有宿舍服务等功能。
o福大助手:福大助手除了该公众号具备的功能以外还有大物实验预约、历年卷等功能。

你要设计什么样的功能?

学生:教室申请

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

因为其他功能在其他三款app中都已经较好的完成了。这个功能比较常用,但是相关的申请只能在教务处网站上申请。

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

微信端无需下载app,更加轻便。功能贴切学生、老师。

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

  • N需求:教师有时会碰上教室设备损坏等情况,因而需要进行临时的教室调整,打开教务处往往需要打开电脑,连网FZU,登陆教务处等繁琐步骤。对于学生,往往有临时的活动组织等,并且大一年学生的晚自习教室数据往往分散且无统一记录,对其他需要去教室自习的学生造成了困扰,因此需要一个具有统一记录的功能的工具。
  • A方法:在后台添加查询和占有接口,设置不同帐号的身份,对学生的身份也分为大一/非大一,通过计算入学时间自动进行更新。并且外接教务处系统,使得借用教室更加轻便化、合法化。
  • B好处:通过对公众号添加教室申请、教室更换,学生教师可以通过查询空教室、占有空教室,对不同身份的用户开放不同的功能,可以特别对大一年学生开放晚自习教室申请。避免功能冗余浪费。
  • C竞争:福大教务通也具有空教室查询功能,但是功能不够完善,往往查询到的空教室还是有老师上课,微信相对于APP可以更方便的更新数据,使用起来更为方便。
  • D推广:对已经加入的用户成员进行推送,鼓励使用此功能;并在学校进行宣传,通过扫楼、发传单的方法进行推广;发布宣传的公众号文章,转发抽奖等方式扩大影响力。

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

前期做好规划,提高用户体验感,扬长避短,不要求功能多,但是功能完成度要高

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

美工的工作主要是在开发前期,为了让人才不闲置,可以让美工同时兼任部分测试。从而充分的利用资源。1个产品经理、一个美工(兼部分测试),3个开发

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

第一周:用户调研
第二、三周:需求分析
第四、五周:美工页面设计、获取、阅读相关接口
第六至十周:具体编码、服务器部署、部分测试
第十一、十二周:集中测试
第十三至十五周:完善部分功能、界面美化、修改发现的bug
第十六周:发布版本

项目发布后,有没有考虑过项目该怎么部署才能满足需求。

应用服务器8核16G3
后端服务器16核32G3
关系型数据库:MySql 3个(读写分离2,备份1)
缓存数据库:Redis 2个(主备)
网站安全性:WAF、DDOS

转载于:https://www.cnblogs.com/fblogy/p/10093068.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/366340.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linux CentOS 6.5 使用自带jdk修改环境变量

来源:https://www.cnblogs.com/zhenxiqia/p/9049290.html Linux CentOS 6.5 使用自带jdk修改环境变量 首先声明,默认jdk指我们安装完CentOS后系统自带jdk,自己下载安装的jdk只需要下载,解压即可,之后步骤与此文一致 1.查看我们默认…

微信小程序下拉框

微信小程序组件里没有下拉框&#xff0c;正好要用到&#xff0c;记下来以后参考 wxml代码 <view classtop><view classtop-text> 选择接收班级</view><!-- 下拉框 --><view classtop-selected bindtapbindShowMsg><text>{{grade_name}}&l…

CSS 高度(css height)

DIV CSS height高度知识教程篇 DIV CSS高度简介这里的CSS高度是指通过CSS来控制设置对象的高度。使用CSS属性单词height。单位可以使用PX&#xff0c;em等常用使用PX&#xff08;像素&#xff09;为html单位。 height高度目录height高度语法高度用法html原始高度设置css高度hei…

第三代酷睿i3处理器_轻薄本CPU谁更强?英特尔21款低功耗处理器大排行!

点击上电脑爱好者关注我们对智能手机而言&#xff0c;其搭载的SoC是衡量性能强弱的唯一准绳&#xff0c;因为一颗SoC芯片内就集成了CPU(处理器)、GPU(显卡&#xff0c;包括集成的核显和独显)、ISP(影像处理器)和Modem(调制解调器)等模块&#xff0c;只要掌握了SoC的强弱关系&am…

python学习日记(匿名函数)

匿名函数 简介 匿名函数&#xff1a;为了解决那些功能很简单的需求而设计的一句话函数。 python 使用 lambda 来创建匿名函数。 所谓匿名&#xff0c;意即不再使用 def 语句这样标准的形式定义一个函数。 1 lambda 只是一个表达式&#xff0c;函数体比 def 简单很多。 2 lambda…

列表相关元素及其属性

HTML5保留了如下几个列表相关元素&#xff1a;无序列表<ul>、有序列表<ol>、自定义列表<dl> 1、<ul>&#xff1a;定义无序列表&#xff0c;可以指定id、style、class等属性&#xff0c;还可以指定onclick等事件属性。 2、<ol>&#xff1a;定义有…

DB 数据同步到数据仓库的架构与实践

背景 在数据仓库建模中&#xff0c;未经任何加工处理的原始业务层数据&#xff0c;我们称之为ODS&#xff08;Operational Data Store&#xff09;数据。在互联网企业中&#xff0c;常见的ODS数据有业务日志数据&#xff08;Log&#xff09;和业务DB数据&#xff08;DB&#xf…

java log.error_Logger.error打印错误异常的详细堆栈信息

一、问题场景使用Logger.error方法时只能打印出异常类型&#xff0c;无法打印出详细的堆栈信息&#xff0c;使得定位问题变得困难和不方便。二、先放出结论Logger类下有多个不同的error方法&#xff0c;根据传入参数的个数及类型的不同&#xff0c;自动选择不同的重载方法。当e…

笔记本电脑怎么清理灰尘_手机声音越用越小怎么办?一段黑科技音波就能清理扬声器灰尘...

大家好&#xff0c;欢迎收看科技狐&#xff0c;我是小狐。我们都知道&#xff0c;随着手机的使用时间越来越长&#xff0c;手机扬声器里面会积赞一些灰尘。因此手机的声音就会变得越来越小。有时候连电话铃声都听不清楚&#xff0c;说实话我就是这个样子&#xff0c;为此我困扰…

Java方法中的参数太多,第8部分:工具

在我的系列文章的前七篇文章中&#xff0c;有关处理Java方法中期望的参数过多的内容集中在减少方法或构造函数期望的参数数量的替代方法上。 在本系列的第八篇文章中&#xff0c;我将介绍一些工具&#xff0c;这些工具可帮助您确定可能存在过多参数的情况&#xff0c;并在出现这…

predict函数 R_学习|R语言做机器学习的常用函数总结

预测函数&#xff1a;predict() type"prob"判别该量度的昆虫归类为A、B和C的概率&#xff1b;type"response"&#xff1a;判别该量度的昆虫的类别&#xff1b;预测分类的概率的函数predict(…, type)参数type&#xff1a;R语音里面不同模型&#xff0c;参数…

微信小程序:动画(Animation)

简单总结一下微信动画的实现及执行步骤。 一、实现方式 官方文档是这样说的&#xff1a;①创建一个动画实例 animation。②调用实例的方法来描述动画。③最后通过动画实例的 export 方法导出动画数据传递给组件的 animation 属性。 因为小程序是数据驱动的&#xff0c;给这句话…

SSM+solr 通过商品搜索学习solr的简单使用

学习了一下https://github.com/TyCoding/ssm-redis-solr这个github上的solr搜索功能&#xff0c;现在来记录一下。 我的理解就是solr有点类似于数据库&#xff0c;但它是有索引的数据库&#xff0c;按很多字段建立索引&#xff0c;可能是b树或者散列索引&#xff0c;然后就能够…

可以使用中文作为变量名_次氯酸可以作为伤口消毒使用吗?

次氯酸可以作为伤口消毒使用吗&#xff1f;次氯酸在经过2020年的洗礼&#xff0c;已然成为常态化&#xff0c;它对于人体是否有害&#xff0c;也是人们关注的焦点。对于那些还不太了解次氯酸的群体做一下简短科普。什么是次氯酸&#xff1f;次氯酸&#xff08;HCIO&#xff09;…

tomcat启动java项目_Java web项目启动Tomcat报错解决方案

点击运行项目时显示 A Java Exception has occurred.Starting Tomcat v9.0 Server at localhost has oncountered a problem.Server Tomcat v9.0 Server at localhost failed tostart.并显示以下两个弹框同时控制台报错org.apache.catalina.startup.Bootstraporg.apache.catali…

matlab 从 excel读取 日期_MATLAB批量修改文件名和选择性复制/剪切文件

今天解决的问题&#xff1a;1、如何利用MATLAB批量修改文件名&#xff1f;(前面写过一次bat命令法&#xff0c;这个应该也算一次改进&#xff0c;程序的初衷是想将Smartsolo导出的文件名批量修改为以炮点桩号为文件名)2、如何利用MATLAB选择性批量复制/剪切文件&#xff1f;(程…

CODE[VS] 1860 最大数 1998年NOIP全国联赛提高组

题目描述 Description设有n个正整数&#xff08;n≤20&#xff09;&#xff0c;将它们联接成一排&#xff0c;组成一个最大的多位整数。 输入描述 Input Description第一行一个正整数n。 第二行n个正整数&#xff0c;空格隔开。 输出描述 Output Description连接成的多位数。…

您基于JEE的Web项目的结构是什么?

在本文中&#xff0c;我将主要与JSF讨论基于Web的项目的各种组织结构。 开始新项目时&#xff0c;首先想到的是如何组织Java包&#xff1f; 想象一下&#xff0c;您开发了一个基于Web的用户和组管理系统。 很长时间以来&#xff0c;我使用以下Java包结构来将Bean类与模型类分开…

自定义scoll样式

使用伪类自定义scroll样式 效果&#xff1a; 代码&#xff1a; <!DOCTYPE html> <html><head><meta charset"utf-8" /><meta name"viewport" content"widthdevice-width, initial-scale1.0,maximum-scale1.0,minimum1.0,…

关于常用的编码工具如何引入jar包

myeclipse和eclipse&#xff08;差不多&#xff09;引入jar包&#xff1a; 普通项目&#xff1a; 1.对准你的项目创建一个文件夹名字尽量命名成lib&#xff08;注意要和src平级&#xff0c;不要在src下创建文件夹&#xff09;。 2.将下载好的依赖放到lib文件夹下&#xff0c; 3…