• 320查看
  • 0回复

[应用层软件] 敏捷开发方法在汽车电控软件开发中的应用

[复制链接]


该用户从未签到

发表于 5-3-2024 15:45:27 | 显示全部楼层 |阅读模式

汽车零部件采购、销售通信录       填写你的培训需求,我们帮你找      招募汽车专业培训老师


1、什么是敏捷开发方法?
      敏捷开发方法百度百科的解释是:敏捷开发以用户的需求进化为核心,采用迭代、循序渐进的方法进行软件开发。在敏捷开发中,软件项目在构建初期被切分成多个子项目,各个子项目的成果都经过测试,具备可视、可集成和可运行使用的特征。换言之,就是把一个大项目分为多个相互联系,但也可独立运行的小项目,并分别完成,在此过程中软件一直处于可使用状态。

敏捷开发方法在汽车电控软件开发中的应用w1.jpg

      敏捷开发方法的具体应用流程:通过客户需求提炼出产品功能列表,通过计划会讨论需要完成的阶段性的产品功能列表,工程师开始开发-测试-发布的迭代过程,并进行功能的细化,每天都会进行每日站会,完成后交付阶段性的产品功能软件,用于软件发布应用。每次迭代过程工作主要包括:计划会议、每日站会、开发工作、评审会议和回顾会议。
1.1 敏捷开发框架参与人员

根据上图,发现Scrum敏捷开发框架中人员包括:产品负责人Product Owner,教练及团队带头人Scrum Master,开发团队Team。

Product Owner:产品负责人。定义产品功能,决定产品发布,根据市场变化对功能排列优先级,调整产品功能和迭代顺序,认同或者拒绝迭代的交付。

ScrumMaster:教练及团队负责人。领导团队遵循Scrum的原则、方法,排除团队遇到的困难,确保团队高效率的工作。

The team:开发团队。团队成员包含开发人员、测试人员、外部验收人员等等。
1.2 Scrum 整个开发过程分为五个会议
1)待办事项整理会议

    由产品负责人将下次需要迭代的用户需求,描述给团队成员,教练及团队成员说出不理解的地方进行讨论,通过完善和解决,最终形成产品功能列表。

2)迭代计划会议

    接下来的 Sprint 交付的增量中要包含什么内容?要如何完成交付增量所需的工作?

3)每日站会

    每日站会上团队成员需要回答以下3个问题:昨天,我为帮助开发团队达成阶段性功能需求目标做了什么?今天,我为帮助开发团队达成阶段性功能需求目标准备做什么?是否有任何障碍在阻碍我或开发团队达成阶段性功能需求目标?

4)评审会

    评审会议在阶段性迭代需求任务快结束时举行,用以检视所交付的产品增量并按需调整产品待办列表。在小组向产品负责人展示迭代工作结果,产品负责人给出评价和反馈。

5)回顾会议

    回顾会议的目的在于:检视前一个需求迭代任务中关于人、关系、过程和工具的情况如何;找出并加以排序做得好的和潜在需要改进的主要方面;制定改进 Scrum 团队工作方式的计划。
2、为了推动敏捷开发在全世界的行业应用,发表了敏捷宣言,什么是敏捷宣言?
    个人和交互重于开发过程和工具可用的软件重于复杂的文档寻求和客户的合作重于对合同的谈判对变化的响应重于始终遵守固定的计划
3、为什么汽车行业要使用敏捷开发?

    如今汽车行业的内卷,并且类似于自动驾驶项目,没有明确的开发需求,以及市场竞争激烈,新鲜科技事物的属性,百家争鸣,百花齐放,谁先发布产品谁就占领市场。敏捷宣言中也提出对变化的响应重于始终遵守固定的计划,因此,引入敏捷开发方法对于类似自动驾驶的项目开发有着重要的优势。

    敏捷开发方式,让汽车有持续的生命力和不断产生的价值。通过软件的不断快速迭代和交付,能让客户对汽车产品有新鲜感,有利于品牌价值的提升。

    高效,在开发过程中,客户,开发人员和产品负责人强调以客户的需求不断更新,以产品为目的,而不是流程和工具。

    敏捷开发模式能够使得开发人员关注产品,通过快速的迭代优化和发布,使得产品性能更优越,让产品保持持续的竞争力。
4、敏捷开发使用的工具有哪些?
产品代办列表:以用户故事的形式来建立产品待办事列表,参考网络上的模板。

敏捷开发方法在汽车电控软件开发中的应用w2.jpg

冲刺列表:当迭代任务开始后,就会制作冲刺列表来记录当前各个需求所处的开发状态。

敏捷开发方法在汽车电控软件开发中的应用w3.jpg

燃尽图:显示未完成的需求数量,总体目标数减去已经完成的需求数,按照时间进度的进行排列,用来直观地显示功能开发的进度。

敏捷开发方法在汽车电控软件开发中的应用w4.jpg

5、敏捷开发方法的如何应用?

     对应的软件核心迭代流程就是:总体需求库进行分解为需求组1、需求组2、需求组3、等等。需求组1-开发1-测试1-发布1-需求组2-开发2-测试2-发布2-需求组3-开发3-测试3-发布3。

     在需求组1、需求组2、需求组3每次需求迭代的过程中进行计划会议(迭代前)、每日站会(迭代中)、开发工作、评审会议(迭代完成时)和回顾会议(评审会议结束后),并结合敏捷开发的工具,来实现产品按时按质发布的目标。

6、总结

      敏捷开发流程确实是很敏捷的,流程简单易用,通俗易懂,但是对于开发人员的专业素质要求很高,要求团队的每个人都是极其专业的人员,能面对各种挑战。同时,敏捷开发流程过于太敏捷,文档记录的方面确实存在欠缺,特别是全新的项目,有着不稳定的因素,因此,需要裁剪其它的开发流程进行融合开发。


该用户从未签到

发表于 14-3-2025 06:58:00 | 显示全部楼层
敏捷开发方法在汽车行业中的电控软件开发中应用广泛,其以用户需求为核心,采取迭代开发方式。具体来说,敏捷开发将大项目拆分为多个小项目,每个小项目都可独立运行并具备使用功能。应用流程上,首先根据客户需要确定产品功能列表,通过计划会议讨论阶段性的产品功能并细化,工程师随后进行开发、测试和发布迭代过程。这种方式能更灵活地响应客户需求变化,提高软件开发的效率和质量。
回复 支持 反对

使用道具 举报

快速发帖

您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|手机版|小黑屋|Archiver|汽车工程师之家 ( 渝ICP备18012993号-1 )

GMT+8, 19-8-2025 12:32 , Processed in 0.457891 second(s), 37 queries .

Powered by Discuz! X3.5

© 2001-2013 Comsenz Inc.