护林员——Beta冲刺总结随笔

forest_rangers 团队 2024-05-28 16:23:17
这个作业属于哪个课程福州大学-202302软件工程实践
这个作业要求在哪里团队作业——bate冲刺+事后诸葛亮
这个作业的目标Beta冲刺总结随笔
置顶集合随笔护林员——Beta阶段置顶集合随笔
团队名称护林员
团队项目福大树洞

目录

  • 一、用表格的形式展示冲刺开始前设立的任务完成情况
  • 二、改进计划的完成情况
  • 三、可运行的项目、程序链接
  • 四、项目各功能的运行图片、gif
  • 五、各成员心得体会
  • 1. 222100434
  • 2. 222100129
  • 3. 222100101
  • 4. 222100115
  • 5. 222100128
  • 6. 222100221
  • 7. 222100304
  • 8. 222100404
  • 六、各成员的贡献度分配
  • 七、华为云部署过程和体会
  • 1. 使用体会
  • 2. 使用过程

一、用表格的形式展示冲刺开始前设立的任务完成情况

弹窗通知的废弃原因是,前端方面未选用uniapp作为编程语言,如果要重构为uniapp的话,时间成本太高,得不偿失故放弃弹窗通知。

历史记录原计划是要存到本地,但是因为语言受限,无法调用相关接口,导致无法保存,故放弃了这个功能

任务状态
前端页面美化完成
后端特殊情况处理完成
邮箱验证码的引入完成
OpenAI API的审核引入完成
增加oss读写接口完成
实现消息的通知、设置的修改完成
后台页面完成
保存设置信息等到本地完成
弹窗通知废弃
历史记录废弃

二、改进计划的完成情况

  1. 分工合作的改进

    我们有问题时,不再是找单独一个熟人去问,而是主动在大群中讨论,让所有人参与到问题的讨论中来,既保证了消息的传达,又能确保思维不会收到局限。

  2. apifox工具的使用

    在Beta阶段,前端也灵活使用起来了apifox,前台通过真实数据,后台通过mock数据,成功模拟真实情况,让页面开发的质量得到了保障。

  3. 通过issue提出Bug

    虽然issue更加正式,但是考虑到后期Bug传递到各个组员的时效性,我们还是选择用腾讯文档来保存发现的Bug,有人在解决时登记自己的名字,而后在完成时注明完成时间。

  4. 灵活的计划制定

    不再定死计划,而是让那些速度较快的人提前去完成自己的任务,以便稍后去帮助其他同学完成,这样极大的提高了整体的进度和效率。

三、可运行的项目、程序链接

福大树洞apk
福大树洞后台页面

四、项目各功能的运行图片、gif

因为视频难以嵌入,故采用截图的方式

  1. 注册账号并请求验证码
qq老师组原群
  1. 输入验证码,并判断是否该用户已注册
qq老师组原群
  1. 修改密码,修改成功后跳转到登录界面
qq老师组原群 qq老师组原群 qq老师组原群
  1. 账号登录,进入树洞聊天模块
qq老师组原群 qq老师组原群
  1. 关键词搜索,也支持多个关键词同时搜索
qq老师组原群 qq老师组原群
  1. 排序
qq老师组原群
  1. 滑动时右下角按钮隐藏
qq老师组原群
  1. 查看帖子详情
qq老师组原群
  1. 举报帖子
qq老师组原群
  1. 收藏和取消收藏帖子
qq老师组原群 qq老师组原群
  1. 发送评论、回复评论
qq老师组原群 qq老师组原群
  1. 点击返回最顶部
qq老师组原群
  1. 内容为懒加载
qq老师组原群
  1. 发布帖子
qq老师组原群 qq老师组原群
  1. 通过OpenAI判断违规的内容,不予以展示
qq老师组原群 qq老师组原群
  1. 查看课程列表
qq老师组原群
  1. 搜索功能
qq老师组原群
  1. 查看课程详情
qq老师组原群
  1. 点击查看更多跳转到课程评价页面
qq老师组原群 qq老师组原群
  1. 发布课程评价
qq老师组原群 qq老师组原群 qq老师组原群

其他类似功能不再重复展示

  1. 查看个人中心
qq老师组原群
  1. 我的树洞可以查看自己发过的帖子
qq老师组原群
  1. 历史记录因为技术原因放弃
  2. 我的收藏
qq老师组原群
  1. 点击退出登录回到登录页面
qq老师组原群
  1. 其他人账号回复帖子,回复评论,通知处会显示未读通知个数
