Seeing the system dynamic: requirement vs. task

One important leverage in coaching Agile teams is to increase the focus on requirement, rather than task. This article describes the dynamic behind it.

Traditional project tracks the progress at two levels. One level is the milestone, which is often associated with stages such as requirement analyzed, ready for integration, testing done, etc. The other level is the task status often through weekly report meeting. In contrast, Agile development tracks the progress in requirements (note: better to track the value of those requirements, but out of this article's scope). We shall see the dynamic behind different choices, and this understanding helps us make successful change.

Why tasks?

B1-loop: focus on resource to reduce efficiency pressure

Blog - requirement vs task 1.jpg


The resource efficiency here actually means the resource utilization, and we use it in this article to contrast the flow efficiency. Task focus represents resource focus. When facing efficiency pressure, we try to increase resource focus, then resource efficiency, so as to reduce efficiency pressure.

Task focus means tracking tasks and persons. In fact, when tracking tasks, the sequence is often person by person, asking what tasks each person is doing. This makes sure that every person is busy. When there is no suitable task matching their skills, we create tasks to accommodate their skills, for example, by starting another requirement. This has intriguing impact as we shall see later.

Why requirements?

B2-loop: focus on customer to reduce time pressure

Blog - requirement vs task 2.jpg


Requirement focus represents customer focus. When facing market time pressure, we try to increase customer focus, then flow efficiency, shorten cycle time, so as to reduce time pressure.

Customer focus means instead of tracking tasks and persons, we track requirements and make sure that they are flowing. The focus is less on who's idle, i.e. resource efficiency, and more on how requirements could flow smoother.

The tension

With two separate balancing loops, both goals regarding efficiency and time could be achieved. However, there is the tension between resource efficiency and flow efficiency.

As we mentioned for resource efficiency, when there is no suitable task for some people in one requirement, we start another requirement with tasks matching their skills for resource efficiency. However, this increases WIP, thus, reduces flow efficiency. While we focus on customer to seek flow efficiency, we limit the number of requirements working in parallel, i.e. reduce WIP. This inevitably creates the situation where some people will have few suitable tasks to do, thus, reduces resource efficiency.

Blog - requirement vs task 3.jpg


Now, two balancing loops interact. When time pressure gets higher, reduce WIP to improve flow efficiency, while the reduced WIP decreases resource efficiency. Then, B2-loop dominates. When efficiency pressure gets higher, increase WIP to improve resource efficiency, while the increased WIP decreases flow efficiency. Then, B1-loop dominates.

Understanding this tension helps see the resistance in a different way. Even though the customer focus is hard to refute, the underlying systemic structure creates the force against it. The tension also raises an important question about system goal. For your specific organization, which goal do you optimize - resource efficiency or flow efficiency?

The leverage

Is it possible to achieve both, or take one as primary and the other as secondary but still considered?

Blog - requirement vs task 4.jpg


B1-loop: do familiar work to improve resource efficiency

We could start more work in progress to accommodate the skill, so as to improve resource efficiency, at the expense of flow efficiency.

B3-loop: learn and expand skill to improve resource efficiency

We could also expand the skill breadth via learning, and eventually increases resource efficiency. This does not do any harm on flow efficiency, however, learning also takes time. Not surprisingly, the real leverage lies at how effective we could learn and expand skills.

Blog - requirement vs task 5.jpg


The above is the efficiency matrix from the book "This is Lean". The blue line shows the evolution path towards "The perfect state", first achieving B1-loop (flow efficiency) then B3-loop (resource efficiency). However, many organization perceives their starting point as "Efficient islands", in which B2-loop dominates, thus the evolution path becomes the red line. The red line is hard from change management perspective, as it means the drop in resource efficiency firstly. You either change the perception to start from "Wasteland" as it often actually is, or make sure that the drop in resource efficiency is manageable.

The choice of focus on requirement vs. task is essentially the choice between customer focus and resource focus.

Read more

Scrum master ทำแค่เนี๊ยะ

Scrum master ทำแค่เนี๊ยะ

เวลามีคนถามว่า Scrum master ทำอะไร แล้วผมตอบว่าทำให้ Scrum เวิร์คสำหรับทั้งองค์กร ซึ่ง โฟกัสหลัก ๆ 4 อย่างก็จะอยู่ที่ Product owner, ทีม, engineering practices และ องค์กร บางครั้งที่ผมจะได้ยินเสียงตอบกลับมาเบา ๆ ว่า “แค่เนี๊ยะ?” ในฐานะ

By Chokchai
how to สร้าง Knowledge Management

how to สร้าง Knowledge Management

ตอนเรียน Large Scale Scrum กับ Jurgen de Smet สิ่งหนึ่งที่ผมได้เรียนรู้ คือ ปัจจัยสำคัญหนึ่งที่ทำให้องค์กรหนึ่ง ๆ จะเร็วขึ้นได้ คือ จะต้องเรียนรู้ไปพร้อม ๆ กันได้ ซึ่งถ้าอยากทำแบบนั้นได้ก็จะต้อง share ownership

By Chokchai
โลกการเขียนโค้ด ตอน ซามูไรกับสปาตั้น

โลกการเขียนโค้ด ตอน ซามูไรกับสปาตั้น

ซามูไรที่ได้รับความไว้วางใจให้แก้ core logic จะมีสัญชาตญาณซามูไร คือแก้ตรงนี้ จับยามสามตาแล้วรู้เลยว่าจะไประเบิดตรงโน้น แล้ววิ่งไปสกัดบั๊กไว้ก่อนความเสียหายจะเกิด (ถ้าเป็นในหนัง ตอนนี้เป็นบทที่บั๊กร้องว่า “มืงรู้ได้ไง?!” :D) หลังจากที

By Chokchai
ประสบการณ์ TDD

ประสบการณ์ TDD

มันมีบางชั่วขณะ ที่ผมอินกับ Test-Driven Development (TDD) มาก จนอยากจะแนะนำทักษะนี้ให้คนเขียนโค้ดทั่วโลกที่สนใจเลย ผมคิดว่า ทักษะนี้มีผลเยอะมาก ๆ กับความรู้ความชำนาญในการเขียนโค้ดของผมทุกวันนี้ แต่ที่ผมไม่เคยอธิบายเป็นคำพูดออกมาได้คือ ทำไมนะ? เมื่อเช้าตอนกำลังอ่านเกี

By Chokchai