Technical Start Up While Handling A Bug / Task

At last I'm writing something to C-Sharp Corner, this is my first content.

I came across a number of easy, interesting, complicated articles in C-Sharp corner, when I was going through these articles I thought of writing something, now I am ready with some content to publish.

I hope I do write more articles in C-Sharp Corner & get full support from this community.

Let me explain:

I am Sairam Kalva experienced with Microsoft Dot net technologies, I got exposure to various projects, and handling different set of tasks.

Topic

Technical Start Up while handling a Bug / Task in Software Project Development.

Software Project Development - Technical Start Up while handling a Bug / Task

In Software Project Development, in certain cases, things don’t go the way we expect…

E.g.

Pages do not respond, sometimes pages will not be found, sometimes server error or patches will not work as expect and integrated 3rd tools break and mainly bugs originates and we were bewildered as to where to start and how to start.

To handle bugs / tasks, with my past experiences I have drafted the below steps / ways, which will help us easily identify the cause and how to fix.

Here we go….

  1. Understand
  2. Reproduce
  3. Look around
  4. Suggest possible scenarios
  5. Tests If required
  6. Implement
  7. Unit Testing
  8. Review
  9. Check-in
  10. Update the required documents or template

Understand

Career Advice

Understand the scenarios as much as possible,  go through all the supporting documents, read three times and more importantly,

Take time to breathe...

Share your understanding with experts to get the best view, on the situation and scenarios.

Reproduce

Recreate the issue in your development environment.

Sometimes we are unable to recreate the issue in our local environment and some might be intermittent. Keenly follows up with the 

Crazy, but it still works fine with the local environment.

(Just update the bug status WORKS FINE – Close the issue.…. Ha-ha, kidding)

In certain occasions, things will go wrong and will get tough, don’t spend time looking around, just stay focused.

Career Advice

Request for the environment where the issue has arisen, (OS, System type, IIS (if it’s webapp), debase, any 3rd tools... etc.).

Hmm, now it's recreated………...

Look around

Career Advice

Navigate into the code and look around, if there is a fix available.

There might be cases where there is already a fix implemented for identified issues, and there are chances where there will be the same root cause, look out for those kinds of resolutions.

As this will help in time and complexity of the issue.

And more, this code is already implemented and reviewed, and we can use this as per our requirement with our own parameters.

If no such case exists, then Explore….

Suggest possible scenarios

Once the exploration is done, we are with various scenarios in hand, suggest valid scenarios to appropriate teams and get the best out of it.

OR, get people in a room and share your views and ideas to the team, let them come up with valuable suggestions, this will help in knowledge transfer and in the future anybody can take up the issue.

Career Advice

Tests If required

Career Advice

Prepare all sorts of tests required and get them confirmed by the concerned teams.

Implement

Career Advice

Implement the solution in a working environment and if this function is reused, go write in some common classes.

Unit Testing

Career Advice

As per developers are concerned, doing Unit testing is important, this validates that the implemented code performs as per the requirement for which it is designed.

Look out for any potential side effects and regression tests  --those should not be broken after fixing the issue.

Review

Hmm. I had written very good quality code, then why review. it..?

Because it helps us to correct ourselves and sometimes Code reviews are for knowledge transfers.

Career Advice

Conducting reviews are the best approach for achieving consistency.

Before officially assigning the code to reviewers, get it locally reviewed by your peers.

Once the review is done, address the review comments, unless the code looks good.

If you are a Code Reviewer, please focus on below points,

  1. First and foremost, look for the code alignment.
  2. Naming conventions as per adopted standards.
  3. Meaning full variable names.
  4. Proper code comments.
  5. Spell check.
  6. Verify that the newly implemented code is already exists / implemented.

Check-in

While checking in the code, please make it a practice to provide as much information as needed in the template or in the description panel, which will help in future. Below is some content which can be gathered,

Description
Describe the business operation that is blocked because of this issue.

Root Cause
What’s the main cause for the issue to arise?

Resolution
What’s the solution implemented, to fix the issue?

Build Number
Which build issues have been fixed.

Is it ready for QA
Is this issue ready for testing?

Path preview required
Does this issue need immediate release or a patch without full build?

Career Advice

Please take care of below suggestions while checking in,

  • You should never check-in commented-out code. If you have code that needs commenting out before check-ins, you are doing it wrong.
  • Before check-in get the latest.
  • Look for merge conflicts.
  • Build – fix build error, if any.
  • Fix broken tests, if any.

Update the required documents or template

Please do write an internal document or blog on the issue which you have worked, as this will help the next developers to easily understand the scenario technically and conceptually.

Career Advice

Points to be noted with documenting or blogging,

  • Describe the issue conceptually.
  • Technically, what is being done to achieve the task.
  • Potential side effects if any.
  • Impacts... etc.

Keep Learning & Sharing &  Smiling… Happy Coding…

X

Build smarter apps with Machine Learning, Bots, Cognitive Services - Start free.

Start Learning Now