Development Process

Home / Development Process

Results-Driven Software Consulting

Plans are nothing... Planning is everything.

We have dedicated Steve Lane, one of our founding partners and our CTO, to understanding the challenges and evolution of software consulting and project management. He writes regularly on the topic and is focused on refining our practices of how to manage software development.

Guided by seasoned project managers, every member of our development team is trained in software development life cycles and project management.

Build a Strong Foundation

Our software consulting and development process is a hybrid between that taught by the Project Management Institute and those commonly referred to as Agile Development.

We begin projects with a Foundation Phase, in which we work with you to flesh out requirements and create user-interface mockups. We then develop your system over a series of incremental stages, each one demonstrating new, tested features, finishing with a full release.

Managing Uncertainty: Iterative Estimating

There are uncertainties in every software project; it’s our job to make sure there aren’t surprises as well. We provide progressively refined estimates, both for schedule and cost, throughout a project so that you control your own priorities.

Perfect software delivered too late or at too high a cost is a failed project. Budget and schedule are every bit as important as features in defining requirements.

Likewise, there's often a lot that is undefined when a software project begins. It can be simple things like whether buttons need to be red or blue, or complex issues like needing to define the API two systems will use to integrate. It's impossible to know everything before beginning the effort to invent a new business solution.

Our focus at every stage is to reduce uncertainty and drive the project forward with a clear sense of your business objectives. We work to ensure that we know what we don't know.

One important lesson from all of this is that the process Soliant followed was as much a competitive advantage as the system itself. By rolling it out in short, multiple releases, we were able to put the data to work right away and immediately learn what worked and what didn't.

Soliant's Process in a Nutshell

  • Proposal Phase

    Our first phase, for which we don’t charge, seeks to determine the vision of your project. We will schedule a few conversations, get a sense of your overarching goals, and give you a rough ballpark range for what sort of budget might be required to meet your needs.

  • Foundation Phase

    We call this part of our software consulting process the “foundation phase,” because there’s so much more that goes on than just jotting down a list of features. This is the phase in which we come to really understand your business. We often will create a framework for supporting the evolution of the software solution beyond its first iteration, we’ll consult on process improvements in your organization, and we’ll address adoption and rollout plans.

  • Development Phase

    During this third phase we build the solution in question. Much of the work is done in the code, but we hold regular status meetings with clients to maintain control, visibility, and to ensure we can accommodate changes in plans. Our clients are active members of our development team and have full access to the code, our development servers, and project management tools.

  • Agile Iterations

    Custom software only works if its users love it. Our software consulting process follows elements of the Agile methodology: we often step through foundation-development-deployment phases, in iterative units called “sprints”, to ensure you and your team can see the software coming together, use it, and adjust course as the software evolves.

  • Deployment Phase

    We learned early on to give enough time and mindshare to rolling out systems. Sometimes a deployment can be easy, but in times when a data migration or server issue arises, it’s always best to have a clear plan. Our team has worked with some of the most exacting IT organizations in the world: we understand that getting a deployment right is critical for a business.

  • Support Phase

    It’s rare that a business solution is ever finished: your business evolves, and it’s important that your software can as well. We can provide ongoing support for projects we’ve deployed (sometimes for years) and continually modify them to suit the needs of your team.