Horizon

From Earth to your point of view.

Local lightParisweather unavailable
Choose a cityParis · default

A submitted search is sent to the geocoding service; an approximate location is sent to the weather service. The provider is identified with its data. Your choice is remembered in this browser for 30 days, when storage is available.

For the descent, map tiles for your chosen region are requested from NASA through our server. Your chosen location is rounded to one tenth of a degree.

Scroll to descend · Scroll back to return · ↓ ↑ on your keyboard

August 2004 composite · native source ≈ 500 mNASA · Blue Marble
EarthYour region

The site works without audience measurement. You may allow aggregate measurement through Google Analytics, or continue without it. The story, routes and Horizon remain the same.

Kept in this browser when its storage is available.

Google Analytics: viewed pages and aggregate navigation. This choice is optional and reversible.

Read the privacy notice

The thread of the journey

Your lightParis, the house anchor Weather unavailable · solar light calculated.

A submitted search is sent to the geocoding service; an approximate location is sent to the weather service. The provider is identified with its data. Your choice is remembered in this browser for 30 days, when storage is available.

Back to blog
Business & Strategy

Custom software development: scope cost, delivery and reliability

Buy, integrate or build? A decision framework covering total cost, six acceptance questions and a reusable brief for your project.

Published September 10, 2026Decision guideNeuroVista

Introduction

Custom software is a business decision before it is a technology decision. The right scope is not the one with the most features; it is the one that makes an important capability verifiable, operable and reversible. This memo offers a framework to decide what to buy, integrate or build, then estimate the real effort through the system’s exit.

1. Decide: buy, integrate or build

Start by describing the expected outcome, users, data involved and decisions the software must support. Then compare three paths:

  • Buy a standard capability when the process is common and its limits are acceptable.
  • Integrate existing services when the value lies in the flow between systems.
  • Build when the process, data or control requirement is a durable advantage or constraint.

Use the same questions for every option: which interfaces exist, who owns the data, what happens if a supplier stops serving you, and which team can operate the result? A standard product that costs less upfront may cost more when workarounds, data extraction or missing controls become permanent.

2. Model the full cost

A sound budget covers more than development days. Use an explicit model:

full cost = framing + design + build + integration + validation + launch + run + change + exit

For each item, state the assumptions, dependencies and person who can verify them. Include migration, data access, licences, infrastructure, monitoring, support and training. Account for the time required for fixes, security updates and requests that change the scope.

Keep a limited scenario readable: one capability, one main flow, known error cases and a decision criterion. Separate what is needed to learn from what is needed to operate. The budget then becomes a sequence of revisable choices rather than a global promise disconnected from the work.

3. Frame delivery without inventing a promise

Delivery depends above all on available decisions. Set observable gates: validated data access, demonstrated main path, tested integrations, accepted controls, then a launch decision. The plan should show possible blockers: business approval, supplier dependency, migration, security review or team availability.

Speed comes from practical levers: reuse proven components, reduce the first scope, automate repeatable tests and have technical and business owners review decisions. A short cycle should produce usable evidence, with its limits documented, rather than a demonstration nobody can maintain.

4. Six acceptance questions

Before expanding the scope, ask:

  1. Which user takes which action, with which data and authorization?
  2. What measurable result proves that the flow works?
  3. Which edge cases, refusals and failures have been tested?
  4. Who monitors the system and who decides on a correction?
  5. How do we restore service or return to the previous state?
  6. How do we retrieve data, replace a dependency or stop cleanly?

A short, verifiable answer is more useful than a feature list. These questions expose costs that otherwise appear late.

5. Design reliability into the first flow

For each important operation, describe the expected behavior when something fails: timeout, invalid data, duplicate request, unavailable service or incomplete deployment. Prepare a retry or holding mechanism, a rollback procedure and a log that explains what happened. A runbook should name the signals to inspect, permitted actions and the point where a person takes over.

Verify reliability with automated tests and focused human reviews. Test the happy path, permissions, incomplete data and restoration. A launch is acceptable when the team can detect a problem, limit its impact, return to a known version and explain the next step to users.

6. Account for international operations

A distributed team should define decision hours, the language of artefacts, incident handoffs and expected response times. Map where data is stored, processed and backed up, along with supplier and subcontractor access. Data residency is an architecture choice to verify with the responsible people, not a checkbox added after development.

Reusable briefing checklist

Project:
Problem and primary user:
Expected outcome and acceptance evidence:
Buy / integrate / build, and why:
Data, access, location and dependencies:
First-cycle scope:
Build, run, change and exit costs:
Failure cases, rollback and runbook owner:
Observable gates and decisions required:
Criterion to continue, reduce or stop:

NeuroVista supports decisions and delivery across software engineering and cloud, data and AI, with a framing and delivery methodology, a security and compliance practice and a contact channel. This framework describes our proposed way of working; it should be adapted to your data, teams and constraints.

FAQ

How should we estimate the cost of custom software?

Build a model covering framing, design, build, integrations, validation, operations, changes and exit. Tie every item to a verifiable assumption and an explicit scope.

Should we buy, integrate or build?

Compare the three paths by business value, interfaces, data control, required safeguards and exit capacity. Build only what justifies durable control or differentiation.

How do we protect reliability?

Define failure behavior, tests, monitoring, rollback and the runbook before expanding the scope.

Need guidance?

Our experts can help you put these concepts into practice.

Contact us