The advice we give below is generic, it illustrates some of the process that we go through with our clients but is also relevent should you decide to choose another developer. You may know (or think) you need a custom database application, but describing precicely what you want may not be that easy. Whoever you choose to develop your solution, there are some practical considerations to keep in mind.
Organising Your DataThe starting point for specifying a database application is likely to be your existing system. Your developer will advise, but its useful to prepare your own ideas on what the new system will do and how it relates to the way your system works now. In particular, it is useful to have some insight into the way information has to be organised in a databases and how it is handled.
Work BackwardsWhen thinking about how your proposed system should operate, it is often useful to start at the end and work backwards. What information must the user be able to see? What reports have to be produced? By being aware of the information needed at each stage of the process, you can more easily determine what should (and what should not) be entered earlier in the process.
Screen LayoutsProduce rough layouts of the screens you envisage. They may change later in discussion with your developer, but they will be useful starting point.
How Many Users?You may need a stand-alone installation on single PCs, or a network installation with 4 or 5 simultaneous users. If you need many more than about 10 simultaneous users, you should consider an SQL server based solution (or an open source version, MySQL) instead of, or in conjunction with, an Access database. Similarly, if you want access to your database over the Internet, Microsoft Access may not be the right solution. Your database developer will advise you of suitable options.
Nothing Stays the SameWhen describing your existing systems, think about the elements that are most likely to change in the future. Some change is inevitable, but you know your own systems best and you should ensure that your database developer builds in flexibility wherever appropriate. You don’t want to end up with a database application that has to be redesigned with every modification of your processes.
Choosing a DeveloperThere are many considerations when specifying your requirements and when choosing a company to develop your database system. This checklist may help. It is by no means exhaustive, and you will probably want to add many of your own items to the ones listed here.
- Price – An obvious consideration, but look carefully at what is being offered for the quoted price. For example, is it a fixed-price quote, or is it based on a daily rate and open to escalation if (when!) the job takes longer than expected?
- Support – What ongoing support is offered and at what cost? There should at least be an undertaking to correct defects at no charge, although this may apply for a fixed warranty period (e.g. 3 months).
- Meetings – Does the quote include briefing/progress meetings? These may, of course, be online or in the form of teleconferencing, but its all time to be considered.
- Location – With today’s communication possibilities, this is becoming less of a consideration. However, if you happen to favour lots of face-to-face meetings, you may not want to choose a provider based 200 miles away.
- Training – Is user training included in the quote? Even the simplest of systems require some familiarisation.
- Previous projects – Have you seen examples of previous work? Its particularly useful if you can see something similar to your own requirement.