出现字迹模糊迹象_迹象表明您的开发过程仅在纸上才是敏捷的-以及如何解决它

出现字迹模糊迹象

Agility comes with practice, not putting big words on paper. Using Jira does not make your software development process agile. Saying we do “scrum” is not being agile.

敏捷性来自实践,而不是在纸面上大声疾呼。 使用Jira不会使您的软件开发过程敏捷。 说我们做“ scrum”并不是敏捷。

Being agile is having an agile mindset and putting it into practice every day. It is about thinking about the value you deliver to the customer and how to do it better.

敏捷就是拥有敏捷的思维定势,并将其付诸实践。 它是在考虑您为客户提供的价值以及如何做得更好。

This post will unveil five signs your practice isn’t really agile, and how to solve these issues. The signs and solutions will concern multiple roles like Product Manager, Software engineer, and so on.

这篇文章将揭示您的实践并不十分敏捷的五个迹象,以及如何解决这些问题。 标志和解决方案将涉及产品经理,软件工程师等多个角色。

TLDR; (TLDR;)

  • If you are writing documents > 5 pages you can improve.

    如果编写的文档大于5页,则可以改进。
  • There should be a clear definition of Ready for development and Done.

    应该对“准备好开发并完成”有一个清晰的定义。
  • Story/Issue should be based on value delivered to the customer, not only the technical aspect.

    故事/问题应该基于交付给客户的价值,而不仅仅是技术方面。
  • Releasing a new version of software once a month and saying we are agile should be a crime.

    每月发布一次软件的新版本,并说我们敏捷,应该构成犯罪。
  • Not caring about the team is not doing agile right.

    不关心团队并不意味着敏捷。

Now let’s go through these signs that explain why paper boat agile practices will not work and how to fix them.

现在,让我们看一下这些标志,这些标志解释了为什么纸船敏捷实践不起作用以及如何解决这些问题。

超过5页的文档 (Documents that are longer than 5 pages)

There will be big features (epics) and they have to be explained. This does not give you a license to write 50 page documents. If a document is longer than 5 pages many team members will not read it. Accept this fact.

将有重大功能(史诗),必须对其进行说明。 这并不授予您写50页文档的许可。 如果文档超过5页,许多团队成员将不会阅读。 接受这个事实。

One beautiful Monday morning you get a memo of 30 pages text about the new feature the business wants us to develop. Will you read it thoroughly? The answer is No.

一个美丽的星期一早晨,您会收到一份30页的备忘录,内容是该公司希望我们开发的新功能。 您会仔细阅读吗? 答案是不。

You might skim through it to make it through the meeting and that’s about it. Documents become obsolete fast. When requirements change, no one bothers to update documentation.

您可能会略过整个过程以使其通过会议,仅此而已。 文件很快就过时了。 当需求改变时,没有人会去更新文档。

(Solution)

Write documents that are less than or equal to 5 pages. Make it concise and precise. Start creating visual aids for the process to explain it. Create mock-ups, and use tools like Balsamiq. Express the requirements in a way that is understood by everyone with less or no reading involved. Then as need dictates, create a UI design and discuss. After that implement it in code.

撰写少于或等于5页的文档。 使其简洁而精确。 开始为过程进行解释创建视觉辅助。 创建模型,并使用Balsamiq之类的工具。 以每个人都能理解的方式表达需求,而很少或不需要阅读。 然后根据需要,创建一个UI设计并进行讨论。 之后,在代码中实现它。

准备就绪并完成的定义不清楚 (Unclear definition of Ready for development and Done)

A clear definition of ready for development and done are crucial for team success. Not having these or having unclear ones will hamper the team’s performance.

明确定义开发准备就绪和完成对于团队成功至关重要。 没有这些或不清楚的将妨碍团队的表现。

A software engineer should be clear about when the story is ready to be picked up for development. Same goes for done.

软件工程师应该清楚故事何时准备好进行开发。 做同样的事情。

Is it ready for development when the story is created but the description does not exist? Is it done as soon as I deploy it to production and move my task to the “done” column? If there is confusion like this, it is an issue that needs to be addressed.

创建故事但不存在描述时是否准备好进行开发? 我将其部署到生产中并将任务移至“完成”列后是否立即完成? 如果有这样的困惑,那么这个问题就需要解决。

(Solution)

Have a clear point by point “Definition of Ready” and “Definition of Done”. This will help you measure and improve the team’s performance. It will also help everyone involved to understand the meaning of these things the same way.

逐点清楚地说明“就绪的定义”和“完成的定义”。 这将帮助您衡量和改善团队的绩效。 它还将帮助涉及的每个人以相同的方式理解这些事物的含义。

基于技术方面的故事,而不是对客户的价值 (Stories based on the technical aspects, not the value to the customer)

Agile software development is always about delivering value to the customer. Value in the form of working software, not a pile of documents.

敏捷软件开发始终是为客户提供价值。 以工作软件的形式而不是一堆文件的价值。

Say that there is a story like “As a customer service manager I need to know who created a refund so that I can track and audit refunds in future”. This task might entail adding a “created_by” field in the refunds table for instance. But this should not result in having a “story” that says “Add created_by field in the refunds table”. Of course, it can be a task/sub-task as part of the main story. The main story delivers value, but this database task is something that aids the process.

