01
Shipped · Live · WebFOCUS 9.3

Explore Data
in WebFOCUS.

Explore Data is where WebFOCUS answers questions about your data. Two AI features live there: ask a question in plain English with Natural Language Query, and turn a dataset into findings automatically with Insights. Both engines were genuinely powerful. Both sat buried in a popup nobody opened. I designed and modernized each — then helped bring them into one hub.

Senior Product Designer — end-to-end UX on both featuresData Science & ML, WebFOCUSCloud Software Group · Shipped in 9.3
Explore Data · Ask · Natural Language Query

A command line,
dressed as a web app.

Our Natural Language Query engine was genuinely powerful — ask a question in plain English, get SQL against the reporting server. But the interface was a blank prompt with no first move, and cryptic errors that leaked straight to the user. Adoption was very low. I redesigned it into a conversation.

End-to-end UX · Shipped in 9.3 — 9.3.0 in Designer, 9.3.3 upgraded engine & SLM

Powerful engine. Invisible feature.

A powerful enginevery low adoption
1blank prompt, no suggested first move
SQLerrors leaked straight to the user
NLQ buried inside the legacy Explore Data popup — a blank prompt with no suggested first move
NLQ, buried in the old “Explore Data” popup — a blank box, no first move, no guidance.

The technology already worked. The interaction didn't.

The hard part was already solved. A question like “What were the sales for 2019 in March?” was translated into a real SQL query against the Reporting Server — later powered by a Phi-3 Small Language Model. The intelligence was there. What wasn't there was any reason for a business user to trust it, or even to start.

You landed on an empty box. Nothing suggested what you could ask. If the model misfired, you got a raw SQL stack trace or a red error screen. It behaved like a command line wearing a web UI, so the people it was built for never touched it. My job wasn't to add capability. It was to make the capability legible.

What the old UI actually showed the user.

A response “details” dump: the raw SQL, a 500, and “Cannot convert SQL to FOCUS” — handed straight to a business analyst.

Legacy NLQ error — a raw SQL response dump with an Internal Server Error and 'Cannot convert SQL to FOCUS'
The old failure state — a raw SQL dump, not a message.
Anticipating the next move of the user, that is next level UI!Anita George · Principal Account Technology Strategist

Give people
a first move.

The fastest way to kill a conversational tool is a blank page. So the redesign starts by answering the question the user hasn't asked yet — and when things go wrong, it talks back like a human, not a database.

NLQ suggested questions — real, answerable prompts offered the moment you land
Suggested questions — real, answerable prompts offered the moment you land

Two moves that turned a prompt into a conversation.

First, I killed the blank page with suggested questions. Land on the tool and it already offers real, answerable questions — ask one, type your own, or shuffle for a new set. There's always a first move, so nobody stalls at an empty box.

Second, errors. When the SLM met a query it couldn't map — the classic “Why is the sky blue?” — engineering's instinct was to surface the raw failure. I designed a Fallback Handler and guardrail instead: low-confidence queries are caught before the SQL call is ever made, and answered with a friendly empty state that offers a way forward. I also partnered with our principal data scientist on the hardware reality behind it — the SLM crawled to 30-minute lag on CPU-only servers, so we set an engineering policy that IQ requires and validates GPU-enabled server profiles, alerting the admin through the Hub when it's running on CPU.

Suggested questions — the blank page, solved.

Exploring:wf_retail_sample.mas|Switch Data Source
Ask a QuestionGet Insights
Ask a question about wf_retail_sample.mas…
Ask
View suggestions
What do you want to know about your data?
Ask your question above.
Need help getting started? Explore using system generated suggestions.
What is revenue by product in June 2021What is revenue by countryShow me total revenueShow me product typeShow me patients by doctor
Refresh suggestions

A blank prompt is where adoption goes to die. Suggested questions hand you a first move — pick one, type your own, or hit Refresh suggestions for a new set — so nobody ever faces an empty box.

The same idea, shipped — at full fidelity.

Conversational guidance in place of an empty prompt — the shipped empty state.

NLQ redesigned empty state with suggested queries and conversational guidance
Suggested queries and conversational guidance

And when there's no answer, it says so — kindly.

Exploring:wf_retail_sample.mas|Switch Data Source
Why is the sky blue?
Ask
View suggestions
Checking your question against the data…

A nonsense question used to leak a raw response trace500 · Cannot convert SQL to FOCUS — straight to the user. The guardrail catches low-confidence queries and answers like a person: it points you back to suggestions it can actually answer, never a stack trace.

The same screen, redesigned — the shipped “after.”

Where the old UI dumped raw SQL, the redesign shows a human message: “We're having trouble connecting to the data source.”

Redesigned NLQ error — a friendly illustration and a plain-language message instead of a raw SQL dump
The redesigned failure state — a message a business user can act on.

One answer,
read every way.

The move that was mine end to end: a chart switcher that lets a single answer be re-read as a table, bar, column, line, or area. I conceptualized it and got PM and leadership behind it — and it grew into far more than NLQ needed.

