<?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>Should Have Paid Me More &#187; utilization</title>
	<atom:link href="http://shouldhavepaidmemore.com/tag/utilization/feed/" rel="self" type="application/rss+xml" />
	<link>http://shouldhavepaidmemore.com</link>
	<description>Tales from the underpaid</description>
	<lastBuildDate>Sun, 29 Nov 2009 14:00:20 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>The Utilization Report, Part Two</title>
		<link>http://shouldhavepaidmemore.com/2009/the-utilization-report-part-two/</link>
		<comments>http://shouldhavepaidmemore.com/2009/the-utilization-report-part-two/#comments</comments>
		<pubDate>Sun, 29 Nov 2009 14:00:20 +0000</pubDate>
		<dc:creator>spork</dc:creator>
				<category><![CDATA[Users]]></category>
		<category><![CDATA[inefficiency]]></category>
		<category><![CDATA[utilization]]></category>

		<guid isPermaLink="false">http://shouldhavepaidmemore.com/?p=165</guid>
		<description><![CDATA["How does the utilization report arrive at its numbers?"

It seemed like a simple, straightforward and innocuous question at the time. Unfortunately, it opened an institution-sized metallic food storage container of blind, soil-ingesting invertebrates.]]></description>
			<content:encoded><![CDATA[<p><em>Note: You may wish to read </em><a title="The Utilization Report, Part One" href="http://shouldhavepaidmemore.com/2009/the-utilization-report/"><em>The Utilization Report</em></a><em> to gain context.</em></p>
<p>&#8220;How does the utilization report arrive at its numbers?&#8221;</p>
<p>It seemed like a simple, straightforward and innocuous question at the time. Unfortunately, it opened an institution-sized metallic food storage container of blind, soil-ingesting invertebrates.</p>
<p>You see, the person who&#8217;d commissioned the development of the utilization report didn&#8217;t really understand what he was building. He had vague amorphous ideas about what he wanted &#8211; perhaps he&#8217;d seen a report at some other company that was used to determine how well the employees were being utilized and decided it was a good idea. Based on second-hand knowledge and investigation into the reports themselves, here&#8217;s how I picture the utilization report&#8217;s progression in my head:<span id="more-165"></span></p>
<p><strong>Project Requester</strong>: &#8220;I want a report that tells me if there&#8217;s enough work for my employees.&#8221; <em>&#8211;note: He&#8217;s saying &#8220;show number of hours worked divided by number of hours that could have been worked&#8221;</em><br />
<em>&#8211; time passes &#8211;</em><br />
<strong>Programme</strong>r: &#8220;OK, here it is.&#8221;<br />
<strong>Project Requester</strong>: &#8220;It&#8217;s wrong. It needs to take holidays into account.&#8221;<br />
<em>&#8211; time passes &#8211;</em><br />
<strong>Programmer</strong>: &#8220;OK, here it is.&#8221;<br />
<strong>Project Requester</strong>: &#8220;It&#8217;s wrong. It needs to take PTO into account.&#8221;<br />
<em>&#8211; time passes &#8211;</em><br />
<strong>Programmer</strong>: &#8220;OK, here it is.&#8221;<br />
<strong>Project Requester</strong>: &#8220;It&#8217;s wrong. It  should use the number of hours the employee has been <em>scheduled</em> to work instead of the hours actually worked.&#8221;<br />
<strong>Programmer</strong>: &#8220;What?&#8221;<br />
<strong>Project Requester</strong>: &#8220;It has to.&#8221;<br />
<em><em>&#8211; time passes &#8211;<br />
</em><span style="font-style: normal;"><strong>Programmer</strong>: &#8220;OK, here it is.&#8221;<br />
</span><span style="font-style: normal;"><strong>Project Requester</strong>: &#8220;It&#8217;s wrong. If an employee had a job that ran late the night before, the Scheduling department schedules an employee for a block of time the next day in order to keep him from having to work. The report has to take that into account when it happens.&#8221;<br />
</span>&#8211; time passes &#8211;<br />
<strong><span style="font-style: normal;">Programmer</span></strong><span style="font-style: normal;">: &#8220;OK, here it is.&#8221;<br />
</span><strong><span style="font-style: normal;">Project Requester</span></strong><span style="font-style: normal;">: &#8220;It&#8217;s wrong. It needs to show that an employee worked the whole weekend if he was scheduled for a Saturday.&#8221;<br />
&#8211; time passes &#8211;<br />
<em><strong><span style="font-style: normal;">Programmer</span></strong><span style="font-style: normal;">: &#8220;OK, here it is.&#8221;<br />
<em><strong><span style="font-style: normal;">Project Requester</span></strong><span style="font-style: normal;">: &#8220;It&#8217;s wrong. It needs to assume every employee spent two hours to get to the job site and two hours to get home.&#8221;<br />
<em>&#8211; time passes &#8211;</em></span></em></span></em></span></em><br />
<strong>Programmer</strong>: &#8220;OK, here it is.&#8221;<br />
<strong>Project Requester</strong>: &#8220;It&#8217;s wrong.&#8221;<br />
<strong>Programmer</strong>: &#8220;How is it wrong?&#8221;<br />
<strong>Project Requester</strong>: &#8220;The numbers can&#8217;t possibly be that low. The report is wrong.&#8221; <em>&#8211;note: It showed an average of 64% utilization (i.e. employees jacked off 36% of the time for which they were paid). It was later found that actual utilization was 52% if they were afforded every possible benefit of the doubt.</em></p>
<p>The utilization report was used to determine year-end monetary bonuses for managers. However, every time the utilization numbers were too low to allow the maximum bonus, the managers would say &#8220;The report&#8217;s always been inaccurate. The numbers are really much higher.&#8221; And the bonus would be awarded.</p>
]]></content:encoded>
			<wfw:commentRss>http://shouldhavepaidmemore.com/2009/the-utilization-report-part-two/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The Utilization Report</title>
		<link>http://shouldhavepaidmemore.com/2009/the-utilization-report/</link>
		<comments>http://shouldhavepaidmemore.com/2009/the-utilization-report/#comments</comments>
		<pubDate>Sat, 28 Nov 2009 18:03:00 +0000</pubDate>
		<dc:creator>spork</dc:creator>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[inefficiency]]></category>
		<category><![CDATA[MS Access]]></category>
		<category><![CDATA[utilization]]></category>

		<guid isPermaLink="false">http://shouldhavepaidmemore.com/?p=161</guid>
		<description><![CDATA[A utilization report is essentially a view of hours worked vs hours paid &#8211; simple, right? You can determine appropriate staffing levels by understanding how much work they&#8217;re performing and how much work needs to be performed.
It turned out &#8220;the utilization report&#8221; at my company actually meant six distinct reports. Here&#8217;s how the system worked:

At [...]]]></description>
			<content:encoded><![CDATA[<p>A utilization report is essentially a view of hours worked vs hours paid &#8211; simple, right? You can determine appropriate staffing levels by understanding how much work they&#8217;re performing and how much work needs to be performed.</p>
<p>It turned out &#8220;the utilization report&#8221; at my company actually meant six distinct reports. Here&#8217;s how the system worked:</p>
<ul>
<li>At the beginning of every month, a user would submit an IT ticket as a reminder to &#8220;run&#8221; the report on the 15th of the next month</li>
<li>Somewhere near the 15th of the month, a specific developer would navigate to a directory on his machine and double-click an Access database</li>
<li>The developer would then locate each of the six reports in the Access database and run them all in turn, exporting them as RTF files when they finished</li>
<li>Each report was extremely resource-intensive and completely took over the IT guy&#8217;s computer, rendering him useless for hours &#8211; and even longer if the Access database crashed</li>
<li>When all reports had been exported, they were attached to an email and sent to the user from Step 1</li>
</ul>
<p><span id="more-161"></span></p>
<p>This process was repeated every month and caused much frustration for the user (because they couldn&#8217;t get the report immediately) and the developer (because it consumed his computer and he couldn&#8217;t get anything done). After hearing the developer curse and complain about the utilization report a few times, I set to work on the Access database. The process was changed to:</p>
<ul>
<li>On the 15th of every month, Windows Task Scheduler opens the Access database, triggering a VBA subroutine</li>
<li>Each report is exported to RTF</li>
<li>All exported reports are programmatically attached to an email message and sent to the user</li>
</ul>
<p>The new process is entirely automated and takes about three minutes to complete. It turns out Access was running all of the report queries (a bunch of UNION ALLs in a number of views) twice &#8211; once to display the report to the developer, and again to export the data to RTF. In addition, the formatting process required to display the report inside Access took an enormous amount of time, whereas the formatting of the RTF to be displayed in an external viewer was far quicker.</p>
]]></content:encoded>
			<wfw:commentRss>http://shouldhavepaidmemore.com/2009/the-utilization-report/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
