- Name the uncertainty
- Build a bounded prototype
- Observe and verify
- Decide the next implementation
Choose what the prototype should teach you
Start with the uncertainty that matters most. Do people understand the task? Can the required system provide the information? Will the proposed workflow fit staff responsibilities? These questions call for different experiments. A visually polished prototype may help evaluate navigation while doing little to establish integration feasibility.
Write down the observation that would support the next investment and what would cause the team to revise the idea. Avoid deciding in advance that every test must justify a larger build. A useful prototype can reveal that a website, a process change or a smaller feature would solve the problem more directly.
Ground the idea in the business's market and capacity
Provo's Business Resource Guide asks owners to consider their market, differentiation, team and business plan. Those are relevant questions before commissioning software. The guide does not validate a particular app idea or imply that a city program sponsors Dappr. Use it as local context for the business decisions that technology cannot make on the owner's behalf.
A hypothetical Provo service business may want customers to see request status because staff repeatedly answer the same question. A hypothetical retail business may want a simpler way to collect special-order details. A hypothetical training organization may want participants to find the right session information. These are planning illustrations, not local case studies or evidence that each needs a mobile app.
Talk to the people involved in the current process. Record what information they need, what causes mistakes and which alternatives they already use. Do not let a generated feature list replace those observations. The project should solve a specific difficulty rather than reproduce every feature found in an unrelated product.
Explain what AI assists
AI-assisted development can include support for drafting implementation, explaining unfamiliar code or suggesting test cases. It does not automatically put an AI model inside the finished app. If a runtime feature would generate answers or take actions, define it separately with its own data, evaluation and operating requirements.
GitHub's responsible-use guidance describes limitations in generated code, explanations and tests, and calls for review and validation. That is a primary-source example of the need for oversight, not a statement that Dappr uses a particular vendor in every engagement. The proposal should explain the deliverable and responsibilities without making unsupported claims about a tool's speed or accuracy.
A prototype created with assistance still needs an honest label. Tell reviewers which screens use sample data, which actions are simulated and which connections are real. Do not allow a successful demonstration to imply that authentication, storage or error handling has been implemented when it has not.
Keep the experiment separate from live operations
Use a controlled environment and representative data suited to the question. A test of a quote-request flow does not need to send messages to real customers. A demonstration of a staff dashboard can use synthetic records. Identify which accounts and services the prototype can access before connecting it to anything consequential.
Agree on what may be shared with development tools and review the actual provider and account settings. Avoid using confidential customer information when a prepared example will do. Keep credentials out of prompts and ordinary project documents. These are practical boundaries for development, not claims that a particular tool configuration is universally appropriate.
If the experiment must involve a real system, limit the operation and document the expected effect. Confirm who authorized access and how results will be checked. An available integration is not permission to change production records or enroll people in communications.
Observe the intended task without coaching
Give a representative user a realistic goal and let them attempt it. Note where labels are misunderstood, required information is missing or the apparent outcome differs from what the person expected. Ask what they believed happened after an action. A task can look complete to the designer while remaining ambiguous to the user.
Separate usability evidence from product demand. A person completing a prototype does not prove they would adopt or pay for the product. Likewise, enthusiasm about an idea does not establish that a workflow is usable. Record the question each test actually answered and keep conclusions proportionate to the participants and method.
Provo's Digital Inclusion resources provide additional context for considering devices, connectivity and skills. They do not provide a demographic profile of your audience. Recruit and test based on the people the product will serve rather than assuming a uniform level of familiarity.
Verify the difficult behavior before expanding
Choose a few failure cases that matter to the proposed task. What happens when required information is absent, access is denied or a connection fails? Does a repeated action create duplicate work? Can staff distinguish a submitted request from a completed service? These questions often expose gaps that an attractive happy-path demo misses.
Review generated implementation against the agreed behavior, and check important assumptions independently. A test generated from the same mistaken assumption as the feature may pass without protecting the user. Inspect the resulting record or system state, not just a confirmation message.
Document feasibility findings separately from production acceptance. A connection that works once with sample data may still need access controls, rate handling, monitoring and support. Do not expand a prototype into a live product by silently removing the word prototype.
Decide what happens after the experiment
Summarize what was learned, what remains uncertain and the next reasonable step. The outcome might be a revised flow, a more specific integration test or a production scope. Preserve useful decisions and source material so later work does not repeat the same uncertainty.
For a production build, define account and code ownership, supported devices, data handling, testing, release responsibilities and maintenance. If the product is a mobile app, Apple or Google review requirements remain relevant. AI-assisted coding does not remove those obligations or guarantee an approval date.
Dappr offers iOS, Android and React Native development as well as AI-assisted work. The approach should follow the product requirements. A conventional website or app may be the right deliverable even when AI helps during its creation.
Discuss a Provo prototype with Dappr
Bring the current process, intended users and the one uncertainty you want to resolve first. Dappr works remotely with Provo businesses from its staffed St. George office. A written scope should distinguish the experiment from the production work it may inform, including what is simulated and what will be verified.
Choose the product assumption the prototype should test, along with limits on data and interaction with live operations. Use that example to compare the proposed deliverables, review responsibilities and acceptance evidence. Dappr can coordinate the project remotely from its staffed St. George office. Ask the proposal to identify what is included, what depends on another provider and what needs investigation before a commitment. Keep account ownership, maintenance and the staff handover explicit so the result remains usable after the initial build. A project-specific estimate should follow those requirements rather than assumptions about a city or platform.
Questions before you begin
What should an app prototype prove?
It should answer a specific question, such as whether a user understands the flow or whether a required connection is feasible. State the question before building so the result can be judged honestly.
Can a prototype use sample data?
Yes, when that suits the test, but label it clearly and explain which behavior is simulated. Sample data should not be presented as a real customer record or successful production integration.
Does positive feedback prove people will buy the app?
No. Usability, interest and willingness to adopt are different questions. Keep conclusions limited to what the research actually examined and plan additional validation where needed.
Can we turn the prototype directly into production?
Only after reviewing the implementation and completing the production requirements. Access control, data handling, failure behavior, testing, release and support may still be unfinished.
Does AI-assisted development require an AI feature in the app?
No. AI can assist the development process while the finished product uses conventional software behavior. A runtime AI feature needs its own explicit scope and evaluation.
Sources and further reading
- https://www.provo.gov/222/Business-Resource-Guide
- https://www.provo.gov/684/Digital-Inclusion
- https://docs.github.com/en/copilot/responsible-use/chat
- https://docs.github.com/en/copilot/responsible-use/agents
- https://developer.apple.com/app-store/review/guidelines/
- https://support.google.com/googleplay/android-developer/answer/9859152