项目展示
【软工小白菜】项目展示
一、团队简介
姓名 | 帅气的个人照 | 个人介绍 | 定位 | 博客地址 |
---|---|---|---|---|
祝世雷 | 会一点c/c++, java,python,6系菜鸡,喜欢被带飞的感觉 | 开发/测试 | 链接 | |
陈卓 | 接触过c/c++/c#,java,会一点点python。希望组里的大佬们可以带飞我 | 开发/测试 | 链接 | |
赵博名 | 6系菜鸡,虽然有3年编程经历,但实力没有太多长进,会一点c/c++,java和一点点python。没进行过软件开发,希望能在组员的帮助下变得更强,也希望我们开发出的软件能让自己让用户满意。 | 开发/PM | 链接 | |
钟文豪 | 编程老新手,接触过c/c++/java/python和一点点js,六系守门员,擅长羞愧学习法,想一个粗腿来抱,希望能够变强 | 开发/测试 | 链接 | |
干毅 | 编程新老手,学过c/c++/java,python只会一点点,编程较慢。希望能通过这次软件开发经历提升自己,并向组内成员多多学习。 | 开发/测试 | 链接 |
二、软件工程
1.团队项目的目标,预期的典型用户,预期的功能描述,预期的用户数量在哪里?
我们的目标是开发一款支持网页端大部分功能的安卓手机app。
预期用户如下:
某某高校计算机系软件工程课学生A
用户信息 | 用户情况 |
---|---|
姓名 | Therp |
用户身份 | 某校计算机系软件工程学生 |
用户动机 | 希望方便的在手机上查看在博客园上班级的作业内容以及相关博文内容 |
用户困难 | 并未携带电脑,无法在电脑上查看班级作业布置内容;助教对作业做出点评,无法快捷的对评论做出回复;对自己的作业提交情况、评分情况没有一个总的查询界面 |
典型场景1 | 浏览刚刚发布的软工作业,对作业内容、截止日期等内容有大概了解 |
典型场景2 | 助教对自己的作业做出评论,并短信提醒到自己手机上,打开博客园手机app直接回复 |
用户偏好 | 希望有一个自己作业提交情况、评分情况的总览界面 |
用户比例 | 60% |
某某学校班级助教B
用户信息 | 用户情况 |
---|---|
姓名 | 小胖 |
用户身份 | 某学校计算机学院某课程助教 |
用户动机 | 协助教师管理、组织班级,进行教师和学生之间的沟通交流 |
用户困难 | 缺少手机端的博客园班级,难以在移动端使用功能。 |
典型场景1 | 小胖在吃着饭,这时班级某尚未加入班级的同学私信他希望帮忙加入班级,小胖就随手掏出手机打开app,小手一点轻松搞定。 |
典型场景2 | 小胖出门了,晚上有个聚会,但是临时想起来还有一些同学的博客作业没看,他随手掏出手机打开app,小手一点,打开同学提交的博客,用琐碎的时间完成了任务。 |
用户偏好 | 希望能在手机端方便的完成添加成员,发布作业,查看博文,回复博文的工作 |
用户比例 | 10% |
某高校计算机系老师C
用户信息 | 用户情况 |
---|---|
姓名 | 钟老师 |
用户身份 | 某大学计算机系教师 |
用户动机 | 希望可以查看博客园班级的情况 |
用户困难 | 没有一款手机app支持查看博客园的班级,导致不能随时了解情况 |
典型场景1 | 在家里休息时想查看多少人还没交作业,好让助教提醒他们,但是由于在卧室,去书房开电脑太麻烦了,所以用手机app查看 |
典型场景2 | 在开会时由于这部分内容与自己无关,实在无聊想查看博客园同学们提交的作业,并且对其进行评论,但是开会不能用电脑,所以使用博客园手机app评论 |
用户偏好 | 更偏好使用博客园的班级功能 |
用户比例 | 10%左右 |
某某公司普通程序员D
用户信息 | 用户情况 |
---|---|
姓名 | 风不停息(网名) |
用户身份 | 某公司普通程序员 |
用户动机 | 由于工作的需要,有时遇到一个不太明白的问题需要在博客园中查找相关知识 |
用户困难 | 无法在手机上查看博客园的博客,不能在坐地铁去上班的路上查看让人很苦恼 |
典型场景1 | 在地铁上很无聊,想看一点有关变成的内容打磨一下时间,于是打开手机博客园app开始浏览 |
典型场景2 | 在家泡澡的时候,突然想到了工作中的某些问题,决定利用这个时间查找一些资料以免加班干活儿,于是拿起旁边的手机打开博客园app开始学习 |
用户偏好 | 能够有搜索栏可以准确的定位一些博客,方便筛选想看的内容;希望有一个主浏览界面(滚动),可以不停的刷博客看 |
用户比例 | 20%左右 |
预期的用户数量在各高校使用博客园上课的学生老师和助教以及一些使用博客园的社会人士。
预期功能如下:
功能 | (详细功能) | 描述 |
---|---|---|
首页 | 浏览博客 | 浏览博客,下拉刷新,系统会个性化推荐给用户一些博客 |
动态 | 推荐 | 显示全站的动态 |
关注 | 显示我所关注用户的动态 | |
我的 | 显示我所发布的动态 | |
发布 | 发布动态 | |
博问 | 最新 | 显示最新的发布的博问 |
已解决 | 显示已经解决的博问 | |
我的 | 显示登录用户提出的博问 | |
提问 | 写出问题标题、标签和主体,并发布 | |
班级 | 班级列表 | 查看用户所在的所有班级 |
公告 | 查看该班级发布的所有公告信息 | |
作业 | 查看班级发布的所有作业,并能进行作业的提交 | |
博文 | 查看班级成员发布的所有博客,并进行评论 | |
成员 | 查看班级内的所有成员信息 | |
我的 | 我的收藏 | 点击后可以查看之前收藏的帖子 |
浏览记录 | 点击后可以查看一定数量的浏览的帖子 | |
信息中心 | 里面分为系统消息,未读消息和评论你的,系统消息是一些系统更新的消息,未读信息则是所有你没有读过的消息的集合,评论你的则显示的是别人对你博客的评论 | |
夜间模式 | 点击后会将背景色改为深色,启动夜间护眼模式 | |
我的博客 | 点击后可以看到自己发布的博客,也可以在其中新建博客发布 | |
我的作业 | 点击后会显示所有班级的已提交作业和未提交作业 | |
关于 | 点击后显示版本号,致谢等信息 | |
退出登录 | 点击后退出当前用户登录 |
下载量
下载量通过百度网盘的统计已达到目标
分工协作
我们由于功能本身分为5部分,又正好有5个人,所以一开始的分工就是每人一部分,这样的好处是在合并代码时几乎没遇到问题,但是这样也遇到了一些问题,比如UI界面风格差异。教训就是UI这部分的设计还是应该交给一到两个人统一设计。
项目管理
我们是每个人在自己的github仓库进行版本控制,最后整合后上传到小组的github仓库。
另外在小组的github仓库中设置kanban和issus来控制进度。
地址如下:
炎龙Code
风鹰Code
黑犀Code
雪獒Code
地虎Code
团队Code
团队如何平衡 时间/质量/资源 争取如期完成任务的?
我们的目标是质量优先,我们希望发布的功能没有影响使用的bug,因此可能会丢弃一些原本计划有但是后期感觉不是很实用的功能。在时间方面,我们也是能肝即肝,最后做到了我们希望能在alpha阶段中展现给大家的功能。
关于测试的问题
测试计划是整合完毕和下载apk文件到各种手机上,运行每一个功能,并且在多个应用进程间切换,测试其线程安全性以及挂起后再进入时UI加载是否有问题。
没有进行代码覆盖率的测试,对于java前端的测试确实没找到什么专用的软件,在后续过程中会再着重找一下。
齐全的文档在哪里?
功能规格说明书
技术规格说明书
发布声明
在github仓库README中有具体的环境配置以及安装步骤
对于项目的目标用户是一般学生的项目, 你们如何找到学生做需求分析?他们给你什么样的反馈?
我们提供了留言通道,用户可以在我们的博客下留言,我们后期可能会发布一个问卷去咨询大家的意见
三、项目进展与发布功能
1.项目燃尽图
2.发布的功能
模块 | 功能 | 展示 |
---|---|---|
首页 | 查看首页博文,搜索博文,可供未登录用户使用 | |
动态 | 查看推荐动态给未登录用户使用,登录用户可以查看关注动态、我的动态,发布动态 | |
问答 | 未登录用户可以查看最新、高分、已解决博问;登录用户可以查看我的博问和发布博问 | |
班级 | 登陆后可查看班级列表、班级公告、作业、博文、成员 | |
我的 | 登陆后可查看我的收藏、博问、博客、所有班级作业以及基本信息 |
3.发布地址
发布在了百度网盘上,链接地址如下:
链接:https://pan.baidu.com/s/11EU8Wqw70CgY5_9WtpU_Gw
提取码:orn5
4.用户反馈
5.燃尽图如何反应项目真实状态的?
可以看到在项目一开始大家热情很高,都在刻苦工作,进度飞快,但是到了前中期,有一段时间大家被RecyclerView卡了一段时间,在克服了这个问题后,又是一波进度飞速,然后大家基本完成了UI部分的工作,在调用API时被官方文档的错误卡住了一段时间,在发现问题后平稳前进完成所有工作。
四、团队成员在Alpha阶段的角色和具体贡献
计分规则
? 任务标签有:prework,groupMeeting,hard,size
? 工作分计算规则:prework计1分,groupMeeting计0.5分,其余任务计 hard*size 分
? 贡献分计算规则:贡献分规则
? 最终得分计算规则(个人总分=工作分+团队贡献分):
?
姓名 | 角色 | 工作分 | 团队贡献分 | 最终得分 |
---|---|---|---|---|
赵博名 | PM | 36 | +5 | 53.6 |
祝世雷 | 开发、测试 | 35 | +4 | 51.0 |
陈卓 | 开发 | 34 | +4 | 49.7 |
干毅 | 开发 | 31 | +6 | 48.4 |
钟文豪 | 开发、测试 | 31 | +5 | 47.3 |
五、特色功能
我们和上一届的工作进行对比,主要的特色在于:
1.新增了首页功能,支持对博客的搜索以及浏览推荐博客
2.新增了动态功能,支持查看网友的动态以及发布自己的动态
3.新增了博问功能,支持查看自己和网友的博问以及发布博问
4.新增了所有作业功能,可以直接查看所有班级的所有作业(已分类)
六、用户反馈
同学反馈的bug:每次退出后都要重新登录。这一点是我们之前考虑到的,这是因为我们在存储用户信息时使用的一个单例模式,每次退出后会重新创建一个,所以就会将登录状态退出。
此外我们自己还发现了以下bug(未解决):
1.我的界面在登录后再退出登录头像部分会重叠。
2.动态部分在应用和手机桌面上多次切换后会出现空白现象。
七、总结
1.学到的东西
- Android studio的使用
- 如何调用Oauth 2.0 API的调用方法
- 优秀的分工可以大大减轻项目难度
- 一个团结的团队可以攻克各种难题
- 只要玩命肝,没有完不成的ddl
2.建议
我们组对于强制换人很不理解,我们组5个人磨合的很好,氛围很好,我们在两周时间内一块熬夜一块讨论,建立了深厚的友谊,现在要我们强制换一个人出去我们认为是不合理的。
另外,我们组只有5个人,如果没有其他人加入团队,难道PM就一定要踢出一个优秀的组员然后让团队解散吗?
所以我们想请问一下能否不换人?
3.beta阶段大体计划
- 增加班级作业公告的发布,班级成员的添加与删除功能
- 增加添加收藏以及删除收藏的功能
- 让程序不会每次退出都要重新登录,具有记忆功能
- 修复alpha发现的bug
- 统一UI样式并美化