R01 OXD Insight Non Determinism Part 2 Hero V00 KB

Software for the generative age: Designing for non-determinism

How do you design great user experiences when AI gives different answers every time? Steve Ly, our Director of Software Development, interviews Jacqueline Antalik, our Director of UX and Service Design, about shifting from predictable design to systems that embrace uncertainty.
Share
FacebookLinkedInEmailCopy Link

In our first article, Software for the generative age: From precision to probability, we explored how generative AI is moving software from deterministic systems to probabilistic ones. For the second piece in our series, our Director of Software Development Steve Ly interviews Jacqueline Antalik, our Director of UX and Service Design, about what this shift means for designers.

Jacqueline, let’s start with the basics. How do you begin to wrap your head around this concept of non-determinism in software?

I think the best way to understand it is through a theatre metaphor. Traditional, or deterministic design, is like directing a scripted play. You have complete control over the user journey. Every aspect of the play is designed and orchestrated. You create these predictable, task-based experiences where every actor follows predetermined pathways such as who speaks, when, where they stand, and what they wear. In most cases, every audience member gets an identical experience.

It’s like designing an improv show. You can’t predict what the actors will say or do, but you can create a stage that supports any performance while maintaining coherence.

But for non-deterministic design, this completely changes. You’re no longer building rigid pathways. Instead, it’s like designing an improv show. You can’t predict what the actors will say or do, but you can create a stage that supports any performance while maintaining coherence. The creativity of the actors shines through and allows for variations in the show, even though you may control the general direction of it.

From a software perspective, it’s the same thing. A non-deterministic design allows the same inputs to yield different outputs. Instead of pre-determined flows, you craft adaptive systems that generate varied responses in real time and adapt to the user’s needs.

R02 OXD Insight Non Determinism Part 2 Asset 01 V00 KB

That’s a dramatic shift from traditional design. What does that mean for designers who built their careers on predictability and control?

It’s a very big change. For those of us who’ve been producing detailed user flows, design specifications, and wireframes for years, this transition demands a shift in mindset. The control that we once wielded is shifting, and that can be uncomfortable at first.

What I’ve found is that we’re moving from what I call “process to intent”. Instead of fixed design flows, we’re moving to outcome-oriented design that prioritizes user intent over those prescriptive step-by-step journeys.

Instead of obsessing over every screen transition and the exact placement of static elements, we’re stepping back to ask much bigger questions: What does the user actually need to accomplish? What outcomes are they seeking?

We’re building frameworks that can handle the unexpected, not scripts that break the moment users go off-path.

The craft isn’t disappearing though. It’s evolving. Rather than designing every single microinteraction, we’re now architecting these intelligent systems that learn, adapt, and respond to user needs over time. We’re building frameworks that can handle the unexpected, not scripts that break the moment users go off-path.

So, how do you actually design around components that are inherently unpredictable?

That’s one of the biggest questions around AI systems. The key insight is to start with user intent and context, not AI capabilities. Don’t start with “what can AI do?”; start with “what is the user trying to achieve?”

Instead of mapping rigid user flows, we’re now designing “intent paths” that accommodate the many ways a user might express the same underlying need.

The tax deadline example from our previous article is perfect here. The intent is simple: figure out when to file taxes. Whether the system says “The deadline is April 30,” or “You have until April 30 to file your return,” or “Tax returns are due by April 30, but you can request an extension,” it still fulfills that intent.

Traditionally, I would have crafted one perfect answer for developers to implement. But generative systems can provide multiple correct answers. A consistent experience doesn’t require identical outputs. It requires consistent intent fulfillment.

So, we don’t control the output specifically. How do we ensure that those outputs stay within the user’s intent?

That’s a great question and it’s where the design complexity for these systems lies. We focus on three key areas: guiding system behaviour, containing risk, and creating adaptive systems.

For guiding behaviour, we implement constraints like prompt engineering rules, input validation, and output filtering to ensure responses meet our criteria.

Containing risk involves setting confidence thresholds for automatic escalation, creating triggers that route complex questions to human support, and designing content moderation systems.

Adaptive systems require building context detection that analyzes user queries and previous interactions, dynamic routing logic that sends different users down appropriate flows, and feedback loops where user reactions inform which responses work better.

The key is building systems that can improvise successfully within boundaries we’ve thoughtfully designed.

You’ve mentioned that different outputs can all be correct for these systems. When does that variability actually become an advantage for users?

I think AI really shines in two key areas: personalization and creative exploration.

For personalization, these systems can adapt to individual preferences in ways deterministic systems simply cannot. Dynamic recommendations can vary based on past behaviour and context, keeping engagement high. Conversational style can shift from more formal for business contexts to casual for creative projects. This transforms AI from a static tool into a responsive partner that tailors to the user rather than deliver mass-produced interactions.

For creative exploration, variability becomes a feature. For content creation, instead of struggling with a blank page, AI offers varied approaches users can refine and iterate on quickly. Brainstorming becomes instant. Need workshop ideas for 10 people in 90 minutes? Get 10 options instantly. Don’t like them? Refine the constraints and get five more. 

The key advantage is rapid iteration and exploration of possibilities. Though I should add that while AI excels at generating diverse options, it shouldn’t replace human collaboration entirely. The best results still come from combining AI’s generative power with human insight and lived experience.

Are there any principles or guidelines that you can recommend for designing these non-deterministic systems?

You know, when project teams come to me with “we want to use AI for X,” I always call for a strategic pause. As designers and strategists, we have to guide conversations away from technology-first thinking toward problem-first solutions.

