<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Sarquol Limited &#187; Performance Troubleshooting</title>
	<atom:link href="http://www.sarquol.com/tag/troubleshoot/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.sarquol.com</link>
	<description>Sarquol solves messy IT problems</description>
	<lastBuildDate>Wed, 19 May 2010 11:51:51 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>Creative problem solving for IT</title>
		<link>http://www.sarquol.com/devproc/improve/cps-for-it/</link>
		<comments>http://www.sarquol.com/devproc/improve/cps-for-it/#comments</comments>
		<pubDate>Wed, 27 Jan 2010 17:52:52 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Process Improvement]]></category>
		<category><![CDATA[cost]]></category>
		<category><![CDATA[CPS]]></category>
		<category><![CDATA[creative]]></category>
		<category><![CDATA[creativity]]></category>
		<category><![CDATA[development]]></category>
		<category><![CDATA[performance]]></category>
		<category><![CDATA[Performance Troubleshooting]]></category>
		<category><![CDATA[problem]]></category>
		<category><![CDATA[process]]></category>
		<category><![CDATA[solving]]></category>

		<guid isPermaLink="false">http://www.sarquol.com/?p=458</guid>
		<description><![CDATA[If I consider creative problem solving in would think about tree hugging, and weird techniques to be at one with the universe. It doesn’t seem to fit well with my idea of IT problems which need engineering solutions. The ideas, however, can be surprisingly effective when applied appropriately.]]></description>
			<content:encoded><![CDATA[<p>If I consider creative problem solving Iwould usually think about tree hugging, and weird techniques to be at one with the universe. It doesn’t seem to fit well with my idea of IT problems which need engineering solutions. I have, however, found that the use of such techniques will often lead to a better overall solution than simply digging into the technical detail.<span id="more-458"></span></p>
<p>In summary an example creative problem solving approach may consist of stages, such as:</p>
<ol>
<li>Exploring the problem by opening up consideration of the problem space.</li>
<li>Narrowing down the problem again by defining it based on the new understanding.</li>
<li>Opening up to a set of ideas for possible solutions.</li>
<li>Narrowing back down by selecting a subset of the possible solutions.</li>
<li>Opening up to the potential approaches to solution implementation.</li>
<li>Narrowing this down to an implementation plan.</li>
</ol>
<p>The creativity techniques can then be used to apply many people’s minds to each of the stages. The most commonly know approach is brainstorming in step 3. There are many such techniques, however, all with different properties and needs. It is the application of many minds to the problem in a way that isn’t often achieved in traditional meetings that really gives this value for IT. Choosing the people to bring into the problem at each stage carefully will allow a much better problem solving approach. It will also mean that they will tend to buy into the solution that is eventually chosen, which can help when it comes to implementation.</p>
<p>So next time you have an IT problem, and most of us have many on a regular basis, consider whether a way to apply moiré creativity to it might help. If the answer is “Yes” then consider how that might be achieved – even if you can’t get out the finger paints. If, of course, you need help in doing so then feel free to contact me at <a href="mailto:sales@sarquol.com?subject=Creativity">sales@sarquol.com</a> or call +44 7887 536083. The ideas can be surprisingly effective when applied appropriately.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.sarquol.com/devproc/improve/cps-for-it/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Being a problem solver&#8230;</title>
		<link>http://www.sarquol.com/perf/troubleshoot/problem-solver/</link>
		<comments>http://www.sarquol.com/perf/troubleshoot/problem-solver/#comments</comments>
		<pubDate>Tue, 01 Dec 2009 13:21:46 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Performance Troubleshooting]]></category>
		<category><![CDATA[fault]]></category>
		<category><![CDATA[issue]]></category>
		<category><![CDATA[management]]></category>
		<category><![CDATA[people]]></category>
		<category><![CDATA[performance]]></category>
		<category><![CDATA[problem]]></category>
		<category><![CDATA[resolution]]></category>
		<category><![CDATA[sarquol]]></category>
		<category><![CDATA[solution]]></category>
		<category><![CDATA[stakeholder]]></category>
		<category><![CDATA[troubleshooter]]></category>

		<guid isPermaLink="false">http://www.sarquol.com/?p=419</guid>
		<description><![CDATA[I ran into this article recently: How to be a Problem Solver http://www.digitaltonto.com/2009/how-to-be-a-problem-solver/ The advice in it is interesting, but it also caused me to reflect on the dual nature of problem solving, and how the two aspects need to be handled almost separately. The article above more or less discusses the stakeholder aspect of [...]]]></description>
			<content:encoded><![CDATA[<p>I ran into this article recently:</p>
<p style="padding-left: 30px;"><a title="How to be a problem solver article" href="http://www.digitaltonto.com/2009/how-to-be-a-problem-solver/" target="_blank"><em><strong>How to be a Problem Solver</strong></em></p>
<p>http://www.digitaltonto.com/2009/how-to-be-a-problem-solver/</a></p>
<p><span id="more-419"></span>The advice in it is interesting, but it also caused me to reflect on the dual nature of problem solving, and how the two aspects need to be handled almost separately. The article above more or less discusses the stakeholder aspect of problem solving with the original raiser. In fact managing the stakeholders of a problem goes further than this, as there may be a whole set of people involved with any given problem that need to be considered in solving a problem. An example is the person who is in the role &#8220;at fault&#8221;. If they are not engaged in the solution then they might consider your &#8220;problem solving&#8221; to be a threat to them, and so block progress of your solution.</p>
<p>The other major aspect of the solution of problems will tend to be technical. I have proivided advice on a technical process for considering solutions <a title="Performance troubleshooting process article" href="http://www.sarquol.com/perf/troubleshoot/process/" target="_blank">previously</a>. In that article I didn&#8217;t consider the stakeholder management aspects of solving problems. It is likely, however, that at each step of resolving the technical issue it will be necessary to engage the different stakeholders to the problem, to make sure that they are bought in to the solution. A failure to do this <strong>will</strong> result in blocking behaviour, which will hamper the progress of the solution.</p>
<p><a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save?linkurl=http%3A%2F%2Fwww.sarquol.com%2Fperf%2Ftroubleshoot%2Fproblem-solver%2F&amp;linkname=Being%20a%20problem%20solver%26%238230%3B"><img src="http://www.sarquol.com/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share/Bookmark"/></a> </p>]]></content:encoded>
			<wfw:commentRss>http://www.sarquol.com/perf/troubleshoot/problem-solver/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Performance problem solving process</title>
		<link>http://www.sarquol.com/perf/troubleshoot/process/</link>
		<comments>http://www.sarquol.com/perf/troubleshoot/process/#comments</comments>
		<pubDate>Thu, 15 May 2008 09:45:03 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Performance Troubleshooting]]></category>
		<category><![CDATA[capacity]]></category>
		<category><![CDATA[generic]]></category>
		<category><![CDATA[issue]]></category>
		<category><![CDATA[management]]></category>
		<category><![CDATA[performance]]></category>
		<category><![CDATA[problem]]></category>
		<category><![CDATA[process]]></category>
		<category><![CDATA[resolution]]></category>

		<guid isPermaLink="false">http://www.sarquol.com/?p=267</guid>
		<description><![CDATA[Performance issues can seem very mysterious when first encountered and often the only way to solve them is to use a very methodical approach. I have touched on this before, but it seems relevant to add a little more detail. The following outlines a generic approach to rational problem solving that has been adapted to [...]]]></description>
			<content:encoded><![CDATA[<p>Performance issues can seem very mysterious when first encountered and often the only way to solve them is to use a very methodical approach. I have touched on this before, but it seems relevant to add a little more detail.<span id="more-267"></span></p>
<p>The following outlines a generic approach to rational problem solving that has been adapted to the situation:</p>
<ol>
<li>State the problem</li>
<li>Collect evidence</li>
<li>Identify possible causes, and check they are consistent with the evidence gathered. Consider testing or gathering new evidence to prove the cause is present.</li>
<li>Look for evidence to identify the relative impact of each cause.</li>
<li>Restate the problem with causes, level of impact and confidence in the conclusion.</li>
<li>For the causes with the most significant impact decide on a set of solution options, and work out the associated costs and potential benefits of each.</li>
<li>Examine in detail potential dependencies between solutions, some will be reinforcing and others at odds. Some solutions may also have functional impact or benefits, and need to be considered beyond the performance arena.</li>
<li>Recommend the most appropriate selection of solutions, and gain acceptance of this. Remember to include obtaining the necessary budget, which may require a business case.</li>
<li>Develop, test and implement the chosen selection of solutions. Check throughout that the expected benefits will be realised.</li>
<li>Monitor the results to check the problem has been resolved to the degree expected.</li>
</ol>
<p>This process may seem self evident to you, or it may seem un-necessarily complex and long winded. I would strongly recommend, however, the adoption of an approach that is: a) standardised; b) evidence based; c) concentrates on predicting a level of benefit; and d) proves that the level is achieved. There are few organisations with complex applications and infrastructures who have never implemented a performance solution only to find little end user benefit. A structured approach can reduce the incidence of such expensive problems.</p>
<p>If you would like to discuss an appropriate approach for your organisation then please feel free to contact me at <a href="mailto:dh@sarquol.com?subject=Bulletin:%20Help...">dh@sarquol.com</a>, or call on +44 7887 536083.</p>
<p><a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save?linkurl=http%3A%2F%2Fwww.sarquol.com%2Fperf%2Ftroubleshoot%2Fprocess%2F&amp;linkname=Performance%20problem%20solving%20process"><img src="http://www.sarquol.com/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share/Bookmark"/></a> </p>]]></content:encoded>
			<wfw:commentRss>http://www.sarquol.com/perf/troubleshoot/process/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Do your users think?</title>
		<link>http://www.sarquol.com/perf/testing-perf/think-time/</link>
		<comments>http://www.sarquol.com/perf/testing-perf/think-time/#comments</comments>
		<pubDate>Fri, 15 Feb 2008 09:24:35 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Performance Testing]]></category>
		<category><![CDATA[capacity]]></category>
		<category><![CDATA[condition]]></category>
		<category><![CDATA[management]]></category>
		<category><![CDATA[modelling]]></category>
		<category><![CDATA[performance]]></category>
		<category><![CDATA[Performance Troubleshooting]]></category>
		<category><![CDATA[playback]]></category>
		<category><![CDATA[problem]]></category>
		<category><![CDATA[record]]></category>
		<category><![CDATA[testing]]></category>
		<category><![CDATA[think]]></category>
		<category><![CDATA[time]]></category>
		<category><![CDATA[tool]]></category>
		<category><![CDATA[user]]></category>

		<guid isPermaLink="false">http://www.sarquol.com/?p=248</guid>
		<description><![CDATA[When designing a set of performance tests it is necessary to consider pauses between user interactions. This is usually referred to as “think time”, and represents the time between the system presenting the results of an action and the next action being taken. If a load test script doesn’t include any think time at all [...]]]></description>
			<content:encoded><![CDATA[<p>When designing a set of performance tests it is necessary to consider pauses between user interactions. This is usually referred to as “think time”, and represents the time between the system presenting the results of an action and the next action being taken. If a load test script doesn’t include any think time at all then the system will be bombarded with requests at a rate that isn’t humanly possible. Depending on the system there are likely to be between 10 and 100 times the interactions generated with zero think time than with realistic scenarios.<span id="more-248"></span></p>
<p>When creating test scripts via “record and playback”, however, the tool will usually record page delays and play them back during the script run – and so the problem is solved. Isn’t it?</p>
<p>There are two issues that must be considered here. The first follows on naturally from the comment above: If the recorded wait time is not realistic then the resultant loading will not be realistic, and so the test will be better but still not correct. This could be fixed by simply using a user who is likely to have realistic waits – assuming you can identify such a user and make them available for the testing. I can be surprising just how long real users do spend on think time.</p>
<p>The next issue is more important, and harder to understand. For illustration let us assume we have 10 users with a 5s think time. Let us further assume that requests usually take 0.1s to process, and that simulated users are started 0.5s apart. In normal operation these requests will never coincide. This could be an issue in itself, but this isn’t the worst of it.</p>
<p>Let us now presume there is a problem &#8211; a temporary server issue would be sufficient – that causes all of the responses to arrive back at the client at the same time. It does happen in load testing for various reasons. Now all of the scripts will wait 5s and send the next requests <strong><em>at</em></strong> <strong><em>exactly the same</em></strong><em> <strong>time</strong></em>. The message loading on the server suddenly goes up dramatically, and is likely to continue in this pattern for some time. The result is that the system doesn’t seem to be able to cope with even 10 users in realistic conditions.</p>
<p>The solution is to introduce a level of randomisation in think time delays. It is then possible to introduce an appropriate statistical think time profile &#8211; and to break up bursts. The cost is extra test script development time, but the benefit is much more realistic testing.</p>
<p>If you would like advice, or to discuss how to decide on the most appropriate way to set up load testing in your circumstances then please feel free to contact me at <a href="mailto:dh@sarquol.com?subject=Bulletin:%20Help...">dh@sarquol.com</a>, or call on +44 7887 536083.</p>
<p><a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save?linkurl=http%3A%2F%2Fwww.sarquol.com%2Fperf%2Ftesting-perf%2Fthink-time%2F&amp;linkname=Do%20your%20users%20think%3F"><img src="http://www.sarquol.com/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share/Bookmark"/></a> </p>]]></content:encoded>
			<wfw:commentRss>http://www.sarquol.com/perf/testing-perf/think-time/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Managing performance problems</title>
		<link>http://www.sarquol.com/perf/mgt/managing-problems/</link>
		<comments>http://www.sarquol.com/perf/mgt/managing-problems/#comments</comments>
		<pubDate>Mon, 07 Aug 2006 15:48:05 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Performance Management]]></category>
		<category><![CDATA[capacity]]></category>
		<category><![CDATA[fix]]></category>
		<category><![CDATA[investigate]]></category>
		<category><![CDATA[management]]></category>
		<category><![CDATA[performance]]></category>
		<category><![CDATA[Performance Troubleshooting]]></category>
		<category><![CDATA[presentation]]></category>
		<category><![CDATA[problem]]></category>
		<category><![CDATA[symptoms]]></category>
		<category><![CDATA[timescale]]></category>

		<guid isPermaLink="false">http://www.sarquol.com/?p=93</guid>
		<description><![CDATA[In the bulletin so far I have mainly concentrated on the subject of Capacity Management as a whole. On engagements with clients, however, it is quite common for me to be called in once there is already an identified performance problem. The good news is that the best approach to resolving a performance problem that [...]]]></description>
			<content:encoded><![CDATA[<p>In the bulletin so far I have mainly concentrated on the subject of <a title="Link to &quot;Principles of Capacity Management&quot; document" href="http://www.sarquol.com/documents/Principles%20of%20Capacity%20Management.pdf" target="_blank">Capacity Management</a> as a whole. On engagements with clients, however, it is quite common for me to be called in once there is already an identified performance problem. The good news is that the best approach to resolving a performance problem that already exists is very similar to the Capacity Management already discussed elsewhere. The bad news, however, is that this means going through similar processes in a much reduced timescale. The chances of managing this are greatly improved if the original system project used a capacity management approach on implementation.<span id="more-93"></span></p>
<p>This <a title="Presentation on managing performance problems link" href="http://www.sarquol.com/documents/Presentation-Managing-Performance-Problems.pdf" target="_blank">presentation on managing performance problems</a> was created as an overview of the techniques to use. The best advice is to start with a clear statement on the symptoms that are being experienced. The obvious symptoms will be user complaints that the system is too slow, or in many cases that it is unstable. A system that is performing badly will tend to exhibit near-random instability as different parts of the system experience race conditions or timeout behaviour. This problem statement is important because it is all too easy to find a potential performance issue and rush to solve it. Unless this issue is likely to be the cause of the symptoms being experienced, however, resolving the identified issue will not resolve the symptoms.</p>
<p>When investigating the source of the technical issues, therefore, it is important to relate them back to the symptoms being experienced. To evaluate whether the issue identified is likely to be causing the symptoms experienced will need many of the techniques and data sets from building a capacity plan. For example, let us assume that an issue is located whereby two functions executed on the same data at the same time will cause both executions to hang. This is a performance problem that could be located via stress testing of the system. If you have production logging of the operational environment then it is possible to state whether this is occurring around the time of the reported symptoms. If it is then there is a strong case that this is the root cause of the problem. If that isn’t available then a detailed knowledge of business process and a performance model will allow the probability of this occurring to be evaluated. If it seems probable then there is a weaker case that this is the root cause. If the probability of this happening is very low then place this on a list to be fixed and keep looking for the root cause.</p>
<p>Using this sort of approach it is likely that a resolution to the current symptoms will be identified and a resolution approach found. It is important to then consider whether the capacity management approach being used for a system is sufficient. System performance problems are not like hardware failures &#8211; they often develop and build over time rather than having a single point in time cause. If processes are in place to proactively manage the performance of an operational system then it should be possible to identify a potential performance problem before it starts to impact the business. If an IT department does not have this capability for all of the core operational systems then it is worth considering developing it. The development of this capability is usually expensive, but there is also significant business value in having fast IT systems. It is worth looking closely at the business case investing in improving and maintaining the performance of your systems for the business.</p>
<p>If you need help in resolving performance problems that you have identified, or in working out how to improve you performance management processes then <a href="mailto:dh@sarquol.com?subject=Bulletin:%20Help%20needed">e-mail me</a>. Alternatively, if you are involved with or aware of business struggling with slow systems then please feel free to forward this bulletin to them.</p>
<p><a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save?linkurl=http%3A%2F%2Fwww.sarquol.com%2Fperf%2Fmgt%2Fmanaging-problems%2F&amp;linkname=Managing%20performance%20problems"><img src="http://www.sarquol.com/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share/Bookmark"/></a> </p>]]></content:encoded>
			<wfw:commentRss>http://www.sarquol.com/perf/mgt/managing-problems/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
