When undergoing any sort of project, whether it be IT-related or not, it’s important to have a solid understanding both of the project’s goals as well as a project’s desired quality. “Quality” in this case does not necessarily mean perfection, however it must, at the very least, meet the demands imposed by stakeholders.
“Quality” in terms of project management refers to the standards set by the project’s stakeholders. A Guide to the Project Management Body of Knowledge (PMBOK® Guide)
defines quality as “the degree to which a set of inherent characteristics fulfill requirements.” Exactly what this means is set by the project’s stakeholders.
Quality is also not to be confused with grade, the characteristics of two different products with the same functional use. A team can deliver a low grade product if this is what the stakeholders require, but they cannot deliver a low quality product. Indeed, ensuring that a product’s grade is as high as possible can result in unnecessary levels of work that place extra demands on the team’s time and budget but do not make the project’s stakeholders any happier.
Project managers must therefore establish a project’s necessary quality standards early and ensure that they are maintained throughout the project’s lifespan. They must develop processes to establish which standards to aim for, steps they should take to implement them, and how to achieve them while staying within the program’s budget. The series of processes that a project manager takes to do so is what is known as a project quality management plan.
Project quality management refers to the process of ensuring a project’s quality is up to the standards that are defined at the beginning of a project. This is a continuous process that must be undertaken throughout a project’s life cycle. Project quality management traditionally has three different processes, quality planning, quality assurance and quality control.A common mistake made by first time project managers is the belief that this is a step that can only be taken towards the end of a project, after most of the initial work is already in place. However, quality management is an ongoing process throughout a project’s lifespan.
Quality planning is the step in which a project manager or team sets the quality requirements and standards that they require for the project. This typically involves setting guidelines for the team to follow. The project manager should establish objectives for the team members to meet, objectives for the project team to target, and specific metrics that they wish for the project to hit. In an IT project, quality planning may take the form of establishing a threshold for the speed, stability, and necessary features to be implemented for each feature that a program boasts. It must, by necessity, include meeting outside standards imposed on the project by regulatory boards, a company’s own policies, and of course, the demands met by the project’s stakeholders.
Quality control is the process of looking at the project’s outputs and metrics and then determining from there whether or not they are matching the metrics that are desired. In an IT project, this tends to come in the form of bug testing, measuring responses, and error testing. During the quality control phase, it is helpful to use run or control charts to monitor a program’s effectiveness as well as to effectively visualize key metrics. This also is helpful for communicating with stakeholders. This tends to be the first step in any quality management process, as it allows for a project manager to identify key areas where problems are arising. If project quality standards are not being met, then it is important to identify where, exactly, the problem is originating. A run or pareto chart can be helpful to determine where and when problems are arising as well as identify key areas for improvement. When communicating with stakeholders, it is important to ensure that all charts are clear and simple.
![](https://static.wixstatic.com/media/6cd438_49212d64d59c4095b8d1a5355ce18c98~mv2.jpg/v1/fill/w_728,h_449,al_c,q_80,enc_auto/6cd438_49212d64d59c4095b8d1a5355ce18c98~mv2.jpg)
(Source: PMI)
Quality assurance is the process of ensuring that requirements are met throughout a project’s lifespan. A manager must continually monitor each process. For software development projects, QA typically requires code reviews, testing tools, and ensuring a project adheres to standards. Project checklists and project auditing are just two of the many methods a decent project manager can implement a quality assurance program.
In agile development, quality management is conducted slightly differently. Rather than being overseen strictly by the project manager, agile teams tend to be more self-managing, and as a consequence team members are responsible for both creating quality standards and ensuring that they are being met. The product owner is responsible for establishing the requirements of the project as well as ensuring that these requirements are being met. The below chart, courtesy of Project Leadership Waterloo, best illustrates the difference, particularly when it comes to quality management.
![](https://static.wixstatic.com/media/6cd438_b372e0cddc524573a3484853a11727d9~mv2.png/v1/fill/w_639,h_634,al_c,q_90,enc_auto/6cd438_b372e0cddc524573a3484853a11727d9~mv2.png)
(Source: Project leadership Waterloo)
If an agile approach is taken, it is important that team members follow good engineering and development practices throughout every stage of the project. Coding practices must be established early, and through each scrum meeting, the team must evaluate whether they are being followed. Product testing, therefore, becomes a continuous process. To establish quality requirements, it is helpful to create user stories, which allow a team to understand the needs of the customer as well as stakeholders. This is different from traditional project management, where requirements are established towards the beginning of development. Acceptance criteria is created, which helps better clarify a project’s goals and the desired quality standards are for this stretch of the project. In order to ensure quality development, a variety of techniques can be implemented.
Test-driven development: Establish tests at the start of the project, and ensure that the code passes each test
Behavior driven development: Ensures that a program passes acceptance tests (Given X, Y when Z)
Peer review: Team members review each others’ work, ensuring that quality standards are maintained
Build/Test automation: Automates unit testing during each build, ensuring that problems are identified automatically through the process and that problems are identified quickly.
Trunk based development: Ensures that branches are merged to main as often as possible, as long as validation is passed
It is crucial for team members to familiarize themselves with good practices as well as to be focused on achieving a high degree of quality. Understanding of sigma six practices is also highly recommended. Product testing should be conducted relatively swiftly, automated if possible and swift as possible if not. This ensures that problems are discovered early and can be tackled swiftly.
Whichever approach a project takes, it is important to ensure that quality standards are upheld at every step of the project. Frequent quality control and quality assurance will ensure that a project meets the needs of users and stakeholders. In agile development, it is even more important that quality management be conducted frequently, to ensure that each deliverable meets the needs of the stakeholders. Rather than something to be conducted towards the end, a manager must think of quality management as an ongoing process, communicating with stakeholders and customers to establish requirements and ensure the
y are followed at every step.
Kommentare