[T.18] RedCinnamoroll:Beta 阶段项目总结

RedCinnamoroll 2024-06-30 21:00:03

img

项目内容
这个作业属于哪个课程2024年北航敏捷软件工程
这个作业的要求在哪里[T.18] 团队项目:Beta 阶段项目总结
我们在这个课程的目标是学习敏捷开发的思想,合作开发出一款优秀有趣的软件
这个作业在哪个具体方面帮助我们实现目标回顾 Beta 阶段,总结与反思

Notion

设想和目标

我们的软件要解决什么问题?是否定义得很清楚?是否对典型用户和典型场景有清晰的描述?

制作一款Rougelike塔防游戏。是。

我们达到目标了么(原计划的功能做到了几个? 按照原计划交付时间交付了么? 原计划达到的用户数量达到了么?)

我们基本完成了原计划开发,但是音乐和美术素材部分被推至Beta阶段。

在Beta阶段完成了组装件效果实现、教程系统、仓库系统、图鉴系统、Buff系统、奖励掉落、数值设计、美工和音乐素材的整理添加等工作。

我们计划中Beta阶段中的用户数量应当达到了。

用户量, 用户对重要功能的接受程度和我们事先的预想一致么? 我们离目标更近了么?

用户对重要功能比较接受,但是提出了

我们离目标更近了。

有什么经验教训? 如果历史重来一遍, 我们会做什么改进?

一定要提前找到/安排负责美工的人员

提前规化工作总量,根据每个成员擅长的工作分配任务。

为用户需求划分提前划分优先级,集中精力完善核心需求。

计划

是否有充足的时间来做计划?

是的

团队在计划阶段是如何解决同事们对于计划的不同意见的?

吵架

及时召开小组会议,对于少数有意见分歧之处,经过组内和谐友善的讨论得到一个解决方案

实际上大部分计划都没有很多不同意见。

你原计划的工作是否最后都做完了? 如果有没做完的,为什么?

  • 没能即时解决所有教程系统的bug

有没有发现你做了一些事后看来没必要或没多大价值的事?

  • 防御塔初始阶段使用的素材后来遭到废弃

是否每一项任务都有清楚定义和衡量的交付件?

对任务与目标效果有较为清晰的描述

是否项目的整个过程都按照计划进行,项目出了什么意外?有什么风险是当时没有估计到的,为什么没有估计到?

基本按计划进行。

在计划中有没有留下缓冲区,缓冲区有作用么?

留下了缓冲区,但没有发挥作用

将来的计划会做什么修改?(例如:缓冲区的定义,加班)

提早分配美术与音乐素材内容。

我们学到了什么? 如果历史重来一遍, 我们会做什么改进?

应当提前明确列出所有的任务,并及时对工作量进行重新估计

资源

我们有足够的资源来完成各项任务么?

缺少美术与音乐资源

各项任务所需的时间和其他资源是如何估计的,精度如何?

由于对unity项目的不熟悉,我们只能基于其他项目的经验进行估计,部分内容有一定偏差

测试的时间,人力和软件/硬件资源是否足够? 对于那些不需要编程的资源 (美工设计/文案)是否低估难度?

足够。是的,对于美术与音乐完全低估。

你有没有感到你做的事情可以让别人来做(更有效率)?

可能较少有对全局效率有很大提升的。

有什么经验教训? 如果历史重来一遍, 我们会做什么改进?

同上

变更管理

每个相关的员工都及时知道了变更的消息?

是的,我们会在线下与线上微信群等渠道进行通知,对于未确认收到的成员PM会私聊提醒

我们采用了什么办法决定“推迟”和“必须实现”的功能?

考虑游戏系统与玩家需求协商解决

项目的出口条件(Exit Criteria – 什么叫“做好了”)有清晰的定义么?

对于可能的变更是否能制定应急计划?

员工是否能够有效地处理意料之外的工作请求?

我们学到了什么? 如果历史重来一遍, 我们会做什么改进?

我们完成的较好

设计/实现

设计工作在什么时候,由谁来完成的?是合适的时间,合适的人么?

在 Beta 阶段第一周之前由PM完成。是的。

设计工作有没有碰到模棱两可的情况,团队是如何解决的?

存在,与PM交流解决

团队是否运用单元测试(unit test),测试驱动的开发(TDD)、UML, 或者其他工具来帮助设计和实现?这些工具有效么? 比较项目开始的 UML 文档和现在的状态有什么区别?这些区别如何产生的?是否要更新 UML 文档?

