Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Risk Management

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 20

As projects become increasingly dynamic, organizations need the ability to manage the

uncertainty, or risk, that come along with those changes. The growing demand for skilled
project management professionals reflects this trend—an estimated 22 million jobs will be
added to the industry by 2027.

For those looking to enter or advance in a project management role, the ability to manage risk
is an essential skill that employers look for. To become an expert in preventing and
responding to risk, you must first understand what risk is and the process by which it is
managed.

Below, we take a look at the risk management process and provide five tips for success as
you begin to take steps toward reducing and managing risk for your organization.

Download Our Free Guide to Advancing Your Project


Management Career
Learn what you need to know, from in-demand skills to the industry’s growing job
opportunities.

DOWNLOAD NOW

What is Risk Management?


In project management, risk management is the practice of identifying, evaluating, and
preventing or mitigating risks to a project that have the potential to impact the desired
outcomes. Project managers are typically responsible for overseeing the risk management
process throughout the duration of a given project.

To effectively manage risk, project managers must have a clear understanding of their
objectives so they can identify any possible barriers that could impact the team’s ability to
produce results.

“Risk management is really about looking at your project objectives and figuring out what
the threats to those objectives are, and what you can do to address them from the beginning,”
says Connie Emerson, assistant teaching professor for Northeastern’s Master of Science in
Project Management program.

The types of events or scenarios that fall under the category of risk can be broad and
sometimes misinterpreted. While project managers or those tasked with overseeing a project
may be inclined to view risks exclusively as threats, this is not always the case.
To clarify this common misconception, Emerson defines project risk as “…a future event
that may or may not happen which, if it does happen, will have some impact on the
objectives of the project. It could be positive—an opportunity, or negative—a threat.”

Types of Project Risk


Beyond the basics of what “risk” means, project managers should also know the different
types of risks they may encounter. Depending on the project type, the factors that should be
considered will differ.

There are several types of risks that occur frequently, regardless of the specifics of the
project. These common types of risk include:

 Cost: The risk of events that impact the budget, especially those that cause the project
to be completed over budget. Errors in cost estimation commonly generate risk in
addition to external factors.
 Schedule: The risk of unplanned scheduling conflicts, such as events that cause the
project to be delayed. Scope creep is a common reason for scheduling issues and
project delays.
 Performance: The risk of events that cause the project to produce results that are
inconsistent with the project specifications.
Depending on the project details, there are many other types of risks that can occur. For
example, project managers may also need to plan around risks pertaining to implementation,
training, testing, and so on.

Once project managers identify the categories of risk they should be concerned with, they can
begin to understand how these risks might impact the project outcomes and what they can do
to reduce their effects. To do so, they will also need to consider the breadth and depth of each
type of risk in the context of the overall project.

Steps in the Risk Management Process


To protect a project from unplanned risk, project managers typically follow an ongoing risk
management process which helps them identify, understand, and respond to threats and
opportunities. Before beginning this process, however, it’s important to fully understand your
organization’s practices and how you will conduct your risk work for that project. This plan
then will drive the following steps:

 Identify the risks that could potentially impact your project.


 Assign ownership of each identified risk to a team member who will be charged with
overseeing that threat or opportunity. Although some project managers prefer to
assign ownership after the risks have been analyzed and prioritized, taking this step
early can be beneficial. “Many times I assign an owner to the risk very early on
because I want that person to drive the analysis of the risk,” Emerson notes.
 Analyze each risk to fully understand the driving factors involved and potential
impacts. Be sure to consider the breadth and depth of each threat at this stage in order
to evaluate the severity of each risk in the context of the overall project.
 Prioritize project risks according to urgency and the severity of the impact they could
cause.
 Respond to your identified risks in accordance with your risk management approach,
either by taking steps to prevent the risk event from occurring or to minimize the
impact if it does occur. This step should include building the response as well as
taking action.
 Monitor your risk management strategy and make changes as needed.
Although there are clear steps in the risk management process, this should ideally be an
ongoing effort. After all, the nature of risk is inherently unpredictable, and project managers
need to have the agility and discipline to continuously adapt to changes throughout a given
project.

5 Tips to Reduce and Manage Risk


While it is impossible to completely eliminate risk, there are steps that project managers can
take to effectively manage projects while reducing the amount of risk. Here are four tips to
get started:

1. Create a risk management plan.


Anyone that has experience in project management knows how essential a strong project
plan is to the success of the endeavor. There are many ancillary plans that are often
encompassed in this plan, including the risk management plan.

