Typical Project

A Typical Custom Software Project

Understanding the Project

Before diving into your project, it’s important to confirm we’re a good fit for each other, so we spend some time getting to know you, your business, and your project goals. Throughout this time, you’ll also learn about us—how we work, why work that way, and what to expect during your project.

To start this phase, contact us for your free consultation.

Strategy & Estimate

At this point in the process, the estimates for budget and timeline are provided as wide ranges based on the information we know. Early in a project, there’s a lot of risk of discovering unknown information.  As we learn more and progress through the project, those ranges narrow and risk is reduced. This concept is illustrated in the cone of uncertainty.

Cone of Uncertainty in Software Development


We do more than just build software—our process gives you information to help you make better business decisions that have a lasting impact. We set the stage for success by first analyzing risky assumptions, talking to users to validate needs, and building a game plan for the project.  

Our three main objectives in this phase are:

  1. To reduce risk by increasing our knowledge of your business, the users of your system, and the tools we’re building.
  2. To further define the features to be built and understand any constraints, both business and technical, to give you a better idea of the timeline and investment needed.
  3. To prepare for the development of your application.


Development will kick off once we have a solid understanding of the whole project—from goals, priorities, and features to budgets and timelines. During this phase, we develop features, test functionality, review the system with you, and deploy on an iterative basis, using the Agile Scrum framework to plan, prioritize, and implement our work. 

Far Reach Scrum Process

Ongoing Support

We approach every project with the intention of working with you and your application for the long-term. After launch, this means two things:

  1. We’ll be here to support you. You will have contacts you can reach out to when any issues with the application arise.
  2. We’ll be here to enhance it. Your system should change with your business needs. Generally, that means adding new functionality to increase productivity, gain additional efficiencies, or provide additional value to your users. Our team will be here to help you do just that.

Custom software isn’t a one-and-done investment, so we recommend budgeting for things like:

  • Hosting
  • 3rd Party Integrations
  • License Fees
  • Support
  • Proactive Diagnostics
  • Enhancements

Reach Out

To learn more about our process, or to schedule an initial meeting with us, get in touch