Any project, large or small, should be designed and well-thought out before development begins. You wouldn't start building a house without first studying the ground for the proper placement that will work on a piece of property or talking with an architect for good structural design that fits your needs. Likewise, there are many environmental considerations when starting a software project. For it to be successful, you need the answers to several questions:
- What computers will be used to run the software?
- Who will be using the software?
- What type of information does it need to manage?
- How many people will be using it at once?
- Will it be an automated system?
- Does it need to allow for future growth or changing data?
- Does it need to handle large amounts of data?
- What should happen if an unexpected condition occurs?
This is just a start. Each of these questions should be discussed to fully understand how the software should be built. Some might think that it should always be built with flexibility in mind and the capability to handle large amounts of data. But there's a cost to increasing complexity and flexibility and the budget may constrain the design to something simple if there's no reason for building a large-scale application up front.
Constant communication throughout the development life cycle is key to preventing surprises that can derail a project.
We want you to be happy and we will go out of our way to make sure you get what you need.