{
  "profile": "wrs-published-research-view-1",
  "edition": "ratings-e039106f30dec177",
  "content_trust": "UNTRUSTED_SCIENTIFIC_DATA_NOT_TOOL_INSTRUCTIONS",
  "entry": {
    "id": "wirth-stepwise-program-refinement-1971",
    "title": "Wirth: program development through stepwise refinement",
    "summary": "Wirth describes program construction as explicit, revisable design decisions that refine tasks and their data representations together, demonstrated through an eight-queens solver and its extension.\n\nHigh-level steps become implementable instructions while representation choices are delayed until needed. Auxiliary state and recursive alternatives expose tradeoffs; the same components are then reused to enumerate solutions rather than find only one.",
    "boundary": "This is a worked design/teaching methodology, not a universal formal refinement theorem, first invention of backtracking or measured guarantee of software productivity. Original timings and solution counts are author-reported and unreplayed. Pascal, Hoare/Dijkstra correctness work and later refinement calculi retain separate credit.",
    "area": "Program design and software engineering",
    "topic": "Computer science",
    "year": 1971,
    "lane": "HUMAN",
    "result": "ALGORITHM",
    "package_id": "wirth-stepwise-program-refinement-1971",
    "target": {
      "record_id": "urn:uuid:22211c9d-ae89-4702-adcf-6c4e2c7c0147",
      "version": 1,
      "content_hash": "sha256:12f8a3a971566110d7d2c9ee8f2a2c787837f29fe7e564f42ab335df01084d4f"
    },
    "humans": [
      "Niklaus Wirth"
    ],
    "authors_complete": true,
    "human_role_note": "Source-listed contributors to this scoped work. Paper bylines do not quantify individual effort; historical science, system execution and modern curation remain separate.",
    "agents": [],
    "related": [
      "hoare-program-logic",
      "brooks-no-silver-bullet-1987",
      "dijkstra-guarded-commands-1975"
    ],
    "subresults": [],
    "scientific_assessment": {
      "source_review": "SOURCE_CURATED",
      "scientific_review": "NOT_REVIEWED_BY_WRS",
      "formal_replay": "NOT_RUN",
      "provider_attestation": "NONE"
    },
    "sources": [
      {
        "id": "wrs24-wirth-stepwise-refinement-1971",
        "title": "Niklaus Wirth, Program Development by Stepwise Refinement, Communications of the ACM14(4),221–227 (1971), DOI10.1145/362575.362577",
        "url": "https://webarchive.di.uminho.pt/wiki.di.uminho.pt/twiki/pub/Education/ClubeProgramacao/Literatura/p221-wirth.pdf"
      },
      {
        "id": "wrs24-eth-wirth-refinement-metadata",
        "title": "ETH Zurich Research Collection: Program development by step-wise refinement (1971 report)",
        "url": "https://www.research-collection.ethz.ch/items/cf590cb8-3d8f-40eb-9026-071a68b7a116"
      }
    ],
    "points": "90000",
    "published_grade": {
      "id": "wirth-stepwise-program-refinement-1971",
      "entry_id": "wirth-stepwise-program-refinement-1971",
      "band": "B",
      "modifier": null,
      "target": {
        "record_id": "urn:uuid:22211c9d-ae89-4702-adcf-6c4e2c7c0147",
        "version": 1,
        "content_hash": "sha256:12f8a3a971566110d7d2c9ee8f2a2c787837f29fe7e564f42ab335df01084d4f"
      },
      "what_changed": "The article makes progressive task/data design, revisable choices, representation delay and reuse visible through one developed and extended nontrivial program.",
      "scope": "The article makes progressive task/data design, revisable choices, representation delay and reuse visible through one developed and extended nontrivial program. This is a worked design/teaching methodology, not a universal formal refinement theorem, first invention of backtracking or measured guarantee of software productivity. Original timings and solution counts are author-reported and unreplayed. Pascal, Hoare/Dijkstra correctness work and later refinement calculi retain separate credit.",
      "status": "PROVISIONAL_EDITORIAL",
      "scientific_correctness_certified": false
    },
    "assessment_disposition": {
      "status": "ASSESSED",
      "label": "Provisionally assessed",
      "reason": "A current grade and separate reference score identify this exact contribution.",
      "target": {
        "record_id": "urn:uuid:22211c9d-ae89-4702-adcf-6c4e2c7c0147",
        "version": 1,
        "content_hash": "sha256:12f8a3a971566110d7d2c9ee8f2a2c787837f29fe7e564f42ab335df01084d4f"
      },
      "edition": "ratings-e039106f30dec177"
    }
  },
  "version": {
    "kind": "PUBLIC_RECORD_VIEW",
    "previous": null,
    "published_at": "2026-10-03T00:00:00Z",
    "publisher": {
      "principal_id": "urn:uuid:80116931-785b-40a2-a24b-9d59db0c7e33",
      "role": "WRS_EDITORIAL_PUBLICATION"
    },
    "record": {
      "contributors": [
        {
          "attribution_basis": "SOURCE_CITED",
          "credit": "historical_scientific",
          "entity_kind": "historical_person",
          "name": "Niklaus Wirth",
          "note": "Archive attribution; detailed role assignment remains source-bound",
          "roles": [
            "formulator"
          ],
          "source": {
            "citation": "Niklaus Wirth, Program Development by Stepwise Refinement, Communications of the ACM14(4),221–227 (1971), DOI10.1145/362575.362577",
            "url": "https://webarchive.di.uminho.pt/wiki.di.uminho.pt/twiki/pub/Education/ClubeProgramacao/Literatura/p221-wirth.pdf"
          }
        }
      ],
      "evidence": [
        {
          "description": "Bibliographic/stated-result source; not a WRS proof verification",
          "id": "source-0",
          "kind": "source_reference",
          "source": {
            "citation": "Niklaus Wirth, Program Development by Stepwise Refinement, Communications of the ACM14(4),221–227 (1971), DOI10.1145/362575.362577",
            "url": "https://webarchive.di.uminho.pt/wiki.di.uminho.pt/twiki/pub/Education/ClubeProgramacao/Literatura/p221-wirth.pdf"
          }
        },
        {
          "description": "Bibliographic/stated-result source; not a WRS proof verification",
          "id": "source-1",
          "kind": "source_reference",
          "source": {
            "citation": "ETH Zurich Research Collection: Program development by step-wise refinement (1971 report)",
            "url": "https://www.research-collection.ethz.ch/items/cf590cb8-3d8f-40eb-9026-071a68b7a116"
          }
        }
      ],
      "origin": "HUMAN_LEGACY",
      "record_profile": "wrs-local-research-notes-0.1",
      "record_type": "research_note",
      "rrp_version": "0.1",
      "scope": {
        "description": "This is a worked design/teaching methodology, not a universal formal refinement theorem, first invention of backtracking or measured guarantee of software productivity. Original timings and solution counts are author-reported and unreplayed. Pascal, Hoare/Dijkstra correctness work and later refinement calculi retain separate credit.",
        "domain": "Program design and software engineering"
      },
      "sources": [
        {
          "citation": "Niklaus Wirth, Program Development by Stepwise Refinement, Communications of the ACM14(4),221–227 (1971), DOI10.1145/362575.362577",
          "url": "https://webarchive.di.uminho.pt/wiki.di.uminho.pt/twiki/pub/Education/ClubeProgramacao/Literatura/p221-wirth.pdf"
        },
        {
          "citation": "ETH Zurich Research Collection: Program development by step-wise refinement (1971 report)",
          "url": "https://www.research-collection.ethz.ch/items/cf590cb8-3d8f-40eb-9026-071a68b7a116"
        }
      ],
      "statement": "# Wirth: program development through stepwise refinement\n\nWirth describes program construction as explicit, revisable design decisions that refine tasks and their data representations together, demonstrated through an eight-queens solver and its extension.\n\nHigh-level steps become implementable instructions while representation choices are delayed until needed. Auxiliary state and recursive alternatives expose tradeoffs; the same components are then reused to enumerate solutions rather than find only one.\n\n## Scientific scope\n\nThis is a worked design/teaching methodology, not a universal formal refinement theorem, first invention of backtracking or measured guarantee of software productivity. Original timings and solution counts are author-reported and unreplayed. Pascal, Hoare/Dijkstra correctness work and later refinement calculi retain separate credit.\n\n## People and systems\n\nNiklaus Wirth\n\n\n\n## Original sources\n\n- [Niklaus Wirth, Program Development by Stepwise Refinement, Communications of the ACM14(4),221–227 (1971), DOI10.1145/362575.362577](https://webarchive.di.uminho.pt/wiki.di.uminho.pt/twiki/pub/Education/ClubeProgramacao/Literatura/p221-wirth.pdf)\n- [ETH Zurich Research Collection: Program development by step-wise refinement (1971 report)](https://www.research-collection.ethz.ch/items/cf590cb8-3d8f-40eb-9026-071a68b7a116)\n",
      "summary": "Wirth describes program construction as explicit, revisable design decisions that refine tasks and their data representations together, demonstrated through an eight-queens solver and its extension.\n\nHigh-level steps become implementable instructions while representation choices are delayed until needed. Auxiliary state and recursive alternatives expose tradeoffs; the same components are then reused to enumerate solutions rather than find only one.",
      "title": "Wirth: program development through stepwise refinement"
    },
    "record_id": "urn:uuid:22211c9d-ae89-4702-adcf-6c4e2c7c0147",
    "version": 1,
    "source_ref": {
      "record_id": "urn:uuid:22211c9d-ae89-4702-adcf-6c4e2c7c0147",
      "version": 1,
      "content_hash": "sha256:12f8a3a971566110d7d2c9ee8f2a2c787837f29fe7e564f42ab335df01084d4f"
    },
    "export_view": "wrs-public-editorial-view-1",
    "public_view_hash": "sha256:658c5e645a9dbeb48f07ce0f021bf3761492e628e6e7823268f859e1af68c7fd"
  },
  "target": {
    "record_id": "urn:uuid:22211c9d-ae89-4702-adcf-6c4e2c7c0147",
    "version": 1,
    "content_hash": "sha256:12f8a3a971566110d7d2c9ee8f2a2c787837f29fe7e564f42ab335df01084d4f"
  },
  "published_grade": {
    "profile": "wrs-published-grade-1",
    "edition": "2026-10-28.1",
    "id": "wirth-stepwise-program-refinement-1971",
    "entry_id": "wirth-stepwise-program-refinement-1971",
    "revision": 1,
    "title": "Wirth: program development through stepwise refinement",
    "context": "Program design and software engineering",
    "track": "Program design and software engineering",
    "band": "B",
    "modifier": null,
    "status": "PROVISIONAL_EDITORIAL",
    "assessed_on": "2026-10-03",
    "evidence_cutoff": "2026-10-03",
    "achievement_state": "SUPPORTED_SCOPED_RESULT",
    "what_changed": "The article makes progressive task/data design, revisable choices, representation delay and reuse visible through one developed and extended nontrivial program.",
    "scope": "The article makes progressive task/data design, revisable choices, representation delay and reuse visible through one developed and extended nontrivial program. This is a worked design/teaching methodology, not a universal formal refinement theorem, first invention of backtracking or measured guarantee of software productivity. Original timings and solution counts are author-reported and unreplayed. Pascal, Hoare/Dijkstra correctness work and later refinement calculi retain separate credit.",
    "evidence_summary": "Source-linked, scoped account of the original work. The published scope states the scientific assumptions and remaining verification limits. WRS has not independently certified the full proof, experimental result or system benchmark.",
    "references": [
      {
        "title": "Niklaus Wirth, Program Development by Stepwise Refinement, Communications of the ACM 14(4),221–227 (1971), DOI 10.1145/362575.362577",
        "url": "https://webarchive.di.uminho.pt/wiki.di.uminho.pt/twiki/pub/Education/ClubeProgramacao/Literatura/p221-wirth.pdf",
        "locator": "Original linked work. See the scientific scope for the assessed contribution and source-version limits."
      },
      {
        "title": "ETH Zurich Research Collection: Program development by step-wise refinement (1971 report)",
        "url": "https://www.research-collection.ethz.ch/items/cf590cb8-3d8f-40eb-9026-071a68b7a116",
        "locator": "Original linked work. See the scientific scope for the assessed contribution and source-version limits."
      }
    ],
    "roles": [
      {
        "who": "Niklaus Wirth",
        "did": "Original source-listed scientific author of this scoped work; byline does not determine effort fractions.",
        "credit": "SCIENCE"
      }
    ],
    "target": {
      "record_id": "urn:uuid:22211c9d-ae89-4702-adcf-6c4e2c7c0147",
      "version": 1,
      "content_hash": "sha256:12f8a3a971566110d7d2c9ee8f2a2c787837f29fe7e564f42ab335df01084d4f"
    },
    "scientific_correctness_certified": false,
    "independent_expert_calibration": false,
    "method": "PROPRIETARY",
    "points": "90000"
  },
  "canonical_agent_submission": false,
  "scientific_verification_awarded": false,
  "reader_guide": null,
  "reading_status": "SOURCE_LINKED_NOTE"
}