According to Emerson, your risk management plan should define your methodology for
identifying and prioritizing risk, your risk tolerance, how your team will respond to risk, how
you will communicate risk, etc. Developing such a plan takes time and effort, but investing in
the planning phase often pays off by creating a roadmap that will guide your team throughout
the execution phase of your project.

2. Keep your risk register up to date.


Your risk register, which can either be combined with your risk management plan or a
separate document, is a list of all possible risk events that have the potential to impact your
project. Having this document will help you stay on top of potential issues, but it is important
that you keep it current so that you always have an accurate snapshot to refer to.

Use your risk register to keep track of what risk events occurred, how your team responded,
and which new risks have surfaced which you were unable to detect initially. By keeping this
document up to date and ensuring that it is integrative with other planning deliverables, you,
your team members, and other key stakeholders will always have a clear picture of the state
of the project.

3. Understand the risk event.


A common mistake in risk management is the tendency for people to think about risk in
terms of the possible outcomes rather than the risk event itself. For example, people
sometimes identify “missing the deadline” as a risk to their project. While missing the
deadline is certainly a threat to the project, this isn’t actually the risk, but rather the impact.

Instead, consider risk in the following format: Due to X, Y may occur, causing Z impact.
Doing so will help you understand the root of the risk, the risk event, and how you should
address it.

4. Be proactive instead of reactive.


Project managers can sometimes make the mistake of taking a reactive approach to risk
management rather than a proactive approach. It will always be necessary to have the agility
to react when an unplanned event occurs, but it is also important to take a step back and view
your project through a proactive lens.

By investing time in the early stages of the risk management process and fully analyzing each
risk, you can prepare yourself to take preventative steps that reduce the probability of the risk
event occurring, rather than trying to respond once it has already happened.

5. Develop your project management skills.


Above all, effectively managing projects and their risks requires a strong foundation
of project management skills. In addition to practicing, staying up to date with industry
trends, and attending conferences and workshops, one of the best ways to refine these skills is
to earn a certificate or graduate degree in project management.

Those who are faced with the opportunity to oversee a project but lack formal training stand
to benefit substantially from project management education; however, those who are already
working in the field can also benefit by honing their craft.

Programs like Northeastern’s Master of Science in Project Management, for example, are
designed to develop essential skills through hands-on experience. Industry-leading faculty
bring unique opportunities to discuss real-world challenges in the classroom, giving students
the ability to apply their knowledge to the scenarios they will face in their roles.

To learn more about advancing your career in project management, download our
comprehensive guide below.

12 Risks in Software Development


By Indeed Editorial Team

May 27, 2021

Software development involves many kinds of internal and external risks.


Detecting software risks is crucial to creating a quality product and meeting
goals. If you work in software development, it's important to understand
potential software development risks so that you can effectively respond to
them. In this article, we explain several risks in software development and how
you can mitigate them.

What are risks in software development?


Software development is a series of processes that are used to plan and create
software. Software development risks are factors that can affect the success of
a software development project. Potential software development risks can
occur both internally and externally. It's important to prepare for and mitigate
software development risks to make a project successful.

Read more: What Is Software Development?


Upload your resume on IndeedLet employers find you when you
create an Indeed Resume

12 risks in software development


There are a variety of internal and external risks in software development. Here
are 12 risks involved with software development as well as things you can do to
mitigate them:

1. Code issues

One significant risk involved with software development is poor quality code.
Projects may contain poor quality code because of rushed work and many other
factors. Issues with code may include bugs, logical errors and more. You can
mitigate risks related to code quality by:
 Testing code frequently
 Resolving bugs and logical errors when they're found
 Creating coding standards for software developers
 Using coding best practices

Read more: How To Write Code in 6 Steps

2. Aggressive deadlines

Sometimes, software development projects have tight deadlines. In some cases,


software development teams may be unable to meet these deadlines. You can
mitigate this risk by creating a thorough project plan that allows you to set
realistic deadlines.

3. Unmet expectations

Another risk involved with software development is inaccurate estimations that


lead to unmet expectations. Often, software development projects require
estimations, and estimations can sometimes be inaccurate. Inaccurate
estimations of costs, deadlines and outcomes can cause software development
projects to not meet the expectations of customers. You can mitigate this risk
by clarifying the likelihood of your estimations, including how optimistic they
are. This can help stakeholders form realistic expectations of your project.

4. Low productivity

Productivity issues can also be risks in software development. Sometimes,


