Software and technology advances mean that opting to have a custom software solution designed is no longer solely the province of big business. Development costs are now within reach of small and medium sized enterprises.
"A custom software solution can give a business the edge over their competitors precisely because it has been designed to fit with company specific requirements. It follows that this can have a positive impact on the business bottom line as processes become streamlined and therefore more efficient," comments Graeme Humphrey, Operations Manager of Codify.
"When working with software developers there are various things that a company can do to ensure that the end result is a perfect fit for their requirements. This begins prior to contacting a software house. The first step is to produce a document which details the project requirements. It is vital that end users are consulted during this stage of the process as this will help to ensure buy in to the project - something that is essential further down the line."
Graeme has this additional advice for companies considering venturing down the custom software path.
On your marks
As with any project it is important to understand who the stakeholders are. "Identifying the stakeholders and assigning system development responsibility to one person will aid the smooth running of the project. Effective communication and consultation with the end users at this stage should also result in the solution being adopted across the board."
One of the first tasks is to gather the following information:
o System requirements
o Functional specification
o Risk assessment - including ways to mitigate any identified risks
o Data migration requirements.
Graeme adds: "These documents can either be drawn up in-house or produced in collaboration with a software house. Either way, once they have been generated they should be reviewed and if necessary, revised by the stakeholders. Only once this has been completed is it possible to decide a realistic project budget. This should include an annual element to cover support and maintenance.
"Including the expected business benefits in the functional specification is recommended as these can then be used to measure the success of the project once it goes live."
According to Graeme this is also a good time to conduct an audit of the existing IT infrastructure. "This will allow the business to determine whether or not the current hardware and comms will need to be upgraded or whether it might be necessary for the new system to be hosted externally."
Get set
Once the functional specification has been finalised this should be issued to a number of software houses. "It is best to request proposals from a minimum of three software houses. This will allow the business to determine which is most suited to their requirements."
On receipt of the proposals Graeme suggests that the following should be considered:
o Intellectual property rights
o Type of technology which would be utilised
o Will any software licenses need to be purchased?
o Company's previous experience
o Technical know-how of developers
o Regularity of releases
o Availability of a project manager for communication
o Locality; can face to face contact be provided?
o Availability of ongoing support once the system goes live and becomes business critical
o Warranty period for bug fixes
o Price.
Graeme continues: "Once the proposals have been reviewed and the business is close to awarding the contract, we recommend setting up meetings with the short listed companies to establish whether it will be possible to build a positive working relationship with them."
Go!
Once the contract has been awarded communication continues to be key. "At the kick off meeting it is important to make sure that the software developers know who their first point of contact will be. The critical path for development, the milestones and timescales should also be agreed. After this initial meeting there should be regular meetings or conference calls with the software house to review progress.
"During the life of the project it is essential that the decision makers are available so that they can contribute, where necessary, to the development process."
According to Graeme the project leaders should also ask for regular software releases during the development phase. "The software house should track all reported issues and produce detailed notes for each release. These should identify the issues that have been addressed and require re-testing.
"During the latter stages of the project it is vital that the project leader ensures that training sessions are organised for the end users. This will aid the adoption of the new system. Investing time and resources in this area is vital if the system is to fulfil its role and become business critical."
Graeme adds: "Throughout the project regular and effective communication is key in order to ensure that the project remains on track, on schedule and on budget."