部分功能的逻辑实现使用了UML。

什么功能产生的Bug最多,为什么?在发布之后发现了什么重要的bug? 为什么我们在设计/开发的时候没有想到这些情况?

教程产生了较多的bug,因为后期测试的不完善和得过且过,没有预想到玩家特殊行为的常见性,以及unity对硬件性能的依赖性,使展示效果不够完美

代码复审(Code Review)是如何进行的,是否严格执行了代码规范?

通过 github 的 pull request review 功能完成。

严格执行了代码规范。配置了 CI 对 pr 进行检测。

我们学到了什么? 如果历史重来一遍, 我们会做什么改进?

应当更加明确地写出不同功能的需求

测试/发布

团队是否有一个测试计划?为什么没有?

没有。没有提前为测试进行规划。

是否进行了正式的验收测试?

是的。

团队是否有测试工具来帮助测试?

没有。

很多团队用大量低效率的手动测试,请提出改进计划:至少一个方面的测试要用自动化的测试工具,自动化的测试结果报告,比较测试结果的差异,等等。

使用编写的 debug 功能进行测试场景对搭建。

团队是如何测量并跟踪软件的效能(Performance)的?压力测试(Stress Test)呢? 从软件实际运行的结果来看,这些测试工作有用么?应该有哪些改进?

由于unity引擎的问题,在电脑电量低时,小游戏中会出现不符合预期的行为。我们在这方面的测试不够完善。

在发布的过程中发现了哪些意外问题?

存在不合预期的实现,进行了临时改动。

我们学到了什么? 如果重来一遍, 我们会做什么改进?

应当提前规划并实施测试

团队的角色,管理,合作

团队的每个角色是如何确定的,是不是人尽其才?

主要由个人意向决定,基本实现人尽其才(我被榨干了 by 某组员)

团队成员之间有互相帮助么?

有。现在就在x

当出现项目管理、合作方面的问题时,团队成员如何解决问题?

主动交流

总结:

你觉得团队目前的状态属于 CMM/CMMI 中的哪个档次?

管理级

你觉得团队目前处于 萌芽/磨合/规范/创造 阶段的哪一个阶段? 你觉得团队在这个里程碑相比前一个里程碑有什么改进?

创造阶段

你觉得目前最需要改进的一个方面是什么?

需要提高组会效率

对照敏捷开发的原则, 你觉得你们小组做得最好的是哪几个原则? 请列出具体的事例。

  • 不断的交付可用的软件。我们不断迭代并将模块添加至软件中,每阶段均是可用的。
  • 可工作软件是衡量进度首要标准。我们根据各功能模块的完成情况来衡量进度。

正如我们前面提到的, 软件的质量 = 程序的质量 + 软件工程的质量,那团队在下一阶段应该如何提高软件工程的质量呢?

  • 代码管理的质量具体应该如何提高? 代码复审和代码规范的质量应该如何提高?

    完善提交规范

  • 项目管理有哪些具体的提高?

    明确进度,规范文档。

  • 项目跟踪用户数据方面,计划要提高什么地方?例如你们是如何知道每日/周活跃用户等数据的?

    提升用户群的作用。

  • 项目文档的质量如何提高?

    理清文档结构,简洁规范。

  • 对于人的领导和管理, 有什么具体可以改进的地方? 请看《构建之法》关于PM、绩效考核的章节, 或者 《人件》等参考书

    提高交流

img