software development teams may struggle with productivity, which can happen
because of delays, employee burnout and many other factors. You can increase
your team's productivity by:

 Creating a well-paced project plan to lower stress and avoid


burnout
 Communicating effectively about project details and problems
 Find a great leader who can motivate and manage the team

Another action that can help boost productivity is setting good goals. Strong
goals can help your employees stay motivated and on track. You can use the
SMART technique to set goals that are:

 Specific
 Measurable
 Attainable
 Realistic
 Timely

Read more: What Is Productivity: Definitions, Benefits and How To Improve

5. Budget issues

Another software development risk is budget issues. Software development


budgets can change as project scopes change, but it's important to monitor
projects so that they don't go over budget. Be sure to adjust your project plan
and budget whenever changes are made to avoid raising project costs.

6. Poor risk management

Poor risk management can be a risk itself. Good risk management is essential
for software development teams to spot risks and effectively respond to them.
You can improve your risk management by:

 Identifying potential risks


 Calculating the likelihood of each risk
 Creating risk mitigation plans
 Carefully monitoring risks

Read more: Risk Management: A Definitive Guide

7. Inadequate project management

Similarly to risk management, another risk in software development is


inadequate project management. Good project management is important to
the success of a project, as it can result in clear goals, expectations, timeframes
and deadlines. You can improve your project management by:

 Hiring a project manager


 Developing a project plan
 Utilizing project management software
 Creating clear communication lines throughout your
organization

8. Scope creep
Changing project scopes can also cause risks in software development. Scope
creep refers to a project's scope morphing into something completely different
than it was initially. Scope creep can cause risks when it causes software
developments to miss project deadlines and extend project timeframes. You
can monitor scope creep by separating your project into manageable segments
or iterations and frequently reviewing the scope.

Read more: Project Management: What Is Scope?

9. Stakeholder issues

Another software development risk is stakeholder issues like low engagement


and inaccurate expectations. It's important to communicate with stakeholders
effectively so that they understand software development projects and engage
with your software development team. Stakeholders can have large effects on
the success of projects, so forming great stakeholder relationships is essential.
You can improve your stakeholder engagement by:

 Communicating with stakeholders frequently


 Creating solid project plans for stakeholders to know what to
expect from projects
 Setting clear project goals

Read more: A Comprehensive Guide to Stakeholders in the Workplace

10. How users respond

The user response to a project is another software development risk. The


success of a project directly depends on how many users purchase and adopt
the software, so user response is extremely important. You can mitigate this
risk by:

 Testing software in advance through beta testing and user


testing
 Sending surveys to users
 Conducting focus groups to gather information about users

11. Project team members leaving

Employee turnover, including key team members leaving projects, is another


significant risk in software development. When team members leave software
development projects, it can be hard to replace their skills, expertise and
project background. You can mitigate this risk by:

 Documenting the details of your project


 Creating a training program for new team members
 Asking employees who are leaving to prepare transition plans

Read more: What Is High Employee Turnover? (Causes and Tips for
Prevention)

12. External risks

There are also external risks worth considering. External risks can include
unpredictable factors like changes in laws, economic shifts and natural
disasters. It can be challenging to avoid external risks, but there are actions you
can take to mitigate them. Obtaining insurance can help you prepare for certain
risks, and staying informed on software development laws and current events
can allow you to respond quickly to external risks as they arise.

What are the 10 biggest


risks in software
development?
09 April 2020 • 10 minutes
Written by Christine Chien
How do you identify risks in software development? This article will
examine 10 of the biggest risks in software development, why they occur,
and how you can mitigate these software risks.

We recognise that software development is inherently difficult to predict


and plan. By nature software is intangible and often involves a large
number of stakeholders. This combination of factors can create a number
of risks that need to be considered and managed from the outset of a
software project.

While we can estimate the threat these risks will have on your software
project, the likelihood and impact of them occurring will vary depending
on the methodology you are using. You can download your own risk
assessment template if you want to determine the threat of each of these
risks on your own project.

We also interviewed experts in software development to find out about


their experiences in dealing with risk. You can watch the video below.

So let’s get started with some of the biggest risks in software development.
How many of these have you struggled with before?

1. Inaccurate Estimations
Though estimations are an often unavoidable part of software development
(because of the pressure from customers or other stakeholders to obtain a
price or timeframe), they can create risk if the estimations create
expectations that can’t be met.

Inaccurate estimations occur when the length of a project, milestone or