qq老师组原群 qq老师组原群 qq老师组原群
  1. 查看通知后未读角标会消失
qq老师组原群 qq老师组原群
  1. 右上角可以转换为夜间模式
qq老师组原群
  1. 设置页面
qq老师组原群
  1. 深色模式的开关与外部是绑定的
qq老师组原群
  1. 点击账号资料或者个人中心旁边的笔,可以进入资料修改页面
qq老师组原群
  1. 可以上传头像
qq老师组原群 qq老师组原群 qq老师组原群 qq老师组原群
  1. 推送设置因为编程语言的原因无法实现
  2. 查看用户协议
qq老师组原群
  1. 后台登录

    img

  2. 用户管理

    img

  3. 帖子管理

    img

  4. 课程管理

    img

五、各成员心得体会

1. 222100434

  • 心得体会
    • 第一次当组长,是真的累。又是写博客、又是后端开发、又是服务器运维、又是前后端协调、又是进度催促···,有时还必须唱白脸,催促组员的进度,有时必须唱红脸,缓和气氛才能保证项目的正常进行。不过,这次项目意外的很顺利,大家都很愿意协同工作,即便有小摩擦也能通过沟通解决,不会撕破脸皮,每个人都尽全力完成了自己的力所能及工作,谁能想到,我们组在在项目开始前大部分都只有课内基础,SpringBoot?Vue?云服务器?Git?Apifox?想都不敢想的,随便搜一个网课就是上百个小时起步,即使想学也不是现在学的,但是这些都通过一门课让我们有所了解并掌握,客观来讲的话,这门课对于完全没有项目经验并且本科后就要从事开发岗位的人来说,质量非常高,上完这门课可以保证能够无缝衔接到实际工作当中。同时,老师、助教们也是有问必答,助教不确定的问题也会主动积极地去询问老师解决,老师不能独断的事也会为了同学去和汪老师商量,其他组也是会互相帮助,在遇到类似问题时会互相之间交流沟通,不会因为组不同就有敌意等等,总之,是所有人的共同努力让这门课获得了如此的成功。
    • 不过有一些我个人认为可以优化的地方。首先是寒假的计划好像和后面的实际工作不太一样,因为我是准备学习Python、pytorch的,不过在这种面向项目的课程中,我不可能去搞一些模型优化、调参等等工作,不如直接在寒假时就告知同学,可以去学学git的使用方法、apifox的使用方法、SpringBoot/Vue/Unity的入门这些可以实际上对课程有帮助的内容。其次是分组,可以理解,根据学习意向,按照不同岗位随机分配一些人来让同学们尝试和陌生人组队,这个方法的理想和初心是好的,但是一个组的成功与否很可能会和这个组的运气挂钩。如果分到了一个有项目经验的大佬,那么项目的下限就会大大提高,其他同学的入门也有了保证,但如果没有的话,剩下的人就会很折磨,因为必须从0开始,没有任何经验,碰壁了也没有人可以问,踩坑了也浑然不知,一个简单的问题可能需要几个小时去解决,最终这个项目很大概率走向失败。我个人认为除了学习意向,最好还有收集一下同学是否有项目经验,每个组分配到了有项目经验的同学的话,更有利于其他同学的学习和项目的发展。然后是博客,说实话,博客真的写的还挺痛苦的,后来才知道,别的组都是一个专门的人负责博客,很少有即博客又开发又运维的。我个人的话,实在是不太清楚博客的作用是什么,一般博客不都是自己记录技术或者技术分享吗,课内这种单纯耗费撰写人几个小时去写的文本,好像对技术和能力的提升没有任何用处(当然这也可能是我的偏见),但像我这种需要高绩点的又不得不去写,所以就很痛苦。当然像是复盘什么的确实是有必要的,但是我个人觉得还是有点太形式了,不过我也想不到更好的做法就是了。最后是课程内容的衔接性上,前面的计划安排和实际差好多,导致前面认真做了计划,考虑到了种种情况的备案,最后因为Alpha只有10天,Beta只有七天需要重新从0开始计划,我本来也是想着,写一两个月怎么写不完,所以功能就往多往杂考虑,导致每个组员在Alpha、Beta的压力都不小,这也是我对实际安排了解不够多的责任就是了,很对不起他们。
    • 最后,虽然是痛苦的一个过程,但最后看到靠团队协作,共同努力而做出来的软件时,心中还是有很大的成就感的。只是真的太耗时间了,考试、科研什么的都耽误了,不过说了这么多,还是那句话,客观来讲的话,我个人认为这门课的质量是很不错的,这也是老师、助教、所有同学共同努力的结果。最后,希望老师、助教、其他所有同学们能够有效利用了这门课,总结宝贵的经验,榨干这门课的剩余价值,接着在未来继续发光发热,早日实现自己进入福大时的初心、目标和理想,飞黄腾达之后记得内推我

