Mark Rae Music Ltd
Skip Navigation Links
I can provide business and technical consultancy at all stages of your IT requirements.

Business analysis
Using the latest software, I can work with you to identify your business problems and to find solutions to them. Always, the business must drive the solution, not the other way round - there is nothing worse than a company who jumps on the latest technological bandwagon, then sets about looking for a problem for it to solve Occasionally, an IT solution is not required at all, and a simple re-engineering of business processes is all that is needed.

Requirements gathering
Very often, users and managers know exactly what they want, but find it difficult to communicate their requirements to business analysts, let alone software developers. Drawing on my many years' experience of working with users from virtually every market sector, I have developed a comprehensive set of processes for extracting detailed requirements from users and documenting them in a non-technical business-orientated manner.

Functional and technical specifications
A functional specification is absolutely crucial to a successful project, because it is the means for me to prove to you not only that I have understood precisely your requirements, but also that I know how I am going to deliver them. Typically, the functional specification will also include an outline project plan with agreed milestones, plus costs and deliverables.

Once you have read, agreed and signed off the functional specification, a technical specification is produced. This is typically an internal document for me and my development team which describes how the solution will be architectured, what technologies will be used, and how it will all fit together. If you have requested a feasibility study or prototype solution, this will be also done at this time.

Development and mentoring
Once the specs have been signed off, the development phase can begin. I prefer to develop off-site because that means I can take advantage of my own setup, and don't have to waste time travelling to and from your premises. It also means that you don't have to worry about finding me a desk, PCs, development servers, software licences etc. That said, I can work at your premises, especially if you have an internal development team who would benefit from my experience.

Testing and documentation
All development is unit-tested as it is being developed. When the development is complete, the entire solution is alpha-tested and beta-tested. Alpha testing irons out any bugs which prevent the solution from functioning and beta testing highlights any errors or omissions in functionality. Following successful beta-testing, the solution will be installed for user acceptance testing (UAT). Typically a small but representative subset of the user-base will carry out the UAT as a pilot.

Installation and support
Once you have signed off the UAT phase, the solution will be rolled out completely. In the case of a desktop application, this will involve an setup routine which will be run on each user's PC to install it, and may also include setup routines for server or back office components. In the case of a browser-based solution, this will involve deploying the solution to live or production servers and, typically, informing the user-base of the URL via email.

Maintenance and upgrades
Finally, I will provide full support for all the solutions I deliver. Typically, there are two types of support contract.

Insurance policy: this allows you unlimited support calls within a defined time period, usually a year, and is most often used when a solution is first rolled out and users are becoming familiar with it.

Call-by call policy: this still allows you unlimited support calls, but each call is charged on an individual basis. This is most often used when a solution has been in place for a while and users are very familiar with it, so support calls are less likely.