IFI 8410 — Session 4: Functions and Decomposition

Decomposition

Breaking a large problem into smaller pieces

The problem

Why large goals feel hard

"Organize an event." "Complete a study." "Improve a service."

A large goal is hard not because it is big, but because many things are mixed together:

  • decisions that have not been made yet
  • dependencies — what has to happen first
  • uncertainty about what "done" even looks like

You cannot act on a goal. You can only act on a next step.

Definition

Decomposition

Taking a large goal and dividing it into smaller, understandable tasks and steps.

It does not make the goal less important or change its purpose.

It makes the work visible — people can see:

  • what needs to happen
  • in what order
  • who is responsible
  • how each completed piece contributes to the whole

Structure

Goal → tasks → steps

Large goal

Task 1

  • Step 1
  • Step 2

Task 2

  • Step 1
  • Step 2

Task 3

  • Step 1
  • Step 2

Focus on one meaningful task at a time — while keeping sight of the overall outcome.

Why break work down?

Not a longer to-do list

The goal is a plan people can understand, use, inspect, and improve.

Clarity

Vague goals become concrete actions; dependencies become visible.

Reuse

A proven approach is kept and adapted instead of rebuilt from nothing.

Checking

Progress and quality are reviewed piece by piece — not only at the end.

Collaboration

Work is shared without everyone managing the whole effort.

Payoff 1 of 4

Clarity

Each task has a recognizable purpose; each step moves the work forward.

  • Separates what is done from what is still uncertain
  • Reveals dependencies
Choose a venue
→
Send invitations
(they need the location)

Payoff 2 of 4

Reuse

Many large efforts contain tasks you will need again:

  • planning a meeting
  • reviewing information
  • approving a request
  • preparing materials

Reuse is not repeating work without thought.
It is preserving a proven approach so people can adapt it rather than start from nothing.

Payoff 3 of 4

Checking

Small tasks can be reviewed before the whole effort is complete — so a serious problem does not surface at the very end.

At each piece, ask:

  • Is this step complete?
  • Does it meet the expected standard?
  • Is important information missing?
  • Does the next task have what it needs to begin?

Payoff 4 of 4

Collaboration

Works best when each task has a clear outcome, a responsible owner, and a known connection to other tasks.

Planning task
→
Person or group A
Preparation task
→
Person or group B
Review task
→
Person or group C
Final delivery task
→
Person or group D

Fewer duplicated efforts, missed handoffs, and "who acts next?" moments.

How to do it

A practical process

  1. Describe the final outcome clearly — start there, not with activities.
  2. Identify the major tasks needed to produce that outcome.
  3. Divide each task into steps — only until the next action is clear.
  4. Put tasks in order and mark dependencies.
  5. Assign responsibility and agree how each result will be checked.
  6. Review the plan as work progresses; adjust when new information appears.

How far to go?

The right level of detail

Too broad

People do not know what to do next.

"Handle the logistics."

Too narrow

A distracting list of tiny actions that no longer helps anyone understand the work.

"Open the fridge. Take out the butter."

Stop dividing when the next action is obvious.

Example 1 — simple

Hosting a dinner

Host a dinner for several friends on Saturday evening.

Host a dinner

Plan the meal

  • Ask guests about dietary needs
  • Choose dishes
  • Make a shopping list

Prepare for guests

  • Confirm who is attending
  • Set the table
  • Prepare drinks and seating

Prepare the food

  • Shop for ingredients
  • Prepare items that can be made early
  • Cook and serve the meal

Avoids: buying ingredients too late · more food than fits on the stove · learning about a dietary restriction after choosing the menu.

Example 1 — simple

Dinner: the four payoffs

  • Clarity "Host a dinner" is planning, preparation, and serving — not one undefined activity.
  • Reuse Keep a meal-planning checklist and adapt it for the next dinner.
  • Checking Review the guest list, shopping list, and table before cooking begins.
  • Collaboration One person shops, another prepares a dish, another sets the table.

Example 2 — medium

Organizing a student workshop

Organize a one-day student workshop

Define the workshop

  • Choose topic and audience
  • Set learning goals
  • Decide date and length

Arrange logistics

  • Reserve a room or online space
  • Confirm presenters and support
  • Prepare accessibility arrangements

Communicate

  • Create an announcement
  • Open registration
  • Send reminders and details

Prepare the session

  • Create activities and materials
  • Prepare equipment and handouts
  • Review the schedule

Run and review

  • Welcome participants
  • Deliver activities, take questions
  • Collect feedback
  • Record improvements

Example 2 — medium

The same plan as a flow of results

Tasks have dependencies: each stage produces what the next one needs.

Topic and goals
→
Date, location, presenters
→
Participant communication
→
Materials and final schedule
→
Workshop day
→
Feedback and improvement

A tree shows what the work is. A flow shows what each piece hands to the next.

Example 2 — medium

Workshop: the four payoffs

  • Clarity Not just "an event to schedule": purpose, logistics, communication, materials, and review are separate work.
  • Reuse The plan becomes a template — registration messages, accessibility checks, feedback questions, timeline.
  • Checking Confirm the room, match materials to learning goals, verify participants got the details, examine feedback.
  • Collaboration Content, registration, and room/equipment can each go to a different group — with clear handoffs.

Example 3 — complex

Improving community flood preparedness

Prepare for, respond to, and recover from flooding

