← Programming & Analysis

Sheet PR-106
PA

Programming Processconcept

Five steps of programming: Goals, Facts, Concepts, Needs, State the Problem

One-line orientation

The Problem Seeking framework turns client information into a clear problem statement. Its five steps move from goals and facts to concepts, needs, and design criteria.

Key points

  • Step 1 — Establish Goals: “What does the client want to achieve and why?” Goals are organized across Function, Form, Economy, and Time. This is aspirational and values-driven.
  • Step 2 — Collect and Analyze Facts: “What do we know?” Gathers existing conditions: site data (climate, physical characteristics, aesthetic context, legal constraints), occupancy counts, and desired square footage per space. Facts are often documented graphically (e.g., site survey).
  • Step 3 — Uncover and Test Concepts: “How does the client want to achieve the goals?” Develops programmatic concepts — abstract performance ideas that bridge goals to design. A concept is not a design solution; it is the idea that drives one. Example: concept = “views of nature” → design response = “windows.”
  • Step 4 — Determine Needs: “What resources (money, space) are available? What is the desired quality level?” This is the economic feasibility step within programming. It differentiates needs (what the budget/schedule can support) from wants (desired extras). When needs exceed available resources, at least one variable—quantity, quality, budget, or time—must change.
  • Step 5 — State the Problem: “What direction should the design take?” Summarizes all prior steps into concise problem statements organized by Function, Form, Economy, and Time. These statements are the design criteria handed to the design team — programming ends here.

The five programming steps as a broad-to-focused funnel

SCHEMATIC

Problem Seeking: each step narrows the brief from broad goals to a focused problem.

View diagram Hide diagram

Scroll horizontally to explore

The five programming steps as a broad-to-focused funnel A funnel of five narrowing step cards between two converging walls, broad at the top and focused at the bottom: 1 Establish Goals, 2 Collect and Analyze Facts, 3 Uncover and Test Concepts, 4 Determine Needs, and the accented 5 State the Problem. Each card carries its driving question. An arrow drops from step 5 into an accented handoff row where design begins, holding four criteria chips: Function, Form, Economy, and Time. BROADFOCUSED1Establish GoalsWhat does the client want to achieve and why?2Collect and Analyze FactsWhat do we know?3Uncover and Test ConceptsHow does the client want to achieve the goals?4Determine NeedsWhat resources and quality level are available? (needs vs wants)5State the ProblemWhat direction should the design take?Design begins → criteria to the design teamFunctionFormEconomyTime

Step 5 hands the design criteria to the design team.

Confusions / comparison

StepDriving questionExample output
1. Establish GoalsWhat does the client want to achieve and why?”Provide a collaborative, daylit workplace for 200 staff”
2. Collect and Analyze FactsWhat do we know?Site survey; occupant count = 200; open-plan: 150 SF/person
3. Uncover and Test ConceptsHow does the client want to achieve goals?Concept: “transparency and connection”; visual openness between floors
4. Determine NeedsWhat resources and quality level are available?30,000 SF net assignable; $8M budget; wants cut to fit budget
5. State the ProblemWhat direction should design take?Written criteria statements by Function / Form / Economy / Time

→ prog-programming-vs-design (this module): how programming fits in the overall project sequence · prog-function-form-economy-time (this module): the four considerations that organize Goals (Step 1) and Problem Statements (Step 5) · prog-degrees-of-sophistication (this module): how project complexity changes which steps require more resources.

Spotted an issue with this card? Tell us →

Related units