The chart switcher — my idea, shipped small.

Total Revenue in the last 12 Months
040M80M120M123456789101112
Product Category
Accessories
Computers
Media Player
Stereo Systems
Television
Sale Month

One answer, five ways to read it — table, bar, column, line, area — from a single toolbar, with the stacked column as the shipped default. This mini switcher is the tip of a bigger idea I conceptualized and sold to PM and leadership: a multi-use chart component spanning 36+ types for both Designer and NLQ. That full component was built but never released — the switcher is what made it into 9.3.

NLQ results view — an AI-generated chart produced from a plain-English question
An AI-generated chart, from a plain-English question — the shipped result at true fidelity.

An idea I sold up the chain.

The switcher started as a small control — one answer, re-read as a table, bar, column, line, or area — but I saw it could be bigger. What I conceptualized for NLQ grew into a multi-use component of 36+ chart types meant to serve both Designer and NLQ across the platform. That full component was built but never released; the disciplined, mini version is what shipped inside NLQ in 9.3 — the restrained slice that earned its place in the release.

She impressed everyone with how quickly she grasped all aspects of a highly intricate system and translated that understanding into a clear, modern, and user-centered design.Yingchun Chen · Principal System Software Engineer

The principles it ran on.

Never a blank page

The tool always offers a first move. An empty prompt is a dead end; a suggestion is an invitation.

Fail like a human

Catch the bad query before the model does, and answer with a way forward — never a stack trace.

Ship the disciplined version

The 36-chart component was the vision; the mini switcher was what earned its place in the release.

+25% adoption.
Live in 9.3.

NLQ was re-architected from a SQL-based translator to Microsoft's Phi-3 Small Language Model. The engine change (SQL → Phi-3) and the redesign built around the new model's capabilities together drove a ~25% jump in adoption. My redesign is what made the faster engine legible — a first move, human errors, one answer read every way. It ships in WebFOCUS 9.3 today, still inside the Explore Data popup; whenever the IQ Plugin launches, its visibility grows again.

Shipped, live, and validated by the people who built it with me.

+25%adoption lift, from the SQL → Phi-3 SLM re-architecture
9.3shipped and live — in the Explore Data popup
Phi-3Small Language Model replaced the SQL translator

“The clarity of her designs, in spite of the underlying data science and machine learning complexity, is impressive and has greatly contributed to the success of our products.”

Marcus Horbach, Ph.D. · Principal Data Scientist

“Anuja demonstrated exceptional ability to understand intricate workflows and translate them into elegant, user-centric designs that elevated the product’s usability and visual appeal.”

Aniket Awchare · Sr. Product Manager
Where to see itLive in WebFOCUS 9.3

NLQ shipped in 9.3; the modernized experience appears in ibi's public WebFOCUS 9.3 material.

What I'd do nextRelease the full switcher

The 36-chart multi-use component is already built. Finishing and releasing it would let a single answer be re-read any way the analyst needs — across both Designer and NLQ — instead of the five the mini switcher ships today.

Explore Data · Generate · Automated Insights

You had the answers.
You couldn't see them.

WebFOCUS already ran a powerful automated-insights engine. But every finding sat collapsed in a long list of accordions — you opened each one by hand to read it. So nobody used it. I turned it into one move: pick a dataset, hit Generate, read the findings in plain language.

UX lead on Generate Insights — I owned the UX end to end and drove the design decisions · Shipped & live in WebFOCUS

The engine worked. The interface buried it.

The intelligence was real — signals, trends, correlations, computed automatically. But the output was a long list of collapsed accordions — you clicked each one open to find out what it said, with no ranking and no plain-language read. A business user opened it once and left.

A grid answers nothing. It just shows you everything.

Insights sat inside the Data Science & ML suite, next to the model tools. It could scan a dataset and surface what stood out — no query, no chart-building. Technically, a lot of value for a single click.

But the result landed as a long list of accordions — every insight collapsed, so you opened each one by hand to see what it said, with no ranking and no plain-language read. To get anything out of it you had to already know what you were looking for. The people it was built for — analysts who didn't — bounced off it. A powerful feature, invisible in plain sight.

It starts from
the dataset.

Three moves, no query language: pick a dataset, confirm the fact table (auto-detected, or choose your own), hit Generate Insights. Seconds later — findings, not a spreadsheet. And you reach it the way WebFOCUS users already work: right-click.

InsightsExploring: retail_samples_tiny
Fact Tables Shipment Fact
FiltersAll
Pick a fact table and hit Generate Insights — no query to write, no chart to configure.

The whole feature is three moves — dataset → fact table → Generate Insights. No query to write, no chart to configure. Reached the way WebFOCUS users already work: right-click a dataset. Seconds later, plain-language findings, not a raw grid.

Design the path in. Then design what greets you when there's nothing yet.

The entry point rode the most common gesture in the whole product: in WebFOCUS, right-clicking is religion — everything is right-clickable. The plus-menu options already existed, but grouping Predict Data, Generate Insights, and Ask a Question onto a dataset's right-click menu was my suggestion — a shortcut that became even more useful with the later IQ plugin.

