A Methodical Approach To Problem Solving
A methodical approach to troubleshooting is important for just about every problem in life - but it is essential when dealing with a computer problem. A typical computer operating system consists of millions of lines of programming code, all of which interact with each other for the most part in a predictable way. When computers go wrong though, there are typically so many possible causes, that trial and error is not usually a particularly effective method of solving the problem.
Start by making a list of possible causes and eliminate them one by one. For example, take a situation where a server machine is running slowly - quite a typical scenario, and not always that easy to find a specific root cause.
If we were to be looking at this issue, first step would be a general health check - look at CPU, memory and disk usage. Anything hogging resource? Any event log error messages that provide any clues as to a problem? Look at the general spec of machine compared to what you are running on it. Clearly if you're running something that's thrashing the disks (the most typical scenario with a server in our experience), then diagnosis stops there – you could either advise a higher spec machine or, if the process that is hogging resource is not critical, advise that it should be removed.
If the slowdown appears to be disk related, next logical step after that could be to check disk health and disk controller health – a replacement or upgraded controller and/or disks may or may not fix the problem, but it is important to eliminate the least costly causes first, to avoid unnecessary expense to the business. If the server is under warranty still, at this point it may be worth contacting the manufacturer to see what they recommend – Dell, for example, will often troubleshoot servers without charge, even if out of warranty. If the vendor isn't helpful, full system diagnostics (F11 at startup typically on a Dell machine) may highlight any hardware problem, if it exists.
Failing that, as a last resort, what's left is typically a systematic replacement or upgrade of parts – memory, disk controller, motherboard, cpu – and all this with careful analysis of how much parts will cost and how much time will be spent, and at what cost. Bear in mind that there usually comes a point where it is not cost effective to continue with diagnosis, and cheaper instead to simply purchase a new, faster machine.