The first thing I ask is: “what’s the actual problem?” Before diving into any AI implementation, step back and define what processes genuinely need improvement. I see teams fall into the “let’s digitize it” trap all the time without considering how to actually improve the underlying process.

AI for AI’s sake rarely delivers meaningful value and honestly, it can inflict unnecessary learning curves on users who didn’t ask for them.

Then I apply what I call the “right tool test.” Not every problem needs a non-deterministic solution. Many processes still require consistent, repeatable outcomes. If you submit the same permit application twice, you should get identical results. That’s a deterministic process where AI’s variability becomes a liability, not an asset.

I look at three factors: Is this high value: does it serve a real human need? Is it low risk or non-mission critical? Can you accept moderate performance rather than perfection? The sweet spot is high-value, low-risk opportunities where moderate performance still delivers meaningful benefits.

R01 OXD Insight Non Determinism Part 2 Asset 02 V00 KB

The other key element is designing for user trust and involvement from day one. Users need to understand when they’re interacting with AI, why outputs might vary, and how decisions are made. You have to build in mechanisms for users to challenge or refine responses. And those same users should be involved in vetting, testing, and ongoing evaluation. This is about maintaining trust in systems that behave unpredictably by design.

At the end of the day, AI is the engine, but human-centred design principles are still the roadmap.

That’s helpful guidance for when to use it. But let’s flip that around—where should we not introduce non-determinism?

With the current state of generative AI, there are definitely scenarios where introducing this variability creates more problems than it solves.

When consistency is non-negotiable, you don’t want AI variability anywhere near it.

When consistency is non-negotiable, you don’t want AI variability anywhere near it. Financial transactions, legal document generation, permit approvals. These demand identical outputs every time. I might use AI to explore retirement planning scenarios, but when it comes to actual financial transactions? The stakes are too high for “good enough” variability.

High-impact decisions affecting safety, finances, or well-being aren’t good candidates either. Areas subject to bias like hiring, lending, and law enforcement require careful human oversight, and variable AI outputs just complicate that.

Mental health applications are particularly complex. While barriers to support are real, AI tools show promise mainly for mild to moderate symptoms. For more severe cases, the unpredictability becomes genuinely dangerous.

And then there’s trust, which takes time to build and seconds to destroy. Consider divorce proceedings. When someone needs the correct divorce  forms, they want certainty—not creativity. In situations where users need to trust the system completely, non-deterministic variability becomes a liability.

I hear that feedback is a critical part of AI design. How central is that to making these systems work and how do you design for it?

I would agree with that. Feedback isn’t optional in non-deterministic design. It’s absolutely the foundation that makes these systems viable. Unlike traditional interfaces where you can predict user behaviour, AI-powered systems require continuous learning and adjustment.

R02 OXD Insight Non Determinism Part 2 Asset 03 V00 KB

You need feedback at every level. Usage analytics track acceptance rates, abandonment patterns, feature utilization. In-app feedback captures immediate reactions with prompts like “This response was helpful/unhelpful.” And qualitative research reveals the “why” behind user behaviours.

Traditional UX research methods really struggle here because these systems introduce what Jakob Nielsen calls “a new independent variable outside our control.” So, we shift from measuring whether users can complete “task X” to understanding interaction patterns.

The key is building feedback mechanisms directly into your interface design from day one. Multiple ways for users to comment on accuracy, relevance, and format. Thumbs up/down, chat responses and more sophisticated interfaces.

The goal isn’t perfection from day one. It’s systems that improve through use. In non-deterministic systems, feedback isn’t just user research, it’s a core product feature that enables the system to evolve.

Looking ahead, where do you see the biggest opportunities for designers working with non-determinism?

I’m particularly excited about personalized learning. As a parent of a child with ADHD and dyslexia, I’ve seen firsthand how our public education system faces resource constraints. Getting adequate support meant hiring tutors and seeking specialized resources.

But adaptive learning platforms can now tailor experiences to individual students. Not just their grade level, but their actual learning style, processing speed, and comprehension patterns. Every dyslexic student experiences challenges differently. Some struggle with letter recognition, others with processing speed, still others with working memory.

AI that adapts in real-time can adjust reading complexity, switch from text to audio when a student feels fatigued, and break down complex concepts into smaller chunks. The human educator remains crucial. This isn’t about replacing humans with AI, but expanding options available to students.

When we get it right, we’re not just building better software. We’re creating systems that can genuinely adapt to human needs in ways we never could before.

This kind of adaptive, personalized experience is really what excites me most about non-deterministic design. When we get it right, we’re not just building better software. We’re creating systems that can genuinely adapt to human needs in ways we never could before.

That’s really a wonderful example of the potential of this technology. Any final thoughts or advice to your fellow design practitioners on this shift to non-determinism?

You know, as designers, we have to understand AI’s capabilities and limitations, but we’re not navigating it alone. This transformation goes way beyond our professional roles. Our friends, family, and society at large are all experimenting with AI tools in their daily lives.

Technology is evolving so quickly, and honestly, even experts are learning along the way. The future of design is really about developing the judgment to discern when variability benefits users, guiding AI towards positive outcomes, and keeping humans meaningfully engaged. We’re not just designing for uncertainty; we’re learning to thrive within it.


Have you read the first article in our series yet? Software for the generative age: From precision to probability explores how generative AI is moving software from deterministic systems to probabilistic ones.

You might also like