这个作业属于哪个课程 | 2020春|S班 (福州大学) |
---|---|
这个作业要求在哪里 | 团队作业第二次——团队Github实战训练 |
团队名称 | 如果有一天我变得很有钱 |
这个作业的目标 | 1.实现一个简单的口罩预约程序 2.进一步熟悉git 3.初步体验团队编程的同时了解自身的不足 |
作业正文 | |
其他参考文献 | 百度、CSDN |
GitHub仓库
-live-project
注:使用超时提交版本。
说明:
- 改进情况:
- 修复bug,加强团队配合完成基本功能
- 完成附加功能(管理员发布预约摇号部分)
- 反思:
随笔第一部分
1.组员职责分工
组员 | 学号 | 分工 | commit次数 | 贡献率 |
---|---|---|---|---|
李明磊 | 051602129 | 处理用户预约 | 16 | 23 |
刘星雨 | 221701106 | DBUtil,DAO层(除管理员类外) | 6 | 7 |
张家榜 | 221701125 | 13 | ||
叶尤澎 | 221701208 | 中签查询 | 3 | |
陈启元 | 221701225 | 预约表的相关操作 | 5 | |
戴怡宁 | 221701307 | 管理员端界面及功能 | 1 | 8 |
徐哲宇 | 221701322 | 9 | ||
张钰婷 | 221701406 | |||
刘昭玮 | 221701427 | 用户端界面 | 14 |
2.Github提交日志截图
3.程序运行截图
4.程序运行环境
操作系统: Win10;
开发工具: Idea Mysql Jdk1.8;
5.GUI界面
6.基础功能实现
- 基础功能清单:对于每个功能点,使用0代表没有完成,0.5代表完成部分,1代表成功实现;对于0.5的项,在表格后描述完成的程度,例如仅完成前端等。
功能点 | 完成度 |
---|---|
身份证、手机号格式验证及错误提示 | |
身份证、手机号的唯一性及错误提示 | |
间隔三次才能预约及错误提示 | |
存储预约信息 | |
预约结束后的中签计算 | 0.5 |
预约查询及提示 |
- 如有完成,描述抽签算法
7.附加功能实现
管理员登录 | |
设置预约的开放时间和截止时间 | |
设置预约时单个用户最高可预约数量 | |
设置口罩总数 | |
导出某次中签的名单 |
8.用户体验、操作的方便性
简洁大方的界面,用户操作方便快捷。交互性还不错。
9.遇到的困难及解决方法
刘昭玮:
-
SignUp GUI类丢失:Class "SignUp" deesn't exist.
解决办法:由于在进行项目整合的时候更改了包,导致SignUp.form文件SignUP的value值错误,更改后解决。
李明磊:
-
再使用GitHub同步数据的时候,每个人都没有统一的规范导致包的命名,文件的结构,出现了好多问题。
解决办法:下次在开始之前确定好命名规范等一些必要的东西
-
未完成前面的接口的定义,就开始的写代码,导致时不时的就要去从新写接口等东西。
解决办法:开始做项目前,定义好接口和要使用的方法。不要反复的去写。
-
项目分工的时候没有很好的认识到自己的职责,会不定时的改其他的写的代码。
解决办法:需要充分的沟通交流,确定职责。
刘星雨:
-
对框架结构不熟悉,且代码能力比较弱,项目出了bug我也没有办法debug。而且因为大家没有在一起沟通比较困难,我负责的部分加了一个方法需要我实现,我却很晚才知道。
解决方法:加强语音沟通,最终较好的完成了任务。至于代码能力只有依靠自己努力了!
张钰婷:
-
对代码框架不清楚,在分布任务时有点懵懵的,不太清楚自己要做的事情。
解决办法:及时找组员沟通,了解清楚自己的任务内容。
-
代码实现时,不清楚前后端分离该怎么去协调,具体实现。
解决办法:还是没太清楚前后端分离具体怎么协调,只能以后再努力学习了解。
-
太菜了,在团队项目遇到问题时,帮不上忙。
解决办法:好好学习,天天向上。我也不想做菜鸟,拖后腿真是太难受了!
陈启元:
-
git相关的使用很不熟悉,在提交时曾出现发生冲突而且一直不知道如何手动修改的情况;
解决办法:百度,CSDN查询相关资料以及以后多使用;
-
对团队合作进行设计及编码的合理过程极其不熟悉
解决办法:只能在以后的编程中逐渐适应了。然后多读一读《构建之法》。
张家榜:
-
如何实现基本的增删改查?
解决办法:用PreparedStatement类实现带参数的增删改查比较准确不容易出错
-
建好数据库表之后,java要怎么跟mysql连接?
解决办法:上网查找mysql的jdbc驱动文件,导入到项目中
-
如何将Date类写入到数据库中的DATETIME类型数据,java如何读取DATETIME类型数据
解决办法:用PreparedStatement类的setObject方法可以将日期字符串写进数据库中的DATETIME类型数据,Timestamp类可以读取数
-
数据库操作不熟悉,导致编码效率低下。
解决办法:凡事百度。
-
git命令不熟悉,提交代码时容易出错,滋生麻烦。
解决办法:阅读相关博客,了解git原理。
-
与同学间的交流不是很及时,导致项目进展缓慢。
解决办法:即使交流
-
对Java语言掌握欠缺,遇到分工时不知道各部分如何协调
解决方法:百度,CSDN,向组员求助
-
太久没写过Swing,遇到按钮实现各个界面隐藏的时候,由于对"层"的了解不够透彻,导致各个Panel没办法切换和隐藏。
解决方法:啊最后还是没有解决
-
然后我扯断了钰婷的腿www 导致她没有办法完成分工的任务
解决方法:我太菜了我一定好好学习(落泪
10.PSP表格
PSP2.1 | Personal Software Process Stages | 预估耗时(分钟) | 实际耗时(分钟) |
---|---|---|---|
Planning | 计划 | 30 | 15 |
Estimate | 估计这个任务需要多少时间 | 10 | 60 |
Development | 开发 | ||
Analysis | 需求分析(包括学习新技术) | ||
Design Spec | 生成设计文档 | ||
Design Review | 设计复审 | ||
Coding Standard | 代码规范(为目前的开发制定合适的规范) | ||
Design | 具体设计 | 45 | |
Coding | 具体编码 | 180 | 210 |
Code Review | 代码复审 | ||
Test | 测试(自我测试,修改代码,提交修改) | ||
Reporting | 报告 | ||
Test Report | 测试报告 | - | |
Size Measurement | 计算工作量 | ||
Postmortem & Process Improvement Plan | 事后总结, 并提出过程改进计划 | ||
Total | 合计 | 455 | 645 |
60min | 60mmin | ||
40min | |||
300min | 445min | ||
30min | 45min | ||
20min | 50min | ||
xxx | |||
100min | 150min | ||
90min | |||
80min | 120min | ||
10min | |||
480min | 635min |
实际耗时(分钟) | |||
---|---|---|---|
50 | |||
120 | 150 | ||
需求分析 (包括学习新技术) | 80 | ||
40 | |||
代码规范 (为目前的开发制定合适的规范) | |||
20 | |||
测试(自我测试,修改代码,提交修改) | |||
Test Repor | |||
90 | |||
460 | 175 | ||
230 | 85 | ||
440 |
李明磊:
70 | |||
25 | |||
35 | |||
12 | |||
360 | 420 |
540 | 680 | ||
200 | 240 | ||
670 | 855 |
张家榜:
290 | 325 | ||
100 | |||
340 | 395 |
徐哲宇:
265 | 370 |
随笔第二部分
1.回答提出的问题:
-
问题:记账的数据如何同步,云端空间如何分配
答:可能在打开应用/离开应用时获取同步状态并进行同步,云端就用数据库存需要使用的数据。
-
问题:数据的私密性、安全性
答:可能会采用避免服务器端数据明文存储,强迫用户使用强密码等方式保证数据的私密性和安全性。
-
问题: 如果能整合各个软件的账单,实用性会更强 / 能否支持公众号或一卡通产生的消费记录
答:开发时会去查阅常见支付/购物软件的api,如果能够调用,后期开发会考虑加上自动整合其他软件数据的功能
-
问题: 能不能加入自动提醒,自定义理财,能否设置金额让用户每天坚持存钱,数据保存的预警、统计分析
答:有加入考虑。