假设有一个故事,例如“作为客户服务经理,我需要知道谁创建了退款,以便以后可以跟踪和审核退款”。 例如,此任务可能需要在退款表中添加“ created_by”字段。 但是,这不应导致出现一个带有“在退款表中添加created_by字段”的“故事”。 当然,它可以是主要故事中的一个任务/子任务。 主要故事提供了价值,但是此数据库任务对流程有帮助。

(Solution)

Have clear definitions and boundaries of Epic, Story, and task. Each story should deliver some value to the customer (as in the above picture). If you are following Scrum you will have story points too for things like team velocity. Technical tasks are required. Still, only the right sum of technical tasks delivers value to the customer.

对史诗,故事和任务有清晰的定义和界限。 每个故事都应为客户带来一些价值(如上图所示)。 如果您关注Scrum,那么对于团队速度之类的事情,您也会有故事要点。 需要技术任务。 尽管如此,只有正确的技术任务总和才能为客户创造价值。

The main thing here is “always focus on the value being delivered to the customer”.

这里的主要内容是“始终专注于交付给客户的价值”。

每月发布一次新版本的软件 (Releasing a new version of software once a month)

The first thing to consider here is:

这里首先要考虑的是:

Deployment is a technical task and releasing a new software version is a business activity.

部署是一项技术任务,发布新软件版本是一项商业活动。

Deployment is not a release. If you are not able to make that distinction there is something that needs to be fixed. On top of it, if you hardly release one new version each month, you are doing agile wrong. Release early release often is an excellent philosophy for getting feedback early. With early feedback, you can make a new set of changes in the next release to make the software better.

部署不是发布 。 如果您无法进行区分,则需要解决一些问题。 最重要的是,如果您几乎每月都不发布一个新版本,则说明您在执行敏捷错误。 早期发布早期发布通常是一种尽早获得反馈的极好的哲学。 有了早期的反馈,您可以在下一个版本中进行一组新的更改,以使软件更好。

This might not apply for the mobile applications as they can have a long vendor approval process. For web applications, deploying and releasing multiple times a day should be a norm.

这可能不适用于移动应用程序,因为它们可能需要很长的供应商批准过程。 对于Web应用程序,每天多次部署和发布应该是一种规范。

(Solution)

Build a culture and technical process that allows you to deploy and/or release to production multiple times a day.

建立文化和技术流程,使您每天可以多次部署和/或发布到生产环境。

Enforce good code quality and excellent software engineering practices. Follow tried and tested best practices like code reviews, automated testing, CI/CD, logging, monitoring, and automated deployment.

增强良好的代码质量和出色的软件工程实践。 遵循久经考验的最佳实践,例如代码审查,自动化测试,CI / CD, 日志记录 ,监视和自动化部署

Call it DevOps, SRE or Platforms engineering — whatever you want. But do it and deploy without fear whenever you want.

随时随地将其称为DevOps,SRE或平台工程。 但是,只要您愿意,就可以做到无忧部署。

不注意团队动力 (Not being careful about team motivation)

Software development is a team sport. If one player is hurt the team covers for that player. If one team member lacks some skills, the team covers and helps teach that skill to the team member. A self-organizing team that reflects on how to make the process better is at the heart of agile.

软件开发是一项团队运动。 如果一名球员受伤,球队将为该球员赔付。 如果一个团队成员缺乏某些技能,则团队会覆盖并帮助向该团队成员教授该技能。 反思如何使流程更好的自组织团队是敏捷的核心。

Team motivation and happy team members are essential to high productivity.

团队合作精神和快乐的团队成员对于提高生产力至关重要。

If you are being treated like story executors with no voice and no room for improvement, it is a big bad sign.

如果您被当作故事执行者一样对待,没有发言权,也没有改善的余地,那将是一个很大的坏兆头。

(Solution)

Build a culture of continuous improvement. Reflect on things that have been done and how the process can be enhanced. For instance, if doing 60% new features and 40% bugs did not work well, find a better ratio. Do team activities and things that uplift the team spirit.

建立持续改进的文化。 反思已经完成的事情以及如何增强该过程。 例如,如果执行60%的新功能和40%的bug效果不佳,请找到更好的比率。 做团队活动和提升团队合作精神的事情。

结论 (Conclusion)

Being agile on paper and being agile in practice are two different things. Don’t let your agile software process be like waterfall model with the so-called agile skin. Be agile and fix these signs to have high team output with fantastic performance.

在纸上敏捷和在实践中敏捷是两件事。 不要让您的敏捷软件过程像带有所谓敏捷皮肤的瀑布模型一样。 敏捷并解决这些问题,以取得出色的团队绩效。

Agile should be implemented to solve people and communication problems which results in stabilizing the technical issues.

应该实施敏捷来解决人员和沟通问题,从而解决技术问题。

You can read more of my blog posts at geshan.com.np.

您可以在geshan.com.np上阅读更多我的博客文章。

翻译自: https://www.freecodecamp.org/news/signs-that-your-development-process-is-agile-only-on-paper-and-how-to-fix-it-f6c05b24337f/

出现字迹模糊迹象

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值