IT Project Management: What is It and How to Conduct This Process?
Project management is the process in which the person in charge of a project - the project manager, plans and controls tasks that are part of the project and allocates resources accordingly. Project management aims to achieve the project objective within the set deadline and budget. In the IT industry, agile methodologies are most often used to achieve these goals, allowing for smooth adaptation of the process and product to changing environmental conditions and customer expectations.
What is IT project management?
Project management in the IT field differs from traditional project management because software projects have a specific life cycle that requires multiple rounds of testing, updates, and customer feedback. Most IT-related projects are managed using Agile methodologies to keep up with the business's pace and iterate based on the feedback from customers and stakeholders. Usually, after the implementation of a product, the work of the IT team doesn’t end, but the support phase begins, which should last as long as the product exists. In the IT world, it’s difficult to cope without updating systems, developing application functionalities, or improving security features.
Before starting the development works on a project, a product backlog is prepared. This element is the Product Owner's responsibility, i.e. usually the customer, or the Project Manager, who describes the expected result in cooperation with the client. Backlog is a set of project assumptions in the form of user stories describing particular functions and elements of the final product. When the backlog is ready - or at least contains enough stories for the works to start - the Project Manager and the project team meet to select the stories that need to be done first and to make an estimation of their required labor intensity.
In the case of small projects, it’s sometimes possible to make a full estimate of the entire project from the beginning to implementation. However, it’s more common to divide the work into phases and execute them in so-called sprints (predefined, fixed timeframes). Estimating the required labor intensity for individual tasks makes it possible to determine the cost and timeframes for completing individual phases or the entire project. Thanks to the estimation, knowing the available resources, i.e. the size and experience of the team, it’s possible to plan the work quite precisely over several weeks, sometimes even months.
Planning the work of a project team requires knowledge of the process flow. The work of individual team members may be interdependent or may run in parallel. In the case of web development, the preparation of the development and testing environment isn’t related to the work of the graphic team so that they can take place in parallel. However, it’s impossible to schedule the product testing independently from the development team's work because only after building individual elements, the tester can check their operation.
The knowledge of the process together with the knowledge about the labor-consumption of individual tasks, makes it possible to arrange the work on a timeline and reserve the availability of individual team members only for the time they actively participate in the process. Thanks to this, they can participate in other projects at the remaining stages of work.
Cost management in project management is the process of planning, estimating, budgeting, and controlling project costs. The cost management process enables future expenditures to be predicted in order to reduce the likelihood of budget overruns. Anticipated costs are calculated during the project's planning phase and should be approved before the works start.
The basic element of cost management is to determine the resources needed to carry out all project activities.
Allocation of resources
An experienced Project Manager is able to determine what team members will be needed for the project. However, it’s always a good practice to discuss the task with the team before starting the project. This is to establish whether everyone is competent enough to carry out any element of the project or whether the work should be distributed not only according to time availability but also according to the experience and skills of individual team members.
When allocating resources, optimization is also an important element in order to prevent interruptions in the work of individual team members. If a given team member can perform only certain activities and their tasks end at some point, they can be transferred (temporarily or permanently) to another team where their skills will be used during the period of inactivity in our project.
Task management is the process of monitoring project tasks at all phases, from the beginning to the end. It involves making decisions about tasks with a view to accommodating changes that may occur on an ongoing basis. The goal of task management is always to bring tasks to completion.
What does the project manager do?
The project manager manages projects, i.e. is responsible for the planning, executing, and implementing a given project. This is the person responsible for organizing the team's work, which doesn’t mean that they have to be the superior of team members. The project manager is the head of the project, planning the time and the sequence of the works. They are responsible for the final result and therefore participate in the project at all times.
The project manager should arrange work on the project in time, determine who participates in the project, and the rules of cooperation (e.g. frequency of team meetings, the way of creating documentation, information flow, a form of reporting).
The person in this position often manages also the costs from which they can determine what is within the scope of the project and what is beyond it. They also influence the quality of the project, as it’s up to the project manager to determine what will be presented to the customer. The project manager often manages the flow of information between the customer and the project team.
In the case of big projects, this person is vital to make the project run smoothly while failing to include the PM in the project and assigning PM responsibilities to individual team members rarely ends well. Accountability is diluted, there is a lack of information flow, and there is a risk of losing a great deal of time for addressing conflicts.
In the case of IT projects, it’s very important that tasks are assigned to the right people. Depending on the methodology, either the team members themselves choose the tasks they can carry out, or the Project Manager assigns such tasks. In practical terms, project management software is usually used for this purpose as it allows for project transparency.
Reporting on the progress of the project
If the project is conducted in sprints, reporting on the progress takes place during a Sprint Review or Demo. It’s a team meeting with stakeholders or the customer where the work done during the last sprint is presented and the next steps are planned. For projects conducted in non-agile methodologies, reporting depends on arrangements with the customer.
Reporting at every project phase is a key element for its successful implementation. The customer is often not a person from the IT world, so their ideas about the product that they receive may differ from the actual possibilities. Therefore, communication with the customer should take place on an ongoing basis, and any doubts or obstacles the team encounters during project implementation should be flagged up as soon as possible.
Project risk is an uncertain event that may or may not occur during the course of the project. In project management, risk management is the practice of identifying, assessing, and preventing or mitigating risks to a project that could affect the project's result. Project managers are usually responsible for monitoring the risk management process throughout the project.
Probably one of the most common project risks - cost risk - is caused by poor budget planning, inaccurate cost estimates, and extended project scope. The risk is higher when customers expect a lot even though the project has few resources. Cost risk can lead to other project risks, such as schedule maintenance risk or execution risks.
IT project management tools
Using project management tools allows you to avoid constantly switching between emails, spreadsheets, and various "to do" lists. Project management tools integrate all the essential functions needed for proper information flow within the team, communication with the customer, and insight into the work progress. They allow you to gather plans, files, project details, and feedback in one place.
Jira is currently one of the most popular and powerful tools for running IT projects. It offers transparent project and resource management and allows projects to be carried out in multiple methodologies, depending on the adopted configuration. Jira allows you to schedule work, monitor hours worked on individual tasks, as well as work with the customer in case of reporting errors.
The tasks have different types and can be grouped into larger stories or epics. Jira allows you to build dependencies between tasks, i.e. arrange them in an appropriate sequence for execution. This tool can also be enriched with several add-ons for generating various reports, which allow for very quick and efficient detection of problems with project execution.
Asana is a much simpler work management tool, and its interface is friendly to both those with a technical background and those not involved in the IT industry.
This program allows to create tasks in layouts such as lists, kanban boards, timelines, or calendars. You can switch between these elements at any time. You can group tasks into sections, assign to team members, and set deadlines for their completion. The paid version offers tools for reporting, creating dependencies between tasks, or more advanced privacy settings.
Running complex IT projects with Asana may require the use of additional external tools. However, for organizing the daily work of any team, the tool is clear, functional, and very easy to use, which is a definite advantage over Jira.
Mantis Bug Tracker
Mantis Bug Tracker is a free open source software for creating and managing tasks. Its functionality is limited to a list of tasks without graphs or reports. However, this is not a 'to do' list, as there are numerous fields to fill in, typical of bug reports, e.g. recurrence, priority, visibility, and status.
In the case of low-complexity projects, you can use this tool to manage a project from the beginning to the end. Due to its design, this tool appears to be optimal for support and ongoing customer service, when additional elements such as reports or time logging are unnecessary.
Feng Office is a tool aimed more at managing the entire company than just IT projects. In addition to managing project tasks, the software has built-in functions, e.g., email client, file repository, document management, customer and contact database.
In terms of project management, Feng Office works similarly to other tools, allowing you to create tasks, combine them into groups, assign users and monitor the progress of works, e.g. using a Gantt chart. It also allows the generation of numerous reports, such as financial reports, project execution levels, time flow of tasks, etc.
Source: Feng Office
In the free version, Feng Office enables you to use a basic package of elements. In the paid versions, it’s a very comprehensive management system.
OpenProject is a free (community version), open source project management software. Similarly to all tools of this type, it allows setting project workflow by adding a great number of statuses, together with available variants of their workflow. However, in the free version, the tool doesn’t provide a kanban board - it’s a paid feature.
OpenProject allows you to monitor working time, assign appropriate rates to users, and thus automatically generate project costs. Already in its free version, it’s a very powerful tool, and commercial packages enrich it with further, very functional elements.
IT project management - summary
Running an IT project (concerning, e.g. custom software development), especially using agile methodologies, differs from running projects in other industries. The tools used by companies and IT specialists can be advanced, and they aren’t always applicable in other industries. However, this doesn’t mean that there are no common points. All projects in business are carried out with specific resources, time, and budget, and in each case, they require appropriate management. It’s up to the project manager and the whole team to decide which practices and tools they find most effective for their project. However, the most important aspect is not to lose sight of the project goal and to constantly strive to achieve it with all your efforts.