BUAAMOOC项目终审报告
工作总结
我们是歪果仁带你灰
开发团队。我们开发的项目是北航学堂(MOOC)的android客户端:BUAAMOOC。
目前我们完成了主要功能,包括UI设计,视频播放,视频下载,学习进度,个人信息等功能,未完成功能是讨论区设计。
团队成员介绍
个人博客列表:
史烨轩(QC)、闫昊(PM)、唐彬(CODE)、余帆(BLOG)、金哉仁(UI)、益西多吉(TEST)
项目成果展示
我们的项目目前实现的功能有:用户登录、注销,自动登录,查看所有课程、我的课程,查看课程介绍,选课/退课,查看课程视频目录、在线观看教学视频,视频下载,课程学习进度记录。
未完成功能:讨论区设计。
Beta版本测试报告:http://www.cnblogs.com/wgrdnh/p/5106199.html
Beta版本发布说明:http://www.cnblogs.com/wgrdnh/p/5107900.html
APP LOGO效果:
通过友盟统计我们的app目前共有109个用户
成果对比
上届成果:
登陆界面:
课程列表:
课程简介:
课程目录查看:
视频观看:
我们的成果:
登录页面及课程列表:
播放器效果:
学习进度记录:
通过记录视频的播放进度,反馈给用户本章节的进度,方便用户掌握自己的学习情况。
个人信息管理:
可以更新密码等部分信息,由于服务器功能限制,暂时不支持更换头像等操作。
视频下载及本地播放
项目需求分析
我们的项目面向的主要人群是使用北航学堂学习的同学。目前14级计算机学院的计算机组成原理课程就在使用北航学堂。我们的项目在完成之后将会使学弟学妹的课程学习变得更加方便。
预期用户群体
能够连接到北航校内网络,愿意学习北航在线课程的人。以北航校内学生为主。
典型用户1
名字 | 小明 |
---|---|
性别 | 男 |
年龄 | 20岁 |
职业 | 北航本科生 |
知识层次和能力 | 大学,能熟练地使用互联网,智能手机 |
生活情况 | 一名宅,几乎不出寝室 |
动机,目的,困难 | 在北航学堂上选修了一些课程,希望在躺在床上的时候也能方便的观看北航学堂的视频 |
典型用户2
名字 | 小刚 |
---|---|
性别 | 男 |
年龄 | 26岁 |
职业 | 北航唯实大厦某公司员工 |
知识层次和能力 | 高中,平时爱玩手机游戏,居住在公司附近租的房子中,住房内没有电脑 |
生活情况 | 工作任务较重 |
动机,目的,困难 | 希望在工作之余通过学习北航学堂的课程来提高自己,希望可以通过手机方便的学习 |
目前我们的项目对于小明同学的需求已经完全能够满足。对于小刚同志的需求目前还存在问题,因为APP的使用基础环境是Buaa-wifi(目前服务器接口来自外网,所以外网会导致APP崩溃)。
参考:功能规格说明书
其他问题
事先定义的软件下载量达到了么?为什么没有达到?
答:没有。第二阶段发布失败。详情查看发布报告。
团队的成员如何分工协作的?有什么经验教训?
答:CODE:唐彬,史烨轩,闫昊
BLOG:余帆
UI:金哉仁
TEST:益西多吉
团队如何平衡 时间/质量/资源 争取如期完成任务的?
答:每个人在第二阶段正式开始工作之前都写好自己的工作分析,关于某项任务预计多少时间。中间遇到服务器崩溃问题,并且临近截止时间,于是在服务器好了之后加快开发速度,在元旦放假时完成开发任务。
在产品之外,团队代码的软件工程质量如何?如何用数据来证明?
1.项目的最终代码在哪里?
答:github;
2.测试用例数目,代码覆盖率数目。
答:12
3.运行测试用例得到代码覆盖率的视频录像,(需要现场看到。没有诸如 “我的电脑没有装测试环境”,“文件不全”等等借口)。
4.代码规范和文档在哪里?
答:代码规范及文档;
6.有些项目是在原来的基础上改进的,那么我们团队的软件工程项目质量有什么样的提高?
答:我们的项目基本上是重写的。相对于上个阶段我们减少了许多异常崩溃的情况。
7.原来的项目有些代码都找不到,文档也没有,或者没有最近的代码,你们的项目是如何更好解决这个问题的?明年的同学继续开发这个项目,会不会出现类似的抱怨?如果一个新学生在一台新机器上想编译并运行你的项目, 请问能顺利完成么?有什么样的文档能指导新学生?
答:我们在最开始的开发时确实因为原来的项目文档不完善找不到很多信息,而且上一个版本的整体功能我们并不是很喜欢,于是重写了项目工程。
如果继续开发这个项目,我们的代码根据不同的功能放在一起,所以很好查找,相关函数也写了注释。
环境是Android studio+API22,从github拷贝代码后就可以直接编译运行。
8.对于项目的目标用户是一般学生的项目, 你们如何找到学生做需求分析?他们给你什么样的反馈?
答:我们将运行apk发送给学弟学妹,让他们帮忙使用测试。他们表示mooc上的课程太少了不能满足他们的学习需求,希望有数分。
9.所有的项目都会收集到用户的数据,请问你们对这类数据做了什么样的分析,这些分析如何验证或推翻了原来的假设? 这些数据如何帮助项目改进软件工程的质量?
答:由于这个软件使用的是学校的服务器,我们并不能获取用户数据,所以也就没有分析了。
实际进展
贡献比分
名字 |
角色 |
具体的, 可衡量的, 可验证的贡献 |
团队贡献分 |
闫昊 |
PM |
800行代码,分配任务,监督完成进度 |
56 |
唐彬 |
CODE |
700行代码 |
55 |
史烨轩 |
CODE&TEST |
测试、负责视频下载的实现 |
54 |
余帆 |
BLOG |
博客攥写 |
53 |
金哉仁 |
UI |
设计UI、测试 |
52 |
益西多吉 |
TEST |
测试 |
30 |
特色功能
视频播放、学习进度记录。
BUG查找
在网络不稳定的情况下会崩溃(和服务器布置在内网有关)。
M1-M2对比
总结
软件工程是一门很能够锻炼的课,尤其是跟前大班的同学对比之下,整个团队在这学期学会了团队合作的重要性以及工程进展,同时更关键的是也学习到了安卓开发的知识。
建议:因为这学期各种大作业压力很大,所以更希望能把这门课安排在一个压力不大的学期。
BUAAMOOC项目终审报告的更多相关文章
- hots团队项目终审报告
一.团队成员: 徐钧鸿: 1994年1月19日生人,摩羯座最后一天.所以有摩羯的强迫症和水瓶古怪的性格 暂且算队长吧…… 高中的时候因为兴趣学了竞赛,于是就入坑了,于是就来北航学计算机了 兴趣面很广, ...
- Beta阶段项目终审报告
先上图 设想和目标 我们的软件要解决什么问题?是否定义得很清楚?是否对典型用户和典型场景有清晰的描述? 我们的软件主要是用来解决玩狼人杀这款桌游时无牌.无法官.游戏流程不熟悉等情况的.我觉得我们对典型 ...
- dxteam团队项目终审报告
一. 团队成员的简介和个人博客地址 M1阶段 http://www.cnblogs.com/dxteam/p/3991514.html M2阶段 新成员 邓亚梅 http://www.cnblogs. ...
- Echo团队便利记事本项目终审报告
一.团队成员简介 http://www.cnblogs.com/echo-buaa/p/3991968.html 二.团队项目的目标,预期的典型用户,预期的功能描述,预期的用户数量在哪里? 项目的目标 ...
- 《Coderxiaoban团队》第二次作业:团队项目选题报告
<Coderxiaoban团队>第二次作业:团队项目选题报告 项目 内容 这个作业属于哪个课程 任课教师博客主页链接 这个作业的要求在哪里 实验六 团队作业2:团队项目选题 团队名称 Co ...
- 《Hello world 团队》第二次作业:团队项目选题报告
项目 内容 这个作业属于哪个课程 2016级计算机科学与工程学院软件工程(西北师范大学) 这个作业的要求在哪里 实验六 团队作业2:团队项目选题 团队名称 <hello--world团队> ...
- 《AlwaysRun!团队》第二次作业:团队项目选题报告
第二次作业:团队项目选题报告 项目 内容 这个作业属于哪个课程 https://www.cnblogs.com/nwnu-daizh/ 这个作业的要求在哪里 https://www.cnblog ...
- Java程序设计基础项目总结报告
Java程序设计基础项目总结报告 20135313吴子怡 一.项目内容 运用所学Java知识,不调用Java类库,实现密码学相关算法的设计,并完成TDD测试,设计运行界面. 二.具体任务 1.要求实现 ...
- BUAAMOOC项目M2 postmortem
设想和目标 1.我们的软件要解决什么问题?是否定义的很清楚?是否对典型用户和典型场景有清晰的描述? 我们的软件是基于北航MOOC网站做的Android手机客户端,用于便捷的在学校里通过手机做到随时随地 ...
随机推荐
- Django应用:学习日志网站
目录 一.创建虚拟环境(Windows) 二.创建项目 三.创建应用程序 四.创建网页:学习笔记主页 五.创建其他网页 六.用户输入数据 七.用户账户 八.让用户拥有自己的数据 九.设置应用程序样式 ...
- Spring boot 之 dubbo 无xml 简单入门
Dubbo简介 Dubbo框架设计一共划分了10个层,而最上面的Service层是留给实际想要使用Dubbo开发分布式服务的开发者实现业务逻辑的接口层.图中左边淡蓝背景的为服务消费方使用的接口,右边淡 ...
- PJ考试可能会用到的数学思维题选讲-自学教程-自学笔记
PJ考试可能会用到的数学思维题选讲 by Pleiades_Antares 是学弟学妹的讲义--然后一部分题目是我弄的一部分来源于洛谷用户@ 普及组的一些数学思维题,所以可能有点菜咯别怪我 OI中的数 ...
- kafka集群环境搭建(Linux)
一.准备工作 centos6.8和jvm需要准备64位的,如果为32位,服务启动的时候报java.lang.OutOfMemoryError: Map failed 的错误. 链接:http://pa ...
- python MD5加密方法
import hashlibhash = hashlib.md5()hash.update('admin')print hash.hexdigest()
- 用PHP的curl实现并发请求远程文件(并发抓取远程网页)
PHP的curl功能确实强大了.里面有个curl_multi_init功能,就是批量处理任务.可以利用此,实现多进程同步抓取多条记录,优化普通的网页抓取程序. 一个简单的抓取函数: function ...
- Find a multiple POJ - 2356 (抽屉原理)
抽屉原理: 形式一:设把n+1个元素划分至n个集合中(A1,A2,…,An),用a1,a2,…,an分别表示这n个集合对应包含的元素个数,则:至少存在某个集合Ai,其包含元素个数值ai大于或等于2. ...
- 最少拦截系统 HDU - 1257
某国为了防御敌国的导弹袭击,发展出一种导弹拦截系统.但是这种导弹拦截系统有一个缺陷:虽然它的第一发炮弹能够到达任意的高度,但是以后每一发炮弹都不能超过前一发的高度.某天,雷达捕捉到敌国的导弹来袭.由于 ...
- 转载 信号量 <第六篇>
一.ManualResetEvent 该对象有两种信号量状态True和False.构造函数设置初始状态.简单来说, 如果构造函数由true创建,则第一次WaitOne()不会阻止线程的执行,而是等待R ...
- Redis的安装和客户端使用注意事项
一.安装 (1)linux环境下: 获得软件包: wget http://download.redis.io/releases/redis-4.0.1.tar.gz 解压:tar -zxvf redi ...