BuiltWithNOF
Who to talk to?

pic-Buying Bespoke

 You need to find some companies to talk to about your idea. The first thing you need to do is decide on roughly how big the problem is. You should already have some feeling for how extensive your needs are just from having thought about it. You should make enquiries to different companies to find out:

a. What industries do they have experience of?
If your problem is in a specialised field (eg fluid dynamics) or is safety critical (eg air traffic control) then it is essential that the companies you talk to have the right sort of background. If it is a general problem (eg contact management) or small (eg a simple estimating program) then you can use a general purpose software company.

b. What sort of languages do they know?
Lots of small software companies specialise in languages like Visual Basic or Microsoft Access. These products are fine for small non-critical projects, but they are not a good choice for more serious development. Does the speed of your program matter? If you want something to work quickly (eg for data capture) then you need higher performance and should consider using a language such as Borland Delphi or Microsoft Visual C.

c. How big are they?
Match the project to the company: Don't approach a big company to develop a tiny program (they will get a junior to write it) and don't approach a small company to develop a huge program (they will struggle with some of the design issues and might not be able to do it quickly). As a rough guide, a "small" project should take a month or less to do, but if you are quoted delivery times of a year or more then you should consider if your requirements will have changed before you have a working system installed.

Try to check that they have done similar sized projects before.

Step 3: Developing your ideas.
Hopefully you now have some idea on what you want to do and your conversations with suppliers are giving some indication of likely price. At this point, you should start considering how to convert your idea into a specification. As a rough guide-

For software up to £1000:

You won't get that much for under £1000 (up to 5 screens and some processing) so there is little point in having a large specification. If you know what you want the screens and reports to look like, try to make up pictures using either pen-and-paper, a word processor, or a graphics package. Don't spend too long on these- a good designer will need to change them to work with other constraints of the system- but ensure they communicate the core ideas. Ensure that any unusual jargon is explained in your notes, and ensure that the people you talk to understand what you mean.

For software up to £10,000:

You will get quite a bit for up to £10,000- typically 20-30 screens or so. You need to think quite carefully about your requirements for this and should consider buying some specialist help with developing this specification. You need to start worrying about things like "scalability" and performance: We worked on one project where the software was developed for just a few sites, but when we became involved they had 200 sites. The software had become very very slow to use (eg 15 minutes to display a screen!). You should check that the data being stored can be retrieved by other programs, not least so that you can move your data to another system some time in the future.

For software up to £100,000:

You will potentially have a very extensive system for this sort of price. You absolutely must have specialist support with specifying this system- it's too easy to get it wrong.

General Notes:
One piece of research showed that a mistake at specification time might cost £1 to fix. If the mistake is missed and fixed in the design, it might cost £10 to fix. If the mistake gets into the code it might take £100 to fix. And if you have to change the live system you could be talking £1000 to fix it! Take care to ensure that you get the specification right.

You will only get what was agreed in your specification. Customers often award contracts to the lowest bidder, but that means that the pressure is on to provide the software at the lowest price by only developing what is in the contract. So, if you really want a certain report, make sure that you include it in the specification.

You must ensure that everyone who will use the new software actually wants it. If someone could lose some of their underlings, they might reject the software because of concern for their people or concern for their importance. If someone thinks that the new software will be a bad idea, listen very carefully to them- their objections could save the project and possibly your own job!

Ensure that you are happy with the "intellectual property" (the right to own the ideas in the software) situation. If the company who developed the software owns the copyright, you won't be able to get it modified without their approval... which might be expensive.

Ensure that the "source code" for your project is held in a safe somewhere with some sort of guarantee that if the company ceases trading that you will automatically be allowed to recover the source code so that your business won't be affected. Check that it is updated every time you have work done on the project.

It might be better for some projects to consider buying a standard package (eg an accounts package) and extending it with additional features (eg data entry or reporting) than buying a whole bespoke system.

Ensure that you make provision for training your staff in the new system.

Ensure that you consider the way the new system will be installed and implemented. Will you have a loss of service? Is it reversible if there are major problems?

[Home] [Profile] [Services] [Software] [Bespoke v Packaged] [DIY Programming] [Bespoke Software] [Support] [Contact]