软件工程第三周作业
第一部分:调研, 评测
1.下载并使用,描述最简单直观的个人第一次上手体验。
首先登录成功后,就发现可以签到,下面还有朋友圈,新闻,消息,我的个人设置。
朋友圈的话就很丰富了,卖书的,发鸡汤的,还有一堆卖七七八八东西的;新闻主要都是与学校相关的消息与通知等,但是该知道的消息还是不知道;消息的话就主要是教务等的消息,可以和同学私聊;个人设置的话就是一些自己的信息的设置,换头像,查课表什么的都可以。
总而言之,第一次上手体验,感觉反应有点慢,有时还会卡住,主要是功能面向学生群体,还是很适合我们使用,会方便许多,但使用率和实用性不高。
2.按照《构建之法》13.1节描述的bug定义,找出几个功能性的比较严重的bug,至少2个。用专业的语言描述(每个bug不少于40字),如有必要,可以配图。
(1)第一个Bug表现为“教务”的聊天界面上没有输入框,以前是有可以输入编号用以查询不同的信息,如今却无法输入,而其中播报的信息中也有语意不明的地方,如图的网上办事大厅并不知道应该到哪里去寻找以及设置。
(2)第二个Bug是课程表里的设置里的有一个换肤的功能,但点击之后并没有反应,初步判定为在与本地图库连接的时候发生了错误,无法进行连接。
(3)第三个Bug表现为刚进入应用中心内的新闻中心等一系列图标会不停闪烁。进行黑箱测试后,初步判定为软件加载图标时使用循环加载,新闻中心被多次加载。
3.相信每个同学的朋友中一定有人需要用这样的软件,选择一个朋友(用户)进行采访,并加以记载。
(1)采访对象的背景和需求
该对象是集美大学大三学生,已经使用该软件接近3年,平日使用该软件进行课表查询,期末成绩查询,网费充值等。
(2)让采访对象使用10 – 30 分钟该APP的功能
(3)用户使用该软件的过程
简单描述如下:首先是每日签到和送花,并为当天生日的同学送上生日祝福。其次,还会查询当天的课表,期末查询成绩。
(4)采访过程
问:在你使用过集大通之后,你的问题解决了吗?
答:解决了呀,我一般只是用来查课表,查期末成绩,充网费而已。要求并不高。
问:你觉得集大通在界面,功能,准确度上有什么优缺点呢?
答:界面我说不出来有什么好不好的地方,至于功能和准确度,缺点的话,就是在课表加载的时间上有点慢,期末的成绩播报也没有及时,还有第二天的课程安排也没有很及时播报。优点的话,它可以不用内网就可以查成绩,还可以充网费,现在还可以查询充值校园卡等,就这些都挺不错的。
问:用户体验方面有问题么?
答:就是加载很慢,偶尔还会卡住,以及消息播报不及时。
问:您对集大通有什么改进的意见?
答:课程表加载可以快一点,消息不要经常断线,第二天的课程安排和期末成绩的播报能及时点。
4.请选择一个结论:经过这么多工作,你一定有充分的理由给这个软件下一个评价:
答:一般,因为一般来说我们就是用来看课表,但只要有截图的话,看图片就好了,没必要每次还要登陆进去那么麻烦。也就只有期末不在学校的时候查成绩会很方便。
第二部分:分析
1.使用此软件的所有功能,估计这个项目做到这个程度大约需要多少时间(团队人数6人左右,计算机大学毕业生,并有专业UI支持)。
答:从大一到现在,也是见证了它三年的成长到现在功能已经逐渐完善了。我觉得像这样的项目的话,初期开发考虑肯定没有那么周全,基本功能实现的话,大概会需要四个月左右。而后才会日趋完善,在逐步找到功能缺陷,也需要一定的时间,只看开发时间的话,总的来说也还需要四个月左右。
2.不要写成一个罗列功能的流水单子!而是要集中火力在一个场景,这个场景中典型用户有什么需求,软件如何解决了需求(或者没解决),UX有什么细节是好的,差的,请结合书上UX的内容来分析。
答:我认为,在某个特定的场景中,典型用户一般应该被设置为与之相关的用户群体,将他的需求典型化,比如一个电子商务网站,专用于交易石头艺术品一类的环境,这个时候系统就要将用户细化分为会用电脑的,不会用电脑等,甚至更细化。而软件在被使用的过程中,就能够获得用户的使用信息以及使用频率,或者可以开设一个通道,用户反馈,通过反馈,能获得很多有用的信息,某功能常被使用,那就要细细完善,某些功能有需求但未被开发,就可以考虑一下功能开发。
UX之中的同理心我认为是极好的,从用户的角度出发去思考,去设计,会让用户更有亲近感,更愿意去使用这个软件。
但是也有不好的地方,比如说,用户需要帮助,你提供的帮助是否符合用户所需要的呢?帮助过于简单就无法解决用户的需求,帮助过于复杂,他的使用率也很低,并不能提供帮助。这种时候就需要去细化用户需求,工作量就会很大,而且定位也并不一定能准确。
3.你在第一部分发现的bug,为何软件团队不能在发布前修复?他们是不知道,还是有意不修复?你觉得是什么原因?从下面的可能性中选取几个:对用户需求掌握不好;具体的设计质量不高;开发人员粗心大意;测试把关不严,敷衍了事,没有注意在特殊的配置或环境下测试;其他
答:(1)第一个Bug我认为应该是测试把关不严,敷衍了事,没有注意在特殊的配置或环境下测试。这个功能在有的手机环境上是可以使用的,有的不行。
(2)第二个Bug我认为应该是具体的设计质量不高。这一现象也是一开始就有了,也见过很多次了,一直都没得到关注,可能是觉得并不是什么大问题,但是小问题总是越积越多的,最后就成了大问题了。
(3)第三个Bug我认为应该是开发人员粗心大意。在一开始的时候可能还是可以使用的,只是后来随着使用的次数加多,后台的bug也越来越多,没有及时修复就导致了现在的后果。
4.团队在哪一个层次还有问题?可以把自己想问软件团队的问题都列出来,也许就能得到团队的亲自解答了!
答:主要就是后台这边,消息的播报延迟了,没有及时播报,这个的设置的话,其实只要重新设置时间就好了吧?主要是随着使用时间的加长,时间也会有所延迟,导致时间出现偏移。我的猜想是这样,不知道实际上是怎么样。
5.从各方面的问题,推理出这个软件团队在软件工程方面可以提高的一个重要方面 (具体建议)。
答:我觉得还是同理心吧,平时可以做个面向全校集大通的使用者的调查问卷,统计一下大家对于集大通还有什么未开发的使用需求,衡量一下利弊可以考虑是否要开发。还有就是对有能力的同学开放一个架构平台,有什么自己想加的功能可以自己去设计,去实现。当然了,这些都需要得到大力的宣传,鼓励并支持这种行动。
第三部分:建议和规划
1.这个软件/网站/服务有很多可以提高的部分,如果你是项目经理,如何提高从而在竞争中胜出?
答:详情参考第二部分的第五点,以一个开放的平台集思广益,将会得到更多意想不到的收获。平台就是市场,市场就是一个项目赖以生存的东西,要想得到提高甚至胜出,市场是必不可缺的,当然了,市场和成本也需要达到一个平衡状态,不能顾此失彼。
2.目前市场上有什么样的产品了?
答:每个高校都会有各自的“校园通”,各式各样,百花齐放,比如,大连海事大学的“i海大”;厦门大学的“i厦大”等等。但是针对人群也只是校内人员,所以不存在什么太大的竞争压力。
3.作为新的项目经理,这个产品的核心用户群是什么样的人,典型用户长什么样?学历,年龄,专业,爱好,收入,表面需求,潜在需求都是什么?
答:核心用户群体是校内人员,典型用户包括老师,学生。
用户 | 学历 | 年龄 | 专业 | 爱好 | 收入 | 表面需求 | 潜在需求 |
---|---|---|---|---|---|---|---|
老师 | 硕士,博士 | 30以上 | 不一定 | 不一定 | 10000左右 | 方便日常办公 | 更便利的办公操作 |
学生 | 本科 | 18~25岁 | 不一定 | 不一定 | 2000左右 | 方便日常娱乐学习 | 更便利的娱乐学习 |
4.功能:你要设计什么样的功能?为何要做这个功能,而不是其他功能?为什么用户会用你的产品/功能? 你的创新在哪里? 可以用 NABCD 分析。
答:我们初期打算制作一个简单一点的“周打卡”微信小程序,主要功能就是可以实现在打卡话题下分享个人打卡动态,也相当于一个交流分享的平台。
我们认为在当今社会,网络社交是相当火热的,而正因为这种火热,我们亲近网络更多与大自然,或者说我们的现实生活,而我们的小程序就是从这一点出发,每周发布多个话题打卡,比如说每日早起打卡,时间为期一周,然后如果成功完成任务了就可以领取小奖励。
像这种小程序也是现今很受欢迎的东西,因为现在也有很多人意识到了自律的重要性,但却没有这种自觉性去做到,有了这样的小程序不仅方便,还使用,符合用户需求,迎合了用户的喜好。
就NABCD的分析来说,需求和好处前面都有提到,做法的话,我们都也是有做过小项目的经验了,遇到难题的话,可以请教老师,也可以自己去查资料,或者和队员一起讨论。竞争,现在这种打卡小程序还比较少,但是这种打卡的平台还是很多的,竞争可以说是很大了,但是我们可以优化界面美工,简化操作步骤,让用户体验更好,再者就是发布的打卡任务更有趣,更符合用户需求,更有吸引力。交付,就交付来说我们可以先小范围推广,从宿舍到班级,到学院,逐步实现使用范围扩大
5.如果你有钱可以招聘 6 个人, 有 4 个月的时间, 你作为项目经理, 应该如何配置角色 (开发,测试,美工等等)?
答:我觉得可以先安排三个人进行开发,因为开发任务会比较重,需要的人会比较多。三个人美工兼测试,测试、美工一类比较简单一些,所以人会少一点。像这样子将工作分摊一下会比较好,后期测试后还需要开发人员对其进行改进。
6.描述你的团队在16周期间每周都要做什么,才能在第16周如期发布软件的改进版本,并取得预想中的成绩。
答:首先肯定是进行项目讨论,讨论出来一个大纲,然后细化细节。然后后台开发的就沿着大纲进行开发,同时前端的就可以着手做界面了。期间必不可少的在周末的时候就做个总结,总结一周的工作有没有达到预期,然后彼此之间有没存在什么疑问,或者交流一下意见什么的,促进接下来的开发能正常进行。之后就是测试,我有两个想法,一是可以让开发人员相互错开对对方的代码进行测试;二是可以大家一起对此进行测试,有的人准备测试数据,有的记录,然后开发人员进行改进。