从前端开发人员的角度看敏捷开发

时间:2010-09-20 12:21:35

标签: agile frontend

我最近加入了敏捷软件工程咨询公司作为他们唯一的前端开发人员。

在我看来,敏捷流程的一个特点是你不会转发功能投资,但我被要求工作的方式是预先编码所有内容,从而创造大量的远期投资。这导致了与团队其他成员的大量分离,并且给我提供了很多压力,要求我为服务器端人员提供功能。

我很难找到前端开发和敏捷过程之间的契合度,并且想知道是否有人有类似的经历以及他们如何处理它们?

对此有另一种看法会很有趣。我不是在呻吟,因为我习惯这样工作(我来自机构背景),但看起来好像这些敏捷专家不知道如何使其与前端开发一起工作。

4 个答案:

答案 0 :(得分:21)

Ryan,首先这是一个非常好的主题/问题。感谢您将它发布在Stack Overflow上!

  

“我很难找到前端开发和敏捷过程之间的契合度,并且想知道是否有人有类似的经历以及他们如何处理它们?”

好吧,过去我曾经是一个遵循Scrum框架和敏捷原则的组织的前端开发人员和Scrum Master,但幸运的是我从未有过你所描述的那种经历。但我可以想象,对你来说一定是痛苦的。 不幸的是,有些人使用敏捷和精益流程和框架作为一种工具,通过建议使用它来在政治游戏中取得领先,但他们真正关心的是他们自己的名字和名望,最终发生的是他们不遵循通过并不公平对待敏捷和团队遵循它。对我来说,这听起来要么是来自更高级别的人的政治策略,要么是缺乏对敏捷原则的理解和经验。我认为您的组织需要一个“真正的”全职敏捷教练,而不受组织中更高权力的影响。

  

“从中获得另一个视角会很有趣。”

在我的上一个项目中,我是一个由大约30名工程师组成的企业项目团队的Scrum Master。我也有一个Web开发人员背景。我们遵循Scrum框架并在2周的迭代中工作。每次迭代都有一个Product Backlogs列表,这些列表只不过是产品所有者编写并优先处理的一堆用户故事。用户故事总是需要表示产品的垂直切片而不是水平切片。想象一个多层蛋糕,如果你水平切割它,你会一次只得到一层或者两块但你永远不会得到所有的层,但是当你垂直切割它时,你会得到所有层,就像您的应用程序或网站或工具一样,或者它可能肯定在技术架构上运行,它必须具有多个层,如GUI,安全层,服务器,DB,中间件等。根据Agile Manisfesto,成功是通过工作软件来衡量的,并且工作软件不是一组没有后端的静态前端屏幕,也不是没有任何前端的一组数据库表。因此,我了解到您可以建议或记住的规则始终在垂直切片中工作,这样您就可以在货架上放置可运送的产品,以便投入生产。

简而言之 - 我认为您的问题的解决方案是拥有适当的用户故事,其完成标准应该更多地基于最终产品的小垂直切片而不是一次构建一个水平切片。例如,它应该是基于功能的,例如,构建登录功能而不仅仅是构建login.jsp !!

记住,总是切小蛋糕的垂直切片,它的味道更好! ;)

答案 1 :(得分:5)

  

在我看来,敏捷过程的一个特点是你不会转发功能投资,但我被要求工作的方式是预先编码所有内容,从而创造大量的远期投资。这导致了团队其他成员的分离,给我的服务器端人员带来了很多压力。

你就在这里。他们所要求的是与敏捷相反的。

事实上,团队中只有一名前端开发人员,其他开发人员只做服务器端工作,这是一种灾难。

正如sjt在他的回复(我已经投票)中所建议的那样,敏捷团队应该在小的垂直切片中工作。

为了使其运作良好,您应该是“generalizing specialists”。团队中的每个成员可能在特定领域都有优势,但应该在所有部分做一些工作,在所需的任何领域获得其他团队成员的帮助。

你应该学习并做一些服务器端的工作,而服务器端的人应该学习并做一些前端工作。

答案 2 :(得分:1)

你所描述的不是敏捷,它是一个想要绕过敏捷的人,因为他们不相信它。

答案 3 :(得分:1)

sjt的回答非常好,与你的scrummaster /团队讨论他/他们认为什么是DONE并且可能发送给他的意思?

您在Scrum / XP中的目标是在sprint之前或之后创建潜在的可交付产品,这意味着确保您的用户故事反映了产品的垂直切片或跟踪子弹,如sjt所解释的那样。