2. 222100129

  • 心得体会
    • 本次beta冲刺我仍然负责前端的接口和数据处理,相当于前端中的后端。虽然很想和前端其他组员交换一下分工,但考虑到工期和待完成任务量,就还是放弃了,人尽其能,各尽其长。因为在alpha冲刺的时候,前端调用接口处理数据已经让我学会如何与后端联通了,我又想学习一下队友的布局css技能,这样才是一个完整的前端应该会的全部内容。但现在看来只能项目完成以后在学习一下队友是如何编写style样式的,我也很希望教会我前端队友如何调用接口,以及接口出现问题如何排查解决。最后,我也想和后端多交流学习一下spring boot和服务器如何部署,在项目开发中的目的不是完成任务,而是学有所获。

3. 222100101

  • 心得体会
    • 在本次beta冲刺阶段,我主要承担了测试的职责。通过这次宝贵的实践机会,我不仅深化了对前端的理解,也锻炼了与团队成员协作的能力。我注重设计的细节,力求在美观与功能性之间找到平衡点,使得界面既简洁又易于用户操作。通过这次beta冲刺,我深刻体会到了持续学习的重要性。在项目中,我不断学习新的技术和工具,以及怎样更有效地进行测试。这些新知识的积累,为我未来的职业发展奠定了坚实的基础。此外,我也意识到了自己在某些方面的不足,比如在面对复杂问题时的解决能力和创新思维。我将这些视为成长的机会,未来我将继续努力,不断提高自己的技术水平和解决问题的能力。这次beta冲刺是一次非常宝贵的经历。它不仅让我在技术层面有了显著的提升,更重要的是,它让我学会了如何在团队中发挥作用,如何与他人协作,以及如何在压力下保持冷静和效率。我为能参与到这个项目中感到自豪,也为团队所取得的成就感到骄傲。我相信,通过这次经历,我将能够在未来的工作和学习中表现得更加出色。

4. 222100115

  • 心得体会
    • 在bata冲刺阶段,我换到了一个全新的小组。在此之前,我与新小组的组员并不熟识,好在大家都比较的热情友善,我很快的加入了这个小组。在这个阶段内,组员的工作已经基本完成,于是我被分配到软件测试的工作。在进行测试的过程中,我能学习到优秀同学的设计思路和设计方法,这些十分宝贵的经验让我受益无穷,收获满满,在提出问题后,团队也能够迅速的解决。感谢团队中每一个同学的努力,希望在之后的学习生活中也能互相帮助,一起进步。

5. 222100128

  • 心得体会
    • Beta冲刺阶段,我主要负责的是前端界面设计和组件功能实现,这次冲刺相比较alpha阶段任务轻一些,因为之前的alpha阶段我们把树洞各个界面的主体以及大部分需要被复用的组件已经实现得差不多了。我的任务就是新编写后台管理员端的几个界面,还有在alpha已经开发的树洞前台界面基础上,优化各个页面及其组件的样式、功能,让用户体验更上一层楼,看着我们的软件越来越完善,心里也是美滋滋的,蛮有成就感。
    • 团队协作方面,我们还是一如既往地给力,大家互相帮助,气氛很和谐。队长也是一如既往的给力,带领我们在有限的时间里,不仅搞定了基本内容,还把alpha阶段总结时提出要扩展的功能和模块都搞定了,效率杠杠的。
    • 这次合作,可以说是圆满落幕了。希望我的队友们未来无论是学习还是工作,都能不断进步,发光发热,各展所长。加油,伙计们!这次的经历对我来说,不仅仅是技术上的提升,更是团队协作和个人成长的宝贵财富。

6. 222100221

  • 心得体会
    • β冲刺阶段期间我们小组合力将我们的项目逐渐完善了起来,看着项目从无到有再到越来越好,心中满满的成就感,代码虽越来越多但是依然逻辑清晰且结构整齐,项目内容和工作虽越来越繁重但是我们组内的配合依然保持完美,大家沟通紧密、工作高效、有能力有责任感,有这些队友让我的工作轻松了不少、效率也提高了许多,与他们合作对我的沟通、配合能力是一次大大的成长也让我收获了一段美好的回忆,对我来说是一次非常愉快的合作经历。除此之外,我的后端技术也得到了进步,我学习到了新技术、新知识、新的优秀的编码方式。总的来说这次项目经历使我受益匪浅。

