<?xml version="1.0"?>
<rss version="2.0">
<channel>
  <title>Coding the Architecture - vendor tag</title>
  <link>http://www.codingthearchitecture.com/tags/vendor/</link>
  <description>Software architecture for developers</description>
  <language>en</language>
  <copyright>Coding the Architecture</copyright>
  <lastBuildDate>Mon, 21 May 2012 09:41:00 GMT</lastBuildDate>
  <generator>Pebble (http://pebble.sourceforge.net)</generator>
  <docs>http://backend.userland.com/rss</docs>
  
  
  <item>
    <title>Who should own the non-functional tests?</title>
    <link>http://www.codingthearchitecture.com/2008/07/07/who_should_own_the_non_functional_tests.html</link>
    
      
        <description>
          &lt;p&gt;
This is a follow-up to a post entitled &lt;a href=&#034;http://www.codingthearchitecture.com/2007/11/05/performance_tuning_java_systems.html&#034;&gt;Performance tuning Java systems&lt;/a&gt; that I made last year, which talked about some performance testing that I was doing for a customer. Last week, I went back to the same customer to make some small tweaks to the test scripts, and this very simple act highlighted something I thought was very interesting.
&lt;/p&gt;

&lt;p&gt;
The key thing about the system being tested is that it&#039;s a customized version of an existing vendor product (a high volume, low latency trading platform), with the vendor being responsible for making all of the changes. At some point last year, my customer wanted to run some tests to ensure that the platform could grow with their business, and that&#039;s where I got involved. After a round of testing, environment reconfiguration and patches, the system more or less delivered on what it promised.
&lt;/p&gt;

&lt;p&gt;
Fast-forward to the current day and I was bought back in to make some changes to the test scripts, because the vendor had made some changes to their web application. Since our performance tests were JMeter based, those changes had a knock-on effect on the tests. The thing I found interesting is that the performance test pack hadn&#039;t been handed over to the vendor. Regardless of the reasons, the benefits of doing this are fairly clear.
&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Ownership&lt;/b&gt; : although it&#039;s good that my customer wanted to proactively test some of the non-functional aspects of the software, I can&#039;t help feeling that the software vendor should have ownership of the test pack. My understanding is that they do little in the way of non-functional testing themselves, so this is an ideal opportunity to rectify this.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Continuous execution&lt;/b&gt; : if the vendor has ownership, they can include the test pack as a part of their integration/build/release process for continuous execution and early warning of performance degrading changes.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Accuracy&lt;/b&gt; : I like to think that we did a good job at putting together the performance testing scripts, but we don&#039;t have the inside knowledge of the system that the vendor has. Vendor ownership would ensure that the test scripts are as accurate and representative as possible.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Up to date&lt;/b&gt; : the test scripts are inherently tied to the AJAX web application, which means that they need to be kept in sync when changes are made to the user experience. Again, the vendor is best positioned to do this, and taking a more proactive approach would ensure that user experience changes don&#039;t degrade the non-functional characteristics of the software.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;
The overriding question here is why doesn&#039;t the vendor undertake their own performance testing? They *should* take responsibility for the non-functional characteristics of their software, particularly when they are making claims of how fast and scalable it is. But perhaps more interesting is that the vendor of another product in use in the same space also doesn&#039;t do performance testing. Shouldn&#039;t we be asking more from commercial product vendors?
&lt;/p&gt;
        </description>
      
      
    
    
    
    <category>How do you deliver software architecture?</category>
    
    <comments>http://www.codingthearchitecture.com/2008/07/07/who_should_own_the_non_functional_tests.html#comments</comments>
    <guid isPermaLink="true">http://www.codingthearchitecture.com/2008/07/07/who_should_own_the_non_functional_tests.html</guid>
    <pubDate>Mon, 07 Jul 2008 10:03:00 GMT</pubDate>
  </item>
  
  </channel>
</rss>

