[2022软工最后一次作业]提问回顾与个人总结

项目内容
本作业所属课程2022年北航敏捷软件工程教学实践
本作业要求个人作业-提问回顾与个人总结
个人课程目标学习到软件工程的方法论,了解整个过程,并进行亲自实践
本作业在哪个具体方面帮助我实现目标总结课程内容及个人表现,螺旋上升式提高自己的知识水平

提问回顾与个人总结

个人阅读作业链接

[2022软工第一次作业]个人阅读作业-阅读和调研

问题解答

问题一:有关课程的设计

这个问题我还是保持原来的观点:虽然转会可以模拟真实市场环境的“跳槽”行为,但毕竟做为一门软件工程的教学课程我们还是需要尽量让学生们专注于一个项目。

问题二:有关代码复审

经过一学期的训练,这个问题我有了自己的理解:对于代码复审的规模,以一个功能为单位进行代码复审即可以达到非常高的效率。代码复审在前期通常是对于技能最熟悉的同学来完成,到了后期则是团体成员之间互相复审。

问题四:有关 MSF 的问题

我认为在 MSF 模式下,团队之间的冲突可以用投票的方式来解决(这也是有时我们团队的一种解决方式)。大家互相将观点摆出来,各自阐述自己方案的优势和劣势,由团队中其他成员根据表示投票选出自己的方案。这样可以有效解决所说的问题。

问题六:科研与创新的关系

这个问题我依然保持自己的原来观点:科研和创新并不是一个并列的词语。将这里的创新转换为工程可以达到更加好的效果,即:

科研是将金钱转换为知识的过程,工程则是将知识转换为金钱的过程,科研与工程中都需要创新。

问题七:有关课程的分数评定

这个问题我还是保持自己的原来的观点:软工做为计算机学院 STAR 课程应该是能让每一位同学们都能学习到最优秀的软件工程知识,而不应该让同学们因为这个课程而内卷。

无法回答的问题

问题三:有关结对编程的思考

这个问题我依然没有办法去解答,因为和我一块进行结对编程的队友也是和我同样优秀的同学。由于没有机会遇到差异较大的队友所以对这个问题还是无法回答。

问题五:有关 Bug Bash 的问题

这个问题也依然没有办法回答,主要是团队也没有举行这样找 bug 的活动。

新遇到的问题

在经历团队作业之后,遇到的一个问题就是:如何高效的开会议?
我们团队曾经尝试过站着开会,但是依然会因为闲聊或者其他的因素而导致会议时间过长。

总结知识点

  • 需求:用户调研。在团队项目时我们需要开发一个操作系统课程平台,因此我们的用户就是操作系统课程的老师们、学生助教和学生们。在这几类用户中最重要的还是操作系统的课程老师,因此我们直接与沃老师联系,并进行了面对面的会议。在开发过程中我们也和沃老师通过视频会议的方式对 Alpha 阶段出口条件和 Beta 阶段出口条件进行讨论。因此用户调研在整个软件的开发过程中都要持续进行,以确保满足用户的需求。
  • 设计:图形建模(ER图)。在进行整个软件的设计时,我们首先绘制了软件的 ER 图,这一步骤是非常重要的,因为我们在设计过程中就不断发现实体存在的问题,因此能及时进行改进。
  • 实践:源代码管理。在团队作业开发的过程中,我们使用 git 进行源代码管理,通过 MR 和同行评审的方式严格保证迁入代码的质量,以保证代码不出现重大问题。
  • 测试:回归测试。我们团队在 CI 部署上进行了回归测试,每一次的 MR 都会触发 CI 进行回归测试,以保证修改后的代码可以通过前面的测试用例,进而一定程度上保证了代码的质量。
  • 发布:发布会议。在每一阶段发布结束之后,我们都进行了一个简短的发布会议,对于本阶段存在的问题进行一个总结,并完成事后分析文档。
  • 维护:复杂项目会诊。在 Alpha 阶段发布之后,我们又测试出了一些问题。此时我们就会商讨这些 Bug 是否要在现在修复,还是等到 Beta 阶段再统一修复。最终我们的处理方式是在开始 Beta 阶段之前进行了统一的 Bug 修改,之后 prod 分支保持不变直到 Beta 阶段结束。通过项目会诊我们明确了 Bug 是否需要立即修复还是统一修复。

理解和心得

个人项目

在个人项目中,首先学习和阅读了《构建之法》这一本书,理解了软件工程中最基本的一些概念和方法。当时对于其中的很多概念都无法理解,但是脑子中会形成这一些概念。之后又调研了 CI/CD 这一重要的方法,收获挺多的,学习到了如何编写持续集成和部署的相关代码。
CSDN 树测评是另一个重要的环节,在这里我学习到了如何可以科学地对软件进行评判。在使用不同软件的过程中,比较各种方面的优劣程度,达到测评的目的。

结对编程

和薛哥的两个星期结对编程是既累又有许多收获的一次经历。使用 Visual Studio 进行开发本身就是一件非常困难的事情(很不熟悉而且 UI 不好看),里面的一些代码覆盖率、动态链接库 DLL 等相关概念也是非常全新,最终还需要实现一个 GUI 界面,难度很大。不过我们还是顶住了压力,完成了任务代码的编写。不论最终结果如何,我们都在一定程度上完成了软件工程的初体验。

团队项目

团队项目是最后的核心部分,也是时间最长的一部分。在这里我们七个人组成的 OSOME 团队希望完成操作系统课程平台的编写。在一开始自己是不太自信的,虽然团队中有非常强烈的后端选手和前端选手,还有很牛的 PM ,但是两周冲刺这对我们有非常多课程的大三同学来说是不现实的,因此当时内心 OS 是比较悲观的(当时因为不想影响团队的开发所以没有表达)。但是我们的团队成员还是太厉害了,通过大家合理安排计划和 Issue ,将任务分配到人,保证每一个任务都能及时完成。即使出现了短时间内人员短缺的情况,大家还是加开紧急会议来把他所负责的任务分摊到每一个人头上,很好的完成了课程工作。不论是 Alpha 阶段还是 Beta 阶段,我们都与操作系统课程平台的老师紧密交流,确保我们的用户对于我们软件的满意。最终在 Beta 阶段实现了一个非常不错的课程平台,成就感是十分满足的。
感谢 OSOME 平台的各位同学们的支持,期待与你们之后还能再次合作。

结后语

软工课,好像慢慢要结束了唉。感谢各位老师、助教们,还有自己的付出!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值