![]() |
Best Software Solutions |
Preparation
Before you contact any prospective software development companies, you
should make sure that you understand exactly what it is you wish to achieve.
Ideally this would be in the form of a written software brief, but this is by no
means a necessity at this stage. Many developers will be happy to just talk
about your project with you.
Before contacting potential developers, you should also consider
searching for an “off-the-shelf” application that may fulfil your requirements.
Finding Potential Development Company
Often the best way to find potential software developers is by asking
for recommendations from friends, family and contacts.
Key Criteria
The following are a list of criteria to consider when choosing a
software developer. Depending on your business and software requirements, some
of these criteria will be more important to you than others.
Expertise
The skill set of your software developer is obviously extremely
important. If you require a database system to be developed, you do not want to
have a computer game developer (and visa versa). From the outset it is
important to establish whether or not the developer has the skills to
successfully create your software. You should ask for examples of systems they
have developed that they feel have similar aspects to your requirements. As
your requirements are likely to be quite unique, do not expect them to have
previously developed a system that is identical.
If your software requires integration with (or redevelopment of) an
existing system, you should make sure that the developer is familiar with the
technologies already in use.
Be wary of a developer who tries to encourage you to use a particular
development technology without justification. A good developer should be able
to provide a range of options, whilst clearly explaining to you why one is most
suited to your requirements.
Industry-Specific Experience
If your software is very specific to your industry try to find a company
that is experienced in developing software for your industry. This will allow
them to more easily understand your requirements as they will already be
familiar with your terminology.
Depending on you industry, it may not be possible to find software
development companies that have industry-specific knowledge.
Size
Small and large software development companies both have their
advantages and disadvantages. A large company may have a wider range of skills
and be able to complete your system quicker, but you may not get the personal
service you would from a smaller company. A smaller company may prove to be
more cost-effective, but their limited resources may cause your project to take
longer to develop.
It is also important to make sure that your project is not too large (or
small) for the software developer.
Personal Rapport
The relationship between you and your software developer is a very
important factor for the success of your software development process. You may
have to spend a lot of time with your software developer, so you should try to
choose somebody who you feel comfortable with and does not baffle you with
jargon. Poor communication with your developer can result in misunderstandings
from the start.
Professional Accreditations &
Associations
There are a variety of professional accreditations and associations
available in the software industry, such as BCS Membership, Microsoft Gold Certified Partner and Sun Certified Java Developer.
When assessing the accreditations and associations of a potential
software developer, you should be wary as many involve little testing of
technical skills and are simply purchased for a fee. Asking the developer about
how they attained the accreditation should help you to assess its value.
Flexibility
It is highly likely that your software project will change and evolve
throughout the development process and beyond. So it is important to know how
your software developer will deal with these changes. You should enquire about
the types of changes that are likely to incur additional fees and how those
fees will be calculated.
You should also try to ensure that your developer creates your software
in a flexible manner, allowing (where possible) for changes to made at a later
date with the minimum amount of restructuring of the system.
Support
It is important to talk to your developer about how ongoing support for
the software will be arranged. For example, who will be responsible for the
cost of correcting any bugs in the software that may become apparent at a later
date?
You should also know whether the development company will provide you
with user manuals and training for your software, as well as any additional
costs associated with this.
Understand Of Your Requirements
It is vitally important that your best software solutions thoroughly
understands your requirements. You should be able to gauge this by looking
through the description of the project in their proposal and also by analysing
the questions they ask about the project.
A lack of understanding of your requirements can result in the finished
system being very different from what you had anticipated.
Price
You may find that the quotes you receive for your system considerably
vary in price. Do not be tempted to automatically go for the cheapest. As with
all bespoke services, not all companies are equal. You should try to establish
why the prices are different and then weigh up which one offers the best value.
You should ensure that all parts of the development process that you require
are included in the quote – system design, implementation, testing, user
guides, training and ongoing support.
You should also establish whether or not there are any hidden fees, such
as required third-party software licences.
Intellectual Property
It is important to know who will own the intellectual property for the
software at the end of the project. If it is not you, then you should establish
what the limitations of the licence agreement are.
If your software system will involve the use of third-party components
you should also enquire about any licensing limitations with those components.
Location
If you will need to meet with your software developer on a regular
basis, it may be convenient to choose a developer that is based near to you.
However, unless you live near a large city this may severely limit the range of
developers you have to choose from.
Work Load
If you require your software to be developed as soon as possible, you
should find out how heavy the developer’s current work load is. If they are
very busy they may not be able to start your project for many months. For more information visit: http://www.cnisolution.net/
No comments:
Post a Comment