...全文
583 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复
内容概要:本文提出了一种改进的各向异性引导滤波器,通过引入加权平均策略,在实现最大程度平滑扩散的同时有效保留图像中的强边缘特征,从而实现强各向异性滤波效果。该方法在继承传统引导滤波器计算效率高、运行稳定优势的基础上,进一步增强了边缘保持能力与结构感知性能,适用于图像去噪、细节增强、边缘提取和多尺度分解等任务。文中配套提供了完整的Matlab代码实现方案,便于算法复现与实际应用,具有较强的工程实用性与科研参考价值。; 适合人群:具备一定图像处理理论基础和Matlab编程能力,从事计算机视觉、图像增强或滤波算法研究的科研人员与工程技术人员,尤其适合攻读硕士、博士学位并聚焦于图像预处理方向的研究者。; 使用场景及目标:①在图像预处理阶段去除噪声干扰的同时保持关键结构信息;②作为高层视觉任务(如语义分割、目标检测)的前置模块以提升输入图像质量;③支持学术研究中的滤波算法对比实验与性能评估,助力高水平论文撰写与算法创新。; 阅读建议:建议读者结合所提供的Matlab代码深入理解加权机制与各向异性扩散原理,重点分析局部窗口内权重矩阵的构建方式及其对滤波性能的影响,并推荐与双边滤波、标准引导滤波等经典方法进行可视化对比,以全面掌握其优势与适用边界。
源码下载地址: https://pan.quark.cn/s/7f242081e14c 标题 "普中51-A2开发板资料.7z" 提供的信息表明,这是一个与普中51-A2开发板相关的资源包。 51单片机是微控制器领域中的一个经典系列,STC-89C52是51系列中的一个型号,常用于教学和入门级项目。 这个压缩包可能包含了一系列帮助用户理解和使用该开发板的材料。 描述中的"SHA256: B889D6FE71BF1CB25C67D57BE0854787F4D6902B20E2A1AF8FC9DEB66F4C7827"是文件的哈希值,用于验证文件的完整性和未被篡改,但具体知识点不在此范围内。 从标签来看,我们可以期待以下内容:1. **普中51-A2开发板**:这是一款基于51单片机的开发工具,可能包括硬件电路图、原理图、PCB设计文件等。 2. **STC-89C52**:这是51单片机的一个变种,具有增强的特性,如更多的I/O口、更大的内存等。 资料可能包含其数据手册、引脚定义、编程指南等。 3. **开发板**:可能包含开发板的使用手册、接线教程、初始化设置步骤等。 4. **51单片机**:基础理论、指令集、编程语言(如汇编或C语言)、中断系统、定时器/计数器的使用等。 5. **开发工具**:可能有Keil、Proteus、ISP编程软件等,这些工具用于编写、调试和烧录代码到单片机中。 从压缩包子文件的文件名称列表来看,我们可以深入学习以下内容:1. **普中51单片机开发攻略--A2.pdf**:这可能是开发板的用户指南或教程,涵盖基本操作、示例项目和常见问题解答。 2. **5--开发工具.rar**:可能包含开发环境的安装教程、配置指南和使用技巧。 3. **5--实验程序....
内容概要:本文围绕“基于水动力模型的螺旋桨驱动机器人模拟研究”展开,系统性地实现了无人水下航行器(UUV)的动力学建模与控制仿真,采用Matlab作为主要工具完成系统建模、算法设计与仿真验证。研究聚焦于构建精确的水下机器人六自由度非线性动力学模型,充分考虑流体静力学、附加质量、阻尼力及重力-浮力耦合效应等关键水动力因素,并在此基础上设计了PID与LQR复合控制策略,实现对UUV姿态角(俯仰、横滚、偏航)与运动速度的高精度协同控制。研究内容涵盖水动力模型建立、运动方程推导、控制器参数设计、稳定性分析及仿真平台搭建等核心环节,通过仿真实验验证了所提控制策略在复杂水下环境中良好的动态响应性能与鲁棒性,为UUV的自主导航、路径跟踪与高精度作业提供了有效的理论依据和技术支持。; 适合人群:具备自动控制理论、海洋工程或水下机器人等相关专业背景,熟悉Matlab/Simulink仿真环境,掌握经典控制理论(如PID)与现代控制理论(如状态空间、LQR)的基础知识,且具有一定动力学建模与仿真经验的研究生、科研人员及工程技术人员。; 使用场景及目标:①用于水下机器人控制系统的设计、性能评估与算法优化;②支撑高水平学术论文的撰写与发表,尤其适用于UUV建模、水动力仿真、非线性控制、多变量耦合控制等领域;③为实际水下装备的研发提供低成本、高效率的前期仿真验证平台,探索先进控制算法在复杂流体环境中的应用潜力。; 阅读建议:建议读者结合提供的Matlab代码与理论文档进行同步学习与仿真操作,重点关注水动力系数的物理意义与获取方法、非线性模型的线性化处理技巧以及PID与LQR控制器的参数整定过程,深入理解多变量系统间的耦合关系及其对控制性能的影响,从而全面掌握UUV仿真与控制的核心技术要点。

73

社区成员

发帖
与我相关
我的任务
社区描述
2024年北航敏捷软件工程
软件工程团队开发结对编程 高校 北京·海淀区
社区管理员
  • clotho67
  • Yeyanhan
  • HJin_Gwok
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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