天天看点

团队作业第二次——团队Github实战训练

这个作业属于哪个课程 2020春|S班 (福州大学)
这个作业要求在哪里 团队作业第二次——团队Github实战训练
团队名称 如果有一天我变得很有钱
这个作业的目标 1.实现一个简单的口罩预约程序 2.进一步熟悉git 3.初步体验团队编程的同时了解自身的不足
作业正文
其他参考文献 百度、CSDN

GitHub仓库

-live-project

注:使用超时提交版本。

说明:

  • 改进情况:
  • 修复bug,加强团队配合完成基本功能
  • 完成附加功能(管理员发布预约摇号部分)
  • 反思:
团队作业第二次——团队Github实战训练

随笔第一部分

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提交日志截图

团队作业第二次——团队Github实战训练
团队作业第二次——团队Github实战训练
团队作业第二次——团队Github实战训练

3.程序运行截图

团队作业第二次——团队Github实战训练
团队作业第二次——团队Github实战训练
团队作业第二次——团队Github实战训练

4.程序运行环境

操作系统: Win10;

开发工具: Idea Mysql Jdk1.8;

5.GUI界面

团队作业第二次——团队Github实战训练

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,如果能够调用,后期开发会考虑加上自动整合其他软件数据的功能

  • 问题: 能不能加入自动提醒,自定义理财,能否设置金额让用户每天坚持存钱,数据保存的预警、统计分析

    答:有加入考虑。