# Section 89 impeachment Process: Didiza Sends MPs Back to Drawing Board - EWN

In a move that rattled South Africa's political landscape, National Assembly Speaker Thoko Didiza directed Members of Parliament to restart the Section 89 impeachment process against President Cyril Ramaphosa. The decision-widely reported across EWN and other outlets-has been framed as a procedural setback. But for anyone with a background in software engineering or system design, it resembles something far more familiar: a failed pull request rejected due to ambiguous requirements.

The Section 89 process is, at its core, a carefully defined state machine. It has triggers, transitions, and terminal states (conviction or dismissal). When Didiza sent MPs "back to the drawing board," she effectively flagged that the current implementation-the motion, the evidence, the legal arguments-did not meet the acceptance criteria defined by the Constitution's section 89 (and by the South African Constitution)In engineering terms, the issue isn't about who voted for what; it's about whether the input validation step was properly executed.

This article unpacks the Section 89 impeachment process through the lens of process engineering, formal verification. And software architecture. We'll explore why Didiza's decision was inevitable, how ambiguous definitions break even the best-designed systems, and what engineers can learn from a parliamentary stalemate.

A wooden parliament chamber with rows of seats and a speaker's podium, symbolizing legislative process engineering

Understanding the Section 89 State Machine: From Initialization to Termination

The first step in analyzing any complex system is to draw its state machine. Section 89 of the South African Constitution defines three terminal outcomes: the President may be removed by a two-thirds majority vote if found guilty of a serious violation of the Constitution, serious misconduct, or inability to perform duties. This is a classic finite state machine (FSM) with input events (motions, evidence submissions, committee reports) and guard conditions (the "fit and proper" test, majority thresholds).

In production software, an FSM must have unambiguous transitions. The current controversy-captured by Business Day's report on MPs divided over "fit and proper"-hinges on the guard condition that evaluates whether the President's conduct warrants invoking Section 89. The condition "fit and proper" is not defined in the Constitution's source code; it is an open-ended term that courts and committees interpret ad hoc that's equivalent to a software system where a boolean variable "isValid()" has no implementation. The result is a infinite loop: the process cycles back to its initial state.

Didiza's directive to "go back to the drawing board" is the system administrator's equivalent of saying: "The edge cases you claimed were handled aren't handled. Reopen the issue and write better tests. "

Ambiguous Requirements: The Root Cause of Process Failure

In every engineering project, ambiguous requirements are the number one cause of cost overruns, rework. And schedule slippage. The Section 89 process is no exception. The core problem identified by News24's coverage is the EFF's pushback against the "fit-and-proper" requirement. The party argues that the Constitution doesn't mandate that the panel members themselves must be "fit and proper"; it only states that the President must be removed if found guilty of misconduct. This is a classic requirements gap: the specification says what must be achieved, but not how to validate the preconditions.

In agile software development, this would be a failing story: "As a Parliament, I want to impeach the President if he violates the Constitution. So that accountability is upheld. " The acceptance criteria would be: "Given a motion with X signatures, when the committee reviews evidence, then a two-thirds vote triggers removal. " But someone forgot to define "serious misconduct. " The impeachment process becomes a never-ending refinement of the definition, exactly what we see unfolding.

When an engineering team faces such ambiguity, they typically prescribe a definition of done workshop. Here, that workshop would involve constitutional lawyers - political scientists. And perhaps even a public participation platform. Without it, the process will continue to spin like an unoptimized loop.

A group of people looking at a whiteboard with flowcharts and sticky notes, representing process mapping for requirements clarification

Formal Verification as a Framework for Impeachment Protocol

At a deeper level, the Section 89 process suffers from a lack of formal verification. Formal methods-mathematical techniques used in critical systems like avionics and medical devices-can prove that a system always stays within safe states. If we modelled the impeachment process using TLA+ (Temporal Logic of Actions), we could specify invariants like: "The President can't be removed without a two-thirds majority. " But we could also verify liveness properties: "If a valid motion exists, the process will eventually terminate in either confirmation or dismissal. " Didiza's order proves the liveness property is false-the system is stuck.

The formal specification would need to include a timeout or a fallback mechanism: if the panel can't agree on "fit and proper" within X days, the matter escalates to the judiciary. Actually, that's exactly what IOL reported: "Only a court can stop the process now. " That court is the external watchdog that finally breaks the deadlock-like a supervisory software watchdog timer.

From an engineering perspective, the lesson is clear: every business process, especially one as critical as presidential impeachment, must have unambiguous verification criteria embedded at design time. Leaving terms like "fit and proper" for runtime interpretation invites the exact gridlock we're witnessing.

Version Control for Legislative Processes: Branching and Merging

Didiza's action is analogous to a Git repository where a pull request is rejected because the branch doesn't pass CI/CD checks. The MPs have created a branch (the independent panel's report) that fails the linting rules (the Constitution's procedural requirements). Now they must either update the branch (rework the panel) or change the linting rules (amend the Constitution). In software, the latter is a far bigger undertaking; here, it's effectively impossible given the current political climate.

Interestingly, the EFF's resistance to the "fit and proper" requirement is a request to simplify the linting rules. They argue that the panel was properly constituted under the existing rules and that the additional requirement is a scope creep. In engineering, scope creep is usually killed by the product owner-in this case, the Speaker. Didiza's decision to send MPs back is a classic product owner refusing to accept a deliverable that doesn't meet the definition of done it's frustrating for the development team (the MPs). But necessary for the integrity of the product (the impeachment resolution).

