从瀑布到敏捷(二)瀑布的脑袋顶着敏捷的旗号进行裸奔的疯狂

本文分享了一次失败的敏捷转型经历,揭示了缺乏真正敏捷实施经验的问题,以及由此带来的瀑布模式思维导致的质量下降和长期维护难题。
部门尽然选择试点敏捷,当然需要请一些熟悉敏捷的人来指导,部门的人员也开始了敏捷的相关学习,但是无论是前来指导的所谓敏捷教练还是土产的敏捷专家,大家其实都没有太多真正的敏捷实施经验,因此敏捷实践照葫芦画瓢为主,虽然敏捷的各种实践活动在进行,大家的座位都搬到了一起,但是在深层次对于敏捷的意识层面的理解基本是空白。一个版本下来,所谓的敏捷试点标杆,因为没有从敏捷的本质上认识敏捷,从实质结果上来看其实是瀑布的脑袋顶着敏捷的旗号进行裸奔的疯狂。版本的前期速度虽然很快,但是版本的质量比原来的瀑布模式下赶工开发的产品质量更差,最好直接导致这个噩梦般的版本,两年多后我们现在还在规模投入维护。
### STM32 新建工程教程与开发环境搭建 #### 工程创建流程 在STM32CubeIDE中,新建一个基础工程的过程可以分为以下几个方面描述。首先,在启动STM32CubeIDE之后,可以通过菜单栏中的“File -> New -> STM32 Project”来开启新项目的向导界面[^1]。在此过程中,用户需要选择目标微控制器型号或者导入已有的板级支持包(BSP)。对于具体的芯片系列,例如STM32F1系列,其对应的配置文件和驱动程序会自动加载到项目环境中[^2]。 #### 配置开发环境 为了确保开发环境的正确搭建,需确认已经安装了适用于所选MCU系列的支持包以及必要的工具链版本。这些资源可以从ST官方生态系统页面获取并按照指引完成安装过程[^4]。当所有必需组件都准备就绪后,可以在STM32CubeMX工具的帮助下进一步定制硬件抽象层(HAL)或低层次APIs的功能模块,并将其集成至最终的应用代码之中[^5]。 #### 初始化源码生成 一旦完成了上述初步设定工作,则可进入实际编码阶段前的最后一项操作——即生成初始框架结构。这一步骤通常涉及指定输出目录位置以及其他个性化偏好参数调整;随后只需简单地按下按钮即可触发自动化脚本运行从而得到一份完整的空白模板供后续填充逻辑实现之用[^3]: ```c // Example of generated initialization code snippet from STM32CubeIDE void SystemClock_Config(void){ RCC_OscInitTypeDef RCC_OscInitStruct = {0}; RCC_ClkInitTypeDef RCC_ClkInitStruct = {0}; /** Configure the main internal regulator output voltage */ __HAL_RCC_PWR_CLK_ENABLE(); } ``` 以上展示了部分可能由该平台自动生成的基础函数定义样例之一 —— `SystemClock_Config` 函数用于初始化系统时钟设置。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值