iteration is underestimated by the project group. Software estimations can
cause problems between developers and clients because they lead to
increase project timeframes, and therefore also project expenses.

From our own experience, and the experience of external projects done by
our partners, this particular risk has been identified as very likely to occur,
and cause severe impact to project delivery if it does.
How do you accurately estimate software? There are a number of
mitigation strategies available to minimise the risk:
 Elaborate only the work that has immediate priority;
 Include Tech Spikes in your estimations (i.e. an allocation of time for
developers to research and de-risk a particularly complex or
unfamiliar part of the project);
 Add an allocation factor to the estimation (i.e. a calculated time
factor that a development team spends during the work week on
task outside of the project); and
 Consider the Cone of Uncertainty when estimating.

For more information on how you can apply some of these risk
management strategies to your project, you can read our article on How do
you manage expectations in software development?.

2. Scope Variations
What is scope change? Scope variations occur when the scope of an
iteration changes after a timeframe had been agreed upon. Due to the value
from receiving frequent customer feedback, stakeholders or product
owners will often ask to vary the scope of a project.

However, scope variation creates a severe risk to projects. When a scope


varies, it significantly impacts the ability of the developers to stick to the
original timeline of a project.

So, how do you manage project variations? Managing customer


expectations around how scope variation can impact the original
estimations of a project is an important mitigation strategy for this risk.

From our experience, using a variation metric to measure the scope


changes, allows for greater visibility to the customer of how the requests
have impacted the project.

The following are some other valuable strategies for dealing with scope
variations:
 Short, manageable iterations (or using the Agile methodology)
allow for more frequent opportunities to reflect upon and vary the
project scope; and
 Elaboration of only prioritised work.

3. End-user Engagement
This risk is where a product is released to the market but the users are
resistant to change, or there is conflict between users.

Why is user engagement important? Ensuring that the users of a product


will actually adopt the software will directly link to its success. In the case
of a company building software for an external customer, it will correlate
with profitability. In the case of an enterprise building software for internal
use, it can determine whether the software will actually improve
productivity within the company.

How do you improve user engagement? You might be surprised how


simple the answer is - listen to your users. Some possible mitigation
strategies for this risk include:
 User testing and surveys;
 Focus groups;
 Frequent releases; and
 Beta testing.

These mitigation strategies are far easier to apply using agile development.

The chance of poor end-user engagement is far more likely for projects
following a waterfall methodology. This is because these types of projects
are unable to adapt to end-user feedback during development. The nature
of waterfall development requires no scope variations.

4. Stakeholder Expectations
Though we have talked about managing stakeholder expectations as a
mitigation strategy, the uptake of this strategy can in itself become a
project risk.
So what is a stakeholder in software development? Stakeholders are any
person or group who can either impact, or will be impacted by an outcome
of the software project. These stakeholders can range from business
owners, to the development team, or even investors in the project. It is this
close relationship to the project outcome that make managing the
expectations of each of these stakeholders a challenge.

So how do you set expectations with stakeholders? From our experience,


here are some of the key considerations:
 Effective communication;
 Obtain frequent approval and acknowledgment of the project from
a stakeholder;
 Follow tested development methodologies (such as the Way of
Working);
 Involve stakeholders in important meetings; and
 Ensure stakeholders maintain reasonable response lines for
communication with development teams.

5. Poor Quality Code


When the quality of a project does not align with stakeholder expectations,
there is a significant risk that the project will not be successful. Poor
quality code can occur for a number of reasons, for example when projects
are underestimated and developers rush to complete the iteration.

What is bad code? Poor quality code can mean a number of things. The
code may be difficult to read, meaning it is difficult for other developers to
review or make changes. It might have been rushed and released without
testing, therefore full of bugs that could have been prevented. In other
words, poor quality code creates a risk of technical debt.

How do you define technical debt? Technical debt is essentially any code
that decreases the agility of a software project in the long-term. Usually it
is created by taking shortcuts when writing code, in order to achieve goals
faster. However, code quality is important because it reduces the long-term
development effort of a project by making the project more easy to
understand, maintain, and extend.
How can you improve code quality? It is important for developers to
maintain a high standard for their code. This can be done by considering
the following strategies:
 Implementing User Acceptance Criteria to have stakeholders affirm
the project is up to standard;
 Code reviews;
 Clear coding standards and guides;
 Testing of all code;
 Appoint a dedicated Product Manager to monitor the quality of the
project and take ownership to all stakeholders for the success and
failures; and
 The Way of Working.

