<?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/"
	xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd"
	xmlns:media="http://search.yahoo.com/mrss/"
>

<channel>
	<title>Agile Ali &#187; Useful if needed</title>
	<atom:link href="http://www.agileali.com/myblog/category/useful-if-needed/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.agileali.com/myblog</link>
	<description>I.T. and QA, My Way !</description>
	<lastBuildDate>Wed, 05 May 2010 04:09:12 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=abc</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<!-- podcast_generator="podPress/8.8" - maintenance_release="8.8.4" -->
		<copyright>Copyright &#xA9; 2010 Agile Ali </copyright>
		<managingEditor>ali@agileali.com ()</managingEditor>
		<webMaster>ali@agileali.com ()</webMaster>
		<category>posts</category>
		<itunes:keywords></itunes:keywords>
		<itunes:subtitle></itunes:subtitle>
		<itunes:summary>Just another WordPress weblog</itunes:summary>
		<itunes:author></itunes:author>
		<itunes:category text="Society &amp; Culture"/>
		<itunes:owner>
			<itunes:name></itunes:name>
			<itunes:email>ali@agileali.com</itunes:email>
		</itunes:owner>
		<itunes:block>No</itunes:block>
		<itunes:explicit>no</itunes:explicit>
		<itunes:image href="http://www.agileali.com/myblog/wp-content/plugins/podpress/images/powered_by_podpress_large.jpg" />
		<image>
			<url>http://www.agileali.com/myblog/wp-content/plugins/podpress/images/powered_by_podpress.jpg</url>
			<title>Agile Ali</title>
			<link>http://www.agileali.com/myblog</link>
			<width>144</width>
			<height>144</height>
		</image>
		<item>
		<title>Selenium Blog &#8211; new usefull updates</title>
		<link>http://www.agileali.com/myblog/2010/04/16/selenium-blog-new-usefull-updates/</link>
		<comments>http://www.agileali.com/myblog/2010/04/16/selenium-blog-new-usefull-updates/#comments</comments>
		<pubDate>Fri, 16 Apr 2010 08:00:00 +0000</pubDate>
		<dc:creator>Ali</dc:creator>
				<category><![CDATA[Useful if needed]]></category>
		<category><![CDATA[selenium updates]]></category>

		<guid isPermaLink="false">http://www.agileali.com/myblog/?p=333</guid>
		<description><![CDATA[Troubles  with Selenium supporting SSL in Google Chrome ?
Your browser doesnt support Xml Http  Request – but the test passed ! errrrrorrr??


]]></description>
			<content:encoded><![CDATA[<p><strong><a title="Edit “Troubles with Selenium supporting SSL in Google Chrome ?”" href="../../selenium/wp-admin/post.php?action=edit&amp;post=44">Troubles  with Selenium supporting SSL in Google Chrome ?</a></strong></p>
<p><strong></strong><strong><a title="Edit “Your browser doesnt support Xml Http Request – but the  test passed ! errrrrorrr??”" href="../../selenium/wp-admin/post.php?action=edit&amp;post=41">Your browser doesnt support Xml Http  Request – but the test passed ! errrrrorrr??</a></strong><br />
<a href="http://www.dpbolvw.net/click-3678012-2948356" target="_top"><br />
<img src="http://www.tqlkg.com/image-3678012-2948356" width="468" height="60" alt="Click for a FREE Psychic Reading from Keen!" border="0"/></a></p>
<a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save?linkurl=http%3A%2F%2Fwww.agileali.com%2Fmyblog%2F2010%2F04%2F16%2Fselenium-blog-new-usefull-updates%2F&amp;linkname=Selenium%20Blog%20%26%238211%3B%20new%20usefull%20updates"><img src="http://www.agileali.com/myblog/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share/Bookmark"/></a>]]></content:encoded>
			<wfw:commentRss>http://www.agileali.com/myblog/2010/04/16/selenium-blog-new-usefull-updates/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>QTP 10.0 &#8211; Menu Bar Items are Missing ? Gone ? Here is the Fix !</title>
		<link>http://www.agileali.com/myblog/2010/03/30/qtp-10-0-menu-bar-items-are-missing-gone-here-is-the-fix/</link>
		<comments>http://www.agileali.com/myblog/2010/03/30/qtp-10-0-menu-bar-items-are-missing-gone-here-is-the-fix/#comments</comments>
		<pubDate>Tue, 30 Mar 2010 21:56:28 +0000</pubDate>
		<dc:creator>Ali</dc:creator>
				<category><![CDATA[Do QA Right!]]></category>
		<category><![CDATA[Testing Tools]]></category>
		<category><![CDATA[Useful if needed]]></category>
		<category><![CDATA[menu bar]]></category>
		<category><![CDATA[missing]]></category>
		<category><![CDATA[QTP]]></category>
		<category><![CDATA[tool bar]]></category>

		<guid isPermaLink="false">http://www.agileali.com/myblog/?p=331</guid>
		<description><![CDATA[I am not sure why QTP is behaving like this ! But here is the Fix for it:
1. Open / Start QTP2. Right click on the Menu toolbar (File  Edit View Insert &#8230;.)3. Select &#8220;Customize&#8221;4. Click on the &#8220;Toolbars&#8221; tab5. then Click on &#8220;Restore All&#8221; button at the lower right hand side.
Wallah ! now All [...]]]></description>
			<content:encoded><![CDATA[<p>I am not sure why QTP is behaving like this ! But here is the Fix for it:</p>
<p>1. Open / Start QTP<br style="padding: 0px; margin: 0px;" />2. Right click on the Menu toolbar (File  Edit View Insert &#8230;.)<br style="padding: 0px; margin: 0px;" />3. Select &#8220;Customize&#8221;<br style="padding: 0px; margin: 0px;" />4. Click on the &#8220;Toolbars&#8221; tab<br style="padding: 0px; margin: 0px;" />5. then Click on &#8220;Restore All&#8221; button at the lower right hand side.</p>
<p>Wallah ! now All iz Well !<br />
<a href="http://www.tkqlhce.com/click-3678012-10708931" target="_top"><br />
<img src="http://www.tqlkg.com/image-3678012-10708931" width="468" height="60" alt="" border="0"/></a></p>
<a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save?linkurl=http%3A%2F%2Fwww.agileali.com%2Fmyblog%2F2010%2F03%2F30%2Fqtp-10-0-menu-bar-items-are-missing-gone-here-is-the-fix%2F&amp;linkname=QTP%2010.0%20%26%238211%3B%20Menu%20Bar%20Items%20are%20Missing%20%3F%20Gone%20%3F%20Here%20is%20the%20Fix%20%21"><img src="http://www.agileali.com/myblog/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share/Bookmark"/></a>]]></content:encoded>
			<wfw:commentRss>http://www.agileali.com/myblog/2010/03/30/qtp-10-0-menu-bar-items-are-missing-gone-here-is-the-fix/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Still using XP ? This bug might just make you upgrade !</title>
		<link>http://www.agileali.com/myblog/2010/03/03/still-using-xp-this-bug-might-just-make-you-upgrade/</link>
		<comments>http://www.agileali.com/myblog/2010/03/03/still-using-xp-this-bug-might-just-make-you-upgrade/#comments</comments>
		<pubDate>Wed, 03 Mar 2010 23:34:55 +0000</pubDate>
		<dc:creator>Ali</dc:creator>
				<category><![CDATA[Do QA Right!]]></category>
		<category><![CDATA[Useful if needed]]></category>
		<category><![CDATA[microsoft]]></category>
		<category><![CDATA[ms bug]]></category>
		<category><![CDATA[windows xp]]></category>

		<guid isPermaLink="false">http://www.agileali.com/myblog/?p=316</guid>
		<description><![CDATA[Microsoft has warned of a new security hole that could be exploited by attackers to take control of older Windows systems running Internet Explorer and for which proof-of-concept exploit code has been released publicly.
The vulnerability affects Windows 2000, XP and Server 2003-based systems, Microsoft said in a security advisory dated March 1.
Microsoft said that the [...]]]></description>
			<content:encoded><![CDATA[<p style="margin-top: 0px; margin-right: 3px; margin-bottom: 15px; margin-left: 3px;">Microsoft has warned of a new security hole that could be exploited by attackers to take control of older Windows systems running Internet Explorer and for which proof-of-concept exploit code has been released publicly.</p>
<p style="margin-top: 0px; margin-right: 3px; margin-bottom: 15px; margin-left: 3px;">The vulnerability affects Windows 2000, XP and Server 2003-based systems, Microsoft said in a security advisory dated March 1.</p>
<p style="margin-top: 0px; margin-right: 3px; margin-bottom: 15px; margin-left: 3px;">Microsoft said that the vulnerability in VBScript could allow remote code execution of computers. &#8220;If a malicious Web site displayed a specially crafted dialog box and a user pressed the F1 key, arbitrary code could be executed in the security context of the currently logged-on user,&#8221; Microsoft said on its Web site, &#8220;On systems running Windows Server 2003, Internet Explorer Enhanced Security Configuration is enabled by default, which helps to mitigate against this issue.&#8221; Windows Vista, Windows 7, and Windows Server 2008 are not affected.<span id="more-316"></span></p>
<p style="margin-top: 0px; margin-right: 3px; margin-bottom: 15px; margin-left: 3px;">The advisory includes several workarounds, including advice to avoid pressing the F1 key when prompted by a Web site.</p>
<p style="margin-top: 0px; margin-right: 3px; margin-bottom: 15px; margin-left: 3px;">It also suggests restricting access to the Windows Help System, setting Internet and Local intranet security zone settings to &#8220;high&#8221; to block ActiveX Controls and Active Scripting, and configuring Internet Explorer to prompt before running Active Scripting or disable Active Scripting in the Internet and Local intranet security zone.</p>
<p style="margin-top: 0px; margin-right: 3px; margin-bottom: 15px; margin-left: 3px;">Microsoft complained in its advisory and a statement that the vulnerability was not responsibly disclosed.</p>
<a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save?linkurl=http%3A%2F%2Fwww.agileali.com%2Fmyblog%2F2010%2F03%2F03%2Fstill-using-xp-this-bug-might-just-make-you-upgrade%2F&amp;linkname=Still%20using%20XP%20%3F%20This%20bug%20might%20just%20make%20you%20upgrade%20%21"><img src="http://www.agileali.com/myblog/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share/Bookmark"/></a>]]></content:encoded>
			<wfw:commentRss>http://www.agileali.com/myblog/2010/03/03/still-using-xp-this-bug-might-just-make-you-upgrade/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Watch-out for Mozilla&#8217;s security updates for Firefox</title>
		<link>http://www.agileali.com/myblog/2010/02/22/watch-out-for-mozillas-security-updates-for-firefox/</link>
		<comments>http://www.agileali.com/myblog/2010/02/22/watch-out-for-mozillas-security-updates-for-firefox/#comments</comments>
		<pubDate>Mon, 22 Feb 2010 23:22:45 +0000</pubDate>
		<dc:creator>Ali</dc:creator>
				<category><![CDATA[Useful if needed]]></category>
		<category><![CDATA[firefox]]></category>
		<category><![CDATA[mozilla]]></category>

		<guid isPermaLink="false">http://www.agileali.com/myblog/?p=307</guid>
		<description><![CDATA[The Mozilla Foundation, the software group behind the Firefox browser, has released five security advisories relating to its Firefox and Thunderbird software.
Three of the notices relate to critical vulnerabilities, with the two just classed as &#8220;moderate&#8221;, while all of which could potentially allow a hacker to executive arbitrary code.
It is understood the US-CERT department is [...]]]></description>
			<content:encoded><![CDATA[<p>The Mozilla Foundation, the software group behind the Firefox browser, has released five security advisories relating to its Firefox and Thunderbird software.</p>
<p style="color: #333333; margin-top: 0.8em; margin-right: 0px; margin-bottom: 0.8em; margin-left: 0px; font-size: 13.5px; line-height: 18px; padding: 0px;">Three of the notices relate to critical vulnerabilities, with the two just classed as &#8220;moderate&#8221;, while all of which could potentially allow a hacker to executive arbitrary code.</p>
<p style="color: #333333; margin-top: 0.8em; margin-right: 0px; margin-bottom: 0.8em; margin-left: 0px; font-size: 13.5px; line-height: 18px; padding: 0px;">It is understood the US-CERT department is advising Firefox users to upgrade to version 3.0.18, 3.5.8 or 3.6. Thunderbird users have been told to upgrade to 3.0.2, with SeaMonkey users also advised to upgrade to 2.0.3.</p>
<p style="color: #333333; margin-top: 0.8em; margin-right: 0px; margin-bottom: 0.8em; margin-left: 0px; font-size: 13.5px; line-height: 18px; padding: 0px;">The notices come after Mozilla employee Jess Ruderman wrote in a security blog post last week the company has begun to deliver updates and notices about security problems more quickly.</p>
<a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save?linkurl=http%3A%2F%2Fwww.agileali.com%2Fmyblog%2F2010%2F02%2F22%2Fwatch-out-for-mozillas-security-updates-for-firefox%2F&amp;linkname=Watch-out%20for%20Mozilla%26%238217%3Bs%20security%20updates%20for%20Firefox"><img src="http://www.agileali.com/myblog/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share/Bookmark"/></a>]]></content:encoded>
			<wfw:commentRss>http://www.agileali.com/myblog/2010/02/22/watch-out-for-mozillas-security-updates-for-firefox/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Adobe hit by a major security vulnerability</title>
		<link>http://www.agileali.com/myblog/2010/02/22/adobe-hit-by-a-major-security-vulnerability/</link>
		<comments>http://www.agileali.com/myblog/2010/02/22/adobe-hit-by-a-major-security-vulnerability/#comments</comments>
		<pubDate>Mon, 22 Feb 2010 23:21:31 +0000</pubDate>
		<dc:creator>Ali</dc:creator>
				<category><![CDATA[Do QA Right!]]></category>
		<category><![CDATA[Useful if needed]]></category>
		<category><![CDATA[adobe]]></category>
		<category><![CDATA[bug]]></category>

		<guid isPermaLink="false">http://www.agileali.com/myblog/?p=305</guid>
		<description><![CDATA[Hot on the heels of controversy over known vulnerabilities in Adobe Reader 9.3.0, according to reports the Adobe Download Manager is flawed with a bug that allegedly allows hackers to remotely install malicious files on user’s PCs.
It has been suggested that the Download Manager is an ActiveX script that is widely used to install a [...]]]></description>
			<content:encoded><![CDATA[<p style="margin-top: 0px; margin-right: 0px; margin-bottom: 1em; margin-left: 0px; padding: 0px;">Hot on the heels of controversy over known vulnerabilities in Adobe Reader 9.3.0, according to reports the Adobe Download Manager is flawed with a bug that allegedly allows hackers to remotely install malicious files on user’s PCs.</p>
<p style="margin-top: 0px; margin-right: 0px; margin-bottom: 1em; margin-left: 0px; padding: 0px;">It has been suggested that the Download Manager is an ActiveX script that is widely used to install a variety of software and patches across Adobe’s network.</p>
<p style="margin-top: 0px; margin-right: 0px; margin-bottom: 1em; margin-left: 0px; padding: 0px;">An Israeli security researcher Aviv Raff has identified the flaw which allows a third party application to be installed on the remote machine if users <span id="more-305"></span>click on a link.</p>
<p style="margin-top: 0px; margin-right: 0px; margin-bottom: 1em; margin-left: 0px; padding: 0px;"><a style="color: #d10024; text-decoration: none; padding: 0px; margin: 0px;" href="http://aviv.raffon.net/2010/02/18/SkeletonsInAdobesSecurityCloset.aspx">In his blog</a> Raff says that despite informing Adobe the company downplayed the risk.</p>
<p style="margin-top: 0px; margin-right: 0px; margin-bottom: 1em; margin-left: 0px; padding: 0px;">“While it is true that the Adobe Download Manager is removed upon computer restart, the user, who has just updated their Adobe product (usually without the requirement to restart the computer after the update), is still exposed to forced automatic installation until they restart their computer.</p>
<p style="margin-top: 0px; margin-right: 0px; margin-bottom: 1em; margin-left: 0px; padding: 0px;">“This specific design flaw does indeed force installation of the latest version of Adobe products. But, what if there is a zero-day flaw in an Adobe product, and you have decided to remove it from your system because of that zero-day?</p>
<p style="margin-top: 0px; margin-right: 0px; margin-bottom: 1em; margin-left: 0px; padding: 0px;">“An attacker can force you to automatically download and install the vulnerable Adobe product, and then exploit the zero-day vulnerability in that product.”</p>
<p style="margin-top: 0px; margin-right: 0px; margin-bottom: 1em; margin-left: 0px; padding: 0px;">A recent report from <a style="color: #d10024; text-decoration: none; padding: 0px; margin: 0px;" href="http://www.scansafe.com/downloads/gtr/2009_AGTR.pdf">Scansafe found</a> that based on more than a trillion web requests processed in 2009, the use of malicious PDF files exploiting flaws in Adobe Reader/Adobe Acrobat not only outpaced the use of Flash exploits, but also, grew to 80pc of all exploits the company encountered throughout the year.</p>
<p style="margin-top: 0px; margin-right: 0px; margin-bottom: 1em; margin-left: 0px; padding: 0px;">“This is the kind of scenario that’s common when skilled, motivated attackers are going after select targets.</p>
<p style="margin-top: 0px; margin-right: 0px; margin-bottom: 1em; margin-left: 0px; padding: 0px;">And yes, you do get a big dialog box when you are forced to download the software. Like this will really matter to the attacker, when all he wants is to get his malicious software on your machine,” Raff said.</p>
<a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save?linkurl=http%3A%2F%2Fwww.agileali.com%2Fmyblog%2F2010%2F02%2F22%2Fadobe-hit-by-a-major-security-vulnerability%2F&amp;linkname=Adobe%20hit%20by%20a%20major%20security%20vulnerability"><img src="http://www.agileali.com/myblog/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share/Bookmark"/></a>]]></content:encoded>
			<wfw:commentRss>http://www.agileali.com/myblog/2010/02/22/adobe-hit-by-a-major-security-vulnerability/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>I Like ! &#8221; soapUI &#8221; tool to test Web services !</title>
		<link>http://www.agileali.com/myblog/2010/02/01/i-like-soapui-tool-to-test-web-services/</link>
		<comments>http://www.agileali.com/myblog/2010/02/01/i-like-soapui-tool-to-test-web-services/#comments</comments>
		<pubDate>Mon, 01 Feb 2010 22:05:13 +0000</pubDate>
		<dc:creator>Ali</dc:creator>
				<category><![CDATA[Do QA Right!]]></category>
		<category><![CDATA[Useful if needed]]></category>
		<category><![CDATA[soap]]></category>
		<category><![CDATA[soapui]]></category>
		<category><![CDATA[web service]]></category>
		<category><![CDATA[webservice]]></category>

		<guid isPermaLink="false">http://www.agileali.com/myblog/?p=295</guid>
		<description><![CDATA[SOA and Web services have revolutionized the way we work with Web applications and exchange data, but they can be very difficult to debug problems during development. There are numerous options available depending upon your development environment. The caveat is working with a Web service — yours or a third-party — once it has been [...]]]></description>
			<content:encoded><![CDATA[<p>SOA and Web services have revolutionized the way we work with Web applications and exchange data, but they can be very difficult to debug problems during development. There are numerous options available depending upon your development environment. The caveat is working with a Web service — yours or a third-party — once it has been rolled out. This is where the <a style="color: #666666; text-decoration: none; outline-style: none; outline-width: initial; outline-color: initial; cursor: pointer;" href="http://www.soapui.org/" target="_blank">soapUI</a> tool enters the picture.</p>
<h2 style="background-image: none; background-repeat: initial; background-attachment: initial; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: initial; color: #000000; font-size: 1.3em; clear: both; height: 25px; font-weight: bold; background-position: initial initial; padding: 0px; margin: 10px;">Features of soapUI</h2>
<p style="margin-top: 12px; margin-right: 10px; margin-bottom: 12px; margin-left: 10px; line-height: 1.3em; padding: 0px;">The soapUI is designed to simplify the testing of your Web services; I also find it useful for interacting with third-party Web services to get a better idea of what to expect in the response, as well as what to include in the response. It was especially useful in a recent project utilizing <a style="color: #003399; text-decoration: none; outline-style: none; outline-width: initial; outline-color: initial; cursor: pointer;" href="http://www.channeladvisor.com/" target="_blank">ChannelAdvisor</a> Web services. Using soapUI, I was able to figure out the data expected in<span id="more-295"></span> request objects.</p>
<p style="margin-top: 12px; margin-right: 10px; margin-bottom: 12px; margin-left: 10px; line-height: 1.3em; padding: 0px;">SoapUI is accessible to both technical and nontechnical persons. The easy-to-use graphical interface makes it simple to work with <a style="color: #003399; text-decoration: none; outline-style: none; outline-width: initial; outline-color: initial; cursor: pointer;" href="http://www.w3.org/TR/wsdl" target="_blank">WSDL</a> and <a style="color: #003399; text-decoration: none; outline-style: none; outline-width: initial; outline-color: initial; cursor: pointer;" href="http://www.w3.org/TR/soap/" target="_blank">SOAP</a>-based Web services. It provides a Web service client that can automatically generate Web service requests and tests.</p>
<p style="margin-top: 12px; margin-right: 10px; margin-bottom: 12px; margin-left: 10px; line-height: 1.3em; padding: 0px;">With the tool, you can work with XML and its many variations like WSDL. WSDL is easily imported via its URL, along with a great viewer for navigating and inspecting the WSDL source.</p>
<p style="margin-top: 12px; margin-right: 10px; margin-bottom: 12px; margin-left: 10px; line-height: 1.3em; padding: 0px;">SoapUI offers extensive security features, which include Web service authentication and WS-Security. One of the cool features I like is the excellent SOAP monitor support; it allows you to easily monitor and analyze traffic.</p>
<p style="margin-top: 12px; margin-right: 10px; margin-bottom: 12px; margin-left: 10px; line-height: 1.3em; padding: 0px;">The user interface is powerful; the soapUI tool also provides a command-line option. It allows you to run your tests via the command line, thus it can be easily automated in batch files.</p>
<h2 style="background-image: none; background-repeat: initial; background-attachment: initial; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: initial; color: #000000; font-size: 1.3em; clear: both; height: 25px; font-weight: bold; background-position: initial initial; padding: 0px; margin: 10px;">Putting soapUI to work</h2>
<p style="margin-top: 12px; margin-right: 10px; margin-bottom: 12px; margin-left: 10px; line-height: 1.3em; padding: 0px;"><strong>Figure A</strong> provides a look at the soapUI interface with a new project created to access the <a style="color: #003399; text-decoration: none; outline-style: none; outline-width: initial; outline-color: initial; cursor: pointer;" href="http://www.amazon.com/gp/browse.html?node=16427261" target="_blank">Amazon S3 Web service</a>. It includes the generation of a new request for the Web service’s CopyObject method. A new request is generated by right-clicking a method name (in the left side of the IDE) and selecting New Request.</p>
<p style="margin-top: 12px; margin-right: 10px; margin-bottom: 12px; margin-left: 10px; line-height: 1.3em; padding: 0px;">With the request generated, you can fill in the necessary data and submit the request via the green Play button in the upper left of the request window. A validation option is available as well to ensure the request XML is valid before you try to submit it. Once you submit a request, you can view the results to see the response (if there is one) from the Web service call.</p>
<p style="margin-top: 12px; margin-right: 10px; margin-bottom: 12px; margin-left: 10px; line-height: 1.3em; padding: 0px;"><strong>Figure A</strong></p>
<p style="margin-top: 12px; margin-right: 10px; margin-bottom: 12px; margin-left: 10px; line-height: 1.3em; padding: 0px;"><strong><img class="alignleft size-full wp-image-296" title="209309-500-340" src="http://www.agileali.com/myblog/wp-content/uploads/2010/02/209309-500-340.jpg" alt="Figure A: A new soapUI project created for the Amazon S3 Web service." /></strong></p>
<p style="margin-top: 12px; margin-right: 10px; margin-bottom: 12px; margin-left: 10px; line-height: 1.3em; padding: 0px;">
<p style="margin-top: 12px; margin-right: 10px; margin-bottom: 12px; margin-left: 10px; line-height: 1.3em; padding: 0px;">
<p style="margin-top: 12px; margin-right: 10px; margin-bottom: 12px; margin-left: 10px; line-height: 1.3em; padding: 0px;">
<p style="margin-top: 12px; margin-right: 10px; margin-bottom: 12px; margin-left: 10px; line-height: 1.3em; padding: 0px;">
<p style="margin-top: 12px; margin-right: 10px; margin-bottom: 12px; margin-left: 10px; line-height: 1.3em; padding: 0px;">
<p style="margin-top: 12px; margin-right: 10px; margin-bottom: 12px; margin-left: 10px; line-height: 1.3em; padding: 0px;">
<p style="margin-top: 12px; margin-right: 10px; margin-bottom: 12px; margin-left: 10px; line-height: 1.3em; padding: 0px;">
<p style="margin-top: 12px; margin-right: 10px; margin-bottom: 12px; margin-left: 10px; line-height: 1.3em; padding: 0px;">
<p style="margin-top: 12px; margin-right: 10px; margin-bottom: 12px; margin-left: 10px; line-height: 1.3em; padding: 0px;">
<p style="margin-top: 12px; margin-right: 10px; margin-bottom: 12px; margin-left: 10px; line-height: 1.3em; padding: 0px;">
<p style="margin-top: 12px; margin-right: 10px; margin-bottom: 12px; margin-left: 10px; line-height: 1.3em; padding: 0px;">
<p style="margin-top: 12px; margin-right: 10px; margin-bottom: 12px; margin-left: 10px; line-height: 1.3em; padding: 0px;">
<p style="margin-top: 12px; margin-right: 10px; margin-bottom: 12px; margin-left: 10px; line-height: 1.3em; padding: 0px;">
<p style="margin-top: 12px; margin-right: 10px; margin-bottom: 12px; margin-left: 10px; line-height: 1.3em; padding: 0px;">The ability to create mock objects is available within soapUI. It allows you to test a Web service without actually connecting to it. The feature is available by right-clicking a method.</p>
<p style="margin-top: 12px; margin-right: 10px; margin-bottom: 12px; margin-left: 10px; line-height: 1.3em; padding: 0px;">In addition to running a request, you may create a new assertion for testing. The left pane (navigation area) of the IDE includes a node for Tests. This allows you to create new tests and test scripts for validation proper Web service execution.</p>
<h2 style="background-image: none; background-repeat: initial; background-attachment: initial; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: initial; color: #000000; font-size: 1.3em; clear: both; height: 25px; font-weight: bold; background-position: initial initial; padding: 0px; margin: 10px;">Integration</h2>
<p style="margin-top: 12px; margin-right: 10px; margin-bottom: 12px; margin-left: 10px; line-height: 1.3em; padding: 0px;">SoapUI easily integrates with IDEs and other tools to become a part of your development process. The list of IDEs includes <a style="color: #003399; text-decoration: none; outline-style: none; outline-width: initial; outline-color: initial; cursor: pointer;" href="http://maven.apache.org/" target="_blank">Maven</a>, <a style="color: #003399; text-decoration: none; outline-style: none; outline-width: initial; outline-color: initial; cursor: pointer;" href="http://www.netbeans.org/" target="_blank">NetBeans</a>, <a style="color: #003399; text-decoration: none; outline-style: none; outline-width: initial; outline-color: initial; cursor: pointer;" href="http://www.jetbrains.com/idea/" target="_blank">IntelliJ IDEA</a>, <a style="color: #003399; text-decoration: none; outline-style: none; outline-width: initial; outline-color: initial; cursor: pointer;" href="http://www.jboss.org/" target="_blank">JBoss</a>, and <a style="color: #003399; text-decoration: none; outline-style: none; outline-width: initial; outline-color: initial; cursor: pointer;" href="http://www.eclipse.org/" target="_blank">Eclipse</a>. The other tools include <a style="color: #003399; text-decoration: none; outline-style: none; outline-width: initial; outline-color: initial; cursor: pointer;" href="http://www.soapui.org/userguide/tools/topdown.html" target="_blank">code generation</a> and <a style="color: #003399; text-decoration: none; outline-style: none; outline-width: initial; outline-color: initial; cursor: pointer;" href="http://www.ws-i.org/" target="_blank">WS-I</a> options. Tools may be associated with soapUI via the Preferences window, as shown in <strong>Figure B</strong>, which include the configuration for the .NET wsdl.exe tool.</p>
<p style="margin-top: 12px; margin-right: 10px; margin-bottom: 12px; margin-left: 10px; line-height: 1.3em; padding: 0px;"><strong>Figure B</strong></p>
<p style="margin-top: 12px; margin-right: 10px; margin-bottom: 12px; margin-left: 10px; line-height: 1.3em; padding: 0px;"><img class="alignleft size-full wp-image-297" title="b209310-500-381" src="http://www.agileali.com/myblog/wp-content/uploads/2010/02/b209310-500-381.jpg" alt="Figure B: Third-party tools may be integrated with soapUI via the Preferences window.  " /></p>
<p style="margin-top: 12px; margin-right: 10px; margin-bottom: 12px; margin-left: 10px; line-height: 1.3em; padding: 0px;">
<p style="margin-top: 12px; margin-right: 10px; margin-bottom: 12px; margin-left: 10px; line-height: 1.3em; padding: 0px;">
<p style="margin-top: 12px; margin-right: 10px; margin-bottom: 12px; margin-left: 10px; line-height: 1.3em; padding: 0px;">
<p style="margin-top: 12px; margin-right: 10px; margin-bottom: 12px; margin-left: 10px; line-height: 1.3em; padding: 0px;">
<p style="margin-top: 12px; margin-right: 10px; margin-bottom: 12px; margin-left: 10px; line-height: 1.3em; padding: 0px;">
<p style="margin-top: 12px; margin-right: 10px; margin-bottom: 12px; margin-left: 10px; line-height: 1.3em; padding: 0px;">
<p style="margin-top: 12px; margin-right: 10px; margin-bottom: 12px; margin-left: 10px; line-height: 1.3em; padding: 0px;">
<p style="margin-top: 12px; margin-right: 10px; margin-bottom: 12px; margin-left: 10px; line-height: 1.3em; padding: 0px;">
<p style="margin-top: 12px; margin-right: 10px; margin-bottom: 12px; margin-left: 10px; line-height: 1.3em; padding: 0px;">
<p style="margin-top: 12px; margin-right: 10px; margin-bottom: 12px; margin-left: 10px; line-height: 1.3em; padding: 0px;">
<p style="margin-top: 12px; margin-right: 10px; margin-bottom: 12px; margin-left: 10px; line-height: 1.3em; padding: 0px;">
<p style="margin-top: 12px; margin-right: 10px; margin-bottom: 12px; margin-left: 10px; line-height: 1.3em; padding: 0px;">
<p style="margin-top: 12px; margin-right: 10px; margin-bottom: 12px; margin-left: 10px; line-height: 1.3em; padding: 0px;">
<p style="margin-top: 12px; margin-right: 10px; margin-bottom: 12px; margin-left: 10px; line-height: 1.3em; padding: 0px;">
<h2 style="background-image: none; background-repeat: initial; background-attachment: initial; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: initial; color: #000000; font-size: 1.3em; clear: both; height: 25px; font-weight: bold; background-position: initial initial; padding: 0px; margin: 10px;">Getting soapUI</h2>
<p style="margin-top: 12px; margin-right: 10px; margin-bottom: 12px; margin-left: 10px; line-height: 1.3em; padding: 0px;">The soapUI tool is built with Java. The necessary Java files may be installed when soapUI is installed. Its reliance on Java means it can run on many platforms. The <a style="color: #003399; text-decoration: none; outline-style: none; outline-width: initial; outline-color: initial; cursor: pointer;" href="http://sourceforge.net/project/showfiles.php?group_id=136013&amp;package_id=163662&amp;release_id=571745" target="_blank">download page</a> includes Windows installation files as well as tar files for other systems.</p>
<p style="margin-top: 12px; margin-right: 10px; margin-bottom: 12px; margin-left: 10px; line-height: 1.3em; padding: 0px;">A great aspect of soapUI is its cost — free! Well, the Basic version is available at no cost. A <a style="color: #003399; text-decoration: none; outline-style: none; outline-width: initial; outline-color: initial; cursor: pointer;" href="http://www.eviware.com/component/option,com_wrapper/Itemid,37/" target="_blank">Pro version</a> is available with a one year license for $349. The professional version includes everything that’s in the Basic version, along with product support and additional features for testing such as refactoring, data sources, and drag-and-drop editing.</p>
<h2 style="background-image: none; background-repeat: initial; background-attachment: initial; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: initial; color: #000000; font-size: 1.3em; clear: both; height: 25px; font-weight: bold; background-position: initial initial; padding: 0px; margin: 10px;">Don’t forget to test</h2>
<p style="margin-top: 12px; margin-right: 10px; margin-bottom: 12px; margin-left: 10px; line-height: 1.3em; padding: 0px;">Testing is an important aspect of every development project. It seems common to test a Web service as part of a bigger system via how the Web service is accessed. However, it is important to fully test the service itself. The soapUI tool allows you to easily write test suites and test cases.</p>
<h2 style="background-image: none; background-repeat: initial; background-attachment: initial; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: initial; color: #000000; font-size: 1.3em; clear: both; height: 25px; font-weight: bold; background-position: initial initial; padding: 0px; margin: 10px;">A better way</h2>
<p style="margin-top: 12px; margin-right: 10px; margin-bottom: 12px; margin-left: 10px; line-height: 1.3em; padding: 0px;">The soapUI tool provides a great way to interact with and test Web services whether they are your own or third-party offerings. It is a nice alternative to other options I’ve used, such as the built-in features of Visual Studio or hand-coding SOAP requests</p>
<a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save?linkurl=http%3A%2F%2Fwww.agileali.com%2Fmyblog%2F2010%2F02%2F01%2Fi-like-soapui-tool-to-test-web-services%2F&amp;linkname=I%20Like%20%21%20%26%238221%3B%20soapUI%20%26%238221%3B%20tool%20to%20test%20Web%20services%20%21"><img src="http://www.agileali.com/myblog/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share/Bookmark"/></a>]]></content:encoded>
			<wfw:commentRss>http://www.agileali.com/myblog/2010/02/01/i-like-soapui-tool-to-test-web-services/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Google Paying for finding Bugs in Chrome ! Woot ! Woot ! upto $1377 !!!</title>
		<link>http://www.agileali.com/myblog/2010/01/29/google-paying-for-finding-bugs-in-chrome-woot-woot-upto-1377/</link>
		<comments>http://www.agileali.com/myblog/2010/01/29/google-paying-for-finding-bugs-in-chrome-woot-woot-upto-1377/#comments</comments>
		<pubDate>Sat, 30 Jan 2010 00:59:35 +0000</pubDate>
		<dc:creator>Ali</dc:creator>
				<category><![CDATA[Crazy IT]]></category>
		<category><![CDATA[Useful if needed]]></category>
		<category><![CDATA[chrome]]></category>
		<category><![CDATA[google]]></category>
		<category><![CDATA[it]]></category>
		<category><![CDATA[make money]]></category>

		<guid isPermaLink="false">http://www.agileali.com/myblog/?p=291</guid>
		<description><![CDATA[[from Google]
In designing Chromium, we&#8217;ve been working hard to make the browser as secure as possible. We&#8217;ve made strong improvements with the integrated sandboxing and our up-to-date user base. We&#8217;re always looking to stay on top of the latest browser security features. We&#8217;ve also worked closely with the broader security community to get independent scrutiny and to quickly [...]]]></description>
			<content:encoded><![CDATA[<p>[from<a href="http://blog.chromium.org/2010/01/encouraging-more-chromium-security.html"> Google</a>]</p>
<p>In designing Chromium, we&#8217;ve been working hard to make the browser as secure as possible. We&#8217;ve made strong improvements with the <a href="http://seclab.stanford.edu/websec/chromium/chromium-security-architecture.pdf">integrated sandboxing</a> and our <a href="http://www.techzoom.net/publications/silent-updates/">up-to-date user base</a>. We&#8217;re always looking to stay on top of the <a href="http://blog.chromium.org/2010/01/security-in-depth-new-security-features.html">latest browser security features</a>. We&#8217;ve also worked closely with the broader security community to get independent scrutiny and to quickly fix bugs that have been reported.</p>
<p>Some of the most interesting security bugs we&#8217;ve fixed have been reported by researchers external to the Chromium project. For example, <a href="http://code.google.com/p/chromium/issues/detail?id=21338">this same origin policy bypass from Isaac Dawson</a> or <a href="http://code.google.com/p/chromium/issues/detail?id=18639">this v8 engine bug found by the Mozilla Security Team</a>. Thanks to the collaborative efforts of these people and others, Chromium security is stronger and our users are safer.</p>
<p>Today, we are introducing an experimental new incentive for <span id="more-291"></span>external researchers to participate. We will be rewarding select interesting and original vulnerabilities reported to us by the security research community. For existing contributors to Chromium security — who would likely continue to contribute regardless — this may be seen as a token of our appreciation. In addition, we are hoping that the introduction of this program will encourage new individuals to participate in Chromium security. The more people involved in scrutinizing Chromium&#8217;s code and behavior, the more secure our millions of users will be.</p>
<p>Such a concept is not new; we&#8217;d like to give serious kudos to the <a href="http://www.mozilla.org/security/bug-bounty.html">folks at Mozilla</a> for their long-running and successful vulnerability reward program.</p>
<p>Any bug filed through the <a href="http://code.google.com/p/chromium/issues/entry?template=Security%20Bug">Chromium bug tracker</a> (under the template &#8220;Security Bug&#8221;) will qualify for consideration. As this is an experimental program, here are some guidelines in the form of questions and answers:</p>
<p><strong>Q) What reward might I get?</strong></p>
<p>A) As per Mozilla, our base reward for eligible bugs is $500. If the panel finds a particular bug particularly severe or particularly clever, we envisage rewards of $1337. The panel may also decide a single report actually constitutes multiple bugs. As a consumer of the Chromium open source project, Google will be sponsoring the rewards.</p>
<p><strong>Q) What bugs are eligible?</strong></p>
<p>A) Any security bug may be considered. We will typically focus on <a href="http://dev.chromium.org/developers/severity-guidelines">High and Critical impact bugs</a>, but any clever vulnerability at any severity might get a reward. Obviously, your bug won&#8217;t be eligible if you worked on the code or review in the area in question.</p>
<p><strong>Q) How do I find out my bug was eligible?</strong></p>
<p>A) You will see a provisional comment to that effect in the bug entry once we have triaged the bug.</p>
<p><strong>Q) What if someone else also found the same bug?</strong></p>
<p>A) Only the first report of a given issue that we were previously unaware of is eligible. In the event of a duplicate submission, the earliest filed bug report in the <a href="http://bugs.chromium.org/">bug tracker</a> is considered the first report.</p>
<p><strong>Q) What about bugs present in Google Chrome but not the Chromium open source project?</strong></p>
<p>A) Bugs in either build may be eligible. In addition, bugs in plugins that are part of the Chromium project and shipped with Google Chrome by default (e.g. Google Gears) may be eligible. Bugs in third-party plugins and extensions are ineligible.</p>
<p><strong>Q) Will bugs disclosed publicly without giving Chromium developers an opportunity to fix them first still qualify?</strong></p>
<p>A) We encourage responsible disclosure. Note that we believe responsible disclosure is a two-way street; it&#8217;s our job to fix serious bugs within a reasonable time frame.</p>
<p><strong>Q) Do I still qualify if I disclose the problem publicly once fixed?</strong></p>
<p>A) Yes, absolutely. We encourage open collaboration. We will also make sure to credit you in the relevant Google Chrome release notes and nominate you for the <a href="http://www.google.com/corporate/security.html">Google Security &#8220;thank you&#8221; section</a>.</p>
<p><strong>Q) What about bugs in channels other than Stable?</strong></p>
<p>A) We are interested in bugs in the Stable, Beta and Dev channels. It&#8217;s best for everyone to find and fix bugs before they are released to the Stable channel.</p>
<p><strong>Q) What about bugs in third-party components?</strong></p>
<p>A) These bugs may be eligible (e.g. WebKit, libxml, image libraries, compression libraries, etc). Bugs will be ineligible if they are part of the base operating system as opposed to part of the Chromium source tree. In the event of bugs in a component shared with other software, we are happy to take care of responsibly notifying other affected parties.</p>
<p><strong>Q) Who determines whether a given bug is eligible?</strong></p>
<p>A) The panel includes Adam Barth, Chris Evans, Neel Mehta, SkyLined and Michal Zalewski.</p>
<p><strong>Q) Can you keep my identity confidential from the rest of the world?</strong></p>
<p>A) Yes. If selected as the recipient of a reward, and you accept, we will need your contact details in order to pay you. However — at your discretion, we can credit the bug to &#8220;anonymous&#8221; and leave the bug entry private.</p>
<p><strong>Q) No doubt you wanted to make some legal points?</strong></p>
<p>A) Sure. We encourage participation from everyone. However, we are unable to issue rewards to residents of countries where the US has imposed the highest levels of export restriction (e.g. Cuba, Iran, North Korea, Sudan and Syria). We cannot issue rewards to minors, but would be happy to have an adult represent you. This is not a competition, but rather an ongoing reward program. You are responsible for any tax implications depending on your country of residency and citizenship. There may be additional restrictions on your ability to enter depending upon local law.</p>
<p>We look forward very much to issuing our first reward and featuring it on our <a href="http://googlechromereleases.blogspot.com/">releases blog</a>. We&#8217;re happy to take questions at <a href="mailto:security@chromium.org">security@chromium.org</a>. Alternatively, feel free to leave a comment. We will update this blog post with answers to any popular questions.</p>
<p>Finally, if you&#8217;re interested in helping out Chromium security on a more permanent basis, <a href="http://www.google.com/support/jobs/bin/answer.py?answer=156185">we have open positions</a>.</p>
<p>Posted by Chris Evans, Google Chrome Security</p>
<a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save?linkurl=http%3A%2F%2Fwww.agileali.com%2Fmyblog%2F2010%2F01%2F29%2Fgoogle-paying-for-finding-bugs-in-chrome-woot-woot-upto-1377%2F&amp;linkname=Google%20Paying%20for%20finding%20Bugs%20in%20Chrome%20%21%20Woot%20%21%20Woot%20%21%20upto%20%241377%20%21%21%21"><img src="http://www.agileali.com/myblog/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share/Bookmark"/></a>]]></content:encoded>
			<wfw:commentRss>http://www.agileali.com/myblog/2010/01/29/google-paying-for-finding-bugs-in-chrome-woot-woot-upto-1377/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>How to reduce embedded software bugs</title>
		<link>http://www.agileali.com/myblog/2010/01/20/how-to-reduce-embedded-software-bugs/</link>
		<comments>http://www.agileali.com/myblog/2010/01/20/how-to-reduce-embedded-software-bugs/#comments</comments>
		<pubDate>Thu, 21 Jan 2010 01:01:21 +0000</pubDate>
		<dc:creator>Ali</dc:creator>
				<category><![CDATA[Useful if needed]]></category>
		<category><![CDATA[article]]></category>

		<guid isPermaLink="false">http://www.agileali.com/myblog/?p=277</guid>
		<description><![CDATA[By Michael McDougall
Software bugs are notoriously difficult to eradicate. Traditional quality assurance techniques like testing and software inspections (sometimes called code reviews) find serious bugs, but too many bugs slip through.
This is of particular concern for embedded software developers because embedded software works behind the scenes in ways that users take for granted; in some [...]]]></description>
			<content:encoded><![CDATA[<p>By Michael McDougall</p>
<p>Software bugs are notoriously difficult to eradicate. Traditional quality assurance techniques like testing and software inspections (sometimes called code reviews) find serious bugs, but too many bugs slip through.</p>
<p>This is of particular concern for embedded software developers because embedded software works behind the scenes in ways that users take for granted; in some cases a user&#8217;s safety may depend on the correct functioning of the software. Corrective actions—like rebooting or updating the software—are disruptive or even impossible.</p>
<p>The Zune bug where an infinite loop occurred because the device was unprepared for a leap year, is a recent example of a simple embedded software bug that rendered a device useless. In this case, users were deprived of their music for 24 hours. In safety-critical devices like medical devices and spacecraft, similar bugs have led to extensive financial losses, injuries, and even deaths.</p>
<p>Many tools and techniques have been applied to cut the number of bugs in embedded software. Some reduce the odds of a bug being created, while others detect bugs before<span id="more-277"></span> software is shipped.</p>
<p>These tools and techniques are often complementary, and therefore suited to a defense-in-depth approach where they are applied together. Traditional techniques are increasingly supplemented with the use of static analysis tools and the adoption of coding rules.</p>
<p><strong>The role of static analysis</strong></p>
<p>A static analysis tool is like an automatic reviewer for your code. It reads the source code (without executing it) and looks for cases where it will behave in an undesirable manner—for example, dereferencing a null pointer, dividing a number by zero, or overflowing a memory buffer.</p>
<p>Static analysis tools do not depend on sample input—they can infer the software&#8217;s behavior based on just the source code. When a bug is found, the tool reports its location to a software engineer, along with the information needed to diagnose the problem.</p>
<p>Since they do not depend on sample input, static analysis tools can investigate program behavior in corner cases that are not anticipated by testers and human inspectors.</p>
<p>While no tool can find all bugs, <strong>modern static analysis tools</strong> generate valuable results with minimal false positives, even for projects with millions of lines of code.</p>
<p><strong>Coding Rules and The Power of Ten</strong></p>
<p>Software engineers have long argued about issues like code layout and naming conventions. Coding rule efforts like Gerard Holzmann&#8217;s &#8220;Power of Ten&#8221; and the Motor Industry Software Reliability (MISRA) guidelines for C and C++ are more principled, representing a codification of &#8220;best practices&#8221; for embedded software development.</p>
<p>They focus on improving software by making it harder to create (and easier to spot) bugs. These rules forbid constructs that are confusing, complex, or subject to varying interpretations by human readers and compilers.</p>
<p>The resulting code is more portable and predictable. Bugs are forced to sit in plain sight instead of hiding behind intricate constructs, and therefore more likely to spotted by software writers, inspectors, and analysis tools.</p>
<p>Some projects may be put off by the effort required to learn and apply a large number of rules (<em>the <a href="http://en.wikipedia.org/wiki/MISRA_C">MISRA C</a> guidelines include 141 rules</em>). To assuage such concerns, Gerard Holzmann, of JPL&#8217;s Laboratory for Reliable Software, developed the <a href="http://spinroot.com/gerard/pdf/Power_of_Ten.pdf">Power of Ten rules</a>.</p>
<p>These ten rules were chosen to deliver the most bang for the buck: the list is short enough to memorize, but covers many sources of bugs in embedded software. Here&#8217;s a synopsis of the Power of Ten rules (<em>full details are available at <a href="http://spinroot.com/p10">spinroot.com</a></em>):</p>
<p>1. Restrict to simple control flow constructs. Do not use goto statements, setjmp, longjmp, or recursion.</p>
<p>2. Give all loops a fixed upper-bound.<br />
3. Do not use dynamic memory allocation after initialization.<br />
4. Limit functions to no more than 60 lines of text.<br />
5. Use minimally 2 assertions for every function of more than 10 lines.<br />
6. Declare data objects at the smallest possible level of scope.<br />
7. Check the return value of all non-void functions, and check the validity of all function parameters.<br />
8. Limit the use of the preprocessor to file inclusion and simple macros.<br />
9. Limit the use of pointers. Use no more than 1 level of dereferencing per expression.<br />
10. Compile with all warnings enabled, in pedantic mode, and use one or more modern static source code analyzers.</p>
<p><strong>Reinforcing each other</strong></p>
<p>Coding rules and static analysis tools are most effective when they work together. In addition to reporting bugs like null pointer dereferences, static analysis tools can flag violations of coding rules.</p>
<p>This automates much of the work of checking compliance with rules, freeing inspection teams to focus on higher-level concerns such as algorithm design or meeting project requirements.</p>
<p><a href="http://www.grammatech.com/products/codesonar/overview.html">Our tools</a>, for example, come with built-in support for the Power of Ten rules. It is one of several tools used at JPL to check coding rule compliance and to search for bugs in software being developed for upcoming missions.</p>
<p>Coding rules can also make analysis tools more effective. The Power of Ten rules discourage the use of features—such as recursion and indirect functions—that make it more difficult for static analysis tools to accurately infer a program&#8217;s behavior. (<em>Human software inspectors will appreciate the clarity and simplicity of the code too.</em>)</p>
<p><strong>Conclusion</strong></p>
<p>To reduce bugs in embedded software, complement your existing code quality practices by adopting appropriate coding rules and using a modern static analysis tool. The Power of Ten rules are a short but effective set of rules that are easy to adopt. Select a static analysis tool that works with your coding rules so that engineers can see rule violations alongside other problems detected by the tool.</p>
<p><em><strong>Michael McDougall</strong> is a <a href="http://www.grammatech.com/">GrammaTech</a> Senior Scientist. Dr. McDougall received a B.Sc. in Mathematics and Computer Science from McGill University in 1997 and a PhD in Computer Science from the University of Pennsylvania in 2005. His graduate work focused on applying formal reasoning to problems in software engineering and security. Since joining GrammaTech, he has led research projects on the use of software analysis and visualization techniques to achieve high-quality software</em>.</p>
<a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save?linkurl=http%3A%2F%2Fwww.agileali.com%2Fmyblog%2F2010%2F01%2F20%2Fhow-to-reduce-embedded-software-bugs%2F&amp;linkname=How%20to%20reduce%20embedded%20software%20bugs"><img src="http://www.agileali.com/myblog/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share/Bookmark"/></a>]]></content:encoded>
			<wfw:commentRss>http://www.agileali.com/myblog/2010/01/20/how-to-reduce-embedded-software-bugs/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Script to see if Perl is working ! :E !</title>
		<link>http://www.agileali.com/myblog/2009/10/02/script-to-see-if-perl-is-working-e/</link>
		<comments>http://www.agileali.com/myblog/2009/10/02/script-to-see-if-perl-is-working-e/#comments</comments>
		<pubDate>Fri, 02 Oct 2009 23:24:57 +0000</pubDate>
		<dc:creator>Ali</dc:creator>
				<category><![CDATA[Scripts for Testing]]></category>
		<category><![CDATA[Useful if needed]]></category>
		<category><![CDATA[perl]]></category>
		<category><![CDATA[script]]></category>
		<category><![CDATA[test]]></category>

		<guid isPermaLink="false">http://www.agileali.com/myblog/?p=140</guid>
		<description><![CDATA[
There are 2 ways to Test if Perl is working properly on your system.
1. Webserver

welcome.pl:

---------------------
#!/usr/bin/perl 
# 
# =========== 
# helloworld.pl 
# =========== 
# 
print "content-type:text/html\n\n";
print "&#60;html&#62;\n";
print "&#60;head&#62;\n";
print "&#60;title&#62;Hello World&#60;/title&#62;\n";
print "&#60;/head&#62;\n";
print "&#60;body&#62;\n";
print "&#60;b&#62;Hello World!&#60;/b&#62;&#60;br&#62;\n";
print "&#60;/body&#62;\n";
print "&#60;/html&#62;\n";
# 
# 

-----------------------------------------
Save it and run it by http://your webserver/myscript.pl


2. Shell

myscipt2.pl:
-----------------------
#!/usr/bin/perl
print "Hello World.\n";
----------------------

run from shell like 

perl myscript2.pl

it will print a [...]]]></description>
			<content:encoded><![CDATA[<p><img class="aligncenter size-full wp-image-141" title="perl01" src="http://www.agileali.com/myblog/wp-content/uploads/2009/10/perl01.jpg" alt="perl01" /></p>
<p>There are 2 ways to Test if Perl is working properly on your system.<span id="more-140"></span></p>
<p><strong>1. Webserver</strong></p>
<blockquote>
<pre id="codeSnippet394121"><span>welcome</span><span>.</span><span>pl</span><span>:</span><span>

</span><span>---------------------</span><span>
</span><span>#!/usr/bin/perl </span><span>
</span><span># </span><span>
</span><span># =========== </span><span>
</span><span># helloworld.pl </span><span>
</span><span># =========== </span><span>
</span><span># </span><span>
</span><span>print</span><span> </span><span>"content-type:text/html\n\n"</span><span>;</span><span>
</span><span>print</span><span> </span><span>"&lt;html&gt;\n"</span><span>;</span><span>
</span><span>print</span><span> </span><span>"&lt;head&gt;\n"</span><span>;</span><span>
</span><span>print</span><span> </span><span>"&lt;title&gt;Hello World&lt;/title&gt;\n"</span><span>;</span><span>
</span><span>print</span><span> </span><span>"&lt;/head&gt;\n"</span><span>;</span><span>
</span><span>print</span><span> </span><span>"&lt;body&gt;\n"</span><span>;</span><span>
</span><span>print</span><span> </span><span>"&lt;b&gt;Hello World!&lt;/b&gt;&lt;br&gt;\n"</span><span>;</span><span>
</span><span>print</span><span> </span><span>"&lt;/body&gt;\n"</span><span>;</span><span>
</span><span>print</span><span> </span><span>"&lt;/html&gt;\n"</span><span>;</span><span>
</span><span># </span><span>
</span><span># </span><span>

</span><span>-----------------------------------------</span><span>
</span><span>Save</span><span> it </span><span>and</span><span> run it </span><span>by</span><span> http</span><span>:</span><span>//your webserver/myscript.pl</span><span>
</span></pre>
</blockquote>
<p><strong>2. Shell</strong></p>
<blockquote>
<pre id="codeSnippet394121"><span>myscipt2</span><span>.</span><span>pl</span><span>:</span><span>
</span><span>-----------------------</span><span>
</span><span>#!/usr/bin/perl</span><span>
</span><span>print</span><span> </span><span>"Hello World.\n"</span><span>;</span><span>
</span><span>----------------------</span><span>

run </span><span>from</span><span> shell like 

perl myscript2</span><span>.</span><span>pl

it will </span><span>print</span><span> a line saying </span><span>Hello</span><span> </span><span>World</span><span>.</span></pre>
</blockquote>
<a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save?linkurl=http%3A%2F%2Fwww.agileali.com%2Fmyblog%2F2009%2F10%2F02%2Fscript-to-see-if-perl-is-working-e%2F&amp;linkname=Script%20to%20see%20if%20Perl%20is%20working%20%21%20%3AE%20%21"><img src="http://www.agileali.com/myblog/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share/Bookmark"/></a>]]></content:encoded>
			<wfw:commentRss>http://www.agileali.com/myblog/2009/10/02/script-to-see-if-perl-is-working-e/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Configure iPhone with Exchange 2003</title>
		<link>http://www.agileali.com/myblog/2009/09/29/configure-iphone-with-exchange-2003/</link>
		<comments>http://www.agileali.com/myblog/2009/09/29/configure-iphone-with-exchange-2003/#comments</comments>
		<pubDate>Wed, 30 Sep 2009 01:25:42 +0000</pubDate>
		<dc:creator>Ali</dc:creator>
				<category><![CDATA[Darth iPhone]]></category>
		<category><![CDATA[Useful if needed]]></category>
		<category><![CDATA[exchange server]]></category>
		<category><![CDATA[iphone]]></category>

		<guid isPermaLink="false">http://www.agileali.com/myblog/?p=129</guid>
		<description><![CDATA[

Here is my checklist for Activesync so that you can make sure all is well:
You need to make sure that you have Exchange Server 2003 Service Pack 2 Installed &#8211; http://www.microsoft.com/downloads/details.aspx?FamilyID=535BEF85-3096-45F8-AA43-60F1F58B3C40&#38;displaylang=en
Open Up Exchange System Manager &#8211; Start, Programs, Microsoft Exchange, System Manager.  Expand Servers, Right-Click your server and choose properties.  This will display whether you [...]]]></description>
			<content:encoded><![CDATA[<div>
<p><img class="aligncenter size-full wp-image-130" title="iphone-microsoft-exchange-outlook-server" src="http://www.agileali.com/myblog/wp-content/uploads/2009/09/iphone-microsoft-exchange-outlook-server.jpg" alt="iphone-microsoft-exchange-outlook-server" /></p>
<p>Here is my checklist for Activesync so that you can make sure all is well:<span id="more-129"></span></p>
<p>You need to make sure that you have Exchange Server 2003 Service Pack 2 Installed &#8211; <a rel="nofollow" href="http://www.microsoft.com/downloads/details.aspx?FamilyID=535BEF85-3096-45F8-AA43-60F1F58B3C40&amp;displaylang=en" target="_blank">http://www.microsoft.com/downloads/details.aspx?FamilyID=535BEF85-3096-45F8-AA43-60F1F58B3C40&amp;displaylang=en</a></p>
<p>Open Up Exchange System Manager &#8211; Start, Programs, Microsoft Exchange, System Manager.  Expand Servers, Right-Click your server and choose properties.  This will display whether you have SP2 installed or not.</p>
<p>If you have installed SP2, check on <a href="https://testexchangeconnectivity.com/" target="_blank">https://testexchangeconnectivity.com</a> running the Exchange Activesync check.  You may need to tick the Ignore Trust for SSL check box if you have a self-signed certificate as these always fail.</p>
<p>Ensure that port 443 is open and forwarded on your firewall to your Exchange server.</p>
<p>Please check and mirror the settings below &#8211; Open up IIS and expand the default website then Click on the Directory Security Tab:</p>
<p>Exchange Virtual Directory<br />
·         Authentication = Integrated &amp; Basic<br />
·         Default Domain = NETBIOS domain name &#8211; e.g., yourcompany<br />
·         Realm = yourcompany.com<br />
·         IP Address Restrictions = Granted Access<br />
·         Secure Communications = Require SSL NOT ticked</p>
<p>Microsoft-Server-Activesync Virtual Directory<br />
·         Authentication = Basic<br />
·         Default Domain = NETBIOS domain name &#8211; e.g., yourcompany<br />
·         Realm = NETBIOS name<br />
·         IP Address Restrictions = Granted Access<br />
·         Secure Communications = Require SSL NOT ticked</p>
<p>Then issue IISRESET from Start, Run</p>
<p>Make sure that the name on the certificate that you are using matches the FQDN that you are connecting to e.g., mail.microsoft.com.  If it does not match, either re-issue the certificate if you created it yourself, or re-key the certificate from your SSL certificate provider.</p>
<p>Ensure that the IP for the Default Website is set to All Unassigned</p>
<p>Ensure that Forms Based Authentication is NOT turned on under HTTP Virtual Server under Exchange Protocols.  If it is  read <a rel="nofollow" href="http://support.microsoft.com/kb/817379" target="_blank">http://support.microsoft.com/kb/817379</a></p>
<p>ASP.NET should be set to version 1.1 for all virtual directories listed above.</p></div>
<a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save?linkurl=http%3A%2F%2Fwww.agileali.com%2Fmyblog%2F2009%2F09%2F29%2Fconfigure-iphone-with-exchange-2003%2F&amp;linkname=Configure%20iPhone%20with%20Exchange%202003"><img src="http://www.agileali.com/myblog/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share/Bookmark"/></a>]]></content:encoded>
			<wfw:commentRss>http://www.agileali.com/myblog/2009/09/29/configure-iphone-with-exchange-2003/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
