Our preferred development process is agile, involving multiple releases during development and user feedback along the way.
01 Plan
When you first tell us about your project, you probably already have an idea of what you want, and you're considering how to achieve it. You want a ballpark estimate for cost and schedule. We can generally provide this after one or two discussions. We might suggest that this problem be solved with an off-the-shelf solution instead, if it seems like custom software is not the best value for you.
If it makes sense to proceed, we work with you to fill in more detailed requirements and build a formal proposal. Custom software can be as expensive as your imagination, but there are always time and budget constraints. We help you prioritize features and consider alternatives to achieve a solid ROI. We divide the project into phases with visible results so you can give feedback early and (if feasible) start to enjoy some benefits with an early release before the full solution is complete.
02 Build
Releasing software incrementally in fully tested iterations makes the development process collaborative and efficient. Following the iteration plan from the quote, we write the code to achieve each iteration's goals. Iterations are often 2-4 weeks in duration, and we stay in regular contact with you through the process.
Each iteration that we build is tested by Sembit and then released on our test servers or yours for you to review.
It’s normal for you to have fresh insights as you see the project unfold. Most of the time, while we're developing the next iteration, we're also incorporating change requests you've made based on your review of the previous iteration. We allow for this in our time and budget estimates. Software change is expected.
03 Launch
At the end of the project, we will help you through the go-live process to whatever degree you request. This can include documentation and training for technical staff and business users. This can include hosting, help with deploying the system to your servers, or a simple code handoff.
This is our favorite part. We’ll discuss what went smoothly and what was difficult, and celebrate the successful completion of the project. If this project was tied to business ROI, we will also schedule a follow-up meeting to evaluate the project's business results against its success criteria.
If requested, we will provide long-term support, so you have one point of contact to deal with enhancements and maintenance. Alternatively, we can hand off to your team. We can also help with training technical and business staff, as desired.