第六次团队作业:项目系统设计与数据库设计

这个作业属于哪个课程 2018级计算机和综合实验班
这个作业要求在哪里 第六次团队作业:项目系统设计与数据库设计
这个作业的目标 系统设计与数据库设计
团队的github仓库链接 juiceData

一、预期开发计划时间安排

时间 计划安排
第十周 完成项目系统设计与数据库设计
第十一周 团队磨合在AndroidStudio上共同协作开发
第十二周 小组分工完成代码编写
第十三周 完善并整合代码并进行测试
第十四周 完成测试,发布APP

二、预期开发计划分工安排

成员 角色 预期分工安排
马鑫 安卓 数据获取
王昱翔 PM 成绩模块、项目管理
刘启麟 安卓 UI设计
冯琳 UI 软件测试、UI设计
翟怡慧 测试 软件测试

三、设计思路

体系结构设计

功能模块层次图

分为三个模块,分别是:用户信息模块,课表模块,成绩模块。

类图

ER图

对应的只有一个用户实体,一个用户拥有一个签到表,一个学生一个学期拥有一张课程表,课程表里含有多个课程信息。

表结构设计图

系统安全和权限设计

1、系统安全:
    不同于常见的客户-服务器范例,SQLite引擎不是个程序与之通信的独立进程,而是连接到程序中成为它的一个主要部分。整个数据库(定义、表、索引和数据本身)都在宿主主机上存储在一个单一的文件中。使用SQLite来存储数据,数据库文件将存储在应用私有目录,其他应用无权访问,可以保证数据安全性。但是一些Android手机获取了Root权限,这可能导致数据库文件被非法获取,可以读取到数据库中存储的数据。如果数据库中存储着用户的敏感数据,我们的程序就会面临严重的安全漏洞隐患。为了解决这个问题,我们会将用户的敏感数据加密后再写入数据库,以保证用户敏感数据不会泄露。

2、权限设计:
    Android系统内置了SQLite数据库,并且提供了一整套的API用于对数据库进行增删改查操作。
做为一个嵌入式的数据库,安卓SQLite只能由对应的应用访问,每个应用都只能访问自身的数据库。

四、Q&A

Q1:是否可开发一个有关考试提醒的功能,提前为同学们发送考试通知?
A:经过老师的讲解与分析,我们也发现课前提醒的功能不是非常必要,然而考试提醒确实一个非常好的点子,所以我们将课前提醒功能换为考试提醒功能,这也将是我们开发的主要功能之一。

Q2:关于成绩查询功能具体都有什么分类?
A:成绩查询功能我们打算分为两类,一类是有关每学期的综合成绩查询,还有一类是统考成绩查询,如四六级成绩,计算机等级考试成绩等。

五、Commit记录

六、组员分工、组员贡献度

姓名 分工安排 贡献度
马鑫 撰写随笔、负责两份说明书的大纲、内容完善以及审核、修改 22%
冯琳 补充文档内容、ppt编写、画图 20%
刘启麟 文档内容补充、画图 18%
翟怡慧 文档内容补充、画图 18%
王昱翔 分配任务,对各个部分进行审核、敲定,随笔编写、画图 22%
posted @ 2021-05-05 12:58  17PlanB  阅读(133)  评论(0编辑  收藏  举报