7. 222100304

  • 心得体会
    • 个人任务
      • 在这次beta中冲刺中我依然是后端开发人员,负责一些alpha阶段未完成的后台接口的开发。
      • 引进JavaMail API实现用户注册时发送验证码邮件到用户学号对应的福大邮箱
      • 部分测试工作
      • PPT的制作
    • 阶段收获
      • 在接口的开发中,有了alpha的经验,掌握了springboot、mybatis等技术,开发效率越来越快
      • 在集成邮件发送服务时学习了JavaMail API以及Redis的知识,收获良多
    • 合作情况
    • 相对alpha阶段,beta阶段团队合作方面有较大进步,一方面是带着新成员快速融入团队,一方面是前后端的交流效率明显提升
    • 心得体会
      • β冲刺阶段的结束,标志着我们团队项目的完成,虽然可能还存在缺陷,但也是团队每个成员的心血。回顾这段经历,我学会了如何在团队中发挥自己的作用,如何与他人有效沟通和协作,以及如何在压力下保持冷静和高效。这次经历不仅锻炼了我的技术能力,更提升了我的团队协作和项目管理能力。

8. 222100404

  • 心得体会
    • 在这次的beta冲刺中主要是完成alpha冲刺中没有完成的任务,因为历史遗留的问题比较多,所以在beta冲刺的这七天,我们的任务比较繁重。在这七天中,我主要的工作是完成后台的侧边菜单和顶部导航的编写以及后台修改数据的弹窗,除此之外还进行了前台的页面布局美化的工作,完成前台的深色模式切换等功能,测试并修复前台出现的bug等。在这次的冲刺中,我深刻的感受到了沟通合作的重要性,在测试的过程中,经过小组成员的交流才能尽量全面的发现bug进行修复。这次的经历不仅让我学到了很多前端的知识,见证了一款产品的一次次的改进,还提升了我的合作能力,让我受益匪浅。

六、各成员的贡献度分配

学号工作内容贡献度
222100434黄楠树洞聊天相关接口的改进、OpenAI API的引入27
222100101卢雨纯软件的测试7
222100115林录软件的测试3
222100128黄煦陶前台:美化树洞聊天各页面,美化课程评价各页面,实现app的夜览模式切换
后台:完成管理员登录界面,后台各界面表格组件实现
14
222100129梅明胜前台:调用接口和数据处理
后台:调用接口和数据处理
14
222100221林炳昌个人中心相关接口的改进5
222100304林雅婷邮箱验证码的引入、课程评价相关接口的改进、PPT15
222100404余诗怡前台:美化页面布局,完成颜色主题切换功能逻辑,完成个人中心的我的树洞,我的收藏,历史记录布局
后台:侧边菜单栏,顶部导航栏,修改数据弹窗
15

七、华为云部署过程和体会

我们组大概是少有的对两个云服务器都比较熟悉的组了,毕竟Alpha阿里云,Beta华为云,所以这里可以详细讲讲二者使用和体验上的区别。至于总括的区别的话可以参考其他组的博客。

1. 使用体会

  1. 首先是账号注册,服务器购买等等环境问题,这里就不再细说。以及感谢老师馈赠的一年服务器

    img


    不过,阿里云就很财大气粗了,直接送了三个月的服务器

    img

  2. 进入控制台可以看到自己拥有的所有资源,像是实例、安全组等等清晰可见

    img


    这方面就比阿里云做得好,进入阿里云的控制台之后,还会莫名其妙得跳转

    img

  3. 重置密码后就可以通过xshell连接了,我这边选择了CentOS7的系统。为什么不选择可视化页面呢?应该只是我个人的偏见(),我个人认为通过可视化的界面操作的话无法理解具体指令的工作流程,就像Git一样,通过idea集成的确实会方便很多,但是那种方法无法深入理解git add,git commit,git push等等操作的实际流程,在遇到问题时也就无法更快速的理解。通过CentOS7系统,我熟悉并掌握了很多linux操作,了解了不同linux系统的小区别,学习、理解并掌握了Docker的使用,相信如果我是在用可视化界面的话,是无法知其所以然的。当然,可能只是我的偏见罢了()。

    img


    img


    这里的话阿里云和华为云没什么区别,毕竟都是用Xshell连接到linux。
  4. 对环境的配置,说实话华为云的网络还有待提高,只有4Mbit/s,跟阿里云还是有一定的差距

    img


    img


    img

