赞
踩
这个作业属于哪个课程 | 2302软件工程 |
---|---|
这个作业要求在哪里 | 软工实践——GitCode团队实战总结 |
团队名称 | 爱背单词不摆烂 |
这个作业的目标 | 多人协同工作、事先设计好模块分工、团队博客发表一篇博客 |
其他参考文献 | 《构建之法》、CSDN |
学号姓名 | Commit次数 |
---|---|
052101413任广湃 | 3 |
112101225吴淇 | 10 |
182000214廖文焘 | 11 |
222100122洪冠诚 | 5 |
222100308向至尚 | 12 |
222100318张璟楠 | 5 |
222100303陈昕 | 3 |
222100305庞财莹 | 9 |
腾讯云服务器
后端接口部署:maven打包jar包上传服务器,使用nohup java -jar xxxx.jar &实现后台运行。
前端web部署:npm run build打包vue项目上传服务器,使用nginx部署服务。
移动端部署:使用 flutter 开发,flutter build apk。
实现的基本功能:
用户模块:
投票模块:
排名模块:
实现的附加功能:
Q1:用户如何快速知道有投票功能并参与投票?
A1:用户登录以后会看到当前运动员的投票排行,用户点击某个运动员的信息栏时会进入该运动员的详细信息页面,可以通过点击support支持按钮为运动员投票。
Q2:投票结果如何告知用户?
A2:用户点击运动员信息时,会有一个support支持按钮,用户点击即可为运动员投票,投票成功后以提示框返回提示信息告知用户已经投票成功。
Q3:如何保证一人一号?防止用户多次注册账号参与投票。
A3:通过检查用户注册的用户名是否在数据库中已经存在,若已存在则提醒用户更改注册的用户名;若不存在则继续判断电话号码是否重复,若存在则提醒用户更改电话号码,若不存在则注册成功。
用户展示首先从数据库提取出所有的用户,再对每个用户进行ip地址的查询记录,通过建立辅助表ipUserCounts得到ip地址和用户的映射,从而获取每个ip地址对应的用户,最后使用vo类返回给前端具体的用户信息。
封禁用户首先根据管理员传的用户id得到用户,调整用户状态后,遍历vote表,使该用户投过的票无效,同时我们封禁用户只做状态的改变而不做delete操作,解封用户后用户投票依然会恢复。
用户通过输入自己注册的用户名和密码进行登录。
用户输入自己的用户名、密码、邮箱地址、电话号码进行注册。
用户登录成功后,自动获得票数(票数不做限制)。可以点击进入运动员的详细信息页面进行投票。
用户登陆成功后,主页显示运动员在票数下的综合排名。
该页面展示赛事的投票时间和截止时间。
用户可以通过运动员姓名、比赛名称、国家三个搜索框进行查询。
后台管理员可以查看所有投票情况。
管理员可以看到后台统计信息如用户所属IP的账号数,并且能够封禁账号。
用户登录成功后可以看到自己的基本信息。
管理员可以查看具体赛事的投票信息
学号姓名 | 职责分工 |
---|---|
052101413任广湃 | 压力测试、协助移动端开发 |
112101225吴淇 | 数据库设计、后端开发 |
182000214廖文焘 | 用户移动端开发 |
222100122洪冠诚 | 博客撰写、进行移动端和Web端功能测试、协助后端开发 |
222100308向至尚 | 数据库设计、后端开发 |
222100318张璟楠 | 压力测试、协助后端debug |
222100303陈昕 | 压力测试、协助前端开发 |
222100305庞财莹 | 管理员页面前端开发 |
学号姓名 | 贡献度 |
---|---|
052101413任广湃 | 9.5 |
112101225吴淇 | 14.9 |
182000214廖文焘 | 15.1 |
222100122洪冠诚 | 10.6 |
222100308向至尚 | 15 |
222100318张璟楠 | 10.4 |
222100303陈昕 | 12.5 |
222100305庞财莹 | 13 |
PSP | Personal Software Process Stages | 预计耗时(分钟) | 实际耗时(分钟) |
---|---|---|---|
Planning | 计划 | 15 | 15 |
• Estimate | • 估计这个任务需要多少时间 | 15 | 10 |
Development | 开发 | 110 | 130 |
• Analysis | • 需求分析 (包括学习新技术) | 10 | 5 |
• Coding Standard | • 代码规范 (为目前的开发制定合适的规范) | 10 | 20 |
• Coding | • 具体编码 | 230 | 245 |
• Test | • 测试(自我测试,修改代码,提交修改) | 5 | 15 |
• Postmortem & Process Improvement Plan | • 事后总结, 并提出过程改进计划 | 5 | 25 |
合计 | 415 | 435 |
PSP | Personal Software Process Stages | 预计耗时(分钟) | 实际耗时(分钟) |
---|---|---|---|
Planning | 计划 | 15 | 15 |
• Estimate | • 估计这个任务需要多少时间 | 15 | 10 |
Development | 开发 | 330 | 350 |
• Analysis | • 需求分析 (包括学习新技术) | 10 | 5 |
• Coding Standard | • 代码规范 (为目前的开发制定合适的规范) | 10 | 20 |
• Coding | • 具体编码 | 480 | 480 |
• Test | • 测试(自我测试,修改代码,提交修改) | 5 | 15 |
• Postmortem & Process Improvement Plan | • 事后总结, 并提出过程改进计划 | 5 | 25 |
合计 | 810 | 835 |
PSP | Personal Software Process Stages | 预计耗时(分钟) | 实际耗时(分钟) |
---|---|---|---|
Planning | 计划 | 10 | 10 |
• Estimate | • 估计这个任务需要多少时间 | 5 | 10 |
Development | 开发 | 320 | 420 |
• Analysis | • 需求分析 (包括学习新技术) | 5 | 5 |
• Coding Standard | • 代码规范 (为目前的开发制定合适的规范) | 15 | 15 |
• Coding | • 具体编码 | 380 | 420 |
• Test | • 测试(自我测试,修改代码,提交修改) | 10 | 15 |
• Postmortem & Process Improvement Plan | • 事后总结, 并提出过程改进计划 | 15 | 20 |
合计 | 730 | 855 |
PSP | Personal Software Process Stages | 预计耗时(分钟) | 实际耗时(分钟) |
---|---|---|---|
Planning | 计划 | 25 | 15 |
• Estimate | • 估计这个任务需要多少时间 | 5 | 10 |
Development | 开发 | 180 | 200 |
• Analysis | • 需求分析 (包括学习新技术) | 5 | 5 |
• Coding Standard | • 代码规范 (为目前的开发制定合适的规范) | 15 | 15 |
• Coding | • 具体编码 | 300 | 315 |
• Test | • 测试(自我测试,修改代码,提交修改) | 5 | 10 |
• Postmortem & Process Improvement Plan | • 事后总结, 并提出过程改进计划 | 5 | 10 |
合计 | 515 | 525 |
PSP | Personal Software Process Stages | 预计耗时(分钟) | 实际耗时(分钟) |
---|---|---|---|
Planning | 计划 | 20 | 20 |
• Estimate | • 估计这个任务需要多少时间 | 15 | 30 |
Development | 开发 | 270 | 310 |
• Analysis | • 需求分析 (包括学习新技术) | 10 | 10 |
• Coding Standard | • 代码规范 (为目前的开发制定合适的规范) | 5 | 5 |
• Coding | • 具体编码 | 430 | 490 |
• Test | • 测试(自我测试,修改代码,提交修改) | 5 | 5 |
• Postmortem & Process Improvement Plan | • 事后总结, 并提出过程改进计划 | 5 | 5 |
合计 | 745 | 835 |
PSP | Personal Software Process Stages | 预计耗时(分钟) | 实际耗时(分钟) |
---|---|---|---|
Planning | 计划 | 15 | 15 |
• Estimate | • 估计这个任务需要多少时间 | 15 | 10 |
Development | 开发 | 140 | 160 |
• Analysis | • 需求分析 (包括学习新技术) | 10 | 5 |
• Coding Standard | • 代码规范 (为目前的开发制定合适的规范) | 10 | 20 |
• Coding | • 具体编码 | 250 | 255 |
• Test | • 测试(自我测试,修改代码,提交修改) | 5 | 15 |
• Postmortem & Process Improvement Plan | • 事后总结, 并提出过程改进计划 | 5 | 25 |
合计 | 465 | 495 |
PSP | Personal Software Process Stages | 预计耗时(分钟) | 实际耗时(分钟) |
---|---|---|---|
Planning | 计划 | 6 | 8 |
• Estimate | • 估计这个任务需要多少时间 | 10 | 5 |
Development | 开发 | 160 | 167 |
• Analysis | • 需求分析 (包括学习新技术) | 4 | 12 |
• Coding Standard | • 代码规范 (为目前的开发制定合适的规范) | 10 | 10 |
• Coding | • 具体编码 | 375 | 385 |
• Test | • 测试(自我测试,修改代码,提交修改) | 5 | 13 |
• Postmortem & Process Improvement Plan | • 事后总结, 并提出过程改进计划 | 5 | 15 |
合计 | 535 | 545 |
PSP | Personal Software Process Stages | 预计耗时(分钟) | 实际耗时(分钟) |
---|---|---|---|
Planning | 计划 | 10 | 15 |
• Estimate | • 估计这个任务需要多少时间 | 20 | 20 |
Development | 开发 | 400 | 380 |
• Analysis | • 需求分析 (包括学习新技术) | 5 | 5 |
• Coding Standard | • 代码规范 (为目前的开发制定合适的规范) | 15 | 5 |
• Coding | • 具体编码 | 400 | 420 |
• Test | • 测试(自我测试,修改代码,提交修改) | 5 | 10 |
• Postmortem & Process Improvement Plan | • 事后总结, 并提出过程改进计划 | 10 | 10 |
合计 | 855 | 875 |
小组使用jmeter和apipost两种工具进行压力测试,测试板块包括用户Login,register接口等;分析接
口/页面的平均响应时间、最大响应时间、错误率。
步骤
测试结果
登录模块
平均响应时间(ms) | 1457.543 |
---|---|
最长响应时间(ms) | 20015 |
异常率(ms) | 0%(6/1000000+) |
注册模块
平均响应时间(ms) | 2862.12 |
---|---|
最长响应时间(ms) | 26280 |
异常率(ms) | 0%(4/1000000+) |
投票模块
平均响应时间(ms) | 2631.261 |
---|---|
最长响应时间(ms) | 23150 |
异常率(ms) | 0%(4/1000000+) |
获取用户信息模块
平均响应时间(ms) | 1418.151 |
---|---|
最长响应时间(ms) | 20000 |
异常率(ms) | 0%(2/1000000+) |
根据id获取运动员信息模块
平均响应时间(ms) | 2122.283 |
---|---|
最长响应时间(ms) | 18072 |
异常率(ms) | 0 |
测试过程中截图(未测试完毕)
测试结果截图(来自apipost)
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。