Costs and financing
As for any project within development cooperation the financial aspects are crucial. In contrast to other projects, IT projects are enormously hard to plan. Out of the typical project constraints of time, cost and scope, the cost is the most difficult to estimate. The scope is often unclear because requirements of the various stakeholders can shift throughout the project, and unexpected complexities may arise. Rapid technological advancements and continuous user feedback further add to the uncertainty, making it difficult to predict costs, timelines, and the total effort needed.
On the other hand, it is frequently much easier to fix the available budget, time as well as the goals for the project at the beginning of the project. This means that IT projects are often managed more efficiently in agile project management frameworks, such as Scrum or Kanban. These frameworks allow for iterative development, continuous feedback, and the ability to adapt to scope to the changing requirements within the available time and budget.
Despite the uncertainties, it is important to have a rough idea of the costs involved in an IT project throughout the project cycle. In general, we can think through the budget within the following scheme:
Cost Category | Description | Cost during build phase | Yearly cost during run phase |
---|---|---|---|
IT Infrastructure | Hardware, networking equipment, storage solutions, and space in data centers | - | - |
Software | License fees, subscription charges, support or maintenance contracts, training expenses, and any additional costs for upgrades or updates | ||
Technical Staff | Salaries and benefits for software developers, system administrators, IT security specialists, UI/UX designers, database administrators, network engineers, and user support staff | ||
Non-Technical Staff | Salaries and benefits for project managers, training coordinators, risk managers, compliance officers, and change managers |
In the following, we will provide a more detailed explaination of the project phases and then the main cost categories.
The project phases
We have already mentioned that IT projects are hard to plan. However, in practice we can often distinguish two main phases:
- The build phase: This is the phase where the IT project is developed and implemented. The costs in this phase are typically one-time costs and include the costs for the IT infrastructure, software, and technical staff.
- The run phase: This is the phase where the IT project is deployed and operated. The costs in this phase are typically recurring costs and include the costs for the technical and non-technical staff, software support and maintenance, and other operational costs.
In contrast to other infrastructure projects the costs during the run phase can be substantial1. Therefore, different cost scenarios are often compared through the total cost of ownership (TCO). The TCO includes all costs associated with the IT project over its entire lifecycle, including the costs for the build and run phase (which is typically taken to be 3 year).
We can then roughly estimate the TCO as:
TCO = Build Phase Cost + 3 x Yearly Run Phase Cost
From experience complex IT projects require substantial organizational commitment and active participation from the client throughout both phases, which goes well beyond the typical involvement needed in traditional infrastructure projects. As a consequence, a non-negligable portion of the TCO cannot be covered by external consultants and but only by the clients ressources.
The main cost categories
IT Infrastructure
The IT infrastructure encompasses all the hardware necessary to operate an IT project. This includes servers, networking equipment, storage solutions, and even space in data centers for housing the data center. Security solutions such as firewalls and backup systems are also essential components to ensure the smooth and secure operation of the project. Therefore, the traditional on-premises infrastructure is typically an initial invest. In contrast to other infrastructure, the IT infrastructure is subject to rapid technological changes and depreceates relatively quickly.
The high cost, quick depreceation, required technical expertise and the need for physical space of IT infrastructure are some of the reasons why cloud-based solutions are becoming increasingly popular. It is nowadays also frequently possible to outsource the the IT infrastructure to cloud services that provide computing power, storage, and network capabilities. This can be a cost-effective solution, especially for smaller projects, as it eliminates the need for purchasing and maintaining physical hardware.
However, cloud services typically come with recurring costs. So you have to ensure the cash flows are secured for the entire lifecycle of the project. For projects in development cooperation this kind of long-term budget security can be unrealistic. Therefore, it is important to carefully consider the risks and and benefits of cloud services before making a decision.
Software
Whatever, the IT project, software is the core of the project. And the software has to ensure that the data can be entered, stored, processed and retrieved in a secure and efficient way. It is unlikely that you will create a new software solution from scratch for all of these parts. Therefore, you will try to connect existing solutions in a fitting way. And each of these solutions can typically come with some kind of costs.
- Solutions for data entry: This might be a web-based form, a mobile app or a desktop application.
- Solutions for data storage: This might be a database, a file system or a cloud storage solution.
- Solutions for data processing: This might be a data processing pipeline, a data warehouse or a business intelligence tool.
- Solutions for data retrieval: This might be a web-based dashboard, a mobile app or a desktop application.
For any of these parts the costs can come from license fees, subscription charges, support or maintenance contracts, training expenses, and any additional costs for upgrades or updates. Open-source solution typically have no license and upgrade fees. However, it will incur also costs for maintenance, support and training.
Similar to hardware, software evolves rapidly, necessitating frequent updates or upgrades to keep systems secure and efficient. Therefore, organizations often bundle these services into, service-level agreements (SLAs) which incur recurring payments.
Technical Staff
The technical staff is responsible for the development, implementation, and maintenance of the IT project. The size and composition of the technical team will depend on the complexity of the project and the technologies used. The following technical roles are typically involved in the development and maintenance of an IT project:
- IT Architects: Responsible for designing the overall architecture of the IT project. This role is especially crucial if you consider a new development or the integration into an existing IT landscape.
- Software Developers: Responsible for writing code, testing, and debugging software applications.
- System Administrators: Responsible for installing, configuring, and maintaining servers and other IT infrastructure.
-
IT Security Specialists: Responsible for ensuring the implementation meets security standards. This role is ideally covered by the client/partner itself, as they have the best understanding of their internal security requirements and data protection needs.
-
UI/UX Designers: Responsible for designing user interfaces and ensuring a positive user experience.
- Database Administrators: Responsible for setting up databases and ensuring data integrity.
- Network Engineers: Responsible for configuring necessary network infrastructure.
- User Support Staff: Responsible for providing ongoing user support and troubleshooting.
The cost for the technical staff can be substantial and depends highly on the level of customization and complexity of the project.
Non-Technical Staff
The non-technical staff is responsible for the management, coordination, and support of the IT project. The following non-technical roles are typically involved in the development and maintenance of an IT project:
- Project Managers: Responsible for coordinating the project and ensuring it meets its objectives.
- Training Coordinators: Responsible for planning and organizing initial training sessions. This role can be often covered by the technical staff in smaller projects. However, if training is needed for a large number of people, then its organization is best concentrated within one specfic coordinator.
- Risk Managers: Responsible for conducting initial risk assessments from things like licenses, security or external or dependendies. This role is especially important for complex projects with a lot of stakeholders and dependencies as it allows for a more proactive proactive approach to managing risks.
- Compliance Officers: Responsible for ensuring compliance with regulations and managing audits. This role is ideally covered by the client/partner itself, as they have the best understanding of their internal requirements.
- Change Managers: Responsible for accessing the needed organizational changes in the early build phase and as a main task supporting the organizational change needed alongside the introduction of a new solution such as human process changes, changes of roles and communication structures, etc.
Similiary, to the technical staff, the cost for the non-technical staff depends highly on the level of customization and complexity of the project. Especially for complex organizations the non-technical staff can be a substantial cost factor and is crucial to ensure the deployment and operation of the IT project.
-
A rough rule of thumb is that the yearly running costs are about 10 to 20% of the cost in the build phase. However, this can vary greatly depending on the complexity of the project, the technologies used, and the size of the organization. ↩