Bug Hunting: Problem Determination for Analysts
5.0 (1 rating)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
128 students enrolled
Wishlisted Wishlist

Please confirm that you want to add Bug Hunting: Problem Determination for Analysts to your Wishlist.

Add to Wishlist

Bug Hunting: Problem Determination for Analysts

Gain a reputation for solving tricky IT problems efficiently. Learn to manage problem determination effectively.
5.0 (1 rating)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
128 students enrolled
Created by Tom Gillies
Last updated 9/2015
Current price: $10 Original price: $20 Discount: 50% off
1 day left at this price!
30-Day Money-Back Guarantee
  • 1 hour on-demand video
  • 7 Supplemental Resources
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
Have a coupon?
What Will I Learn?
Describe "Problem Determination" and apply it to problems with IT systems.
Explain why "Problem Determination" matters and justify using a structured approach.
Use an 8-step framework to manage Problem Determination
Apply proven techniques to isolate problem causes
Recognise situations where these techniques might not be appropriate and understand what to do at these times.
View Curriculum
  • Ideally, before starting this course, you should have some experience of dealing with problems in IT systems.

Problems are inevitable. Dealing with problems can be stressful. Take this course and you will learn how to track down problems efficiently and reduce that stress.

“Problem Determination" is the art of identifying where the cause of a problem can be found in a system, so that it can be fixed. Having a reputation for being able to track down the causes of problems will make you more valued. Being able to perform Problem Determination efficiently, or manage others doing Problem Determination will enhance your reputation.

This course teaches you a simple 8-step framework which can be used to manage the Problem Determination process, and techniques which will enable you to isolate problems efficiently. As you complete the sections what you have learned is reinforced by a case study and you can check your understanding using quizzes.

Whether you work on a help-desk, or as a developer, analyst or manager the skills you learn from this course will make you more effective. Problem Determination is a powerful intellectual skill which anyone with an analytical and practical mind can learn. It is a skill which once learned can be carried with you and applied to different systems and in different industries.

Who is the target audience?
  • This course is intended for analysts who need to deal with problems in complex IT systems. It is probably not for you if you are looking for detailed technical diagnosis techniques.
  • Help-desk professionals who want to advance from simply following a script will learn how to identify the causes of new problems.
  • Managers who take this course will learn a framework which can be used to prioritise problems and techniques which make the process more efficient and predictable.
Students Who Viewed This Course Also Viewed
Curriculum For This Course
Expand All 21 Lectures Collapse All 21 Lectures 02:39:24
Introductions: The lecturer and the course
5 Lectures 14:40

After taking this lecture, you will:

  • Know a little about me, your instructor, Tom Gillies,
  • Understand that problems are reported against live, production IT systems
  • Appreciate that many of these problems can be dealt with by standard solutions in a help-desk script
  • Understand that the complexity of IT systems means that looking for the cause of new problems can be a little like “looking for a needle in a haystack”
  • Understand how this course is organised and what you will learn in each section.
Preview 04:52

After taking this lecture, you will be able to answer the questions:

  • What is this activity which I call “Problem Determination”?
  • Why does it matter?
  • Why do we need it?
  • Why do a lot of people find it difficult?
  • And, when is this technique appropriate?
Preview 04:42

When you have completed this lecture, you will recognise the three phases in the method:

  • Take Control
  • Isolate the Problem
  • Take Action

And you will know which steps are included in each phase.

Preview 05:06

See how much you remember about why we need Problem Determination.

Why do need Problem Determination?
15 questions

This course has a case study which will allow you to practice the technique as you progress through the course. The case study is not very technical. It is based on a real life incident concerning a real system. Each "lecture" in the case study contains some exercises for you to do and at the end there is a solution. Do not be tempted to peek. The benefit of the exercises comes from experiencing the process, not getting the right answer. In real life there may not be a single right answer, in fact there may not even be an answer at all!

