Topic – Risk Management is Software Testing | Introduction
One day when you thought it was all fine, your boss dashes into your room to scream at you,
“What have you done?? Your software is full of dirty errors! I have cut down your month’s salary”. You just stand there gaping because after all, he is your boss!
And it was then that you realized the importance of risk management in software testing.
You talk with your friend about this newly found dilemma and he goes on to explain what risk management in software testing is, briefly:
“Risk management is what risk management is. Sorry buddy, but I have a lot of work pending”
And then another realization strikes you, how bad a friend you have. Then you turn on google to get some information on what risk management in software testing is and how to implement it.
Congratulations! You have finally reached here. See how good an astrologer I am. I could easily figure out what just happened to you. Anyhow, let’s learn what this whole thing is about so that you won’t repeat your mistakes again.
So What Is Risk Management?
Risk management is basically a methodology that will cut down all possible errors. Hence risk management in software testing means you are taking all those important steps to make your software as clean as it should be.
In order for effective risk management, you need to follow some steps.
The most important one being identification.
Identification of risks in software testing
Your work might look crystal clear but it might not be. The reason behind that common instinct is because of lack of professionalism.
For example, if you take your high school Maths homework to a 10-year-old kid, two things might happen.
One, he might notice no mistake at all because he cannot understand what’s going on.
Second, he might notice plenty of mistakes because of misunderstanding. For example, he might mistake your integral sign to be a huge ‘S’ and so there’s a probability of him innocently telling you,
“Brother, but there shouldn’t be an ‘S’ behind that numerical. It makes absolutely no sense. Thanks.”
Either way, there’s no way he will be able to clear your doubts and make your homework look clean. And that’s because he isn’t an expert in it. There’s a lack of knowledge in him. Ignorance is not always bliss.
So, if you think you have made no errors in your project, you might need to check it again. Use the logic that you possess, switch on your focus mode and search for even the “minutest” mistakes.
Search for those flaws that might bring a negative effect on your business company rather than a positive one.
Categorization of risks and what is software testing
Now after identifying your risk, there’s something else you need to ensure. Remember, every software contains some or another issue. But what matters the most is their effect.
That is, a slight grammatical error in English in your Maths exam won’t matter at all. What matters in the mathematics exam is your mathematical skills and not your English proficiency.
Similarly, categorize your risk into two. First one being, when it will stop the user from using your product. The second one, whether that risk will deteriorate your company’s profit.
What are the risks in software testing?
Let’s see the first one:
When it stops your user from using your product.
This is a serious issue because it literally means your software is useless and that your hard work just went down the drain. Bye-bye hard work (yes, I can feel you and that’s why I am here to help you).
The bug in no way should be a restriction for your user. For example, if your software is for gaming, no matter what, when your user is playing games, he/she shouldn’t automatically get expelled from the game.
That’s going to cause a lot of nuisances and you will end up getting zero stars in google/apple play store. Similarly, while the gamer is excited at aiming their AK-47 at someone’s head, an ad shouldn’t pop up.
Of course, ads are necessary, but they should only pop up at the right time. An ad may pop up while the gamer is unlocking a new level but never whilst the gamer is in action. That would be so irksome.
Now let’s move on to the second one:
This is when the bug doesn’t affect the user but it affects the company’s profit. Hence, you might get a 5 star in google play store but a slap from your boss (yes, now that’s physical assault and you may file a case on that. Expect complete support from my side.)
Let me illustrate with an example.
This time you have created software for an online shopping app. Of course, the transaction of money is the fundamental element in such software. Imagine your software has such a putout bug that it doesn’t accept money from your customers but at the same time enables them to purchase goods from your app!
Those are going to be some lucky customers for sure. But your boss will never give you another job again. Fired!
What to do after the identification of risks in software testing?
Being ready with a crystal-clear idea about the risks in your software, you are all ready to move forward. That is risk clearance.
See if the flaw is in the budget overflow. Meaning, your company set 1000 dollars for the project but after you finished your job it’s 2000 dollars. Obviously, you cannot take that extra 1000 dollars from your pocket, the company has to provide it.
And taking into account how most workplaces work in recent times, the probability of your company funding that extra thousand dollars are bleak. So here you need to cut down extra add-ons that are in your software.
There’s no way you can include a lot of features if your company doesn’t provide enough funds. So, the only way to manage this risk is to cut down on the extra features. Include only the ones that your company is particular about. You may have to cut down all those innovative features, but you have no other option.
Now is the flaw in your coding? Then you will have to improve your skills. Take peer help and crash courses to improve your skills. (For more programming ideas, visit programming projects, and Programming magazine )
Remember you have taken software engineering because you are pretty good at maths and computational thinking thus if you just push yourself a little bit harder, you will be able to get a cleaner code.
Another important aspect that comes along with risk testing is the risk matrix in software testing.
What is risk matrix in software testing?
A risk matrix is a tool to determine the potential level of risk and to assist in the decision-making process. As discussed before, during risk management, companies should set particular goals, define and assess risks, then analyze those errors and then set tolerance levels, and finally mitigation measures.
The risk matrix will let you know where your risk stands. Whether it is a low level or medium level or high-level risk so that you can work accordingly and find proper mitigation measures.
Technically, the risk matrix just facilitates us in getting cleaner and better software rather than one that doesn’t work or is hard to understand.
An example for risk management in software testing
Now let’s take a real-life example in order to understand the above-mentioned problems clearly. (For more such articles are real-life examples, visit myblindbird )
Your name is Sanjana. On 18th September 2020, your boss gave you a job: to develop software that will assist users to log in to their daily exercise. It should also give tips on exercise and ways to control one’s food habits.
The software will also assist in playing video workouts in the app. You were all very excited to do the job. After all, it’s your first assignment in the company and you should flex your skills. First impressions are the best impressions, aren’t they?
You decided to work on the same day the work was given. Mixing your innovative and creative skills with everything that you have already studied, you begin your work. The deadline is on 20th December 2020, and you are almost done by 15th December.
And by 16th December, you were able to complete the entire thing. Super excited, you go on to submit your project to your company manager. He too is glad that you tick.
But just after a few days of submission, your boss calls you to her room. You imagine all the appreciation that she might shower on you. Daydreaming all the way to her room, brings a broad smile on your face, only to fade away seeing her face.
“Sanjana, what have you done? You have technically done no risk management!”
“Ma’am, what’s the issue?”
“Just try using this app that’s built using your software.”
Now you are beginning to understand the gravity of the situation. With a quivering hand, you click the app icon on the laptop.
And then you realize where you have failed. The app doesn’t play any video tutorials, nor does it save the logged information. Altogether, a completely wrong app. An app that’s useful for none.
Your boss glares at you. Cold shivers run down your spine.
“Sanjana, bad first work. Could have done better. Should have done some risk analysis. Why didn’t you use the risk matrix? We hired you by seeing your amazing resume: software engineering from one of the most prestigious institutions in India! And now? Very disappointing! I need an intact submission by 3rd January, you heard that Sanjana?!”
Towards the end, it was all a scream.
Concluding – Risk Management In Software Testing
But now Sanjana needn’t worry. Because each one of you is Sanjanas and you have read this article. You have a perfect framework on how to correct and predict your flaws, hence reducing risks in software engineering. Congratulations, now you can solve your issues peacefully!
For Ultimate Guide on Risk Management, visit this cool site: Software Testing Help
This concludes the topic of risk management in software testing 2021.