Logo en.artbmxmagazine.com

Risk management and personnel management in software projects

Table of contents:

Anonim

The first stage of a software project involves writing a proposal to carry out that project. The proposal describes the objectives of the project and how it will be carried out. It includes cost estimates and scheduling.

Justify why the project contract should be given to a particular organization or team. Project planning refers to the identification of activities, milestones and deliverables produced by a project. Therefore a plan should be drafted to guide development towards project goals. Cost estimation is a related activity that refers to estimating the resources required to carry out the project plan.

Project supervision is an ongoing activity. The administrator must have knowledge of the progress of the project, and compare the actual progress and costs with those planned. In addition to formal mechanisms, continuous informal supervision predicts major project problems and reveals difficulties at the time. For example, these daily informal interviews can externalize a problem in a software failure. Rather than waiting for a project overdue report, the administrator could assign an expert to resolve the problem, or decide if that problem is rescheduled.

The software management encompasses planning, scheduling, irrigation management, personnel management, estimating software costs and quality management. This article covers risk management and personnel management. There are many causes for the failure of software projects, they can be mentioned: late delivery, unreliable, cost higher than estimated, poor performance characteristics. Many times the failure was in the management approach used.

Risk Management

A very important task of the project manager is to anticipate the risks that could affect the project schedule or the quality of the software to be developed and take actions to avoid those risks. The results of this risk analysis should be documented throughout the project plan along with the consequence analysis when the risk occurs. Identifying these and creating plans to minimize their effects on the project is called risk management. The Unified Development Process methodology provides a structure that allows characterizing a risk:

  • Risk Name, Magnitude, Description, Impact, Indicator, Cancellation Strategy, Mitigation Strategy, Contingency Plan.

As you can see, the name of the risk is defined, the magnitude represents its danger (Serious, Moderate or Mild), there is also a description of it, its impact on the project; the indicator that points to it. There is a cancellation strategy that seeks to reduce the probability that the risk will arise; as well as a mitigation strategy that means reducing its impact; in the event that the latter is not effective, there is a contingency plan.

Simply put, a risk can be thought of as a probability that an adverse circumstance will occur. Risks are a threat to the project, to the software being developed and to the organization. These risk categories are defined as shown below:

  • Project Risks: Affect project schedule or resources. Product Risks: Affect the quality or performance of the software being developed. Business Risks: Affect the organization that develops the software.

Of course this classification is not unique, a risk can cover several points noted above. An example of this may be the risk: expert programmer abandons the project, it is a risk for the project because it can delay the delivery of the system; it is a product risk because a substitute may not be as skilled and make many mistakes; and for business because that experience may not contribute to future business.

Risk monitoring should be a continuous process and at each progress review serious risks must be considered separately and discussed by the audience.

Staff management

Project managers usually have to select people to work on their project. Ideally, staff with appropriate skills and experience will be available to work on the project.

However, in many cases, administrators have to establish a minimum ideal team for the project. The reasons for this are:

  • The project budget does not cover the hiring of high-paid staff. You have to hire less experienced staff and less pay but better used. Staff with appropriate experience is not available inside or outside the organization. It is impossible to recruit new staff for the project. Within the organization, the best people have already been assigned to other projects. The organization wants to develop the skills of its employees. Inexperienced staff can be assigned to the project to learn and gain experience.

The software administrator has to work with these restrictions when selecting project staff. However, all of these problems are likely unless there is a project member who has some experience in the type of system to develop. Without this experience, many small mistakes will likely be made.

A staff development plan should be in place that describes how the skills and experience of project team members will be developed. Staff working in a software organization is your greatest asset; It represents the intellectual capital, and software administrators are left to ensure that the organization makes the best possible profit by investing in people. These people should have a level of responsibility and should be assigned prizes according to their abilities. Project managers have to solve technical and non-technical problems, motivate people, plan and organize their work, ensuring that it is done properly. Poor staff management is one of the most important factors for project failure.

One of the most important roles of project managers is to motivate the people who work with them. Maslow (1954) noted that people are motivated by meeting their needs and that those needs are arranged on a number of levels:

  1. Physiological Needs, Security Needs, Social Needs, Estima Needs.

People who work in software development organizations are usually not hungry or thirsty and usually do not feel physically threatened by their environment. Therefore ensuring the satisfaction of social needs, esteem and self-realization is more important from an administrative point of view. Meeting social needs means giving people time to get to know their coworkers and providing places for them to meet. Informal and easy-to-use communication channels, such as email, are very important.

To meet the esteem needs you need to show people that they are of great value to the organization. Public recognition of achievement is a simple but effective way to do this. Obviously, people should also feel that they are paid according to the level that their skills and experience reflect.

On the other hand, to satisfy self-actualization needs, people need to be given responsibility for their own work, assigned demanding (but not impossible) tasks, and provided with a training program where they can develop their skills. People are motivated not only by personal needs but also by the goals of these larger groups. Being a member of a cohesive group is highly motivating for many people. People who are satisfied with their work often like to work because they are motivated by the people who work with them and the work they do.

Bibliography

- Ian Sommerville, "Software Engineering", 6th Edition. Pearson Education, 2002.

- I. Archer Pupo, “Phases of the Unified Development Process”.

Risk management and personnel management in software projects