This is lecture introduces "the system" we are going to be looking at. You may be surprised to find that it is not a computer system. In fact it is a simple domestic plumbing installation. Part of the reason for this is that the method of problem determination taught in this course owes something to techniques used for problem determination in chemical plant, and the other part is that I experienced a real life incident which provided a suitable basis for the case study.

The lecture describes the system and provides some basic documentation (in the form of a diagram). You may find it helpful to print the diagram to use later but this is not essential. You are asked to perform two simple exercises to make sure that you understand how the system is supposed to work.

That's all.

Exercise: Introducing the Case Study
16 pages

You may wonder about my background and experience. This "lecture" contains more background information about me, and tells you a number of ways you can get in touch with me.

Meet the Geek - How to contact me
1 page
The technique – Take Control
5 Lectures 23:34

When you have completed this lecture,

  • You will understand that we need a “Step zero - Collect Information”
  • You will begin to think like a police detective arriving at a crime scene
  • You will understand the importance of:
    • Interviewing people and collecting information without disturbing any potential evidence
    • Taking notes of what you have been told and you have seen
Collect information (Step 0)

When you have completed this lecture, you will understand:

  • Why being able to demonstrate the problem is a good idea
  • How to describe the problem objectively to provide clear evidence.

You will be able to describe the different types of evidence:

  • Visible
  • Persistent
  • Reproducible
Demonstrate the problem (Step 1)

When you have completed this lecture:

  • You will understand why you will probably be asked “the wrong questions”
  • You will know “the right question” - "How much is this problem costing the business?"
  • You will know how you can answer it by estimating the number of problems and the cost of each one.
Quantify the problem (Step 2)

Check what you remember about the activities involved in "Take Control".

Take Control
14 questions

When you have completed this lecture you will understand:

  • Who the “Specialists” are
  • Why you should consult them
  • Why this will be an iterative process
  • How to decide when you have completed the phase: ” Take Control”
Consult the Experts (Step 3)

This "lecture" introduces the problem which we are going to have to solve.

There is even a problem with the problem! We are not sure there is a problem.

The case study takes you through the four steps of "Take Control".

  • Step (0): "Collect Information"
  • Step (1): "Demonstrate the Problem"
  • Step (2): "Quantify the Problem"
  • Step (3): "Consult the Specialists"

At each step there is some introduction and then an exercise for you to do. When you have done the exercise, and discussed it with any colleagues if you like, then look at the debrief for that exercise before moving on to the next step.

The exercise begins in Step (0) with a "Problem Statement". You will find that the problem statement is a little vague, but believe me, there is something real and significant there.

Enjoy hunting for the source of the problem!

Exercise: Take Control of the Problem
29 pages
The technique – Isolate the problem
3 Lectures 16:42

When you have completed this section:

  • You will understand the the technique: “Choosing the right haystack”
  • And understand that by working systematically it is possible to reduce the amount of work which has to be done and therefore reduce costs.
Needle in a haystack (Step 4)

When you have completed this lecture you will understand the technique: “Searching a Pipeline” , which is particularly efficient in some circumstances.

Searching a pipeline (Step 5)

See what you remember about the two techniques you have learned for isolating the problem.

Isolating the problem
8 questions

This "lecture" allows you to practice the two main techniques you have learned:

  • "Needle in a Haystack"
  • "Pipeline Search"

There are three exercises:

  • Identify Subsystems - Where you will practice dividing the system into a number of subsystems or components.
  • Choose Your Haystack - Where you will practice thinking of some tests which can be used to identify which subsystem contains the problem.
  • Pipeline Search - Where you will consider how to isolate the problem further.
In each exercise:
  • Read the instructions
  • Perform the exercise
  • Discuss what you have done with your colleagues
  • Look at the debrief and possibly discuss any differences between what you have come up with and the example solution
  • Then move on to the next exercise.

Have fun!

Exercise: Isolate the Problem - Where is the leak?
19 pages
The technique – Take Action
3 Lectures 04:48