阿里云峰值带宽100Mbps,财大气粗!

img


5. 开放服务器的安全组端口,不过这里有个小小的变扭就是不能在实例页面直接跳转至具体的安全组界面,我必须回到控制台选择该实例对应的安全组,再在其中进行修改,个人认为这里是可以优化的地方

img


img


img


img


阿里云这里就是可以直接去修改

img


6. 配置完所有环境

img


7. 在使用华为云的时候需要时刻注意最上方这个地区,因为它默认北京,数次让我以为是我的程序出了问题。个人感觉可以更显眼一些,并且我只在上海有服务器,默认上海是不是会更好。

img

2. 使用过程

因为经历了第二次配置环境,我就突发奇想,与其每次都去查很多资料,不如把自己的配置过程整理下来,未来再配置的时候直接照着做,同时别人看的话也可以有所借鉴。

#docker安装
#安装Docker依赖环境
yum install -y yum-utils device-mapper-persistent-data lvm2
#配置docker-ce的yum源
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
#安装docker
yum -y install docker-ce doker-ce-cli containerd.io



#docker配置镜像加速
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://hmgbot2j.mirror.aliyuncs.com"]
}
EOF
#重启docker
systemctl daemon-reload
systemctl restart docker


#docker安装MySQL8.0
docker pull mysql:8.0
#创建文件夹,稍后映射MySQL容器文件
mkdir -p /usr/local/mysql/log
mkdir -p /usr/local/mysql/data
mkdir -p /usr/local/mysql/conf
mkdir -p /usr/local/localtime
#配置my.cnf
cd /usr/local/mysql/conf/
vi my.cnf

[client]
default-character-set=utf8mb4
[mysql]
default-character-set=utf8mb4
[mysqld]
# 设置东八区时区
default-time_zone = '+8:00'

# docker运行MySQL
docker run -p 你想从外界访问服务器的端口:3306 --name mysql8.0 --restart=always \
-v /usr/local/mysql/log:/var/log/mysql \
-v /usr/local/mysql/data:/var/lib/mysql \
-v /usr/local/mysql/conf:/etc/mysql/conf.d \
-v /etc/localtime:/etc/localtime:ro \
-e MYSQL_ROOT_PASSWORD=fzu12345687 \
-d mysql:8.0


#docker安装Redis6.2
docker pull redis:6.2
#创建文件夹,稍后映射Redis容器文件
mkdir -p /usr/local/redis/data
#在/usr/local/redis/传入redis.conf文件
# docker运行Redis
docker run --restart=always \
-p 你想从外界访问服务器的端口:6379 \
--name redis6.2 \
-v /usr/local/redis/redis.conf:/etc/redis/redis.conf \
-v /usr/local/redis/data:/data \
-d redis:6.2 redis-server /etc/redis/redis.conf



#docker安装nginx1.21
docker pull nginx:1.21
#在vueImpl文件夹下修改nginx.conf的server_name,将dist文件夹改为自己前端打包的文件夹
#三个文件详见https://blog.csdn.net/weixin_45821811/article/details/117000900
#将三个文件放到服务器的一个新的文件夹下,在该文件夹下执行打包操作
# back 是我打包成镜像的名字  :1.0 是我的版本号,不写的话就是 latest 
#最后的小数点不能丢 这代表在这个目录 dockerfile文件
docker build -t back:1.0 .
#检查是否打包成功
docker images
#docker启动项目
#--name 是给启动的这个容器取个名字
#-p 做一个端口暴露
#-d 后台运行
#back:1.0 就是之前打包的镜像名字
#5172是外部访问的时候的端口
docker run --name back -p 5172:80 -d back:1.0
#之后在云服务器安全组加入5172的端口即可
#进阶玩法是通过nginx监听80端口,通过不同sever_name分发



#保存Redis文件
docker exec -it redis6.2 redis-cli -p 你从外界访问服务器Redis的端口
auth 访问Redis的密码
save
#这时Redis的data中就会有dump.rdb文件,直接通过xftp保存到本地
#Docker停止Redis
docker stop redis6.2
#dump.rdb传到新服务器的Redis映射到data中
#Docker开启Redis6.2
docker start redis6.2



#删除未运行的容器
docker container prune
#删除不再使用的卷
docker volume prune
...全文
144 回复 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

122

社区成员

发帖
与我相关
我的任务
社区描述
FZU-SE
软件工程 高校
社区管理员
  • LinQF39
  • 助教-吴可仪
  • 一杯时间
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