Implementation is the carrying out, execution, or practice of a plan, a method, or any design, idea, model, specification, standard or policy for doing something. As such, implementation is the action that must follow any preliminary thinking in order for something to actually happen.
In an information technology (IT) context, software or hardware implementation encompasses all the post-sale processes involved in something operating properly in its environment, including analyzing requirements, installation, configuration, customization, running, testing, systems integrations, user training, delivery and making necessary changes. The word "deployment" is sometimes used to mean the same thing.
For an implementation process to be successful, many tasks between different departments need to be accomplished in sequence. Companies strive to use proven methodologies and enlist professional help to guide them through the implementation of a system but the failure of many implementation processes often stems from the lack of accurate planning in the beginning stages of the project due to inadequate resources or unforeseen problems that arise.
An IT system implementation usually starts with negotiating a contract with a vendor, a usually meticulous process that defines set guidelines, deadlines and a payment schedule for the entire implementation process. Contract requirements could include the outline of system performance criteria, penalties related to issues and delays in the implementation process, documentation, training and issue resolution requirements as well as vendor support after the system goes live in case of problems. Having detailed requirements agreed to in writing is a benefit to companies since it gives managers and users clear requirements to be met at different points throughout the process and holds the vendor accountable for the product.
After a contract is agreed to and a project timeline is established, key business units must meet to discuss the organization's future roadmap, the project's scope and what a new system could achieve for the company. Usually, the main players at this stage include the IT team, top business executives and various sales teams, especially if the software/hardware being implemented is an enterprise-wide tool such as a CRM or ERP system.
With various levels of the organization working together, each department must agree on clear, quantifiable and well-defined goals for the project and what they each hope to gain out of using the new technology. The company's goals need to be measurable in order to assess results and to judge the success or failure of the system once it is implemented. Sometimes, this might require an auditor -- either from a third party, a vendor, or someone internally -- to be brought in to evaluate every customer-facing business process to diagnose problem areas or inefficiencies that need to be corrected. Once goals are established, the organization must develop a plan for checking in on the implementation's status that often includes a timeline focused on achieving set objectives through various stages of the implementation process.
Key players in the implementation process typically meet regularly to discuss the project's progress, voice concerns and augment procedures as necessary. An organization may deem it necessary to appoint a program manager, someone with experience in the technical aspects of the technology as well as in project management, to oversee the implementation process from start to finish. Software implementations often involve people such as business analysts, solutions architects and technical analysts in the implementation process.
After the process for any hardware or software implementation project moves through the planning stage, companies should gradually test the new system until it is ready to fully go live. A pilot program, where a small test group within the company runs the system as part of a trial for a finite period of time, is often a key component to any implementation process.
Typically, a subsection of tech-savvy workers within a company is enlisted to try the new system because they would be most keen on picking out glitches or shortcomings of the system to further help the implementation process. After testing is complete, training programs focus on educating users about the new system and how to use it before the system eventually is ready to go live. At the end of the implementation when the system is about to go live, companies typically review the entire process and verify that all tasks have been completed.
Software/hardware implementations should always be designed with the end user in mind and the implementation process usually benefits from user involvement and support from managers and other top executives in the company. If users participate in the design and implementation of the system, ideally it will serve their business objectives more accurately and reflect their priorities and the ways in which they prefer to work. Their involvement in the process also makes them more receptive to changes that need to be implemented because they have firsthand experience of what the system comprises.
The "user-designer communications gap" is typically a hurdle companies must overcome to successfully implement a new system. Users have wants and needs that they hope to get from the system while designers and IT staff have to consider various restrictions, efficiencies and database management principles and limitations during the implementation process.
Implementations inherently represent a change in a company's existing technological architecture so it is common for implementation processes to encounter problems on both sides of the go-live date. To account for this, companies should keep close relationships with vendors and consultants to help them fix issues as they come up. Common problems that arise during implementations include the missing of deadlines, going over budget for the entire project, underestimating hours that staff is devoted to a project, running into unexpected delays or blockages due to an external partner and facing the withdrawal of support from key stakeholders or various unforeseen consequences that could otherwise slow the process down.