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手机客户端,用于便捷的在学校里通过手机做到随时随地 ...
随机推荐
- Head First Android --- Intent
How to create the intentYou create an intent that specifies an action using the following syntax:whe ...
- 32_使用BeanUtils工具包操作JavaBean
由于对属性设置值和得到值的需求很多,使用频率很高,所以有一些开源勇士 不满足于JavaBean API 中IntroSpector来操作bean, 写出来了通用的BeanUtils工具,来进一步简 ...
- C# 动态方法和静态方法的区别
C# 动态方法和静态方法的区别 (转) 动态方法与静态方法的区别: 1,使用方法上的区别:动态方法,在使用时需要先创建实例,才能调用实例方法,而静态方法则不需要,直接使用即可. 示例代码如下:静态方法 ...
- Go学习笔记02-基本语法
目录 变量定义 代码示例 变量定义 内建变量类型 复数回顾 强制类型转换 常量 枚举类型 变量定义 代码示例 package main import "fmt" /* 此处定义的变 ...
- Win10上启动UICrawler自动遍历时报 "org.openqa.selenium.WebDriverException: An unknown server-side error occur red while processing the command. Original error: Could not sign with default certifi cate."
操作步骤: 1.直接启动 Appium (我用的是 version 1.10.0) 2.打开命令窗口,切换到 UICrawler 所在路径 3.执行命令 java -jar UICrawler-2.2 ...
- 大疆ganluinace
1全部套件 2 贴胶布 3 注意箭头朝向一直 5 安装分部件
- oracle备份信息查询
SELECT TRIM(START_TIME || '#'), TRIM(END_TIME || '#'), TRIM(CASE OUTPUT_DEVICE_TYPE ...
- <数据结构与算法分析>读书笔记--运行时间中的对数及其分析结果的准确性
分析算法最混乱的方面大概集中在对数上面.我们已经看到,某些分治算法将以O(N log N)时间运行.此外,对数最常出现的规律可概括为下列一般法则: 如果一个算法用常数时间(O(1))将问题的大小削减为 ...
- 升级pip后出现ImportError: cannot import name main
https://blog.csdn.net/accumulate_zhang/article/details/80269313
- ubuntu apt-get 出现NO_PUBKEY的解决方案
https://blog.csdn.net/u014221090/article/details/77524682