如何成为敏捷程序员?

时间:2010-10-03 14:50:12

标签: agile

我是发展部门的实习生。我的老板说我应该是一个敏捷的程序员。

我浏览了网络,发现了一些关于敏捷编程的有趣内容。作为一个新手,我应该如何从敏捷开始呢? 敏捷编程的第一步应该是什么?

目前我正在进行结对编程。但这并不完全是结对编程,因为我只是在看我的合作开发人员在做什么。 我也希望成为一名灵活的开发人员 你能逐步为我建议一种方式吗?

我希望发展自己以及我的编程技巧。

6 个答案:

答案 0 :(得分:6)

关键字是Courage。

勇于估计和讨论你的工作

勇于开始处理细节不足的小故事

勇于与客户交谈以阐述所述故事

勇于建设性地批评团队成员代码

勇于审视您的错误(公开)并向他们学习

在已经提供价值的情况下,勇于发布“未完成但良好且可发送”的代码。

当管理层有一个好主意时,勇于坚持商定的团队流程

在找到更好的方法时,勇于修改团队中商定的流程

使用测试驱动开发和持续集成来提供高质量代码的勇气。

...

注意:未完成的部分并不意味着“低质量”,这意味着满足客户,干净地实施,测试,准备就绪。然而,缺乏开发人员的完美理念,即弹簧配置有点笨重,可以进行一些重构,一些自动配置,一些速度改进,一些极端情况...我发现一些开发人员把“用户故事作为人质”并保持它不可挽回,直到它是完美的。如果它是好的,你应该放手,更好的是下一个冲刺。

答案 1 :(得分:3)

在我的组织中,您所要做的就是宣称自己是敏捷程序员。可悲的是,规划和文档的需求消失了。

答案 2 :(得分:3)

  

敏捷编程的第一步应该是什么?

阅读敏捷宣言的12项原则here。理解并尝试从每个方面理解并按照说明的方式实施它们。

  1. 虽然敏捷原则可以单独采用,但应该在组织层面或至少是项目层面的IMO上采用。敦促您的团队和您的项目使用更灵活的SDLC方法,例如Scrum。如果您正确使用Scrum,您将自动变得敏捷。

  2. 对于敏捷编程 - 配对程序,配置持续集成和构建系统,使用测试驱动开发,通过执行代码审查,设计讨论和高单元测试代码,持续关注代码质量和设计最佳实践覆盖。

答案 3 :(得分:1)

  1. 询问需要做什么。
  2. 按优先顺序对该列表进行排序。
  3. 在列表中编码,测试并传递最重要的内容;在你这样做的时候抵制被打断:如果有人试图打断你,说明你正忙着做最重要的事情,而且因为你专注于只做一件事就不会花很长时间而且他们会能够让你尽快做其他事情(这个阶段叫做“冲刺”)。
  4. 一旦交付,请求下一个最重要的事情,然后再做,等等。

答案 4 :(得分:1)

根据我的理解,可以提出敏捷开发过程(正如ChrisW& Peter所说:):),例如:

在指定时间内交付的工作应该具有敏捷性/移动/进展。

你需要:

1)选择自己/由老板分配,这是一项具有可接受时间的任务    线。

2)准备好正确估计要处理和完成工作的时间    关于那个的协议

3)每天都在sprint / meeting(仅适用于:10-15分钟)与您的讨论    老板/团队并解释当天的目标/计划。

4)最好不要偏离你的任务,直到它完成为止    成功完成,否则会扰乱你的时间线。

5)在一天结束时,发送一份工作状态的状态。

6)任务完成后,通过老板主动通知并完成下一个任务。

6)更重要的是,您尝试习惯于基于时间线的交付。

答案 5 :(得分:1)

独自完成这一切将非常困难。如果您在agilemanifesto网站上使用principles,您会看到至少有6个项目涉及人员和团队。你需要从你的同事和老板那里得到一些支持。

我从你的伴侣开始。偶尔要求转弯。你可以尝试这样的事情,“让我看看我是否不知道这一点,我可以尝试添加下一个功能点。”

话虽如此,Ghandi有一句好话,“是你想要在世界上看到的变化。”你可以采取很多措施来提高你的游戏水平。编写测试getting a continuous build working,设定可实现的目标that have some basis in past experiencerefactoring

还有tons of books对开始使用的人非常有帮助。您网站上可能有人想指导您。如果你表明你有兴趣继续学习,那么有人可能会帮助你。和你的老板谈谈。如果他想要你的某些东西,他应该能够至少指出你可以帮助的人的方向。