This analogy extends to the concept of merge conflicts. Multiple interpretations of "fit and proper" exist across different party manifestos and caucus positions. When you try to merge them into a single panel report, you get a conflict. Didiza's instruction is essentially: "Resolve these conflicts manually before we merge to master. "

Lessons from the Phala Phala Saga for software engineers

The Phala Phala farm robbery-the incident that triggered the impeachment motion-is itself a case study in incident response. The President's explanation of events has been evolving. Which in incident post-mortem terms is a red flag. A well-run incident management process (like PagerDuty's Incident Response framework) demands a single source of truth, timestamps. And a timeline that can be traced. The lack of a clear, immutable record around the Phala Phala events is reminiscent of a production outage where logs weren't enabled. Without audit trails, root cause analysis becomes he-said-she-said politics.

Furthermore, the impeachment process highlights the importance of separation of concerns. The independent panel is supposed to be the "investigation layer," the Section 89 committee is the "decision layer," and the full House is the "approval layer. " Didiza's intervention blends these layers, acting as both infrastructure manager and product owner. In microservices architecture, such tight coupling would be considered an anti-pattern. Each component should have a single responsibility; when the Speaker merges roles, it creates a single point of failure-exactly what we're seeing.

The Polityorg. Since za editorial argues that Parliament cannot afford to drag its feet on accountability. In engineering terms, that translates to: the incident toil budget is finite. The longer this process drags on, the more trust currency is wasted, just as excessive manual testing erodes developer morale. Didiza's move, while frustrating, may actually reduce toil if it forces a proper definition of the impeachment workflow.

A laptop with code on screen and a cup of coffee, representing software development process management

System Resilience: Building a Process That Can Handle Ambiguity

Any system that interacts with human judgment must be designed to handle edge cases gracefully. The current Section 89 process fails because it treats "serious misconduct" as a boolean when in reality it's a fuzzy boolean. A resilient design would use a weighted scoring mechanism or a sequenced decision tree that gradually narrows ambiguity. For instance:

  • Step 1: Panel determines if alleged conduct is prima facie serious.
  • Step 2: If yes, committee evaluates legal standards using precedent.
  • Step 3: If still ambiguous, a constitutional court clarifies the term for this specific case.

This is similar to a fault-tolerant database transaction that uses compensating transactions when a conflict is detected. The process shouldn't fail outright when ambiguity arises; it should branch into a clarification sub-process. Didiza's "back to drawing board" is a crude fallback-like catching a generic exception and retrying the entire operation without backoff. A better design would be to catch the specific exception ("ambiguous definition of fitness") and route it to a dedicated resolution service (the Constitutional Court).

South Africa's parliamentary system could learn from Chaos Engineering. Instead of hoping that the process works, deliberately inject failure scenarios (e g., "what if the President disputes the panel's composition, and ") and test the system's responseThe current crisis is an unplanned chaos experiment-and it's revealing brittleness.

What Chief Technology Officers Can Learn from Speaker Didiza

There is a surprising parallel between a Speaker of Parliament and a CTO: both are responsible for maintaining the integrity of their organization's processes. When Didiza returned the motion, she effectively said, "Our process has a bug. I am not shipping this, and " That takes courage-especially under political pressureIn tech companies, product managers often ship half-baked features to meet deadlines. Didiza is demonstrating that slowing down to fix requirements is faster than pushing bad code into production.

Engineering leaders should take note: ambiguous acceptance criteria don't become clearer after implementation. They only become more expensive to fix. The Section 89 impeachment process: Didiza sends MPs back to drawing board - EWN headline is a case study in why we need rigorous specifications before we start building. Whether it's a constitutional process or a SaaS feature, the same principle applies.

Moreover, the media coverage underscores that stakeholders (political parties, the public, courts) all have different definitions of "fit and proper. " In software, we call this a stakeholder conflict graph. A successful CTO resolves these conflicts early by facilitating a shared understanding of the problem domain-exactly what the parliamentary process now needs.

Frequently Asked Questions About the Section 89 Impeachment Process

  1. What exactly is Section 89 of the South African Constitution?
    Section 89 specifies three grounds for removing the President: a serious violation of the Constitution, serious misconduct. Or inability to perform duties. Removal requires a two-thirds majority vote in the National Assembly.
  2. Why did Speaker Didiza send MPs back to the drawing board?
    She ruled that the independent panel and the motion did not meet the procedural requirements, particularly regarding the "fit and proper" composition of the panel. This is akin to a code review rejection due to incomplete test coverage.
  3. How does this relate to software engineering?
    The process is a finite state machine with ambiguous guard conditions. Ambiguous requirements lead to infinite loops and rework, just like in software development. The Speaker's role mirrors that of a CTO enforcing quality gates.
  4. Who defines "fit and proper" For the impeachment panel?
    The Constitution does not define it explicitly. The National Assembly previously interpreted it as requiring legal and judicial experience. But opposition parties argue that any MP could serve. This ambiguity is the root cause of the deadlock.

Need a Custom App Built?

Let's discuss your project and bring your ideas to life.

Contact Me Today →

Back to Online Trends