insights

How to break down task properly, Divide and Conquer Method

2023-12-06
ON THIS PAGE

Have you ever felt overwhelmed when facing tasks that seem to require too much time and energy? In reality, many people struggle with dividing their work into manageable parts, a challenge I've observed and assisted with during service onboarding and daily work planning.

In computer science, there's a problem-solving strategy called divide and conquer. This involves identifying the smaller problems that make up a larger problem and combining their solutions to solve the big problem.

  • Divide: Break down the problem into several sub-problems of the same type until it can no longer be divided.
  • Conquer: Solve and conquer the smallest unit of sub-problems.
  • Combine: Combine the results of the sub-problems to form the solution to the original problem.

Applying this divide and conquer method from computer science to our projects and tasks can help us plan and manage them at an appropriate level, reducing psychological stress and progressing with work. Before we look into how to divide and manage tasks, let's further understand why we need to divide tasks.

Why is task division helpful?

It allows for the early identification of foreseeable problems.

By deciding to break tasks down to their atomic level, you can identify a variety of predictable issues. For instance, creating the output of a task might require various materials, and you might discover that producing certain materials requires proactive decision-making or find points where lack of information could delay subsequent tasks. Additionally, some tasks may impact other projects, necessitating very careful decision-making and proper planning. (e.g., "We need to change the backend structure to make this!")

Efficient task management also involves minimizing redundant tasks and carefully planning task flows. Breaking down tasks can help identify closely related tasks, which can then be scheduled to be performed at the same time, saving mental energy.

It allows for full immersion in problem-solving.

The human brain is programmed to experience a degree of fear along with new challenges and desires. When getting a new job or seeking new encounters, the amygdala sends warnings to our body. At these times, the rational thinking of the cerebral cortex can become limited or even come to a halt.
<One Small Step Can Change Your Life - Robert Mau

The human brain is programmed to experience a degree of fear along with new challenges and desires. When getting a new job or seeking new encounters, the amygdala sends warnings to our body. At these times, the rational thinking of the cerebral cortex can become limited or even come to a halt.

When humans face difficult problems or are demanded significant changes, they feel fear and stress, hindering their ability to think rationally and immerse themselves in problem-solving. The larger our goals and the greater the size and impact of the task, the more overwhelmed and stressed we feel. Psychologist Robert Maurer suggests that this fear and stress can be circumvented through "small steps."

Maurer's concept of "small steps" shares the same essence with the divide and conquer approach to task management. Big tasks or goals can plunge us into fear and impair our rational functions. However, by breaking down these large tasks into smaller, manageable units and transforming them into achievable goals, we can bypass our fear, restore our rational capabilities, and fully immerse ourselves in completing the tasks.

You can avoid Yak Shaving.

Reference - Garbriel @ x
Doing ‘Z’ to do ‘Y’ to do ‘X’ …. SO YOU CAN DO A

Yak Shaving, simply put, means finding yourself doing something entirely different from what you originally intended to do. A famous example illustrates this concept:

  • Spring is here, so I should wash the car.
  • Oh, the hose burst over the winter. I need to buy a new one from Home Depot.
  • To get to Home Depot, I have to cross the Tappan Zee Bridge, which requires an EzPass.
  • I’ll have to borrow the EzPass from my neighbor, Bob.
  • But my son borrowed a pillow for a Boy Scout camping trip from Bob…
  • And Bob won’t lend his EzPass until we return his pillow…
  • But the pillow has lost a lot of yak hair, so I can’t return it right now…
  • I need to find yak hair to fix the pillow…
  • So, to wash the car, I end up at the zoo shaving a yak.

One of the major reasons for work delays is the divergence of thoughts in the process of producing task outcomes, juggling various related tasks simultaneously (researching, designing, meeting, etc.). Especially for tasks with broad scope and long durations, the likelihood of experiencing Yak Shaving increases significantly.

Divergent tasks aren't inherently bad. They may be necessary for producing creative outcomes, but when there are specific deadlines and goals, it's essential to finely divide tasks, cleanly organize what needs to be done, and complete it efficiently. Setting aside specific times for divergent tasks, followed by dedicated times for consolidation, can enhance productivity.

It enables better time management.

You can't always do everything right the first time. What we need to do is [Execute → Evaluate → Improve]. Evaluation usually involves two aspects:

Was there a problem with the decision-making?

  • This shouldn't have been done.

Was there a problem with the execution?

  • A process might have encountered issues causing delays, or the outcome might not have met the expected quality.

To identify if the decision-making was problematic, it's crucial that there were no issues with the execution.