When you have completed this lecture, you will understand that somebody needs to make a conscious decision whether to hand the problem over to the specialists to identify the actual cause of the problem and how to fix it.

Take a Deep Breath (Step 6)

When you have completed this lecture, you will understand how to manage people who will be doing the actual fixing. You will know:

  • How to set objectives
  • How to manage the people you have delegated to
  • How to communicate what you know about the problem

This lecture completes the framework. You've seen the complete picture. You know how to:

  • “Take Control”
  • “Isolate the problem”
  • “Manage Fixing the Problem”
Fix it! (Step 7)

This "lecture" allows you to practice deciding "what to do next?".

There are two exercises:

  • What Information do we have? - Where you will summarise what you know about the system and the location of the problem.
  • What Options do we have? - Where you will summarise the options you have identified for dealing with the problem.

Then there are two further exercises which you can use as the starting point for discussions:

  • How do we decide what to do?
  • Conclusion - Where you find out what happened in the real world!


Exercise: Taking Action
16 pages

See what you remember about taking action and managing the fix activity.

Taking Action
7 questions
The Other bits
3 Lectures 07:54

After completing this lecture, you will understand how to handle the situations when this technique might not be suitable:

  • Following a system change
  • During development
  • When under extreme time pressure
Dealing with the “Not Suitables”

You might imagine that it is impossible to prepare in advance for “bug hunting”, because you can't know what problems are going to be reported.

After completing this lecture you will have learned about the preparations you can make:

  • A technique for understanding and documenting the system
  • Key information to record about each subsystem
  • A technique for making it easier to structure you learning about “what happened last time”.
Preparing in advance

This "lecture" allows you to practice documenting a system.

In the exercise you will start with what you know about the plumbing system I used as the basis for the case study and produce your own summary.

I provide an example solution which is based on the situation in the real world. Don't be too surprised if there are slight differences between the one I provide and the one you have produced. That doesn't matter. The important thing is that you go through the process and then understand any differences between the two representations.

After looking at the debrief you may want to discuss the method of documenting a simple system with your colleagues. Afterwards you may try practising on the systems you know.


Exercise: Preparation
8 pages

See what you remember about times when this technique is not suitable and how to prepare in advance.

Quiz: Other bits
14 questions
2 Lectures 01:46

This lecture recaps the content of the course and reminds you of the three phases:

  • Take Control
  • Isolate the Problem
  • Take Action
Preview 01:46

Congratulations on completing this course:

  • You've learned the theory,
  • If you have done the exercises, then you have some experience of using it
  • You know that you can find: “A needle in a field of haystacks”
Next steps
1 page
About the Instructor
Tom Gillies
4.7 Average rating
29 Reviews
1,863 Students
4 Courses
Business Analyst and Educator

I'm Tom Gillies and I have been a Business and Technical Analyst in the Information Technology industry for the past thirty years.

My courses are based on my real-world experiences. I am teaching as I wish I had been taught. My objective is to give you enough knowledge to make you reasonably self-sufficient, and enough experience to give you reasonable confidence, while understanding your limitations. I think you will find working at your own pace liberating and you can contact me during the course if you wish to.

I started my working life as an engineer. I have a BSc in Chemical Engineering from Aston University in Birmingham, England. As a result of my work as an engineering designer, I became interested in computing and eventually I joined IBM as a Systems Engineer, working in pre-sales for customers in the aerospace industry.

Within IBM, I moved to a consultancy group and worked directly for customers as a Business or Technical Analyst for twenty-five years. I served a wide variety of customers from large “blue chip" corporations and government departments to start-ups. I have designed, developed and maintained computer systems, large and small, on a wide variety of platforms.

In my experience of the Information Technology industry, I have found that some skills have been of lasting value. SQL is one such technical skill. Problem solving, some analysis techniques and the so-called "soft skills" are others. All of these improve your ability to communicate with both the business and technical staff make you a more valuable member of a team.

I live in the Republic of Ireland and, when I'm not working for Customers, or writing and supporting courses, I am improving my skill in the Russian language.