EDISON provides a full range of project development services. In practice, these cover the following stages: requirements elaboration, administration, coding, testing, documentation, deployment, warranty and post-warranty servicing. For the clients' convenience each step is priced separately, which gives the option of selecting only those services which are genuinely required. In this way costs can be kept to a minimum.
Requirements elaboration and planning
In addition to selecting the appropriate tools and preparing a requirements specification, this step also includes timetabling and task allocation by project stage. An architect must be involved in initial planning. He or she contributes in the following ways: collects the ideas of all programmers working on the task, then critically evaluates and checks them. Elaboration should be carried out before the main development process starts, otherwise it is possible to reach an impasse at the end of a long and difficult road.
Further stages do not always require the participation of an architect, whose hourly rates are high. The cost of producing a requirements specification for a task constitutes 10–25% of its preliminary cost estimate. However, this small investment will later pay dividends upon project completion.
The project manager takes administrative charge of the project from the first to the last day. The presence of an organised team leader guarantees that all obligations will be carried out as planned. This “supervisor” continuously tests the product in the capacity of an advanced user, which enhances its quality. This is especially important for high-load systems and software intended for mass use.
Project managers also solve real-time problems, hold technical meetings, keep the client informed, resolve any differences of opinion within the team, and clear up any misunderstandings that may arise. They also continuously oversee the activity of every member of the development team. If the development team is small then it may not be necessary to assign a full-time team leader. However, when implementing large projects with a great number of specialists, team leaders have a vital role to play. Project management accounts for approximately 8–15% of a project's overall cost.
Coding is estimated to be approximately 50–70% of the total cost of a project. This may vary depending on the man-hours required.
Clients may lack software testers of their own with the necessary skills, experience and character. Moreover, testing is almost always essential at the deployment stage when minor errors inevitably surface. It takes time for bugs to be found, errors logged and then corrected.
EDISON offers testing services from highly-skilled specialists who can make sure a product is in full working order and can be accepted even before its release. This option saves resources and means clients can receive a high-quality product straight away, rather than having to rework and polish untested software. The cost of testing makes up 8–50% of the total cost of the project depending on the required level of fail-safety.
The cost of deployment is highly dependent on the nature and complexity of the project. Deployment costs are affected by the client's geographical location, whether remote deployment is possible or whether a business trip is necessary (and how long this may be), the amount of work required to install and configure the product, etc.
User and system administrator manuals provide the opportunity for end-users to learn to work with software quickly. A well-documented product is easy to master and can be successfully used by the client's staff. Documenting accounts for 1–5% of the total cost of a project.
Warranty and product support
After software has been accepted, errors can still appear and we undertake to eliminate these in accordance with our standard one-year warranty agreement. EDISON's software support ensures that a specialist is always on hand to provide a rapid response to any problems that may arise. Our annual warranty costs 12–15% of the cost of the product.