首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >嵌入式软件开发的敏捷实践

嵌入式软件开发的敏捷实践
EN

Stack Overflow用户
提问于 2010-12-21 18:51:28
回答 3查看 1.3K关注 0票数 6

我取得了巨大的成功,例如快速的开发周期和持续的集成。

但是,由于嵌入式软件编程的特定问题,我认为结对编程或持续的客户沟通不太有用。

你认为如何?嵌入式软件开发中最有用的敏捷实践是什么?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-01-03 11:01:19

我不同意这种说法。我已经做到了,大约10年前,我与人共同创立了一家专注于嵌入式的敏捷教练公司(我们不再是一家公司,而是拥有几个有用资源的the website is still up )。我最近帮助另一家公司在他们的嵌入式项目中采用了敏捷,这对他们来说效果很好。

在嵌入式软件中,像短迭代、结对编程和频繁与客户交流这样的敏捷实践甚至更加重要,因为其中有更多的风险,这既是因为嵌入式系统通常更难在现场更新/更昂贵,也是因为它们经常用于关键任务应用程序。

至于结对编程,如果你的公司只有一个人知道软件组件的第一件事,这是一个巨大的风险,结对编程是进行廉价知识转移的一种很好的方式。两位开发人员都不必是该部分代码的专家。你可以有一个主要的和一个不是的次要合作伙伴。次要合作伙伴能够在程序结构上提供帮助,比较设计决策,确保适当的测试和文档,等等。当然,每个开发人员都必须有时是主要的,有时是次要的,才能使交叉训练有效。这也是一种非常有效的方式,可以让新的开发人员快速了解您的产品。

最后,客户关心的是功能和计划,而不是代码。Embedded不会改变这一点。展示你到目前为止所拥有的和你下一步计划做的事情,确保你正在做你应该做的事情。

票数 5
EN

Stack Overflow用户

发布于 2010-12-22 18:35:53

嵌入式软件开发与普通软件开发没有什么不同,因此您可以使用您认为有用的每一种敏捷实践。

关于结对编程,我把它看作是对类固醇的代码审查。如果您的公司能请得起足够的软件工程师,我看不出为什么它不能用于嵌入式软件开发。

顺便问一下,在“嵌入式软件编程的具体问题”一栏中,您到底考虑了什么?我没有非嵌入式软件开发的经验,也看不出有什么不同。

票数 3
EN

Stack Overflow用户

发布于 2011-08-19 05:59:51

在我看来,敏捷在许多应用程序中的价值并不明显。

许多应用程序,包括嵌入式应用程序,通常包括基于标准的协议或技术。你下载或购买规范,实现规范,边走边测试,然后就完成了。我会在我的日常站立表演中做些什么,“嗯,今天我读了标准的第1页到第9页,明天我计划读第10页到第17页”。基于标准的开发如何从敏捷中受益?对不断变化的客户输入的快速响应,嗯,不。这个标准每天都不会改变。

如果敏捷软件真的意味着“培训”,那么结对编程就合适了。如上所述,除非你能负担得起两倍的工程师人数,否则你的工程师之间很可能会有不同的特定技能。在一个拥有许多重复技能的工程师的大型组织中,也许您可以高效地配对工程师。在较小的组织中,这是如何工作的?除非这真的是结对训练,那好吧。虽然听起来很贵。

通常,仅仅为了托管或部署最少量的首次通过功能,就需要大量的基础设施。如何为嵌入式飞行控制器或汽车发动机控制器进行测试驱动开发?仅仅是为了让基础设施到位来托管一个测试,就需要多年的努力。我当然不希望我的其他设计师和工程师无所事事地等待测试基础设施,这样他们就可以做TDD了。我需要标准驱动的开发,同时等待许多组件组合在一起。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4498476

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档