Improving time management ultimately requires identifying problems through accurate evaluation of the execution. However, once the estimated time for a task exceeds four hours, multiple processes come into play, making it difficult to pinpoint where in the use of your time the problems occurred.

Task division allows us to understand the structure of a series of processes and how much time each task took. This helps us see where most of our actual time went, identify if we neglected any critical aspects, and make improvements.

How should tasks be divided

While divide and conquer in computer science suggests breaking down tasks to the smallest possible level, I believe there's an appropriate limit in practical work rather than infinite division. I consider the M3D4H level - up to 3 steps and 4 hours for each task - as suitable and will introduce a method to divide and execute tasks accordingly.

Let's take "Creating a landing page" as an example task to divide.

Step 1. Define the Outcome

What is this task? Specifically, when and what kind of outcome is needed?

The first task we create is likely to be something not well-defined, like "Creating a landing page." We know it's a task, but the difficulty and scope of the work can vary widely depending on when it needs to be completed and what specifically needs to be made. Therefore, when planning a task, we must first clearly define the expected outcome and deadline.

Outcome Definition: A landing page created with a no-code tool, viewable on both mobile and PC screens, featuring a main page and a demo request page, published on the web within 2 weeks.

Now that our desired outcome is clear, let's define the components needed to create this outcome.

Step 2. Define the Components

What components are needed for the final outcome?

Next, we need to define the components necessary to create the outcome. For creating a landing page with a no-code tool, we might define the following tasks:

✅  No-code service for hosting the landing page

✅ Domain address

✅ Landing page design file in Figma

✅ No-code pages implemented with the design

At this point, we might think of parts we hadn't considered or additional tasks that arise. Before further dividing the task, it's necessary to define and gather any missing information. This is because defining subcomponents without the proper collection of information might lead to unnecessary work or Yak Shaving, as discussed earlier. Attempting to collect information and produce work simultaneously can reduce work efficiency due to the different nature of these two activities.

Step 3. Define and Collect Missing Information

Before creating the necessary components, what information is missing?

To produce the correct outcome without unnecessary decisions, consider what information is needed.

  • Decisions need to be made about which no-code service to use, but I'm unaware of the pros and cons and costs of no-code services.
  • I realized I haven't chosen a domain address yet. Although it can be decided later, considering it in advance might also involve branding considerations.
  • But we don't know if that domain address is available for purchase, so we need to check its availability in advance.
  • The design lacks specific images. I need to look for design references that can inspire and understand their strengths and weaknesses.
  • I haven't analyzed the design elements of competitors yet. To avoid creating something indistinguishable from competitors, it's necessary to research them and consider our positioning.

After listing these questions, turn each piece of information to be gathered into a task and estimate the time needed. If the expected research scope exceeds 4 hours at a glance, further divide the task to distribute the time (a single task should not exceed 4 hours).

Step 4. Define the Elements

What are the necessary elements to create the components once all the required information has been gathered?

After gathering all the necessary information and completing bottleneck decisions, it's time to divide the components into even smaller elements. Depending on the level of the task, it might not be necessary to break it down to the third depth of elements.

✅ No-code service for hosting the landing page

  • Sign up and payment for Webflow service

✅ Domain address

  • Purchase the domain address offlight.work

✅ Landing page design file in Figma

  • pc - Create mockups
  • pc - Create 4 service images
  • pc - Create main page
  • pc - Create demo request page
  • mobile - Create mobile mockups
  • mobile - Create 4 service images
  • mobile - Create main page
  • mobile - Create demo request page

✅ No-code pages implemented with the design

  • Create global elements (header/footer)
  • Create main page
  • Create demo request page
  • Apply responsive design
  • Change domain address

Step 5.Estimate Time Required

How much time is estimated to complete each task?

Now, predict the time required to complete each task in 15-minute increments or roughly estimate using t-shirt sizes. If a task exceeds 4 hours, consider it as a component of an outcome and divide it further (tasks exactly 4 hours long can also be divided if possible).

T-shirt sizes:

  • XS - 15m
  • S - 30m
  • M - 1h
  • L - 2h
  • XL - 4h

Sumarry

  1. STEP 1. Define the Outcome - Specifically define the outcome of the task.
  2. STEP 2. Define the Components - Define the materials needed to create the outcome.
  3. STEP 3. Identify and Collect Missing Information - Identify and gather information lacking for component creation.
  4. STEP 4. Define the Elements - Define the elements that make up the components.
  5. STEP 5. Estimate Time Required - Estimate the time it takes to complete each task.

If you discover a task that requires more than 4 hours during this process, it means the task includes multiple processes. In this case, you should perform "Define the Outcome → Define the Components → Define the Elements" again.

공유하기
Turn everyday
into
accomplishments.
Sign up for OBT