6. Poor Productivity
When a project group falls behind on planned timeframes, you might need
to examine the productivity of the development team. Though unlikely,
poor productivity may be the cause.

How do you measure developer productivity? To determine the


productivity levels of your development team you can utilise tools such as
burn-down charts or iteration reports.

If your company has undergone a decent hiring process, it is not likely you
will face this risk, however the impact on a project if it does occur can be
detrimental to the successful delivery of a project.

It is therefore valuable to consider the following strategies:


 People culture of your company;
 Set achievable timeframes and a sustainable pace during your
project estimations to avoid burn-out of staff; and
 Find a Product Manager who is directly involved and collaborates
with the team.

It is important to remember that humans aren’t machines and it is therefore


unrealistic to expect them to be productive every hour they spend at work.
To find out more about what hinders productivity and how you can
minimise time waste, read our article on [how many hours a day workers
are productive]().

7. Inadequate Risk Management


Inadequate risk management can occur when any of the project specific
risks are not properly recognised and mitigated by the stakeholders.

What is adequate risk management for a software development project?


The path to adequate risk management starts with first spending time
acknowledging that risks exist. The ostrich strategy of burying your head
in the sand and pretending you can deliver software without facing any of
these problems will only cause long term stress.

A far better solution is to consider mitigation strategies from the outset,


and continuously throughout the software project. There are many risks
when building software, and if a risk is effectively identified, then it can be
mitigated.

How do you mitigate software development risks? Some mitigation


strategies include:
 Including risk in estimations; and
 Utilising a Risk Register on estimations, and in the project
requirements backlog.

It is important that you determine which risks are specific to your project
and set methods to mitigate them from the outset of your project. To help
identify the impact a particular risk could have on the software project,
you can use a risk matrix. To determine which are the greatest risks in
your project, you will need to determine the impact, and likelihood the risk
will occur.

To help you get started with your software risk assessments we have
mapped the impact and likelihood of the 10 biggest software risks for an
average waterfall or agile software project. You can download this
spreadsheet for free here.

However, the types of risks that could be present in your project may
differ from the 10 discussed in this article. It is therefore important to
conduct a risk analysis at the start and end of all iteration meetings. If you
would like to learn more about creating a risk management plan or
conducting risk assessments using a risk multiplier, you can read our
article on [identifying and managing risks in software development]().

8. Low Stakeholder Engagement


What is low stakeholder engagement? This is where a client or stakeholder
you are collaborating with is not engaging with your team at the frequency
necessary to maintain high productivity levels. Low stakeholder
engagement is a significant risk to projects because slow responses from
the customer can impede delivery timeframes.

The opportunity for low stakeholder engagement is actually increased


when implementing agile methodologies. This is because iterations are
more frequently delivered, and therefore require more frequent feedback
from stakeholders to the development team.

How can stakeholder engagement be improved? Some mitigation


strategies that can be considered include:
 Clear agreements with the customer or stakeholders around
response times, particularly for any User Acceptance Testing; and
 Effective selection of Delivery and project goals/priorities.

9. Inadequate Human Resources


Though unlikely, occasionally a stakeholder or development team member
must leave a project unexpectedly. This can create a risk to the project,
particularly if project knowledge is not adequately documented.

How do you reduce this software risk? Throughout a project it is valuable


to:
 Maintain up-to-date documentation;
 On-board new or replacement stakeholders with a learning guide;
and
 Monitor the invoice schedule and team utilisation frequently.
10. Lack of Ownership
Why is a sense of ownership important for software development?
Ownership in software is important to ensure there is always someone in
the team who takes responsibility for the software being delivered, and is
accountable for the successes and failures.

Unfortunately, this risk usually only becomes apparent when something


goes wrong in a project. It therefore must be clear from the outset who is
responsible for what aspects of the project, and when it is to be delivered.

How do you create accountability in software development? Some


possible strategies include:
 Setting responsibilities for stakeholders;
 Open clear lines of communication between stakeholders by
valuing transparency and honesty;
 Record or document meetings and action items that may arise; and
 Ensure User Acceptance Criteria are completed and approved by a
Product Manager.

Though this list is by no means complete, it includes some important


initial project considerations. Risk identification and management are
crucial parts to the success of any software project.
Written by Christine Chien
Marketing Operations and Partnerships
Our very own Christine is a marketer by day, nerd by night. If she isn’t developing
our marketing strategy, she is usually found by her 3D printer or at a local plant
shop.

You might also like