Understand risks and needs

  • Identify flood-prone areas
  • Review past flood impacts
  • Identify people needing extra support

Set priorities, prepare plan

  • Define desired outcomes
  • Choose actions by urgency and impact
  • Estimate resources and funding

Improve physical readiness

  • Inspect drainage and structures
  • Identify repair work
  • Prepare supplies and access routes

Communication and response

  • Define warnings and channels
  • Prepare evacuation and shelter
  • Practice with relevant groups

Recovery and improvement

  • Document impacts
  • Coordinate recovery support
  • Review what worked and failed
  • Update the plan

Example 3 — complex

Different timing, still connected

Risk information
Community needs
Available resources
→
Priorities and plan
→
Action schedule
→
Preparedness actions
Flood event or practice
→
Review results
→
Update future actions
↺

Several inputs converge; real events feed a loop that updates the plan.

Example 3 — complex

Flood plan: the four payoffs

  • Clarity "Be better prepared" is too broad to guide decisions; the tasks separate risk, priorities, readiness, communication, response, and learning.
  • Reuse Warning messages, contact lists, shelter procedures, and assessment forms are maintained — not recreated mid-emergency.
  • Checking Verify risk data, inspect repairs, test warnings, review drills, update after every event.
  • Collaboration Leaders, emergency services, infrastructure, health, schools, residents, businesses — each owns a part and a handoff.

Example 4 — working backward

Start from the finish line

Examples 1–3 went top-down: name the goal, split it into tasks.

Step 1 of our process said: describe the final outcome clearly — start there, not with activities. Now take that literally.

Forward

"What do we do first?"
→ easy to start busy work that leads nowhere

Backward

"What does done look like?"
← "What had to be finished just before that?"

Your turn — Example 4

Plan a quarterly insights brief — backward

Your team publishes a quarterly industry insights brief: an analysis of the latest industry data, written up for stakeholders.

Done means: a finalized, verified brief delivered to stakeholders — with clear analytical takeaways and a way to collect reader feedback.
  1. Start from done. Ask: what had to be finished just before this? Repeat until you reach the start.
  2. Name the major tasks you found — and who would own each.
  3. Break each task into steps, stopping when the next action is clear.
  4. Mark one checkpoint and one handoff between people.

LiveSythesis · 10 minutes

Example 4 — working backward

The quarterly insights brief

First, define success in plain language:

A finalized, verified quarterly brief delivered to stakeholders — with clear analytical takeaways and a feedback mechanism in place.

Not "write a report." A description of the finished state that anyone can check against.

Example 4 — Level 1: major tasks

Walk backward from the outcome

Ask repeatedly: what had to be finished just before this?

D Scoping & data gathering
Research team
→
C Data analysis & insights
Data team
→
B Production & quality review
Editorial
→
A Final delivery & feedback
Communications
→
Brief delivered, feedback in place

Planned right to left — executed left to right.

Example 4 — Level 2: smaller steps

One level further: next actions

Brief delivered, feedback in place

D · Scoping & data

  • D1 Define research questions and audience
  • D2 Collect raw datasets; interview experts
Research team

C · Analysis & insights

  • C1 Clean raw data; compute summary metrics
  • C2 Synthesize metrics into findings and trends
Data analyst

B · Production & review

  • B1 Draft charts and narrative
  • B2 Inspect for accuracy and layout
  • B3 Obtain final sign-off
Technical writer, editorial

A · Delivery & feedback

  • A1 Send through distribution channels
  • A2 Deploy reader feedback forms
Communications

Detailed enough to act on — not bogged down in tiny actions like "open the spreadsheet."

Example 4 — comparing the two levels

Brief: the four payoffs at two levels

Level 1 — major tasksLevel 2 — smaller steps
ClarityA vague goal becomes four recognizable phases.Shows exactly what is finished and exposes exact dependencies — layout inspection B2 must come before sending A1.
ReuseA standard sequence — Scoping → Analysis → Production → Delivery — frames every future brief.Keeps repeatable artifacts: data-cleaning scripts C1, a layout template B1, feedback questions A2.
CheckingBoundaries between phases where progress is evaluated.Concrete review points: verify metrics before drafting visuals; inspect layout before publishing.
CollaborationOwnership by team: Research, Data, Editorial, Communications.Explicit handoffs: the analyst finishes C1 and hands clean metrics to the writer for B1.

Each level adds detail — and each piece still points at the same outcome. That is the final check.

Final review

Keeping the pieces connected

QuestionProtects
Is every task connected to the overall goal?Clarity — no unnecessary work
Can a useful task or set of steps be used again?Reuse of successful approaches
Is there a clear point where each important result is reviewed?Checking before problems spread
Does everyone know who is responsible and what they need from others?Collaboration

Understandable without becoming fragmented.

From plans to programs

In Python, the pieces are functions

def load_sales(path):        ...   # one task, one responsibility
def clean(rows):             ...
def summarize(rows):         ...
def format_report(summary):  ...

report = format_report(summarize(clean(load_sales("sales.csv"))))
  • Clarity a name and a docstring that state one job
  • Reuse call it again with different inputs
  • Checking test each piece with assert
  • Collaboration a contract: parameters in, return value out

Takeaway

Small enough to guide action.
Connected enough to produce one result.

Next: Python functions and scripts

Reading: Decomposition: Breaking a Large Problem into Smaller Pieces

◀ Slides