From there the flow is deliberately flat — dataset, fact table, generate — with a sensible default at every step so a first-timer never stalls. And because the first thing many users see is an empty panel, I designed that too: a friendly illustration, a plain statement of what you'll get, and one obvious action. No dead ends.

The empty state, doing real work.

Select a Dataset to Generate Insights
Select data

Even the empty state does work. Instead of a dead panel, its own friendly illustration and one obvious action tell you exactly what to do next to get your first findings — no loose ends.

The principles it ran on.

Read, don't decode

A finding is a sentence, not a row of numbers. The narrative leads; the chart is there to back it up.

Scannable over complete

Tiles you can sweep in a glance beat a list of accordions you have to open one by one.

Meet the existing behavior

Right-click was already the muscle memory. The entry point rode it instead of fighting it.

No loose ends

Even with zero data, the screen tells you exactly what to do next and what you'll get for it.

Findings you can scan,
not decode.

The engine already found these. The redesign gave them a face — each finding a tile with a plain-language headline and just the chart that backs it up. Its own color palette, tuned so every category stays legible at a glance.

Before
The ground is the most frequent value of shipment type.
EMEA and North America are the most frequent values of Customer Business Region.
Parcel Service United and Express Star are the most frequent values of the shipping company.
Europe and South are the most frequent values of Customer Business Sub Region.
…116 more, all collapsed
Every insight collapsed — you opened each accordion by hand to read it.
After
The ground is the most frequent value of shipment type.
EMEA and North America are the most frequent values of Customer Business Region.
Customer Business Region
EMEANorth AmericaSouth AmericaOceania

The engine found the same insights either way. Before, they sat collapsed in a long accordion list — you opened each one to read it. I turned every finding into a scannable tile: a plain-language headline and the chart that backs it up, readable at a glance.

And here it is, shipped.

The real Insights results in WebFOCUS — the same scannable tiles at full fidelity: each finding a plain-language headline with just the chart that backs it up.

Shipped WebFOCUS Insights results — scannable insight tiles, each with a plain-language headline and a supporting chart
The shipped Insights results — scannable tiles, not the accordion list you opened one by one

Insights got its own colour palette — and rules to go with it.

A data scientist pointed out that the Insights charts didn't follow a coherent palette and didn't match Designer's. I built a dedicated Insights palette and sample charts to demonstrate it — a theme that could be saved and reopened in Designer for further customization.

The Insights colour palette — category swatches tuned for legibility across charts
Its own colour palette, built for at-a-glance legibility

Then I validated it across every chart type.

The palette wasn't just colours — it was a set of rules, then tested across bar, ring, scatter, line-with-trend, density, and correlation-matrix charts, so a finding reads clearly no matter how the engine chooses to visualize it.

Design exploration — bar, ring, scatter, line, density, and correlation-matrix charts all rendered in the new Insights colour palette and its rules
Visualizations built on the new palette and the rules I created — validated across every chart type.

Down to the correlation matrix — a palette specced by value.

The sequential ramp and the both-ends diverging scale for correlation charts, each step pinned to an exact RGB value so a matrix reads cleanly from +1 through 0 to −1.

The Insights correlation-matrix colour palette — a sequential blue ramp and a both-ends diverging scale, each step labelled with its exact RGB value
The correlation-matrix palette — a sequential ramp and a both-ends diverging scale, specced to the RGB value.

And the type, specced to the point.

Every label on an insight chart — title, axis titles and labels, legend, footer — pinned to a size, a weight, and a token, so a finding reads the same no matter which chart the engine picks.

The Insight chart font-styling spec — title, axis titles and labels, legend title and labels, and footer, each with its point size, weight, and colour token, beside an example insight card
The chart type spec — every label pinned to a size, a weight, and a token.

And a tracker for every insight running.

Generation can take time, so I designed an Insight Generation Status view — every insight, its dataset and fact table, and its state (Ready, Queued, In Progress, Error, Deleted). In the shipped Explore Data version it's a modal (and a new-browser-tab generation view); the IQ side-panel version is design that hasn't shipped.

The Insight Generation Status tracker — a table of running insights with their dataset, fact table, timestamp, and status
The status tracker — running insights, their state, at a glance.
Shipped · Live

It shipped. It's live.

Generate Insights went out in the Data Science & ML suite and is live in WebFOCUS 9.3.

3steps: dataset → fact table → Generate
0queries or charts to configure
1right-click to reach it, like everything else

Validated by the people closest to the data.

Her design was clean, intuitive, and clearly addressed the needs of users across different skill levels.Anita George · Principal Account Technology Strategist

The engines didn't change.
The conversation did.

Neither feature was a new-capability project. Both engines already shipped and sat idle — the intelligence was there, but people couldn't reach it. The work was two decisions about what “asking your data” and “a result” should feel like: a first move instead of a blank box, a sentence instead of an accordion. Once Explore Data felt human, people finally used what we'd built all along — and that's the ground the IQ hub was built on.