In Kanban systems, a key measure is to determine how many finished work items a process produces over a given time frame. Throughput is central to Little’s Law, which focuses on how predictable flow is through a work queue. In software development, throughput, also known as flow rate, is a count of finished user stories...Read More
Any team can benefit from having a shared understanding about the work they need to do, and there is a long-standing pattern in the agile community that serves as a guide when articulating requirements as “user stories.” The name for the pattern is the Three C’s, and credit for the concept goes to Ron Jeffries,...Read More
Working at a pace that is reasonable over the medium to long term makes it easier to plan releases and iterations and helps avoid putting teams in a situation where they feel burned-out and can’t do their best work. The notion of Sustainable Pace originated in eXtreme Programming (XP). Arriving at a pace that is...Read More
Many organizations have recognized the wisdom behind the concept of ensuring that their workplace is safe for all of their employees. Anzen, a Japanese word for safety, has also come to be used as a term for giving workplace safety that level of elevated importance, in every aspect of human endeavor. Joshua Kerievsky, CEO of...Read More
One of the attributes of high-performing teams is that team members have a shared belief that they can openly share what’s on their mind, in a spirit of transparency, trust, and continuous improvement. Psychological safety is a term for the presence of this form of interpersonal risk-taking, in any group or team context. Amy Edmondson,...Read More
Among the most important things for an effective retrospective is to have psychological safety, and there is a statement that serves as a reminder of what that looks like in practice. That statement is known as the “Prime Directive,” and it was articulated by Norm Kerth in his book Project Retrospectives: A Handbook for Team...Read More
A group of 17 software development practitioners met in February 2001, at The Lodge at the Snowbird ski resort in Utah, and before concluding their meeting, they agreed on a core set of values and principles. That set of values and principles has come to be known as the Manifesto for Agile Software Development. Among...Read More
In software development, when writing code, it’s important to look for ways to make small improvements, such as by removing unnecessary spaces, adding or clarifying comments, improving logic structures, and getting rid of nested loops. In short, when refactoring, the idea is to look for any anti-patterns, or “bad design smells,” that make code harder...Read More
In Scrum, one of the most important outcomes from a Sprint Planning session is for members of the Scrum Team to agree on a statement that summarizes what they intend to achieve during the iteration (Sprint). When deciding how to articulate that statement, or Sprint Goal, Scrum teams choose a subset of work items from...Read More
There are instances where individuals or groups make a choice to address a problem, where that choice proves to be ineffective at best, and does more harm than good, at worst. The term anti-pattern is a general way to call out that sort of situation, where a choice has largely negative consequences. In software development,...Read More