<?xml version="1.0" encoding="UTF-8" standalone="no"?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><rss xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd" version="2.0"><channel><title>Programming Portal</title><description>C,C++,VB.net,ASP.net,Java,Testing,FAQ's,Interview Questions.</description><managingEditor>noreply@blogger.com (Unknown)</managingEditor><pubDate>Wed, 8 Apr 2026 20:23:48 +0530</pubDate><generator>Blogger http://www.blogger.com</generator><openSearch:totalResults xmlns:openSearch="http://a9.com/-/spec/opensearchrss/1.0/">480</openSearch:totalResults><openSearch:startIndex xmlns:openSearch="http://a9.com/-/spec/opensearchrss/1.0/">1</openSearch:startIndex><openSearch:itemsPerPage xmlns:openSearch="http://a9.com/-/spec/opensearchrss/1.0/">25</openSearch:itemsPerPage><link>http://testingcorner.blogspot.com/</link><language>en-us</language><itunes:explicit>no</itunes:explicit><itunes:subtitle>C,C++,VB.net,ASP.net,Java,Testing,FAQ's,Interview Questions.</itunes:subtitle><itunes:owner><itunes:email>noreply@blogger.com</itunes:email></itunes:owner><item><title>Active Server Pages dot net Introduction</title><link>http://testingcorner.blogspot.com/2017/05/active-server-pages-dot-net-introduction.html</link><category>ASP.NET</category><category>Data types in dot net</category><category>OOPS IN DOT NET</category><author>noreply@blogger.com (Unknown)</author><pubDate>Sun, 14 May 2017 21:00:00 +0530</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-36146758167178682.post-7246370142499070921</guid><description>&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;Active server pages at dot net platform are used to create enriched web applications.&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;ASP.NET, the next version of ASP, is a programming framework that is used to create enterprise-class Web applications. The enterprise-class Web applications are accessible on a global basis, leading to efficient information management. However, the advantages that ASP.NET offers make it more than just the next version of ASP.&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;ASP.NET is integrated with Visual Studio .NET, which provides a GUI designer, a rich toolbox, and a fully integrated debugger. This allows the development of applications in a What You See is What You Get (WYSIWYG) manner. Therefore, creating ASP.NET applications is much simpler.&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;Unlike the ASP runtime, ASP.NET uses the Common Language Runtime (CLR) provided by the .NET Framework. The CLR is the .NET runtime, which manages the execution of code. The CLR allows the objects, which are created in different languages, to interact with each other and hence removes the language barrier. CLR thus makes Web application development more efficient.&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;In addition to simplifying the designing of Web applications, the .NET CLR offers many advantages. Some of these advantages are listed as follows.&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="color: rgb(51 , 51 , 255); font-size: large; font-weight: bold;"&gt;Improved performance:&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;The ASP.NET code is a compiled CLR code instead of an interpreted code. The CLR provides just-in-time compilation, native optimization, and caching. Here, it is important to note that compilation is a two-stage process in the .NET Framework. First, the code is compiled into&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;the Microsoft Intermediate Language (MSIL).&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;Then, at the execution time, the MSIL is compiled into native code. Only the portions of the code that are actually needed will be compiled into native code. This is called Just In Time compilation. These features lead to an overall improved performance of ASP.NET applications.&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="color: rgb(51 , 51 , 255); font-size: large; font-weight: bold;"&gt;Flexibility:&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;The entire .NET class library can be accessed by ASP.NET applications. You can use the language that best applies to the type of functionality you want to implement, because ASP.NET is language independent.&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="color: rgb(51 , 51 , 255); font-size: large; font-weight: bold;"&gt;Configuration settings:&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;The application-level configuration settings are stored in an Extensible Markup Language (XML) format. The XML format is a hierarchical text format, which is easy to read and write. This format makes it easy to apply new settings to applications without the aid of any local administration tools.&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="color: rgb(51 , 51 , 255); font-size: large; font-weight: bold;"&gt;Security:&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;ASP.NET applications are secure and use a set of default authorization and authentication schemes. However, you can modify these schemes according to the security needs of an application.&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;In addition to this list of advantages, the ASP.NET framework makes it easy to migrate from ASP applications.&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;In the next post we are going to learn how do we start a asp.net application.&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span id="formatbar_Buttons" style="display: block;"&gt;&lt;span class="" id="formatbar_JustifyFull" onmousedown="CheckFormatting(event);FormatbarButton('richeditorframe', this, 13);ButtonMouseDown(this);" onmouseout="ButtonHoverOff(this);" onmouseover="ButtonHoverOn(this);" onmouseup="" style="display: block;" title="Justify Full"&gt;&lt;span style="font-size: large;"&gt;&lt;img alt="Justify Full" border="0" class="gl_align_full" src="https://www.blogger.com/img/blank.gif" /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size: large;"&gt;Creating an ASP.NET Application can be done in different ways as explained below.&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="color: rgb(51 , 51 , 255); font-size: large; font-weight: bold;"&gt;Use a text editor:&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;In this method, you can write the code in a text editor, such as Notepad, and save the code as an ASPX file. You can save the ASPX file in the directory C:\inetpub\wwwroot. Then, to display the output of the Web page in Internet Explorer, you simply need to type http://localhost/.aspx in the Address box.&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;If the IIS server is installed on some other machine on the network, replace "localhost" with the name of the server. If you save the file in some other directory, you need to add the file to a virtual directory in the Default WebSite directory on the IIS server. You can also create your own virtual directory and add the file to it.&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="color: rgb(51 , 51 , 255); font-size: large; font-weight: bold;"&gt;Use the VS.NET IDE for creating asp.net application:&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;In this method, you use the IDE of Visual Studio .NET to create a Web page in a WYSIWYG manner. Also, when you create a Web application, the application is automatically created on a Web server (IIS server). You do not need to create a separate virtual directory on the IIS server.&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;ASP.NET Web pages consist of HTML text and the code. The HTML text and the code can be separated in two different files. You can write the code in Visual Basic or C# . This separate file is called the code behind file. In this section, you'll create simple Web pages by using VB as well as C#.&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;Before you start creating a Web page, you should be familiar with basic ASP.NET syntax. At the top of the page, you must specify an @ Page directive to define pagespecific attributes, such as language. The syntax is given as follows:&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large; font-weight: bold;"&gt;&amp;lt;%@ Page attribute = value %&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;To specify the language as VB for any code output to be rendered on the page, use the following line of code:&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large; font-weight: bold;"&gt;&amp;lt;%@ Page Language = "VB" %&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;This line indicates that any code in the block,&amp;nbsp;&lt;span style="font-weight: bold;"&gt;&amp;lt;% %&amp;gt;&lt;/span&gt;, on the page is compiled by using VB.&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;To render the output on your page, you can use the Response.Write() method.&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;Creating a Visual Basic Web Application&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;You can create an ASP.NET application using Visual Basic by creating a Visual Basic&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;Web Application project. To do so, complete the following steps:&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;1. Select File ® New ® Project. The New Project dialog box appears.&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;2. Select Visual Basic Projects from the Project Types pane.&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;3. Select ASP.NET Web Application from the Templates pane. The Name box contains a default name of the application. The Location box contains the name of a Web server where the application will be created. However, you can change the default name and location. In this case, the name of the sample application is SampleVB.&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="color: rgb(51 , 51 , 255); font-size: large; font-weight: bold;"&gt;Deploying an ASP.NET Web Application&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;After creating and testing your ASP.NET Web applications, the next step is deployment.&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;Deployment is the process of distributing the finished applications (without the source code) to be installed on other computers.&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;In Visual Studio .NET, the deployment mechanism is the same irrespective of the programming language and tools used to create applications. Here, you'll deploy the application created by using VB. To do so, follow these steps:&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;1. Open the Web application project that you want to deploy. In this case, open the SampleVB project.&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;2. Select File ® Add Project ® New Project to open the Add New Project dialog box.&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;3. From the Project Types pane, select Setup and Deployment Projects.&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;From the Templates pane, select Web Setup Project.&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;4. Change the default name of the project. In this case, change it to "SampleVBDeploy."&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;5. Click OK to complete the process. The project is added in the Solution Explorer window.&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;Related Post&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;a href="http://testingcorner.blogspot.com/2008/02/aspnet-introduction.html" style="background-color: white; color: #888888; font-family: &amp;quot;Trebuchet MS&amp;quot;, Trebuchet, Verdana, sans-serif; font-size: 19.8px; text-decoration-line: none;"&gt;ASP.NET INTRODUCTION&lt;/a&gt;&lt;br style="background-color: white; color: #666666; font-family: &amp;quot;Trebuchet MS&amp;quot;, Trebuchet, Verdana, sans-serif; font-size: 19.8px;" /&gt;&lt;br style="background-color: white; color: #666666; font-family: &amp;quot;Trebuchet MS&amp;quot;, Trebuchet, Verdana, sans-serif; font-size: 19.8px;" /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/03/building-forms-with-web-controls-in_04.html" style="background-color: white; color: #888888; font-family: &amp;quot;Trebuchet MS&amp;quot;, Trebuchet, Verdana, sans-serif; font-size: 19.8px; text-decoration-line: none;"&gt;BUILDING FORMS WITH WEB CONTROLS PART ONE&lt;/a&gt;&lt;br style="background-color: white; color: #666666; font-family: &amp;quot;Trebuchet MS&amp;quot;, Trebuchet, Verdana, sans-serif; font-size: 19.8px;" /&gt;&lt;br style="background-color: white; color: #666666; font-family: &amp;quot;Trebuchet MS&amp;quot;, Trebuchet, Verdana, sans-serif; font-size: 19.8px;" /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/03/building-forms-with-web-controls-in.html" style="background-color: white; color: #888888; font-family: &amp;quot;Trebuchet MS&amp;quot;, Trebuchet, Verdana, sans-serif; font-size: 19.8px; text-decoration-line: none;"&gt;BUILDING FORMS WITH WEB CONTROLS PART TWO&lt;/a&gt;&lt;br style="background-color: white; color: #666666; font-family: &amp;quot;Trebuchet MS&amp;quot;, Trebuchet, Verdana, sans-serif; font-size: 19.8px;" /&gt;&lt;br style="background-color: white; color: #666666; font-family: &amp;quot;Trebuchet MS&amp;quot;, Trebuchet, Verdana, sans-serif; font-size: 19.8px;" /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/03/table-control-and-events-in-aspnet.html" style="background-color: white; color: #888888; font-family: &amp;quot;Trebuchet MS&amp;quot;, Trebuchet, Verdana, sans-serif; font-size: 19.8px; text-decoration-line: none;"&gt;TABLE CONTROL AND EVENTS IN ASP.NET&lt;/a&gt;&lt;br style="background-color: white; color: #666666; font-family: &amp;quot;Trebuchet MS&amp;quot;, Trebuchet, Verdana, sans-serif; font-size: 19.8px;" /&gt;&lt;br style="background-color: white; color: #666666; font-family: &amp;quot;Trebuchet MS&amp;quot;, Trebuchet, Verdana, sans-serif; font-size: 19.8px;" /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/03/jdbc-odbc-bridge-driver.html" style="background-color: white; color: #888888; font-family: &amp;quot;Trebuchet MS&amp;quot;, Trebuchet, Verdana, sans-serif; font-size: 19.8px; text-decoration-line: none;"&gt;JDBC AND ODBC&lt;/a&gt;&lt;br style="background-color: white; color: #666666; font-family: &amp;quot;Trebuchet MS&amp;quot;, Trebuchet, Verdana, sans-serif; font-size: 19.8px;" /&gt;&lt;br style="background-color: white; color: #666666; font-family: &amp;quot;Trebuchet MS&amp;quot;, Trebuchet, Verdana, sans-serif; font-size: 19.8px;" /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/03/web-controls-in-aspnet.html" style="background-color: white; color: #888888; font-family: &amp;quot;Trebuchet MS&amp;quot;, Trebuchet, Verdana, sans-serif; font-size: 19.8px; text-decoration-line: none;"&gt;WEB CONTROLS IN ASP.NET&lt;/a&gt;&lt;/div&gt;
&lt;div class="blogger-post-footer"&gt;&lt;hr /&gt;  &lt;a href="http://www.testingcorner.net"&gt;SOFTWARE TESTING,JAVA,MICROSOFT DOT NET,C PROGRAMMING AT ONE PLACE&lt;/a&gt;&lt;/div&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Programming and Data Types in C programming</title><link>http://testingcorner.blogspot.com/2009/07/programming-and-data-types-in-c.html</link><category>C</category><author>noreply@blogger.com (Unknown)</author><pubDate>Tue, 28 Jul 2009 12:36:00 +0530</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-36146758167178682.post-2191899092150013334</guid><description>&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: large;"&gt;In C  programming we have &lt;a href="http://testingcorner.blogspot.com/2009/07/programming-and-data-types.html"&gt;&lt;span style="color: rgb(51 , 102 , 255); font-weight: bold;"&gt;different kinds of data types in C language&lt;/span&gt;&lt;/a&gt; and this is in continuation with previous discussion.&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style="font-size: large;"&gt;&lt;span style="color: rgb(51 , 102 , 255); font-weight: bold;"&gt;Integers  signed and unsigned&lt;/span&gt;:&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style="font-size: large;"&gt;Sample code for syntax for unsigned inter is :&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style="font-size: large; font-weight: bold;"&gt;nsigned int num_students ;&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style="font-size: large;"&gt;With this  declaration, the range of permissible integer values (for a 16-bit OS) will shift from the range -32768 to +32767 to the range 0 to 65535. Thus, declaring an integer as unsigned almost doubles the size of the largest possible value that it can otherwise take.&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style="font-size: large;"&gt;It happens because on declaring the integer as unsigned, the left-most bit is now free and is not used to store the sign of the number.&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style="font-size: large;"&gt;Unsigned integer still occupies two bytes.&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style="font-size: large;"&gt;It can be declared as :&lt;span style="font-weight: bold;"&gt; unsigned int i ; unsigned i ;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style="font-size: large;"&gt;There also exists a short unsigned int and a long unsigned int. By default a short int is a signed short int and a long int is a signed long int in C programming.&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style="color: rgb(51 , 102 , 255); font-size: large; font-weight: bold;"&gt;Chars, signed and unsigned&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style="font-size: large;"&gt;Signed and unsigned chars, both occupying one byte each, but having different ranges.  Consider the statement&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style="font-size: large; font-weight: bold;"&gt;char ch = 'A' ;&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style="font-size: large;"&gt;Here what gets stored in ch is the binary equivalent of the ASCII value of ‘A’ (i.e. binary of 65). And if 65’s binary can be stored, then -54’s binary can also be stored (in a signed char).&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style="font-size: large;"&gt;A signed char is same as an ordinary char and has a range from -128 to +127; whereas, an unsigned char has a range from 0 to 255.&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style="color: rgb(51 , 102 , 255); font-size: large; font-weight: bold;"&gt;Floats and Doubles &lt;/span&gt;&lt;br /&gt;
&lt;span style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style="font-size: large;"&gt;A float occupies four bytes in memory and can range from -3.4e38 to +3.4e38. If this is insufficient then C offers a double data type that occupies 8 bytes in memory and has a range from -1.7e308 to +1.7e308.&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style="font-size: large;"&gt;A variable of type double can be declared as,&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style="font-size: large; font-weight: bold;"&gt;double a, population ;&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style="font-size: large;"&gt;If the situation demands usage of real numbers that lie even beyond the range offered by double data type, then there exists a long double that can range from -1.7e4932 to +1.7e4932.&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style="font-size: large;"&gt;A long double occupies 10 bytes in memory in c programming and it is used rarely.&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style="font-size: large;"&gt;Related Posts&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style="color: rgb(102 , 0 , 0); font-size: large; font-weight: bold;"&gt;&lt;a href="http://abapprogramming.blogspot.in//2008/08/abap-bdc-complete-series.html" style="color: #3333ff;"&gt;BDC&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style="font-size: large;"&gt;&lt;span style="color: rgb(51 , 51 , 255);"&gt;&lt;a href="http://abapprogramming.blogspot.in//2008/08/object-oriented-sap-abap-complete.html"&gt;&lt;span style="color: rgb(102 , 0 , 0); font-weight: bold;"&gt;OOPS ABAP&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="color: rgb(102 , 0 , 0); font-weight: bold;"&gt;&lt;a href="http://abapprogramming.blogspot.in//2008/08/ale-complete-series.html" style="color: #3333ff;"&gt;ALE&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style="font-size: large;"&gt;&lt;a href="http://abapprogramming.blogspot.in//2008/08/ale-idocs-complete.html" style="color: #3333ff;"&gt;&lt;span style="color: rgb(102 , 0 , 0); font-weight: bold;"&gt;&lt;/span&gt;&lt;/a&gt;&lt;a href="http://testingcorner.blogspot.com/2008/09/programming-with-c-introduction.html"&gt;INTRODUCTION TO C PROGRAMMING&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;a href="http://testingcorner.blogspot.com/2009/03/programming-c-language-introduction.html"&gt;&lt;span style="font-size: large;"&gt;Programming with C an introduction part two&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://testingcorner.blogspot.com/2009/07/programming-and-data-types.html"&gt;&lt;span style="font-size: large;"&gt;&lt;br /&gt;Data types for C programming&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;
&lt;span style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;a href="http://testingcorner.blogspot.com/2008/09/c-programming-character-set.html"&gt;&lt;span style="font-size: large;"&gt;C PROGRAMMING CHARACTER SET&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;
&lt;span style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;a href="http://testingcorner.blogspot.com/2008/09/constants-in-c-programming.html"&gt;&lt;span style="font-size: large;"&gt;CONSTANTS IN C PROGRAMMING&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;
&lt;span style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;a href="http://testingcorner.blogspot.com/2008/09/programming-c-variables.html"&gt;&lt;span style="font-size: large;"&gt;PROGRAMMING C VARIABLES&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;
&lt;span style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;a href="http://testingcorner.blogspot.com/2008/10/c-program-instructions.html"&gt;&lt;span style="font-size: large;"&gt;C PROGRAM INSTRUCTIONS&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;
&lt;span style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;a href="http://testingcorner.blogspot.com/2008/10/c-program-compilation-and-execution.html"&gt;&lt;span style="font-size: large;"&gt;COMPILATION AND EXECUTION OF C PROGRAM&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;
&lt;span style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="blogger-post-footer"&gt;&lt;hr /&gt;  &lt;a href="http://www.testingcorner.net"&gt;SOFTWARE TESTING,JAVA,MICROSOFT DOT NET,C PROGRAMMING AT ONE PLACE&lt;/a&gt;&lt;/div&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">2</thr:total></item><item><title>Programming and Data Types</title><link>http://testingcorner.blogspot.com/2009/07/programming-and-data-types.html</link><category>C</category><category>Data types in dot net</category><author>noreply@blogger.com (Unknown)</author><pubDate>Sun, 26 Jul 2009 20:23:00 +0530</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-36146758167178682.post-7731714704474373601</guid><description>&lt;div style="text-align: justify;"&gt;Primary data types  of programming could be of three varieties—char, int, and float. We can derive many data types from these three types.&lt;br /&gt;&lt;br /&gt;A char could be an unsigned char or a signed char. Or an int could be a short int or a long int.&lt;br /&gt;&lt;br /&gt;Integers, long and short We had seen earlier that the range of an Integer constant depends upon the compiler.&lt;br /&gt;&lt;br /&gt;For a 16-bit compiler like Turbo C or Turbo C++ the range is –32768 to 32767.&lt;br /&gt;For a 32-bit compiler the range would be –2147483648 to +2147483647.&lt;br /&gt;&lt;br /&gt;16-bit compiler means that when it compiles a C program it generates machine language code that is targeted towards working on a 16-bit microprocessor like Intel 8086/8088.&lt;br /&gt;&lt;br /&gt;A 32-bit compiler like VC++ generates machine language code that is targeted towards a 32-bit microprocessor like Intel Pentium.&lt;br /&gt;A  program compiled using Turbo C would not work on 32-bit processor. It would run successfully but at that time the 32-bit processor would work as if it were a 16-bit processor.&lt;br /&gt;&lt;br /&gt;This happens because a 32-bit processor provides support for programs compiled using 16-bit compilers. If this backward compatibility support is not provided the 16-bit program would not run on it.&lt;br /&gt;&lt;br /&gt;Out of the two or four bytes used to store an integer, the highest bit (16th/32nd bit) is used to store the sign of the integer. This bit is 1 if the number is negative, and 0 if the number is positive.&lt;br /&gt;&lt;br /&gt;C offers a variation of the integer data type that provides what are called short and long integer values.&lt;br /&gt;&lt;br /&gt;Short and long integers would usually occupy two and four bytes respectively. Each compiler can decide appropriate sizes depending on the operating system and hardware for which it is being written, subject to the following rules:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;shorts are at least 2 bytes big &lt;/li&gt;&lt;li&gt;longs are at least 4 bytes big&lt;/li&gt;&lt;li&gt;shorts are never bigger than ints&lt;/li&gt;&lt;li&gt;ints are never bigger than longs&lt;/li&gt;&lt;/ul&gt;long variables which hold long integers are declared using the keyword long.&lt;br /&gt;&lt;br /&gt;Long integers cause the program to run a bit slower, but the range of values that we can use is expanded tremendously. The value of a long integer typically can vary from -2147483648 to +2147483647.&lt;br /&gt;&lt;br /&gt;Integers that need less space in memory and thus help speed up program execution.&lt;br /&gt;&lt;br /&gt;Short integer variables are declared as,&lt;br /&gt;&lt;br /&gt;short int j ;&lt;br /&gt;short int height ;&lt;br /&gt;&lt;br /&gt;C allows the abbreviation of short int to short and of long int to long. So the declarations made above can be written as,&lt;br /&gt;&lt;br /&gt;long i ;&lt;br /&gt;long abc ;&lt;br /&gt;short j ;&lt;br /&gt;short height ;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(0, 102, 0);"&gt;OTHER PROGRAMMING COURSES:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/09/programming-with-c-introduction.html"&gt;INTRODUCTION TO C PROGRAMMING&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2009/03/programming-c-language-introduction.html"&gt;Programming with C an introduction part two&lt;/a&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2009/07/programming-and-data-types.html"&gt;&lt;br /&gt;Data types for C programming&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/09/c-programming-character-set.html"&gt;C PROGRAMMING CHARACTER SET&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/09/constants-in-c-programming.html"&gt;CONSTANTS IN C PROGRAMMING&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/09/programming-c-variables.html"&gt;PROGRAMMING C VARIABLES&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/10/c-program-instructions.html"&gt;C PROGRAM INSTRUCTIONS&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/10/c-program-compilation-and-execution.html"&gt;COMPILATION AND EXECUTION OF C PROGRAM&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/09/c-programming-rules.html"&gt;C PROGRAMMING RULES PART  ONE&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/10/c-programming-rules-part-two.html"&gt;C PROGRAMMING RULES PART  TWO&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/10/c-program-compilation-and-execution.html"&gt;COMPILATION AND EXECUTION OF C PROGRAM&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/10/c-program-instructions.html"&gt;INSTRUCTIONS TO WRITE C PROGRAM &lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/10/c-program-instructions.html"&gt;ARITHMETIC INSTRUCTIONS TO WRITE C PROGRAM &lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/10/c-program-conversion-of-constants.html"&gt;CONVERSION OF CONSTANTS IN C PROGRAM&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/10/priority-of-arthematic-operations-in-c.html"&gt;PRIORITY OF AR THEMATIC OPERATIONS IN C&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/c-language-operators-associativity.html"&gt;OPERATORS ASSOCIATIVITY IN C&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/if-statement-in-c-programming.html"&gt;IF STATEMENT&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/mulitple-statements-with-in-if.html"&gt;MULTIPLE STATEMENTS IN IF&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/if-else-statements.html"&gt;IF AND ELSE&lt;/a&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/nested-if-elses-in-c-programming.html"&gt;&lt;br /&gt;NESTED IF AND ELSE&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/break-statement-in-c-programming.html"&gt;BREAK&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/12/continue-and-do-while-in-c-language.html"&gt;CONTINUE AND DO WHILE IN C LANGUAGE&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2009/03/switch-in-c-programming.html"&gt;SWITCH IN C PROGRAMMING&lt;/a&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2009/03/function-in-c-programming.html"&gt;&lt;br /&gt;FUNCTIONS IN C PROGRAMMING&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2009/04/programming-functions-in-c-part-two.html"&gt;Functions and usage in C part two &lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2009/05/programming-c-functions-coding.html"&gt;Coding in C functions&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;hr /&gt;  &lt;a href="http://www.testingcorner.net"&gt;SOFTWARE TESTING,JAVA,MICROSOFT DOT NET,C PROGRAMMING AT ONE PLACE&lt;/a&gt;&lt;/div&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Programming C Functions Coding</title><link>http://testingcorner.blogspot.com/2009/05/programming-c-functions-coding.html</link><category>C</category><author>noreply@blogger.com (Unknown)</author><pubDate>Sun, 3 May 2009 11:52:00 +0530</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-36146758167178682.post-7229997165931192469</guid><description>&lt;div style="text-align: justify;"&gt;Programming with C language and using &lt;a href="http://testingcorner.blogspot.com/2009/04/programming-functions-in-c-part-two.html"&gt;Functions&lt;/a&gt; is done in our &lt;a href="http://testingcorner.blogspot.com/2009/03/function-in-c-programming.html"&gt;previous discussions&lt;/a&gt;. Now we are going to deal with advanced concepts of using functions in c programming.&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(51, 102, 255);"&gt;Function Declaration and Prototypes&lt;/span&gt; :&lt;br /&gt;&lt;br /&gt;Any C function by default returns an int value. Whenever a call is made to a function, the compiler assumes that this function would return a value of the type int. If  a function should return a value other than an int, then it is necessary to explicitly mention so in the calling function as well as in the called function.&lt;br /&gt;&lt;br /&gt;The following program segment illustrates how to make square( ) capable of returning a float value.&lt;br /&gt;&lt;br /&gt;main( )&lt;br /&gt;{&lt;br /&gt;float square ( float ) ;&lt;br /&gt;float a, b ;&lt;br /&gt;printf ( "\nEnter any number " ) ;&lt;br /&gt;scanf ( "%f", &amp;amp;a ) ;&lt;br /&gt;b = square ( a ) ;&lt;br /&gt;printf ( "\nSquare of %f is %f", a, b ) ;&lt;br /&gt;}&lt;br /&gt;float square ( float x )&lt;br /&gt;{&lt;br /&gt;float y ;&lt;br /&gt;y = x * x ;&lt;br /&gt;return ( y ) ;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;And here is the output&lt;br /&gt;&lt;br /&gt;Enter any number 1.5 Square of 1.5 is 2.250000&lt;br /&gt;Enter any number 2.5 Square of 2.5 is 6.250000&lt;br /&gt;&lt;br /&gt;The function square( ) must be declared in main( ) as float square ( float ) ;&lt;br /&gt;&lt;br /&gt;This statement is often called the prototype declaration of the square( ) function. What it means is square( ) is a function that receives a float and returns a float.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(51, 102, 255);"&gt;Call by Value and Call by Reference&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Whenever a function is called  and passed something to it we have always passed the ‘values’ of variables to the called function. Such function calls are called ‘calls by value’. On calling a function we are passing values of variables to it.&lt;br /&gt;&lt;br /&gt;Call by reference is done with pointers in C programming.&lt;br /&gt;&lt;br /&gt;Pointer Notation Consider the declaration, int i = 3 ;&lt;br /&gt;&lt;br /&gt;This declaration tells the C compiler to&lt;br /&gt;&lt;br /&gt;1. Reserve space in memory to hold the integer value.&lt;br /&gt;2.Associate the name i with this memory location.&lt;br /&gt;3. Store the value 3 at this location.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgx2zfdYuazu61-waqRUCRPQS32FGlvSPfqtNxtLErRWSV7yQaH2aCt2GNTSTAL9Izd1xQJbYIiIP6k_GXijTnnYyxMa2LPoBf9fTc4N2sMZmpLb1imqDHQqMLezwOlbiooxC1UJ_thTg/s1600-h/c+programing+and+pointers.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 172px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgx2zfdYuazu61-waqRUCRPQS32FGlvSPfqtNxtLErRWSV7yQaH2aCt2GNTSTAL9Izd1xQJbYIiIP6k_GXijTnnYyxMa2LPoBf9fTc4N2sMZmpLb1imqDHQqMLezwOlbiooxC1UJ_thTg/s400/c+programing+and+pointers.png" alt="" id="BLOGGER_PHOTO_ID_5331483243683385874" border="0" /&gt;&lt;/a&gt;The computer has selected memory location 65524 as the place to store the value 3. The location number 65524 is not a number to be relied upon, because some other time the computer may choose a different location for storing the value 3. The important point is, i’s address in memory is a number.&lt;br /&gt;&lt;br /&gt;TO  print this address number&lt;br /&gt;&lt;br /&gt;main( )&lt;br /&gt;{&lt;br /&gt;int i = 3 ;&lt;br /&gt;printf ( "\nAddress of i = %u", &amp;amp;i ) ;&lt;br /&gt;printf ( "\nValue of i = %d", i ) ;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;The output of the above program would be: Address of i = 65524 Value of i = 3&lt;br /&gt;&lt;br /&gt;‘&amp;amp;’ used in this statement is C’s ‘address of’ operator. The expression &amp;amp;i returns the address of the variable i, which in this case happens to be 65524. Since 65524 represents an address, there is no question of a sign being associated with it.&lt;br /&gt;&lt;br /&gt;Hence it is printed out using %u, which is a format specifier for printing an unsigned integer.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(0, 102, 0);"&gt;OTHER PROGRAMMING COURSES:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a style="color: rgb(51, 102, 255);" href="http://testingcorner.blogspot.com/2008/09/programming-with-c-complete-course.html"&gt;&lt;span style="font-weight: bold;"&gt;Programming with C&lt;/span&gt;&lt;/a&gt;&lt;span style="color: rgb(51, 102, 255);"&gt; and&lt;/span&gt;&lt;a style="color: rgb(51, 102, 255);" href="http://testingcorner.blogspot.com/2008/08/c-sharp-complete-complete-course-part.html"&gt;&lt;span style="font-weight: bold;"&gt; C Sharp&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/09/programming-with-c-introduction.html"&gt;INTRODUCTION TO C PROGRAMMING&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2009/03/programming-c-language-introduction.html"&gt;Programming with C an introduction part two&lt;/a&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2009/07/programming-and-data-types.html"&gt;&lt;br /&gt;Data types for C programming&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/09/c-programming-character-set.html"&gt;C PROGRAMMING CHARACTER SET&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/09/constants-in-c-programming.html"&gt;CONSTANTS IN C PROGRAMMING&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/09/programming-c-variables.html"&gt;PROGRAMMING C VARIABLES&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/10/c-program-instructions.html"&gt;C PROGRAM INSTRUCTIONS&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/10/c-program-compilation-and-execution.html"&gt;COMPILATION AND EXECUTION OF C PROGRAM&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/09/c-programming-rules.html"&gt;C PROGRAMMING RULES PART  ONE&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/10/c-programming-rules-part-two.html"&gt;C PROGRAMMING RULES PART  TWO&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/10/c-program-compilation-and-execution.html"&gt;COMPILATION AND EXECUTION OF C PROGRAM&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/10/c-program-instructions.html"&gt;INSTRUCTIONS TO WRITE C PROGRAM &lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/10/c-program-instructions.html"&gt;ARITHMETIC INSTRUCTIONS TO WRITE C PROGRAM &lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/10/c-program-conversion-of-constants.html"&gt;CONVERSION OF CONSTANTS IN C PROGRAM&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/10/priority-of-arthematic-operations-in-c.html"&gt;PRIORITY OF AR THEMATIC OPERATIONS IN C&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/c-language-operators-associativity.html"&gt;OPERATORS ASSOCIATIVITY IN C&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/if-statement-in-c-programming.html"&gt;IF STATEMENT&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/mulitple-statements-with-in-if.html"&gt;MULTIPLE STATEMENTS IN IF&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/if-else-statements.html"&gt;IF AND ELSE&lt;/a&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/nested-if-elses-in-c-programming.html"&gt;&lt;br /&gt;NESTED IF AND ELSE&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/break-statement-in-c-programming.html"&gt;BREAK&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/12/continue-and-do-while-in-c-language.html"&gt;CONTINUE AND DO WHILE IN C LANGUAGE&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2009/03/switch-in-c-programming.html"&gt;SWITCH IN C PROGRAMMING&lt;/a&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2009/03/function-in-c-programming.html"&gt;&lt;br /&gt;FUNCTIONS IN C PROGRAMMING&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2009/04/programming-functions-in-c-part-two.html"&gt;Functions and usage in C part two &lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2009/05/programming-c-functions-coding.html"&gt;Coding in C functions&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;hr /&gt;  &lt;a href="http://www.testingcorner.net"&gt;SOFTWARE TESTING,JAVA,MICROSOFT DOT NET,C PROGRAMMING AT ONE PLACE&lt;/a&gt;&lt;/div&gt;</description><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="72" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgx2zfdYuazu61-waqRUCRPQS32FGlvSPfqtNxtLErRWSV7yQaH2aCt2GNTSTAL9Izd1xQJbYIiIP6k_GXijTnnYyxMa2LPoBf9fTc4N2sMZmpLb1imqDHQqMLezwOlbiooxC1UJ_thTg/s72-c/c+programing+and+pointers.png" width="72"/><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Programming Functions in C part two</title><link>http://testingcorner.blogspot.com/2009/04/programming-functions-in-c-part-two.html</link><category>C</category><author>noreply@blogger.com (Unknown)</author><pubDate>Mon, 13 Apr 2009 22:22:00 +0530</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-36146758167178682.post-2735517149808502218</guid><description>&lt;div style="text-align: justify;"&gt;Previously we had discussed regarding the &lt;a href="http://testingcorner.blogspot.com/2009/03/function-in-c-programming.html"&gt;&lt;span style="font-weight: bold; color: rgb(51, 102, 255);"&gt;usage functions in C programming&lt;/span&gt;&lt;/a&gt; and this is a continuation for it.&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2009/03/function-in-c-programming.html"&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(51, 102, 255);"&gt;Use of Functions in C programming&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Writing functions avoids rewriting the same code over and over.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(51, 102, 255);"&gt;Explanation :&lt;/span&gt; Suppose we have a section of code in your program that calculates area of a triangle. If later in the program we want to calculate the area of a different triangle, we nee d not write the entire code once again and we would prefer to jump to a ‘section of code’ that calculates area and then jump back to the place from where you left off. This section of code is nothing but a function.&lt;br /&gt;&lt;br /&gt;Using functions it becomes easier to write programs and keep track of what they are doing. If the operation of a program can be divided into separate activities, and each activity placed in a different function, then each could be written and checked more or less independently. Separating the code into modular functions also makes the program easier to design and understand.&lt;br /&gt;&lt;br /&gt;We have to break a program into small units and write functions for each of  isolated sub divisions. We can even write functions that are called only once and  these functions perform some logically isolated task.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(51, 102, 255);"&gt;How to Pass Values between Functions&lt;/span&gt; ?&lt;br /&gt;&lt;br /&gt;The mechanism used to convey information to the function is the ‘argument’. We use  the arguments in the printf( ) and scanf( ) functions; the format string and the list of variables used inside the parentheses in these functions are arguments. The arguments are sometimes also called ‘parameters’.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(51, 102, 255);"&gt;Sending and receiving values between functions&lt;/span&gt; &lt;span style="font-weight: bold; color: rgb(51, 102, 255);"&gt;Example&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Consider the following program where, in main( ) we receive the values of a, b and c through the keyboard and then output the sum of a, b and c.&lt;br /&gt;&lt;br /&gt;The calculation of sum is done in a different function called calsum( ). If sum is to be calculated in calsum( ) and values of a, b and c are received in main( ), then we must pass on these values to calsum( ), and once calsum( ) calculates the sum we must return it from calsum( ) back to main( ).&lt;br /&gt;&lt;br /&gt;main( )&lt;br /&gt;&lt;br /&gt;{&lt;br /&gt;&lt;br /&gt;int a, b, c, sum ;&lt;br /&gt;&lt;br /&gt;printf ( "\nEnter any three numbers " ) ;&lt;br /&gt;&lt;br /&gt;scanf ( "%d %d %d", &amp;amp;a, &amp;amp;b, &amp;amp;c ) ;&lt;br /&gt;&lt;br /&gt;sum = calsum ( a, b, c ) ;&lt;br /&gt;&lt;br /&gt;printf ( "\nSum = %d", sum ) ;&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;calsum ( x, y, z )&lt;br /&gt;&lt;br /&gt;int x, y, z ;&lt;br /&gt;&lt;br /&gt;{&lt;br /&gt;&lt;br /&gt;int d ;&lt;br /&gt;&lt;br /&gt;d = x + y + z ;&lt;br /&gt;&lt;br /&gt;return ( d ) ;&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;And here is the output... Enter any three numbers 10 20 30 Sum = 60&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(51, 102, 255);"&gt;Explanation&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;1.In this program, from the function main( ) the values of a, b and c are passed on to the function calsum( ), by making a call to the function calsum( ) and mentioning a, b and c in the parentheses: sum = calsum ( a, b, c ) ; In the calsum( ) function these values get collected in three variables x, y and z:&lt;br /&gt;&lt;br /&gt;calsum ( x, y, z )&lt;br /&gt;&lt;br /&gt;int x, y, z ;&lt;br /&gt;&lt;br /&gt;2.The variables a, b and c are called ‘actual arguments’, whereas the variables x, y and z are called ‘formal arguments’. Any number of arguments can be passed to a function being called.  The type, order and number of the actual and formal arguments must always be same.&lt;br /&gt;&lt;br /&gt;3.The return statement serves two purposes:&lt;br /&gt;1. On executing the return statement it immediately transfers the control back to the calling program.&lt;br /&gt;2. It returns the value present in the parentheses after return, to th3e calling program.&lt;br /&gt;&lt;br /&gt;4.There is no restriction on the number of return statements that may be present in a function. Also, the return statement need not always be present at the end of the called function.&lt;br /&gt;&lt;br /&gt;5.Whenever the control returns from a function some value is definitely returned. If a meaningful value is returned then it should be accepted in the calling program by equating the called function to some variable.&lt;br /&gt;&lt;br /&gt;6.If we want that a called function should not return any value,  we must mention so by using the keyword void .&lt;br /&gt;&lt;br /&gt;void display( )&lt;br /&gt;{&lt;br /&gt;printf ( "\nHeads I win..." ) ;&lt;br /&gt;printf ( "\nTails you lose" ) ;&lt;br /&gt;&lt;br /&gt;7.A function can return only one value at a time.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(0, 102, 0);"&gt;OTHER PROGRAMMING COURSES:&lt;/span&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/09/programming-with-c-introduction.html"&gt;INTRODUCTION TO C PROGRAMMING&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2009/03/programming-c-language-introduction.html"&gt;Programming with C an introduction part two&lt;/a&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2009/07/programming-and-data-types.html"&gt;&lt;br /&gt;Data types for C programming&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/09/c-programming-character-set.html"&gt;C PROGRAMMING CHARACTER SET&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/09/constants-in-c-programming.html"&gt;CONSTANTS IN C PROGRAMMING&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/09/programming-c-variables.html"&gt;PROGRAMMING C VARIABLES&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/10/c-program-instructions.html"&gt;C PROGRAM INSTRUCTIONS&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/10/c-program-compilation-and-execution.html"&gt;COMPILATION AND EXECUTION OF C PROGRAM&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/09/c-programming-rules.html"&gt;C PROGRAMMING RULES PART  ONE&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/10/c-programming-rules-part-two.html"&gt;C PROGRAMMING RULES PART  TWO&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/10/c-program-compilation-and-execution.html"&gt;COMPILATION AND EXECUTION OF C PROGRAM&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/10/c-program-instructions.html"&gt;INSTRUCTIONS TO WRITE C PROGRAM &lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/10/c-program-instructions.html"&gt;ARITHMETIC INSTRUCTIONS TO WRITE C PROGRAM &lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/10/c-program-conversion-of-constants.html"&gt;CONVERSION OF CONSTANTS IN C PROGRAM&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/10/priority-of-arthematic-operations-in-c.html"&gt;PRIORITY OF AR THEMATIC OPERATIONS IN C&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/c-language-operators-associativity.html"&gt;OPERATORS ASSOCIATIVITY IN C&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/if-statement-in-c-programming.html"&gt;IF STATEMENT&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/mulitple-statements-with-in-if.html"&gt;MULTIPLE STATEMENTS IN IF&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/if-else-statements.html"&gt;IF AND ELSE&lt;/a&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/nested-if-elses-in-c-programming.html"&gt;&lt;br /&gt;NESTED IF AND ELSE&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/break-statement-in-c-programming.html"&gt;BREAK&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/12/continue-and-do-while-in-c-language.html"&gt;CONTINUE AND DO WHILE IN C LANGUAGE&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2009/03/switch-in-c-programming.html"&gt;SWITCH IN C PROGRAMMING&lt;/a&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2009/03/function-in-c-programming.html"&gt;&lt;br /&gt;FUNCTIONS IN C PROGRAMMING&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2009/04/programming-functions-in-c-part-two.html"&gt;Functions and usage in C part two &lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2009/05/programming-c-functions-coding.html"&gt;Coding in C functions&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;hr /&gt;  &lt;a href="http://www.testingcorner.net"&gt;SOFTWARE TESTING,JAVA,MICROSOFT DOT NET,C PROGRAMMING AT ONE PLACE&lt;/a&gt;&lt;/div&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Software Testing Process Overview</title><link>http://testingcorner.blogspot.com/2009/04/software-testing-process-overview.html</link><category>TEST PROCESS</category><author>noreply@blogger.com (Unknown)</author><pubDate>Sat, 11 Apr 2009 14:30:00 +0530</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-36146758167178682.post-172124026259473784</guid><description>&lt;p style="text-align: justify;" class="docText"&gt;The testing and development processes are in a feedback loop. The testing process  feeds identified failures back into the development process.&lt;/p&gt;&lt;p style="text-align: justify;" class="docText"&gt; Failure  reports provide a set of symptoms that a developer uses to identify the exact  location of a fault or error. The development process feeds new and revised  designs and implementations into the testing process.&lt;br /&gt;&lt;/p&gt;&lt;p style="text-align: justify;" class="docText"&gt;Testing of development  products will help identify defective test cases when testers determine that  "failures" result from problems with test cases themselves or the drivers that  execute them, and not the software under test.&lt;/p&gt;&lt;p style="text-align: justify;" class="docText"&gt;The form and content of development products affect the testing process. When  developers select methods and tools, they establish constraints on the testing  process.  The testing perspective must be considered, preferably by the  presence of professional testers, when development methods and tools are  selected.&lt;/p&gt;&lt;p style="text-align: justify;" class="docText"&gt;The form and quality of a requirements specification also  affects the process. Product requirements comprise the source of test cases in  system and acceptance testing. System testers should participate in the  gathering and validation of the requirements in order to have a sufficient  understanding of them to assess risks and testability.&lt;/p&gt;&lt;p style="text-align: justify;" class="docText"&gt;  &lt;span style="font-weight: bold; color: rgb(51, 102, 255);"&gt;Three-step  approach for each type of testing performed on a project.&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;&lt;a name="ch03pro01"&gt;&lt;/a&gt;&lt;span style="font-weight: bold;"&gt; &lt;ol class="docList"&gt;&lt;li&gt;&lt;span style="font-weight: normal;" value="1"&gt; &lt;p class="docText"&gt;&lt;span class="docEmphasis"&gt;Analysis&lt;/span&gt;:The product to be  tested is examined to identify any special features that must receive particular  attention and to determine the test cases that should be constructed. We will  present a number of analysis techniques.&lt;br /&gt;&lt;/p&gt;&lt;/span&gt; &lt;/li&gt;&lt;li&gt;&lt;span style="font-weight: normal;" value="2"&gt; &lt;p class="docText"&gt;&lt;span class="docEmphasis"&gt;Construction:&lt;/span&gt; In this phase the  artifacts that are needed for testing are created. The test cases identified  during analysis are translated into programming languages and scripting  languages, or they are entered in a tool-specific language.&lt;br /&gt;&lt;/p&gt;&lt;/span&gt; &lt;/li&gt;&lt;li&gt;&lt;span style="font-weight: normal;" value="3"&gt; &lt;p class="docText"&gt;&lt;span class="docEmphasis"&gt;Execution and Evaluation:&lt;/span&gt; This  is the most visible and often the only recognized part of the test effort;  however, it is also typically the quickest part of the test effort. The test  cases that were identified during analysis and then constructed are executed.  The results are examined to determine whether the software passed the test suite  or failed it.&lt;/p&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/span&gt;&lt;span style="font-weight: bold; color: rgb(51, 102, 255);"&gt;Test Cases and Test Suites&lt;/span&gt; &lt;p class="docText"&gt;The basic component of testing is a test case. T&lt;span class="docEmphStrong"&gt;est case&lt;/span&gt; is a pair &lt;span class="docEmphasis"&gt;(input, expected result),&lt;/span&gt; in which &lt;span class="docEmphasis"&gt;input&lt;/span&gt; is a description of an input to the software  under test and &lt;span class="docEmphasis"&gt;expected result&lt;/span&gt; is a description  of the output that the software should exhibit for the associated input.&lt;br /&gt;&lt;/p&gt;&lt;p class="docText"&gt;Inputs  and expected results are not necessarily simple data values, such as strings or  integer values, but they can be  complex.&lt;br /&gt;&lt;/p&gt;&lt;p class="docText"&gt;Inputs often incorporate  system state information as well as user commands and data values to be  processed. &lt;span class="docEmphasis"&gt;Expected result&lt;/span&gt; includes not only  perceivable things, such as printed reports, audible sounds, or changes in a  display screen, but changes to the software system itself.&lt;/p&gt;&lt;p class="docText"&gt; A &lt;span class="docEmphStrong"&gt;test case execution&lt;/span&gt; is a  running of the software that provides the inputs specified in the test case and  observes the results and compares them to those specified by the test case. If  the actual result varies from the expected result, then a failure has been  detected and we say the software under test "fails the test case."&lt;br /&gt;&lt;/p&gt;&lt;p class="docText"&gt;If the actual  result is the expected result for a test case, then we say the software "passes  the test case."&lt;/p&gt; &lt;p class="docText"&gt;Test cases are organized into a &lt;span class="docEmphStrong"&gt;test  suite.&lt;/span&gt; Most test suites have some sort of organization based on the kinds  of test cases. If software passes all the test cases in a test  suite, then we say that the software "passes the test suite."&lt;/p&gt;&lt;br /&gt;&lt;/div&gt;Software testing other interesting topics:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:100%;"&gt;&lt;a href="http://testingcorner.blogspot.com/2008/08/software-testing-effecting-factors.html"&gt;SOFTWARE TESTING AND EFFECTING FACTORS&lt;/a&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size: 100%;"&gt;&lt;a href="http://testingcorner.blogspot.com/2008/08/quality-assurence-and-control.html"&gt;SOFTWARE QUALITY ASSURANCE AND CONTROL&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/08/cost-of-software-quality.html"&gt;SOFTWARE QUALITY AND COST ASPECT&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/08/stable-process-software-testing-part.html"&gt;STABLE PROCESS OF SOFTWARE TESTING&lt;/a&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/08/stable-process-software-testing-part_12.html"&gt;&lt;br /&gt;STABLE PROCESS OF SOFTWARE TESTING PART TWO&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/08/defects-in-software-products.html"&gt;DEFECTS IN SOFTWARE TESTING&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/08/defect-reduction-software-testing.html"&gt;REDUCTION OF DEFECTS IN SOFTWARE TESTING&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/08/software-testing-effecting-factors.html"&gt;SOFTWARE TESTING AND EFFECTING FACTORS&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/08/scope-of-software-testing.html"&gt;SCOPE OF SOFTWARE TESTING&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/08/testing-life-cycle-part-one.html"&gt;TESTING LIFE CYCLE PART ONE&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/08/testing-life-cycle-part-two.html"&gt;TESTING LIFE CYCLE PART TWO&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/09/testing-life-cycle-part-three.html"&gt;TESTING LIFE CYCLE PART THREE&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/09/testing-software-and-constraints.html"&gt;SOFTWARE TESTING AND CONSTRAINTS WITH IN IT&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;hr /&gt;  &lt;a href="http://www.testingcorner.net"&gt;SOFTWARE TESTING,JAVA,MICROSOFT DOT NET,C PROGRAMMING AT ONE PLACE&lt;/a&gt;&lt;/div&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Java Arrays Programming for beginners</title><link>http://testingcorner.blogspot.com/2009/04/java-arrays-programming-for-beginners.html</link><category>JAVA FUNDAMENTALS</category><author>noreply@blogger.com (Anonymous)</author><pubDate>Tue, 7 Apr 2009 10:54:00 +0530</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-36146758167178682.post-1349617553484241623</guid><description>&lt;div style="text-align: justify;"&gt;Java arrays are  objects.
&lt;br /&gt;
&lt;br /&gt;In arrays we can store multiple variables of same type that are referred by a common name.
&lt;br /&gt;An array is always an object,even if the array is declared to hold object references or primitives .
&lt;br /&gt;
&lt;br /&gt;In array variables are placed in indexed order.These variables are called elements of an array. So in java arrays we can access the elements or values through the index.Every element in an array is just a variable.
&lt;br /&gt;
&lt;br /&gt;Now we have to know how to  declare the array ,creation of array  and accessing  the elements from array.
&lt;br /&gt;
&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(51, 102, 255);"&gt;Declaration of arrays are in two forms:&lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;form1:    type  arrayname[];    Type followed by name of the array,followed by Square bracket  .
&lt;br /&gt;
&lt;br /&gt;ex:     int  abc[];
&lt;br /&gt;
&lt;br /&gt;form2:    type[]  arrayname;  Type followed by bracket,followed by name of the array.
&lt;br /&gt;
&lt;br /&gt;ex:    float[]  abc;
&lt;br /&gt;
&lt;br /&gt;form2  is the recommended way,because  name is clearly separated from the type.
&lt;br /&gt;
&lt;br /&gt;At the time of declaration, we should not enter the size of an  array.violation leads to compile time exception.
&lt;br /&gt;
&lt;br /&gt;for example    int[5]   a;       it gives compile time exception.
&lt;br /&gt;
&lt;br /&gt;&lt;div style="text-align: justify;"&gt;After declaration of an array ,we can't put any other data type except the declared array type.
&lt;br /&gt;but implicitly promoted data types we can use, means less than the declared array type.for
&lt;br /&gt;example  int[]  x, the allowed data types are byte,short,char,int.
&lt;br /&gt;&lt;/div&gt;
&lt;br /&gt;After creation of java arrays,once you fix the size of an array,we can't change the size of an array.But  you can change  an individual array element. If it is need to change the array size frequently while the program is running then we  should go for another concept, known as Arraylist.
&lt;br /&gt;
&lt;br /&gt;In  java arrays are work differently than they do in c,c++.
&lt;br /&gt;
&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(51, 102, 255);"&gt;creation of java arrays:&lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;After declaring an array,we need to put it into memory.arrays must be declared in the memory before they are used.
&lt;br /&gt;&lt;span style="font-style: italic;"&gt;  &lt;/span&gt;
&lt;br /&gt;Java arrays are creating only using  &lt;span style="font-style: italic;"&gt;new &lt;/span&gt;keyword .
&lt;br /&gt;
&lt;br /&gt;array type[]       array name=new    array type[size];
&lt;br /&gt;
&lt;br /&gt;&lt;span style="font-weight: bold;"&gt; Ex:&lt;/span&gt;                int[]    x=new  int[50];
&lt;br /&gt;
&lt;br /&gt;Array type is  int , the allowed data types are   byte/short/char/int.
&lt;br /&gt;This statement sets up an array that can hold  50 integers means 0 to 49 ,not 1 to 50 .
&lt;br /&gt;
&lt;br /&gt;At the time of creation we must specify the size, otherwise compile time exception occurs.Even
&lt;br /&gt;we can give zero number also.but we can't specify the size with negative number we will get Run time Exception(RTE).we have to use integer to specify the size violation leads to compile time exception.
&lt;br /&gt;
&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(51, 102, 255);"&gt;for example:&lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;                              int[]  x = new int[55];                It is OK
&lt;br /&gt;                         
&lt;br /&gt;                              int[]   x = new  int[0];                It is OK
&lt;br /&gt;                          
&lt;br /&gt;                              int[]  x = new int[];                         it gives compile time exception.
&lt;br /&gt;                    
&lt;br /&gt;                              int[]  x = new int[-5];                  RTE, Negative Array Size Exception
&lt;br /&gt;                            
&lt;br /&gt;                              int[]   x  = new  int[9.5];           CTE,Possible loss of precission
&lt;br /&gt;
&lt;br /&gt;we can write declaration and creation separately like this,
&lt;br /&gt;
&lt;br /&gt;             int[]  x;
&lt;br /&gt;         
&lt;br /&gt;             x=new int[8];
&lt;br /&gt;
&lt;br /&gt;If you want to  find the number of elements of an array, use arrayName.length.
&lt;br /&gt;
&lt;br /&gt;For example :
&lt;br /&gt;
&lt;br /&gt;for (int i = 0; i &lt; style="font-weight: bold; color: rgb(51, 51, 255);"&gt;
&lt;br /&gt;
&lt;br /&gt;Initialization of Arrays:&lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;Once an array is created,all the elements will assign with default values based on declared data type.
&lt;br /&gt;
&lt;br /&gt;For example :  for  int  default value is        zero.
&lt;br /&gt;                         for  string default value is   null.
&lt;br /&gt;                         for Boolean default value is  false.
&lt;br /&gt;
&lt;br /&gt;  java arrays are created starting with a subscript of zero and ends with a value one lessthan the size declared.
&lt;br /&gt;
&lt;br /&gt;In  java arrays  the declaration,creation and initialization  in a single line is possible.
&lt;br /&gt;for this syntax, specify the declaration and size,later we can give the values at run time.
&lt;br /&gt;
&lt;br /&gt;           int a[];
&lt;br /&gt;
&lt;br /&gt;           a=new int[5];
&lt;br /&gt;
&lt;br /&gt;              a[0]=10;
&lt;br /&gt;              a[1]=20;
&lt;br /&gt;            a[2]=30;
&lt;br /&gt;            a[3]=40;
&lt;br /&gt;            a[4]=50;
&lt;br /&gt;
&lt;br /&gt;Instead of above declaration,creation and initialization we can write like this,
&lt;br /&gt;
&lt;br /&gt;               int[] a={10,20,30,40,50};
&lt;br /&gt;
&lt;br /&gt;But for this syntax, at the time of declaration we must know the array size and initialization values,can't give the values at run time.
&lt;br /&gt;
&lt;br /&gt;It is possible to convert an array object to another array,but the array types must same.
&lt;br /&gt;
&lt;br /&gt;    int[]  x={10,20,30};
&lt;br /&gt;   
&lt;br /&gt;   int[]  y;
&lt;br /&gt; 
&lt;br /&gt;   y=x;
&lt;br /&gt;
&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(51, 102, 255);"&gt;Accessing array elements:&lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;    int[]  a=new int[5];
&lt;br /&gt;        
&lt;br /&gt;  a[5]=60      it leads RTE, "Array Index Out Of Bound Exception".
&lt;br /&gt;
&lt;br /&gt;  a[4.0]=50;        
&lt;br /&gt;
&lt;br /&gt;If you are accessing array element  with unmatched data type then it gives compile time        exception,  "Incorrect Syntax".
&lt;br /&gt;
&lt;br /&gt;a[-4]=50 ;           it  leads RTE,"Array Index Out Of Bound Exception".
&lt;br /&gt;
&lt;br /&gt;a[2.5] =50;          it leads   CTE, "Possible Loss of precision"
&lt;br /&gt;
&lt;br /&gt;Either Float/Double/Long data type indexes should not use to accessing the array elements,violation leads to compile time exception.
&lt;br /&gt;
&lt;br /&gt;Array element assignment is possible , when the class object is the subtype of element type.That means  if  an  array is declared as object reference array ,we are  allowed to assign the objects of either declared type or it's child classes.
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;ex 1:   Number[] a = new Integer[5];                     // Length 10, element type Integer
&lt;br /&gt;
&lt;br /&gt;           Double f = new Double(3.14);                         // Type Double, class Double
&lt;br /&gt;
&lt;br /&gt;           Integer i = new Integer(115);                          // Integer, class Integer
&lt;br /&gt;
&lt;br /&gt;             Number n = i;                                                    // Type Number, class Integer
&lt;br /&gt;
&lt;br /&gt;             a[0] = i;                                                               // OK, Integer is subtype of Integer
&lt;br /&gt;
&lt;br /&gt;             a[1] = n;                                                        // OK, Integer is subtype of Integer
&lt;br /&gt;
&lt;br /&gt;             a[2] = f;                                                         // No, Double not subtype of Integer
&lt;br /&gt;
&lt;br /&gt;The above  program successfully compile,but at run time  a[2] =f throws "Array Store Exception", because the class of the object  bound to  &lt;span style="font-style: italic;"&gt;f &lt;/span&gt;  is not a subtype of a's element type (that is, Integer).
&lt;br /&gt;
&lt;br /&gt;ex 2:    String[]  s = new String[5];
&lt;br /&gt;           
&lt;br /&gt;             s[0] = "A";    it is OK
&lt;br /&gt;           
&lt;br /&gt;             s[1]= new Integer[12];      CTE
&lt;br /&gt;
&lt;br /&gt;Integer is not a child class of String,but expected thing is String or child class of String class .
&lt;br /&gt;                                                            
&lt;br /&gt; ex 3:  Object ob = new Object[8];
&lt;br /&gt;
&lt;br /&gt;                ob[0] = "X";
&lt;br /&gt;           
&lt;br /&gt;                ob[1]= new  Thread();
&lt;br /&gt;
&lt;br /&gt;               ob[2] = new Exception();
&lt;br /&gt;
&lt;br /&gt;               ob[3] = new Number();
&lt;br /&gt;         
&lt;br /&gt;                ob[4] = new Integer(15);
&lt;br /&gt;
&lt;br /&gt; the above program compile and run successfully, because all are subclasses of declared array type.
&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(51, 102, 255);"&gt;How do we Assignment of Array variables&lt;/span&gt;&lt;span style="color: rgb(51, 102, 255);"&gt; :&lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;In general, we are allowed to place int variable in the place of double variable, because implicitly  int will be promoted to double.but it is not possible to place int array in the place of double array. Like this , a character element  can be assigned in the place of int element.But the char array can't be assigned  in the place of int array.It gives compile time exception.
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;example :  int[]  a= {1,3,6,8};
&lt;br /&gt;
&lt;br /&gt;                     char[]  c={'a','b','c','d','e'};
&lt;br /&gt;
&lt;br /&gt;                     int[]  b = c;     CTE, Incompatible Type
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt; In the case of  Object arrays ,we are allowed to place child class arrays in the place of parent class array.
&lt;br /&gt;
&lt;br /&gt;       example 1:  wheels[]  w=  new wheels[8];
&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/07/classes-and-objects-in-computer.html"&gt;CLASSES AND OBJECTS  IN JAVA&lt;/a&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/06/java-programming-environment.html"&gt;JAVA PROGRAMMING ENVIRONMENT&lt;/a&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/06/running-java.html"&gt;JAVA EXECUTION&lt;/a&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/07/constructor-declarations-purpose-of.html"&gt;JAVA CONSTRUCTORS&lt;/a&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/06/field-declarations-in-classes-purpose.html"&gt;FIELD DECLARATIONS IN CLASS OF JAVA&lt;/a&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/07/exceptions-in-java.html"&gt;EXCEPTIONS IN JAVA&lt;/a&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/07/exception-statements-in-java.html"&gt;EXCEPTIONS IN JAVA PART TWO&lt;/a&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/06/variables-parameters-fields-and-scope.html"&gt;VARIABLE PARAMETERS IN JAVA&lt;/a&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/06/comments-typesvariables-and-scope.html"&gt;COMMENTS TYPES AND VARIABLES&lt;/a&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/03/jdbc-odbc-bridge-driver.html"&gt;JAVA JDBC AND ODBC&lt;/a&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/07/interfaces-in-java.html"&gt;INTERFACE IN JAVA&lt;/a&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/07/operators-in-java.html"&gt;OPERATORS IN JAVA&lt;/a&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;hr /&gt;  &lt;a href="http://www.testingcorner.net"&gt;SOFTWARE TESTING,JAVA,MICROSOFT DOT NET,C PROGRAMMING AT ONE PLACE&lt;/a&gt;&lt;/div&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Programming Development Process Overview</title><link>http://testingcorner.blogspot.com/2009/03/programming-development-process.html</link><category>Project Mangement</category><author>noreply@blogger.com (Unknown)</author><pubDate>Sun, 29 Mar 2009 18:24:00 +0530</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-36146758167178682.post-797891517953535351</guid><description>&lt;div style="text-align: justify;"&gt;A &lt;span class="docEmphStrong"&gt;process&lt;/span&gt; is a continuous series of activities  that convey you to an end.Main activities in a software development process are&lt;br /&gt;&lt;/div&gt;&lt;ol style="text-align: justify;"&gt;&lt;li&gt; &lt;p class="docText"&gt;&lt;span class="docEmphStrong"&gt;analysis—&lt;/span&gt; which focuses on  understanding the problem and defining the requirements for the software  portions of a system&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docText"&gt;&lt;span class="docEmphStrong"&gt;design—&lt;/span&gt; which focuses on  solving the problem in software&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docText"&gt;&lt;span class="docEmphStrong"&gt;implementation—&lt;/span&gt; which focuses  on translating the design into executable code&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docText"&gt;&lt;span class="docEmphStrong"&gt;testing—&lt;/span&gt; which focuses on  ensuring that inputs produce the desired results as specified by the  requirements&lt;/p&gt;&lt;/li&gt;&lt;/ol&gt;&lt;div style="text-align: justify;"&gt;Maintenance begins after deployment with a focus on bug repairs and  enhancements.  Maintenance usually involves further analysis, design,  implementation, and testing. Among the testing activities during maintenance is  regression testing, which ensures that successful test results after changes are  the same as those before changes.&lt;br /&gt;&lt;br /&gt;&lt;p class="docText"&gt;Under an incremental development process, a system is developed  as a sequence of increments. An &lt;a name="idd1e5311"&gt;&lt;/a&gt;&lt;span class="docEmphStrong"&gt;increment&lt;/span&gt; is a deliverable, including models,  documentation, and code, which provides some of the functionality required for  the system.&lt;br /&gt;&lt;/p&gt;&lt;p class="docText"&gt;The products developed in one increment feed into the development of  the next increment. Successive increments add (and sometimes change) system  functionality. The final increment delivers a deployable system that meets all  requirements. Increments can be developed in sequence or one or more can be  developed concurrently.&lt;/p&gt;To build each increment, developers analyze, design, code, and test as needed.  They typically have to perform these activities repeatedly in building an  increment because they find errors in previous work. As development progresses,  they gain new insights into the problem and the solution. We prefer to  acknowledge this iterative aspect of incremental development and make it part of  the process.&lt;br /&gt;&lt;br /&gt;In planning each increment, we include explicit steps for repeating various  activities. Among these are steps for systematically reviewing current models,  identifying errors based on experiences in later tasks, and modifying the models  (or code) that have already been produced—not just those that will be produced  in the future.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhKXwcNLFbLM2IkwaH_BqX0nhdToaSUyMc7DLqfw6stQop_IYj2jcQwOuC7vJMf_VPrqeNUZpmjpyVw0uU-Jl9UfgxKfottumSg6RLB9dj6pTH_mxy9JSM-Kqg8R5tPuMV13xJvLxqvxw/s1600-h/software+testing.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 193px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhKXwcNLFbLM2IkwaH_BqX0nhdToaSUyMc7DLqfw6stQop_IYj2jcQwOuC7vJMf_VPrqeNUZpmjpyVw0uU-Jl9UfgxKfottumSg6RLB9dj6pTH_mxy9JSM-Kqg8R5tPuMV13xJvLxqvxw/s400/software+testing.png" alt="" id="BLOGGER_PHOTO_ID_5318593593398626930" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;p class="docText"&gt;Object-oriented development is particularly well suited to  evolutionary development because object-oriented analysis, design, and  implementation entail the successive refinement of a single model. This is the  case both within an increment and among increments.&lt;br /&gt;&lt;/p&gt;&lt;p class="docText"&gt;In object-oriented analysis,  we understand a problem by modeling it in terms of objects and classes of  objects, their relationships and responsibilities. In object-oriented design, we  solve the problem by manipulating those same objects and relationships  identified in analysis and introducing solution-specific classes, objects,  relationships, and responsibilities.&lt;br /&gt;&lt;/p&gt;&lt;p class="docText"&gt;Implementation is straightforward from a  well-specified set of design products. Thus, the entire development process  involves a refinement of a model. Design products are primarily an extension of  analysis products and implementation products are coded expressions of design  products. The products of one increment are extended and refined in the next  increment.&lt;br /&gt;&lt;/p&gt;&lt;p class="docText"&gt;The incremental development of products requires the  incremental testing of those products. Products can change from increment to  increment in both planned and unplanned ways. Test suites must change in  concert. Regression tests must be run between increments and within iterations  to ensure that changes do not adversely affect correctly working code.&lt;br /&gt;&lt;/p&gt;&lt;p class="docText"&gt;A process  in which work on one increment overlaps work on another adds to the complexity  of development and testing. Coordination is required to sequence the development  of interacting increments so that objects that are associated with, but assigned  to different increments, can be tested in a timely fashion.&lt;/p&gt;&lt;p style="font-weight: bold; color: rgb(0, 102, 0);" class="docText"&gt;Software testing other interesting topics:&lt;/p&gt;&lt;a href="http://testingcorner.blogspot.com/2009/03/programming-c-language-introduction.html"&gt;Programming c language introduction&lt;/a&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/07/classes-and-objects-in-computer.html"&gt;CLASSES AND OBJECTS  IN JAVA&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/06/java-programming-environment.html"&gt;JAVA PROGRAMMING ENVIRONMENT&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/06/running-java.html"&gt;JAVA EXECUTION&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/07/constructor-declarations-purpose-of.html"&gt;JAVA CONSTRUCTORS&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/06/field-declarations-in-classes-purpose.html"&gt;FIELD DECLARATIONS IN CLASS OF JAVA&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/07/exceptions-in-java.html"&gt;EXCEPTIONS IN JAVA&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/07/exception-statements-in-java.html"&gt;EXCEPTIONS IN JAVA PART TWO&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/06/variables-parameters-fields-and-scope.html"&gt;VARIABLE PARAMETERS IN JAVA&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/06/comments-typesvariables-and-scope.html"&gt;COMMENTS TYPES AND VARIABLES&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/03/jdbc-odbc-bridge-driver.html"&gt;JAVA JDBC AND ODBC&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/07/interfaces-in-java.html"&gt;INTERFACE IN JAVA&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/07/operators-in-java.html"&gt;OPERATORS IN JAVA&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;hr /&gt;  &lt;a href="http://www.testingcorner.net"&gt;SOFTWARE TESTING,JAVA,MICROSOFT DOT NET,C PROGRAMMING AT ONE PLACE&lt;/a&gt;&lt;/div&gt;</description><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="72" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhKXwcNLFbLM2IkwaH_BqX0nhdToaSUyMc7DLqfw6stQop_IYj2jcQwOuC7vJMf_VPrqeNUZpmjpyVw0uU-Jl9UfgxKfottumSg6RLB9dj6pTH_mxy9JSM-Kqg8R5tPuMV13xJvLxqvxw/s72-c/software+testing.png" width="72"/><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Programming C Language Introduction</title><link>http://testingcorner.blogspot.com/2009/03/programming-c-language-introduction.html</link><category>C</category><category>INTRODUCTIONS</category><author>noreply@blogger.com (Unknown)</author><pubDate>Sat, 28 Mar 2009 22:19:00 +0530</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-36146758167178682.post-5422880418398742400</guid><description>&lt;div style="text-align: justify;"&gt;C programming language is said to be  a middle level language because it combines the best elements of high-level languages with the control and flexibility of assembly language .&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(102, 0, 0);"&gt;As a middle-level languag&lt;/span&gt;e, C allows the manipulation of bits, bytes, and addresses the basic elements with which the computer functions and  C code is also very portable.Portability means that it is easy to adapt software written for one type of computer or operating system to another type.&lt;br /&gt;&lt;br /&gt;All high level programming languages support the concept of data types. A data type defines a set of values that a variable can store along with a set of operations that can be performed on that variable. Common data types are integer, character, and floating-point. Although C has several built in data types, it is not a strongly typed language, as are Pascal and Ada. C permits almost all type conversions.&lt;br /&gt;&lt;br /&gt;C specifies almost no run time error checking. For example, no check is performed to ensure that array boundaries are not overrun. and these types of checks are the responsibility of the programmer.&lt;br /&gt;&lt;br /&gt;C does not demand strict type compatibility between a parameter and an argument.C allows an argument to be of any type so long as it can be reasonably converted into the type of the parameter and  C provides all of the automatic conversions to accomplish this.&lt;br /&gt;&lt;br /&gt;C  allows the direct manipulation of bits, bytes, words, and pointers. This makes it well suited for &lt;span style="font-weight: bold; color: rgb(102, 0, 0);"&gt;system-level programming&lt;/span&gt;, where these operations are common.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(102, 0, 0);"&gt;C  has only a small number of keywords&lt;/span&gt;, which are the commands that make up the C language. For example, C89 defined 32 keywords, and C99 adds only 5 more. High-level languages typically have many more keywords.&lt;br /&gt;&lt;br /&gt;C is  a structured language. The distinguishing feature of a structured language is compartmentalization of code and data. This is the ability of a language to section off and hide from the rest of the program all information and instructions necessary to perform a specific task. One way that you achieve compartmentalization is by using subroutines that employ local (temporary) variables.&lt;br /&gt;&lt;br /&gt;By using local variables, you can write subroutines so that the events that occur within them cause no side effects in other parts of the program. This capability makes it very easy for your C programs to share sections of code. If you develop compartmentalized functions, you need to know only what a function does, not how it does it.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(102, 0, 0);"&gt;Structured languages&lt;/span&gt; typically support several loop constructs, such as while, do-while, and for. In a structured language, the use of &lt;span style="font-weight: bold;"&gt;goto&lt;/span&gt; is either prohibited or discouraged and is not the common form of program control . A structured language allows you to place statements anywhere on a line and does not require a strict field concept.&lt;br /&gt;&lt;br /&gt;In C,&lt;span style="font-weight: bold; color: rgb(102, 0, 0);"&gt; functions&lt;/span&gt; are the building blocks in which all program activity occurs. They allow you to define and code individually the separate tasks in a program, thus allowing your programs to be modular.&lt;br /&gt;&lt;br /&gt;After you have created a function, you can rely on it to work properly in various situations without creating side effects in other parts of the program. Being able to create stand alone functions is extremely important in larger projects where one programmer's code must not accidentally affect another's.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(0, 51, 0);"&gt;Related posts &lt;/span&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2009/03/softwaretesting-perspective.html"&gt;&lt;br /&gt;&lt;/a&gt;&lt;a href="http://testingcorner.blogspot.com/2009/03/softwaretesting-perspective.html"&gt;Software testing prospective&lt;/a&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/09/programming-with-c-introduction.html"&gt;INTRODUCTION TO C PROGRAMMING&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2009/03/programming-c-language-introduction.html"&gt;Programming with C an introduction part two&lt;/a&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2009/07/programming-and-data-types.html"&gt;&lt;br /&gt;Data types for C programming&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/09/c-programming-character-set.html"&gt;C PROGRAMMING CHARACTER SET&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/09/constants-in-c-programming.html"&gt;CONSTANTS IN C PROGRAMMING&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/09/programming-c-variables.html"&gt;PROGRAMMING C VARIABLES&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/10/c-program-instructions.html"&gt;C PROGRAM INSTRUCTIONS&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/10/c-program-compilation-and-execution.html"&gt;COMPILATION AND EXECUTION OF C PROGRAM&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/09/c-programming-rules.html"&gt;C PROGRAMMING RULES PART  ONE&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/10/c-programming-rules-part-two.html"&gt;C PROGRAMMING RULES PART  TWO&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/10/c-program-compilation-and-execution.html"&gt;COMPILATION AND EXECUTION OF C PROGRAM&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/10/c-program-instructions.html"&gt;INSTRUCTIONS TO WRITE C PROGRAM &lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/10/c-program-instructions.html"&gt;ARITHMETIC INSTRUCTIONS TO WRITE C PROGRAM &lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/10/c-program-conversion-of-constants.html"&gt;CONVERSION OF CONSTANTS IN C PROGRAM&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/10/priority-of-arthematic-operations-in-c.html"&gt;PRIORITY OF AR THEMATIC OPERATIONS IN C&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/c-language-operators-associativity.html"&gt;OPERATORS ASSOCIATIVITY IN C&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/if-statement-in-c-programming.html"&gt;IF STATEMENT&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/mulitple-statements-with-in-if.html"&gt;MULTIPLE STATEMENTS IN IF&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/if-else-statements.html"&gt;IF AND ELSE&lt;/a&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/nested-if-elses-in-c-programming.html"&gt;&lt;br /&gt;NESTED IF AND ELSE&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/break-statement-in-c-programming.html"&gt;BREAK&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/12/continue-and-do-while-in-c-language.html"&gt;CONTINUE AND DO WHILE IN C LANGUAGE&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2009/03/switch-in-c-programming.html"&gt;SWITCH IN C PROGRAMMING&lt;/a&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2009/03/function-in-c-programming.html"&gt;&lt;br /&gt;FUNCTIONS IN C PROGRAMMING&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2009/04/programming-functions-in-c-part-two.html"&gt;Functions and usage in C part two &lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2009/05/programming-c-functions-coding.html"&gt;Coding in C functions&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;hr /&gt;  &lt;a href="http://www.testingcorner.net"&gt;SOFTWARE TESTING,JAVA,MICROSOFT DOT NET,C PROGRAMMING AT ONE PLACE&lt;/a&gt;&lt;/div&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">1</thr:total></item><item><title>SoftwareTesting Perspective</title><link>http://testingcorner.blogspot.com/2009/03/softwaretesting-perspective.html</link><category>INTRODUCTIONS</category><author>noreply@blogger.com (Unknown)</author><pubDate>Thu, 19 Mar 2009 20:21:00 +0530</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-36146758167178682.post-834592928447922394</guid><description>&lt;p style="text-align: justify;" class="docText"&gt;The &lt;a name="idd1e2000"&gt;&lt;/a&gt;&lt;span class="docEmphStrong"&gt;testing  perspective&lt;/span&gt; is a way of looking at any development product and  questioning its validity. The person examining work products from this  perspective utilizes a thorough investigation of the software and all its  representations to identify faults. The search for faults is guided by both  systematic thinking and intuitive insights.&lt;br /&gt;&lt;/p&gt;&lt;p style="text-align: justify;" class="docText"&gt;It is a perspective that makes  reviews and inspections just as powerful a tool as execution-based testing. A  review will almost never find something that is missing—that is, a review  typically only seeks to validate what exists and does not systematically search  to determine if all things that &lt;span class="docEmphasis"&gt;should be&lt;/span&gt; in the  software actually &lt;span class="docEmphasis"&gt;are&lt;/span&gt; in it.&lt;br /&gt;&lt;/p&gt;&lt;p style="text-align: justify;" class="docText"&gt;The testing  perspective requires that a piece of software demonstrate that it not only  performs according to its specification, but performs &lt;span class="docEmphasis"&gt;only&lt;/span&gt; to that specification. Thus, a product is tested  to determine that it will do what it is supposed to do, and it is also tested to  ensure that it does not do what it is not supposed to do.&lt;/p&gt;&lt;p style="text-align: justify;" class="docText"&gt;Software testing is typically accomplished by a combination of  inspections, reviews, and test executions. The purpose of these activities is to  observe failures.&lt;/p&gt;&lt;div style="text-align: justify;"&gt; &lt;/div&gt;&lt;p style="text-align: justify;" class="docText"&gt;&lt;span style="font-weight: bold; color: rgb(102, 0, 0);"&gt;An &lt;/span&gt;&lt;span style="font-weight: bold; color: rgb(102, 0, 0);" class="docEmphStrong"&gt;inspection&lt;/span&gt; is an  examination of software based on a checklist of typical problems. Most items on  a checklist are based on programming language semantics and/or coding  conventions—for example, ensuring that each program variable is initialized  before its first use and that pointers or references have been set to reasonable  values before they are used. Modern compilers for object-oriented programming  languages can detect many of the problems called out on traditional inspection  checklists.&lt;/p&gt;&lt;div style="text-align: justify;"&gt; &lt;/div&gt;&lt;p style="text-align: justify;" class="docText"&gt;&lt;span style="font-weight: bold; color: rgb(102, 0, 0);"&gt;A &lt;/span&gt;&lt;span style="font-weight: bold; color: rgb(102, 0, 0);" class="docEmphStrong"&gt;review&lt;/span&gt; is an examination of  software with the purpose of finding errors and faults even before the software  is executed. Reviews are made in the context of the system being developed and  have a deeper interest in the software than do inspections.&lt;br /&gt;&lt;/p&gt;&lt;p style="text-align: justify;" class="docText"&gt;A review delves into  the meaning of each part of a program and whether it is appropriate for meeting  some or all of the application's requirements. A review is intended to uncover  errors such as missed or misunderstood requirements or faults in a program's  logic. Some reviews examine programming details such as whether variable names  are well chosen and whether algorithms are as efficient as they could be.&lt;/p&gt;&lt;div style="text-align: justify;"&gt; &lt;/div&gt;&lt;p style="text-align: justify;" class="docText"&gt;&lt;span style="font-weight: bold; color: rgb(102, 0, 0);" class="docEmphStrong"&gt;Test execution&lt;/span&gt; is testing  software in the context of a running program. Through executing the software, a  tester tries to determine whether it has the required behavior by giving the  program some input and verifying that the resulting output is correct. Among the  challenges to testers are identifying suitable inputs, determining correct  outputs, and determining how to observe the outputs.&lt;/p&gt;&lt;div style="text-align: justify;"&gt; &lt;/div&gt;&lt;p class="docText"&gt;The testing perspective is &lt;/p&gt;&lt;span class="docEmphStrong"&gt;Skeptical:&lt;/span&gt; Wants proof of  quality.&lt;br /&gt;&lt;span class="docEmphStrong"&gt;Objective:&lt;/span&gt; Makes no  assumptions.&lt;br /&gt;&lt;span class="docEmphStrong"&gt;Thorough:&lt;/span&gt; Doesn't miss  important areas.&lt;br /&gt;&lt;span class="docEmphStrong"&gt;Systematic:&lt;/span&gt; Searches are  reproducible.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2009/03/function-in-c-programming.html"&gt;&lt;span style="font-weight: bold;"&gt;Functions in c programming&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-size: 100%;"&gt;&lt;a href="http://testingcorner.blogspot.com/2008/08/quality-assurence-and-control.html"&gt;SOFTWARE QUALITY ASSURANCE AND CONTROL&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/08/cost-of-software-quality.html"&gt;SOFTWARE QUALITY AND COST ASPECT&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/08/stable-process-software-testing-part.html"&gt;STABLE PROCESS OF SOFTWARE TESTING&lt;/a&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/08/stable-process-software-testing-part_12.html"&gt;&lt;br /&gt;STABLE PROCESS OF SOFTWARE TESTING PART TWO&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/08/defects-in-software-products.html"&gt;DEFECTS IN SOFTWARE TESTING&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/08/defect-reduction-software-testing.html"&gt;REDUCTION OF DEFECTS IN SOFTWARE TESTING&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/08/software-testing-effecting-factors.html"&gt;SOFTWARE TESTING AND EFFECTING FACTORS&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/08/scope-of-software-testing.html"&gt;SCOPE OF SOFTWARE TESTING&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/08/testing-life-cycle-part-one.html"&gt;TESTING LIFE CYCLE PART ONE&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/08/testing-life-cycle-part-two.html"&gt;TESTING LIFE CYCLE PART TWO&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/09/testing-life-cycle-part-three.html"&gt;TESTING LIFE CYCLE PART THREE&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/09/testing-software-and-constraints.html"&gt;SOFTWARE TESTING AND CONSTRAINTS WITH IN IT&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;hr /&gt;  &lt;a href="http://www.testingcorner.net"&gt;SOFTWARE TESTING,JAVA,MICROSOFT DOT NET,C PROGRAMMING AT ONE PLACE&lt;/a&gt;&lt;/div&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Function in C Programming</title><link>http://testingcorner.blogspot.com/2009/03/function-in-c-programming.html</link><category>C</category><author>noreply@blogger.com (Unknown)</author><pubDate>Tue, 17 Mar 2009 08:36:00 +0530</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-36146758167178682.post-4161088029236737794</guid><description>&lt;div style="text-align: justify;"&gt;A computer program (except for the simplest one)  cannot handle all the tasks by itself. Instead, it requests other program like entities—called ‘functions’ in C—to get its tasks done.&lt;br /&gt;&lt;br /&gt;A function is a self-contained block of statements that perform a coherent task of some kind.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(102, 0, 0);"&gt;Example&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;main( )&lt;br /&gt;&lt;br /&gt;{&lt;br /&gt;&lt;br /&gt;message( ) ;&lt;br /&gt;&lt;br /&gt;printf ( "\nCry!" ) ;&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;message( )&lt;br /&gt;&lt;br /&gt;{ printf ( "\nSmile" ) ;&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;And here’s the output...&lt;br /&gt;&lt;br /&gt;Smile...&lt;br /&gt;&lt;br /&gt;Cry&lt;br /&gt;&lt;br /&gt;Here, main( ) itself is a function and through it we are calling the function message( ). Main( ) ‘calls’ the function message( ) and it  mean that the control passes to the function message( ).&lt;br /&gt;&lt;br /&gt;The activity of main( ) is temporarily suspended; it falls asleep while the message( ) function wakes up and goes to work. When the message( ) function runs out of statements to execute, the control returns to main( ), which comes to life again and begins executing its code at the exact point where it left off. Thus, main( ) becomes the ‘calling’ function, whereas message( ) becomes the ‘called’ function.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(102, 0, 0);"&gt;Important points about Function&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Any C program contains at least one function.&lt;br /&gt;&lt;br /&gt;If a program contains only one function, it must be main( ).&lt;br /&gt;&lt;br /&gt;If a C program contains more than one function, then one (and only one) of these functions must be main( ), because program execution always begins with main( ).&lt;br /&gt;&lt;br /&gt;There is no limit on the number of functions that might be present in a C program.&lt;br /&gt;&lt;br /&gt;Each function in a program is called in the sequence specified by the function calls in main( ).&lt;br /&gt;&lt;br /&gt;After each function has done its thing, control returns to main( ).&lt;br /&gt;&lt;br /&gt;When main( ) runs out of function calls, the program ends. The program execution always begins with main( ). Except for this  all C functions enjoy a state of perfect equality. No precedence, no priorities.&lt;br /&gt;&lt;br /&gt;One function can call another function it has already called but has in the meantime left temporarily in order to call a third function which will sometime later call the function that has called it.&lt;br /&gt;&lt;br /&gt;Other C programming Related topics are&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2009/03/switch-in-c-programming.html"&gt;Switch statement in c programming&lt;/a&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/09/programming-with-c-introduction.html"&gt;INTRODUCTION TO C PROGRAMMING&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2009/03/programming-c-language-introduction.html"&gt;Programming with C an introduction part two&lt;/a&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2009/07/programming-and-data-types.html"&gt;&lt;br /&gt;Data types for C programming&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/09/c-programming-character-set.html"&gt;C PROGRAMMING CHARACTER SET&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/09/constants-in-c-programming.html"&gt;CONSTANTS IN C PROGRAMMING&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/09/programming-c-variables.html"&gt;PROGRAMMING C VARIABLES&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/10/c-program-instructions.html"&gt;C PROGRAM INSTRUCTIONS&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/10/c-program-compilation-and-execution.html"&gt;COMPILATION AND EXECUTION OF C PROGRAM&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/09/c-programming-rules.html"&gt;C PROGRAMMING RULES PART  ONE&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/10/c-programming-rules-part-two.html"&gt;C PROGRAMMING RULES PART  TWO&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/10/c-program-compilation-and-execution.html"&gt;COMPILATION AND EXECUTION OF C PROGRAM&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/10/c-program-instructions.html"&gt;INSTRUCTIONS TO WRITE C PROGRAM &lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/10/c-program-instructions.html"&gt;ARITHMETIC INSTRUCTIONS TO WRITE C PROGRAM &lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/10/c-program-conversion-of-constants.html"&gt;CONVERSION OF CONSTANTS IN C PROGRAM&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/10/priority-of-arthematic-operations-in-c.html"&gt;PRIORITY OF AR THEMATIC OPERATIONS IN C&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/c-language-operators-associativity.html"&gt;OPERATORS ASSOCIATIVITY IN C&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/if-statement-in-c-programming.html"&gt;IF STATEMENT&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/mulitple-statements-with-in-if.html"&gt;MULTIPLE STATEMENTS IN IF&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/if-else-statements.html"&gt;IF AND ELSE&lt;/a&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/nested-if-elses-in-c-programming.html"&gt;&lt;br /&gt;NESTED IF AND ELSE&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/break-statement-in-c-programming.html"&gt;BREAK&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/12/continue-and-do-while-in-c-language.html"&gt;CONTINUE AND DO WHILE IN C LANGUAGE&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2009/03/switch-in-c-programming.html"&gt;SWITCH IN C PROGRAMMING&lt;/a&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2009/03/function-in-c-programming.html"&gt;&lt;br /&gt;FUNCTIONS IN C PROGRAMMING&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2009/04/programming-functions-in-c-part-two.html"&gt;Functions and usage in C part two &lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2009/05/programming-c-functions-coding.html"&gt;Coding in C functions&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;hr /&gt;  &lt;a href="http://www.testingcorner.net"&gt;SOFTWARE TESTING,JAVA,MICROSOFT DOT NET,C PROGRAMMING AT ONE PLACE&lt;/a&gt;&lt;/div&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Switch in C Programming</title><link>http://testingcorner.blogspot.com/2009/03/switch-in-c-programming.html</link><category>C</category><author>noreply@blogger.com (Unknown)</author><pubDate>Mon, 16 Mar 2009 11:03:00 +0530</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-36146758167178682.post-5904335695996022679</guid><description>&lt;div style="text-align: justify;"&gt;The control statement that allows us to make a decision from the number of choices is called a switch, or more correctly a switch-case-default, since these three keywords go together to make up the control statement. &lt;span style="font-weight: bold; color: rgb(102, 0, 0);"&gt;&lt;br /&gt;&lt;br /&gt;The syntax for this is &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;switch ( integer expression ) &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;{&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt; case constant 1 :&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt; do this ; &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;case constant 2 :&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt; do this ;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt; case constant 3 :&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt; do this ;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt; default : do this ; &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;The integer expression following the keyword switch is any C expression that will yield an integer value. It could be an integer constant like 1, 2 or 3, or an expression that evaluates to an integer. The keyword case is followed by an integer or a character constant. Each constant in each case must be different from all the others. The “do this” lines in the above form of switch represent any valid C statement.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(102, 0, 0);"&gt;How it functions ?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;First, the integer expression following the keyword switch is evaluated. The value it gives is then matched, one by one, against the constant values that follow the case statements. When a match is found, the program executes the statements following that case, and all subsequent case and default statements as well. If no match is found with any of the case statements, only the statements following the default are executed.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(102, 0, 0);"&gt;Example&lt;/span&gt; &lt;span style="font-weight: bold; color: rgb(102, 51, 0);"&gt;with only Switch&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;main( )&lt;br /&gt;{&lt;br /&gt;int i = 2 ;&lt;br /&gt;switch ( i )&lt;br /&gt;{&lt;br /&gt;case 1 :&lt;br /&gt;printf ( "I am in case 1 \n" ) ;&lt;br /&gt;case 2 : printf ( "I am in case 2 \n" ) ;&lt;br /&gt;case 3 : printf ( "I am in case 3 \n" ) ;&lt;br /&gt;default : printf ( "I am in default \n" ) ;&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;The output of this program would be:&lt;br /&gt;&lt;br /&gt;I am in case 2&lt;br /&gt;I am in case 3&lt;br /&gt;I am in default&lt;br /&gt;&lt;br /&gt;The switch executes the case where a match is found and all the subsequent cases and the default as well.&lt;br /&gt;&lt;br /&gt;If you want that only case 2 should get executed, it is upto you to get out of the switch then and there by using a break statement.There is no need for a break statement after the default, since the control comes out of the switch anyway.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(102, 0, 0);"&gt;Example with Break statement and Switch&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;main( )&lt;br /&gt;{&lt;br /&gt;int i = 2 ;&lt;br /&gt;switch ( i )&lt;br /&gt;{&lt;br /&gt;case 1 : printf ( "I am in case 1 \n" ) ;&lt;br /&gt;break ;&lt;br /&gt;case 2 : printf ( "I am in case 2 \n" ) ;&lt;br /&gt;break ;&lt;br /&gt;case 3 : printf ( "I am in case 3 \n" ) ;&lt;br /&gt;break ;&lt;br /&gt;default : printf ( "I am in default \n" ) ;&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;The output of this program would be:&lt;br /&gt;&lt;br /&gt;I am in case 2&lt;br /&gt;&lt;br /&gt;Other C programming Related topics are&lt;a href="http://testingcorner.blogspot.com/2009/03/software-testing-spiral-model.html"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/a&gt;&lt;a href="http://testingcorner.blogspot.com/2008/09/programming-with-c-introduction.html"&gt;INTRODUCTION TO C PROGRAMMING&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2009/03/programming-c-language-introduction.html"&gt;Programming with C an introduction part two&lt;/a&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2009/07/programming-and-data-types.html"&gt;&lt;br /&gt;Data types for C programming&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/09/c-programming-character-set.html"&gt;C PROGRAMMING CHARACTER SET&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/09/constants-in-c-programming.html"&gt;CONSTANTS IN C PROGRAMMING&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/09/programming-c-variables.html"&gt;PROGRAMMING C VARIABLES&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/10/c-program-instructions.html"&gt;C PROGRAM INSTRUCTIONS&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/10/c-program-compilation-and-execution.html"&gt;COMPILATION AND EXECUTION OF C PROGRAM&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/09/c-programming-rules.html"&gt;C PROGRAMMING RULES PART  ONE&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/10/c-programming-rules-part-two.html"&gt;C PROGRAMMING RULES PART  TWO&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/10/c-program-compilation-and-execution.html"&gt;COMPILATION AND EXECUTION OF C PROGRAM&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/10/c-program-instructions.html"&gt;INSTRUCTIONS TO WRITE C PROGRAM &lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/10/c-program-instructions.html"&gt;ARITHMETIC INSTRUCTIONS TO WRITE C PROGRAM &lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/10/c-program-conversion-of-constants.html"&gt;CONVERSION OF CONSTANTS IN C PROGRAM&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/10/priority-of-arthematic-operations-in-c.html"&gt;PRIORITY OF AR THEMATIC OPERATIONS IN C&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/c-language-operators-associativity.html"&gt;OPERATORS ASSOCIATIVITY IN C&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/if-statement-in-c-programming.html"&gt;IF STATEMENT&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/mulitple-statements-with-in-if.html"&gt;MULTIPLE STATEMENTS IN IF&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/if-else-statements.html"&gt;IF AND ELSE&lt;/a&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/nested-if-elses-in-c-programming.html"&gt;&lt;br /&gt;NESTED IF AND ELSE&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/break-statement-in-c-programming.html"&gt;BREAK&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/12/continue-and-do-while-in-c-language.html"&gt;CONTINUE AND DO WHILE IN C LANGUAGE&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2009/03/switch-in-c-programming.html"&gt;SWITCH IN C PROGRAMMING&lt;/a&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2009/03/function-in-c-programming.html"&gt;&lt;br /&gt;FUNCTIONS IN C PROGRAMMING&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2009/04/programming-functions-in-c-part-two.html"&gt;Functions and usage in C part two &lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2009/05/programming-c-functions-coding.html"&gt;Coding in C functions&lt;/a&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2009/03/software-testing-spiral-model.html"&gt;&lt;br /&gt;&lt;/a&gt;&lt;a href="http://testingcorner.blogspot.com/2009/03/software-testing-spiral-model.html"&gt;&lt;/a&gt;&lt;a href="http://testingcorner.blogspot.com/2009/03/software-testing-spiral-model.html"&gt;Software testing spiral model&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;hr /&gt;  &lt;a href="http://www.testingcorner.net"&gt;SOFTWARE TESTING,JAVA,MICROSOFT DOT NET,C PROGRAMMING AT ONE PLACE&lt;/a&gt;&lt;/div&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Software Testing Spiral Model</title><link>http://testingcorner.blogspot.com/2009/03/software-testing-spiral-model.html</link><category>TEST TYPES</category><author>noreply@blogger.com (Unknown)</author><pubDate>Wed, 11 Mar 2009 21:37:00 +0530</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-36146758167178682.post-5534976556639141011</guid><description>&lt;div style="text-align: justify;"&gt;The spiral model  is based on the need to iterate. It contains as many iterations as are necessary to bring a product to fruition. Each iteration requires that the participants plan, define their life-cycle, prototype, analyze risks, write requirements, build models, detailed designs, code, unit, and system tests, and install.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(102, 0, 0);"&gt;Advantages :&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;ol&gt;&lt;li&gt;It is flexible and allows for multiple iterations.&lt;/li&gt;&lt;li&gt;It employs prototyping extensively.&lt;/li&gt;&lt;li&gt;It allows for the coexistence of other models .&lt;/li&gt;&lt;li&gt;It makes risk evaluation explicit.&lt;/li&gt;&lt;li&gt;It acknowledges the need to validate requirements and design.&lt;/li&gt;&lt;li&gt;It was originally designed with a particular need to accommodate COTS, and is therefore more amenable to software reuse.&lt;/li&gt;&lt;/ol&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhbPKVq-CM3cIhxCaktjyrZmeWtf51VvGrE4twVHv8rsREa-I5L229XOhQ58H2fBK-mf5l9DdTuK59hL_BC0LH7Bt_O2A-5YP2GvF2ogQgYl2O0EGW71KgvMe9cpOwjlEx9IyQCMokcUg/s1600-h/testing+spiral+model.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 299px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhbPKVq-CM3cIhxCaktjyrZmeWtf51VvGrE4twVHv8rsREa-I5L229XOhQ58H2fBK-mf5l9DdTuK59hL_BC0LH7Bt_O2A-5YP2GvF2ogQgYl2O0EGW71KgvMe9cpOwjlEx9IyQCMokcUg/s400/testing+spiral+model.png" alt="" id="BLOGGER_PHOTO_ID_5311968683024442546" border="0" /&gt;&lt;/a&gt;&lt;span style="font-weight: bold; color: rgb(102, 0, 0);"&gt;Disadvantages :&lt;/span&gt;&lt;br /&gt;&lt;ol&gt;&lt;li&gt;It is less easy to allocate phases to groups and responsibilities than other models.&lt;/li&gt;&lt;li&gt;It requires that staff are well-versed in software engineering.&lt;/li&gt;&lt;li&gt;It requires much team self-discipline in the capture of emerging requirements.&lt;/li&gt;&lt;li&gt;It does not acknowledge the need to have test input from the start of the project.&lt;/li&gt;&lt;li&gt;It allocates particular phases to requirements definition and high- and low-level design.&lt;/li&gt;&lt;li&gt;It doesn’t make the baselines explicit.&lt;/li&gt;&lt;li&gt;It doesn’t allow for process decomposition&lt;/li&gt;&lt;li&gt;Much prototype code may eventually be used in the final version.&lt;/li&gt;&lt;li&gt;It must be very tool-supported to work or it will either decay or become enmeshed in the&lt;br /&gt;bureaucracy it was intended to minimize.&lt;/li&gt;&lt;/ol&gt;&lt;span style="font-weight: bold; color: rgb(102, 0, 0);"&gt;Implications :&lt;/span&gt;&lt;br /&gt;&lt;ol&gt;&lt;li&gt;• The status of emerging requirements must be constantly reviewed.&lt;/li&gt;&lt;li&gt;• The team is committed to validating both the requirements and the design.&lt;/li&gt;&lt;li&gt;• Any use of prototype code in the production version will require much more rigorous   unit   testing than is normal.&lt;/li&gt;&lt;/ol&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;&lt;span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 20px; orphans: 2; text-align: justify; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;font-family:Arial;" &gt;&lt;span style="font-size:100%;"&gt;&lt;a href="http://testingcorner.blogspot.com/2009/03/software-testing-stage-gate-process.html"&gt;Software testing stage gate process model&lt;/a&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size: 100%;"&gt;&lt;a href="http://testingcorner.blogspot.com/2008/08/quality-assurence-and-control.html"&gt;SOFTWARE QUALITY ASSURANCE AND CONTROL&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/08/cost-of-software-quality.html"&gt;SOFTWARE QUALITY AND COST ASPECT&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/08/stable-process-software-testing-part.html"&gt;STABLE PROCESS OF SOFTWARE TESTING&lt;/a&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/08/stable-process-software-testing-part_12.html"&gt;&lt;br /&gt;STABLE PROCESS OF SOFTWARE TESTING PART TWO&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/08/defects-in-software-products.html"&gt;DEFECTS IN SOFTWARE TESTING&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/08/defect-reduction-software-testing.html"&gt;REDUCTION OF DEFECTS IN SOFTWARE TESTING&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/08/software-testing-effecting-factors.html"&gt;SOFTWARE TESTING AND EFFECTING FACTORS&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/08/scope-of-software-testing.html"&gt;SCOPE OF SOFTWARE TESTING&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/08/testing-life-cycle-part-one.html"&gt;TESTING LIFE CYCLE PART ONE&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/08/testing-life-cycle-part-two.html"&gt;TESTING LIFE CYCLE PART TWO&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/09/testing-life-cycle-part-three.html"&gt;TESTING LIFE CYCLE PART THREE&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/09/testing-software-and-constraints.html"&gt;SOFTWARE TESTING AND CONSTRAINTS WITH IN IT&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;hr /&gt;  &lt;a href="http://www.testingcorner.net"&gt;SOFTWARE TESTING,JAVA,MICROSOFT DOT NET,C PROGRAMMING AT ONE PLACE&lt;/a&gt;&lt;/div&gt;</description><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="72" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhbPKVq-CM3cIhxCaktjyrZmeWtf51VvGrE4twVHv8rsREa-I5L229XOhQ58H2fBK-mf5l9DdTuK59hL_BC0LH7Bt_O2A-5YP2GvF2ogQgYl2O0EGW71KgvMe9cpOwjlEx9IyQCMokcUg/s72-c/testing+spiral+model.png" width="72"/><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Software Testing Stage Gate Process Model</title><link>http://testingcorner.blogspot.com/2009/03/software-testing-stage-gate-process.html</link><category>TEST TYPES</category><author>noreply@blogger.com (Unknown)</author><pubDate>Tue, 10 Mar 2009 23:16:00 +0530</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-36146758167178682.post-3424517329148456820</guid><description>&lt;div style="text-align: justify;"&gt;Cooper’s stage gate model is a variant of the water fall. It splits the life-cycle into six stages separated by “gates.” Each gate is a decision point. It differs from the waterfall in that the activities in each stage may be simultaneous.&lt;br /&gt;&lt;br /&gt;The different stages of this model are explained below.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(102, 0, 0);"&gt;Discovery stage:&lt;/span&gt; a product manager thinks of a new idea for a product.&lt;br /&gt;Idea screen: the idea is presented to potential stakeholders for their buy-in.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(102, 0, 0);"&gt;Scoping stage:&lt;/span&gt; the market for the product is assessed and key features are identified.&lt;br /&gt;Second screen: the idea is re-presented to potential stakeholders for their buy-in, but with more-rigorous requirements and other information.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(102, 0, 0);"&gt;The business case stage:&lt;/span&gt; in which the product, market, organization, project management and environment, competitors, budget, RoI, and legal issues are defined.&lt;br /&gt;Go to development is the moment at which the organization can commit to the large budget required for development.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(102, 0, 0);"&gt;The development stage&lt;/span&gt; includes requirements refining, design, code, and build. Its output is a product ready for beta testing.&lt;br /&gt;Go to testing is the moment when the testing budget and the marketing and operational plans must be committed to. It is based on the continued existence of a market opportunity.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(102, 0, 0);"&gt;Testing&lt;/span&gt; is system and acceptance testing at internal and friendly customer sites. It generates a&lt;br /&gt;product fit for launch.&lt;br /&gt;Go to launch: is the moment when marketing and training plans become operative and we can launch the product.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgrtKTNJ7Oo9Vdit1fcvXJhm3L6OoXdkVOeMyhk1LDEks6u6BY0OmCGhWOQv7iie0BLGLNdK_EDNeOx83oi8XUHx9UdmVpQOQF03JPEVHXikn9rJrZPrGCo8LPIvMJMjPGvmzZUyUXbjA/s1600-h/water+fall+model+advanced+in+testing.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 206px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgrtKTNJ7Oo9Vdit1fcvXJhm3L6OoXdkVOeMyhk1LDEks6u6BY0OmCGhWOQv7iie0BLGLNdK_EDNeOx83oi8XUHx9UdmVpQOQF03JPEVHXikn9rJrZPrGCo8LPIvMJMjPGvmzZUyUXbjA/s400/water+fall+model+advanced+in+testing.png" alt="" id="BLOGGER_PHOTO_ID_5311618530592336370" border="0" /&gt;&lt;/a&gt;&lt;span style="font-weight: bold; color: rgb(102, 0, 0);"&gt;Problems with this model are&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;1• Half the activities are oriented to the development of a business case. Since this is likely to occupy between 5–10% of the total manpower, more detail on the other 90–95% of the manpower’s activities would be useful.&lt;br /&gt;&lt;br /&gt;2• No allowance has been made for the  requirements changes.&lt;br /&gt;&lt;br /&gt;3• Testing is relegated to the penultimate activity. The possibility that the requirements are deeply flawed will thus tend to be hidden. Similarly the testers will not learn how to use the product until too late causing considerable delay. The tests they prepare may thus need much rewriting.&lt;br /&gt;&lt;br /&gt;4• That a decision can be taken on the marketability of a product which has yet to enter beta testing requires enormous faith in the ability of developers. The amount of iteration between the development and testing groups is not shown, and the delays  can be considerable.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(102, 0, 0);"&gt;To overcome all these problems&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;1• Focus on the earliest access to the requirements as they are assembled.&lt;br /&gt;2• Get early access to prototype versions so they can prepare tests.&lt;br /&gt;3• Provide review and possibly modeling feedback to management such that inconsistent or missing requirements be identified asap.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(0, 51, 0);"&gt;Related :&lt;/span&gt;&lt;a href="http://testingcorner.blogspot.com/2009/03/waterfall-model.html"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/a&gt;&lt;a href="http://testingcorner.blogspot.com/2009/03/waterfall-model.html"&gt;Software testing water fall model&lt;/a&gt;&lt;br /&gt;&lt;span style="font-size: 100%;"&gt;&lt;a href="http://testingcorner.blogspot.com/2008/08/quality-assurence-and-control.html"&gt;SOFTWARE QUALITY ASSURANCE AND CONTROL&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/08/cost-of-software-quality.html"&gt;SOFTWARE QUALITY AND COST ASPECT&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/08/stable-process-software-testing-part.html"&gt;STABLE PROCESS OF SOFTWARE TESTING&lt;/a&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/08/stable-process-software-testing-part_12.html"&gt;&lt;br /&gt;STABLE PROCESS OF SOFTWARE TESTING PART TWO&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/08/defects-in-software-products.html"&gt;DEFECTS IN SOFTWARE TESTING&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/08/defect-reduction-software-testing.html"&gt;REDUCTION OF DEFECTS IN SOFTWARE TESTING&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/08/software-testing-effecting-factors.html"&gt;SOFTWARE TESTING AND EFFECTING FACTORS&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/08/scope-of-software-testing.html"&gt;SCOPE OF SOFTWARE TESTING&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/08/testing-life-cycle-part-one.html"&gt;TESTING LIFE CYCLE PART ONE&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/08/testing-life-cycle-part-two.html"&gt;TESTING LIFE CYCLE PART TWO&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/09/testing-life-cycle-part-three.html"&gt;TESTING LIFE CYCLE PART THREE&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/09/testing-software-and-constraints.html"&gt;SOFTWARE TESTING AND CONSTRAINTS WITH IN IT&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;hr /&gt;  &lt;a href="http://www.testingcorner.net"&gt;SOFTWARE TESTING,JAVA,MICROSOFT DOT NET,C PROGRAMMING AT ONE PLACE&lt;/a&gt;&lt;/div&gt;</description><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="72" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgrtKTNJ7Oo9Vdit1fcvXJhm3L6OoXdkVOeMyhk1LDEks6u6BY0OmCGhWOQv7iie0BLGLNdK_EDNeOx83oi8XUHx9UdmVpQOQF03JPEVHXikn9rJrZPrGCo8LPIvMJMjPGvmzZUyUXbjA/s72-c/water+fall+model+advanced+in+testing.png" width="72"/><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Waterfall Model</title><link>http://testingcorner.blogspot.com/2009/03/waterfall-model.html</link><category>TEST TYPES</category><author>noreply@blogger.com (Unknown)</author><pubDate>Mon, 9 Mar 2009 19:39:00 +0530</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-36146758167178682.post-2596048115407977282</guid><description>&lt;div style="text-align: justify;"&gt;&lt;span style="font-weight: bold; color: rgb(102, 0, 0);"&gt;The waterfall  model  consists of 5 phases:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;1. Requirements (in which the customer requirements are written).&lt;br /&gt;2. Design (in which the high and low-level design documents are written).&lt;br /&gt;3. Code (in which the code is written and (hopefully) unit tested).&lt;br /&gt;4. System test (which is where we come in).&lt;br /&gt;5. Installation and cut over.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhPPqfpF_digSqtB6SYPmt1dYv5oRCVkHx4RtUzMoBYoNvTAD38D8d-R_NiK4I2VR7SdaIv79D3HgoCifxLK4OF4hU3JfQ_0cTXHTyRk00RZsZFD7IgI0q6vy4xYPCH4enPcT4NZKdV9g/s1600-h/waterfall+model.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 195px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhPPqfpF_digSqtB6SYPmt1dYv5oRCVkHx4RtUzMoBYoNvTAD38D8d-R_NiK4I2VR7SdaIv79D3HgoCifxLK4OF4hU3JfQ_0cTXHTyRk00RZsZFD7IgI0q6vy4xYPCH4enPcT4NZKdV9g/s400/waterfall+model.png" alt="" id="BLOGGER_PHOTO_ID_5311192152266993538" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(102, 0, 0);"&gt;Disadvantages of waterfall model&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;ol style="text-align: justify;"&gt;&lt;li&gt;Bureaucrats believe such phases are finite and cannot be iterated upon.&lt;/li&gt;&lt;li&gt; It doesn’t allow for parallel activities such as prototyping or the development of user interface.&lt;/li&gt;&lt;li&gt;specifications  or for safety-critical system issues such as the development of a safety case.&lt;/li&gt;&lt;li&gt;It makes no mention of contract preparation, project management, reviews, or audits.&lt;/li&gt;&lt;li&gt;It implies that system testing starts only when coding is finished.&lt;/li&gt;&lt;li&gt;It says nothing about software reuse.&lt;/li&gt;&lt;/ol&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-weight: bold; color: rgb(102, 0, 0);"&gt;Advantages of waterfall model&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;ol style="text-align: justify;"&gt;&lt;li&gt; Each phase generates some baseline deliverable.&lt;/li&gt;&lt;li&gt; It is well-known.&lt;/li&gt;&lt;li&gt; It has been used for many years.&lt;/li&gt;&lt;li&gt; It is very adaptable.&lt;/li&gt;&lt;li&gt; Each process can be decomposed into others.&lt;/li&gt;&lt;li&gt; You can add any process you want.&lt;/li&gt;&lt;/ol&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-weight: bold; color: rgb(102, 0, 0);"&gt;Here&lt;/span&gt;&lt;br /&gt;&lt;ol&gt;&lt;li&gt; Each phase may have to be repeated (as requirements change, as prototypes evolve).&lt;/li&gt;&lt;li&gt; It needs to be seen in parallel with a number of other life-cycles with which it must stay  synchronized.&lt;/li&gt;&lt;li&gt; It can be modified for prototypes and software reuse.&lt;/li&gt;&lt;li&gt; Testing input begins at least as early as requirements definition .&lt;/li&gt;&lt;li&gt; Any change to requirements, design, or code must be  manually reflected through all levels of documentation to ensure all documents are consistent . then it is perfectly usable.&lt;/li&gt;&lt;/ol&gt;&lt;span style="font-weight: bold; color: rgb(0, 51, 0);"&gt;Related :&lt;/span&gt;&lt;a href="http://testingcorner.blogspot.com/2009/03/managing-risk-in-software-project.html"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/a&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;&lt;span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 20px; orphans: 2; text-align: justify; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;font-family:Arial;" &gt;&lt;span style="font-size:100%;"&gt;&lt;a href="http://testingcorner.blogspot.com/2009/03/managing-risk-in-software-project.html"&gt;Managing risk in software testing&lt;/a&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size: 100%;"&gt;&lt;a href="http://testingcorner.blogspot.com/2008/08/quality-assurence-and-control.html"&gt;SOFTWARE QUALITY ASSURANCE AND CONTROL&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/08/cost-of-software-quality.html"&gt;SOFTWARE QUALITY AND COST ASPECT&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/08/stable-process-software-testing-part.html"&gt;STABLE PROCESS OF SOFTWARE TESTING&lt;/a&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/08/stable-process-software-testing-part_12.html"&gt;&lt;br /&gt;STABLE PROCESS OF SOFTWARE TESTING PART TWO&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/08/defects-in-software-products.html"&gt;DEFECTS IN SOFTWARE TESTING&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/08/defect-reduction-software-testing.html"&gt;REDUCTION OF DEFECTS IN SOFTWARE TESTING&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/08/software-testing-effecting-factors.html"&gt;SOFTWARE TESTING AND EFFECTING FACTORS&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/08/scope-of-software-testing.html"&gt;SCOPE OF SOFTWARE TESTING&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/08/testing-life-cycle-part-one.html"&gt;TESTING LIFE CYCLE PART ONE&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/08/testing-life-cycle-part-two.html"&gt;TESTING LIFE CYCLE PART TWO&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/09/testing-life-cycle-part-three.html"&gt;TESTING LIFE CYCLE PART THREE&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/09/testing-software-and-constraints.html"&gt;SOFTWARE TESTING AND CONSTRAINTS WITH IN IT&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;hr /&gt;  &lt;a href="http://www.testingcorner.net"&gt;SOFTWARE TESTING,JAVA,MICROSOFT DOT NET,C PROGRAMMING AT ONE PLACE&lt;/a&gt;&lt;/div&gt;</description><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="72" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhPPqfpF_digSqtB6SYPmt1dYv5oRCVkHx4RtUzMoBYoNvTAD38D8d-R_NiK4I2VR7SdaIv79D3HgoCifxLK4OF4hU3JfQ_0cTXHTyRk00RZsZFD7IgI0q6vy4xYPCH4enPcT4NZKdV9g/s72-c/waterfall+model.png" width="72"/><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Managing Risk in Software Project</title><link>http://testingcorner.blogspot.com/2009/03/managing-risk-in-software-project.html</link><category>RISK ANALYSIS</category><author>noreply@blogger.com (Unknown)</author><pubDate>Sun, 8 Mar 2009 11:53:00 +0530</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-36146758167178682.post-5137342510441210610</guid><description>&lt;div style="text-align: justify;"&gt;&lt;span style="font-weight: bold; color: rgb(102, 0, 0);"&gt;Plan how to manage the project’s risks: &lt;/span&gt;The Risk Management Plan documents how risks will be managed. It is a subset of the project plan and is written before the project begins.&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(102, 0, 0);"&gt;Identify risks:&lt;/span&gt; One simple approach is to get representatives of all the affected groups in a room and have a workshop. Circulate a provisional list to excite attention. Get their ideas down onto large sheets of paper you can blu-tack to the walls. Circulate a revised list after the meeting.&lt;br /&gt;&lt;br /&gt;Repeat the process half-way through the project, and identify how many have not occurred, and how many unforeseen ones had occurred.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhcn6eOUVSazKw2luFTIBsnAqJs3fnWkan-kak8DYaYFvgt7Rzsv1XCp3u7otqEkNhau3j0TlrD3I6dC_ZNlNWb67dONfzQ2y-3g-9Slb84KlA3ChnQYAdY_deuhR7JcMqlJ_pZjMoV5g/s1600-h/risk+analysis.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 250px; height: 400px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhcn6eOUVSazKw2luFTIBsnAqJs3fnWkan-kak8DYaYFvgt7Rzsv1XCp3u7otqEkNhau3j0TlrD3I6dC_ZNlNWb67dONfzQ2y-3g-9Slb84KlA3ChnQYAdY_deuhR7JcMqlJ_pZjMoV5g/s400/risk+analysis.png" alt="" id="BLOGGER_PHOTO_ID_5310699880909674690" border="0" /&gt;&lt;/a&gt;&lt;span style="font-weight: bold; color: rgb(102, 0, 0);"&gt;Risk Alerts&lt;/span&gt;  are the triggers used to identify when a risk is imminent. Typical test-related triggers are:&lt;br /&gt;&lt;ol&gt;&lt;li&gt; Reduction in the number of lines of code per bug found.&lt;/li&gt;&lt;li&gt; Finding an unacceptably-high number of priority-1 and -2 bugs in a build.&lt;/li&gt;&lt;li&gt; Finding an unacceptably-high number of bugs in a component.&lt;/li&gt;&lt;li&gt; Late arrival of signed-off specifications for use as a baseline.&lt;/li&gt;&lt;li&gt; Failure of performance tests to achieve targets.&lt;/li&gt;&lt;li&gt; Growing code complexity.&lt;/li&gt;&lt;li&gt; Growing code turmoil.&lt;/li&gt;&lt;/ol&gt;Monitoring such risks is easier when an alerting system is in place. The existence of a risk log allows the test team to identify priorities and provides a good basis for deciding the mix of tests to be planned.&lt;br /&gt;&lt;br /&gt;Risks can be grouped by sources  and by kinds and a risk kind is for example that something doesn’t work, that it works too late, too slowly, at the wrong time, or that it has unintended side-effects. These groups are sensitive to risk drivers in that a driver can change a whole group of risks.&lt;br /&gt;&lt;br /&gt;The failure of the project to use an appropriate development method was having a knock-on effect throughout the whole of the project. It was a source of risks and a major driver. Here are some more are&lt;br /&gt;&lt;ol&gt;&lt;li&gt; Use of an inappropriate (unrelated to the risk) method or process.&lt;/li&gt;&lt;li&gt; Lack of customer involvement:Apart from the obvious need for a sufficient set of requirements&lt;/li&gt;&lt;li&gt;There is the need for feedback to users of (fragments of) the proposed solution.&lt;/li&gt;&lt;li&gt; Dissimilarity to previous projects: If “we’ve never done anything as (big/complex/different) as this before” is an issue, then beware.&lt;/li&gt;&lt;li&gt; Project complexity: This is relative to the experience of an organization. What might exhaust some organizations will be run-of-the-mill to others.&lt;/li&gt;&lt;li&gt;• Requirements volatility:If such changes aren’t allowed for, the project will soon deteriorate.(56)&lt;/li&gt;&lt;/ol&gt;&lt;span style="font-weight: bold; color: rgb(0, 51, 0);"&gt;Related :&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2009/03/how-do-we-test-software.html"&gt;How do we test a software ?&lt;/a&gt;&lt;a href="http://testingcorner.blogspot.com/2009/03/how-do-we-test-software.html"&gt;&lt;br /&gt;&lt;/a&gt;&lt;span style="font-size: 100%;"&gt;&lt;a href="http://testingcorner.blogspot.com/2008/08/quality-assurence-and-control.html"&gt;SOFTWARE QUALITY ASSURANCE AND CONTROL&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/08/cost-of-software-quality.html"&gt;SOFTWARE QUALITY AND COST ASPECT&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/08/stable-process-software-testing-part.html"&gt;STABLE PROCESS OF SOFTWARE TESTING&lt;/a&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/08/stable-process-software-testing-part_12.html"&gt;&lt;br /&gt;STABLE PROCESS OF SOFTWARE TESTING PART TWO&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/08/defects-in-software-products.html"&gt;DEFECTS IN SOFTWARE TESTING&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/08/defect-reduction-software-testing.html"&gt;REDUCTION OF DEFECTS IN SOFTWARE TESTING&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/08/software-testing-effecting-factors.html"&gt;SOFTWARE TESTING AND EFFECTING FACTORS&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/08/scope-of-software-testing.html"&gt;SCOPE OF SOFTWARE TESTING&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/08/testing-life-cycle-part-one.html"&gt;TESTING LIFE CYCLE PART ONE&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/08/testing-life-cycle-part-two.html"&gt;TESTING LIFE CYCLE PART TWO&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/09/testing-life-cycle-part-three.html"&gt;TESTING LIFE CYCLE PART THREE&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/09/testing-software-and-constraints.html"&gt;SOFTWARE TESTING AND CONSTRAINTS WITH IN IT&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;hr /&gt;  &lt;a href="http://www.testingcorner.net"&gt;SOFTWARE TESTING,JAVA,MICROSOFT DOT NET,C PROGRAMMING AT ONE PLACE&lt;/a&gt;&lt;/div&gt;</description><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="72" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhcn6eOUVSazKw2luFTIBsnAqJs3fnWkan-kak8DYaYFvgt7Rzsv1XCp3u7otqEkNhau3j0TlrD3I6dC_ZNlNWb67dONfzQ2y-3g-9Slb84KlA3ChnQYAdY_deuhR7JcMqlJ_pZjMoV5g/s72-c/risk+analysis.png" width="72"/><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>How do we test a software ?</title><link>http://testingcorner.blogspot.com/2009/03/how-do-we-test-software.html</link><category>TEST PROCESS</category><author>noreply@blogger.com (Unknown)</author><pubDate>Thu, 5 Mar 2009 20:53:00 +0530</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-36146758167178682.post-3600148251054468584</guid><description>&lt;div style="text-align: justify;"&gt;The following are the different techniques of software testing on the open basis.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(102, 0, 0);"&gt;Functional&lt;/span&gt; (black-box) methods can be applied to any unit, build, or system, since they assume no knowledge of how either was constructed or what it contains. Such methods require a sufficient and unambiguous specification if they are to be effective. (Devising black-box tests for some code from its specification at the time the specification is written is a useful verification of the specification; if it can’t be done, the specification isn’t good enough.) This is what you will normally do for a system test.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(102, 0, 0);"&gt;Structural&lt;/span&gt; (white-box) methods can also be used on any unit or build, but are cheapest to devise when used on structured programs, e.g., well-written programs in a structured language. These are usually applied to unit tests.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(102, 0, 0);"&gt;Dynamic analysis&lt;/span&gt; techniques are derivative methods which assume that a particular technique such as condition tables, finite state machines, object-orientation, or functional programming, has been used to develop the software; we use knowledge of that technique to determine the test cases, so these have very special areas of application. These can be applied at both system test and unit test times. These are usually applied to unit tests.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(102, 0, 0);"&gt;Static analysis&lt;/span&gt; techniques can best be used before integration, and can also point to the need for more-rigorous unit testing. These require using tools to analyze the source code .These are usually applied to unit tests.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(102, 0, 0);"&gt;Symbolic evaluation&lt;/span&gt; carried out by an automated symbolic evaluation tool places no special requirement on the unit, except of course that it be in the language evaluated by the tool. This involves “dry-running” the code, and recording the output values of variables algebraically rather than using specific values for input variables . This is usually applied to unit tests.&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;span style="font-weight: bold; color: rgb(0, 51, 0);"&gt;Other Programming Courses :&lt;/span&gt;&lt;br /&gt;&lt;a style="color: rgb(0, 0, 0);" href="http://www.testingcorner.net/2008/08/aspnet-programming-complete-part-one.html"&gt;&lt;span style="font-weight: bold;"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;&lt;span style="font-size: 100%;"&gt;&lt;a href="http://testingcorner.blogspot.com/2008/09/testing-software-and-constraints-part.html"&gt;TESTING CONSTRAINTS PART TWO&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/09/life-cycle-teting.html"&gt;LIFE CYCLE TESTING&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/09/testing-metrices.html"&gt;TEST METRICS&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/10/independent-software-testing.html"&gt;Independent Software Testing&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/10/test-process.html"&gt;Test Process&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/software-testing-verification-and.html"&gt;Testing verification and validation&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/software-testing-functional-and.html"&gt;Functional and structural testing&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/software-testing-static-and-dynamic.html"&gt;Static and dynamic testing&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/software-v-model-testing.html"&gt;V model testing&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/softeare-testing-v-model-11-steps.html"&gt;Eleven steps of V model testing&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/software-teting-structural.html"&gt;Structural testing&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/12/software-testing-execution-testing.html"&gt;Execution testing technique&lt;/a&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/12/recovery-testing-technique.html"&gt;&lt;br /&gt;Recovery Testing technique &lt;/a&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/12/software-testing-operations-technique.html"&gt;&lt;br /&gt;Operation testing technique&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/12/compliance-software-testing-technique.html"&gt;Compliance software testing technique&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/12/security-testing-technique.html"&gt;Security testing technique&lt;/a&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;hr /&gt;  &lt;a href="http://www.testingcorner.net"&gt;SOFTWARE TESTING,JAVA,MICROSOFT DOT NET,C PROGRAMMING AT ONE PLACE&lt;/a&gt;&lt;/div&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>XML Logical Structure</title><link>http://testingcorner.blogspot.com/2009/03/xml-logical-structure.html</link><category>XML</category><author>noreply@blogger.com (Unknown)</author><pubDate>Mon, 2 Mar 2009 16:16:00 +0530</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-36146758167178682.post-3410865866609500894</guid><description>&lt;div style="text-align: justify;"&gt;HTML uses its tags as if  they were style switches. The start tag turns a feature on, such as underlining,  and an end tag turns it off again. XML uses its start tags and end tags as  containers.&lt;br /&gt;&lt;/div&gt;&lt;p style="text-align: justify;"&gt;The start tag, the content, and the end tag all form a  single element. Elements are the building bricks out of which an XML document is  assembled. Each XML document must have only one root element, and all the other  elements must be &lt;i&gt;perfectly nested&lt;/i&gt; inside that element. This means that if  an element contains other elements, those elements must be completely enclosed  within that element.&lt;/p&gt;&lt;div style="text-align: justify;"&gt; &lt;/div&gt;&lt;p style="text-align: justify;"&gt;If we  sketch out the structure of the elements in this XML document, you’ll obtain the  kind of tree structure of elements shown in figure below.&lt;br /&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt; &lt;/div&gt;&lt;p style="text-align: justify;"&gt;As we can see from figure , the document has a sort of tree-like  structure, with the root element (&lt;small&gt;&amp;amp;lthome.page&gt;&lt;/small&gt;) at the  top of the tree (or the base, depending on how you look at it). All the elements  that are inside this element are neatly contained within each other. An XML  document must contain one and only one root element, and there must not be any  elements that are either partially or completely outside, before or after, that  element.&lt;/p&gt;&lt;div style="text-align: justify;"&gt; &lt;/div&gt;&lt;p style="text-align: justify;"&gt;To make it easier to refer to the relationships between elements and to  elements with respect to other elements, we could say that an element is the  &lt;i&gt;parent&lt;/i&gt; of the elements that it contains. The elements that are inside an  element are called its &lt;i&gt;children.&lt;/i&gt; Elements that share the same parent  element are called &lt;i&gt;siblings.&lt;/i&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p style="text-align: justify;"&gt;In the simple example shown in Figure ,  &lt;small&gt;&amp;amp;lthome.page&gt;&lt;/small&gt; is the parent of all the other elements,  &lt;small&gt;&amp;amp;lttext&gt;&lt;/small&gt; is the parent of &lt;small&gt;&amp;amp;ltpara&gt;&lt;/small&gt;,  &lt;small&gt;&amp;amp;lttitle&gt;&lt;/small&gt; is a child of &lt;small&gt;&amp;amp;lthead&gt;&lt;/small&gt;,  and &lt;small&gt;&amp;amp;lttitle&gt;&lt;/small&gt; and &lt;small&gt;&amp;amp;ltbanner&gt;&lt;/small&gt; are  siblings. Going down the element tree, each child element must be fully  contained within its parent element. Sibling elements may not overlap.&lt;/p&gt;&lt;p style="text-align: justify;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi_jTuTJYNFCtxgdyprkvR4emPMXN6s1-TOM_VkWe1XMYZmZrb5lSSOrkgK-U7RbgqDoSVydpsebUNm4Uyi9Lm_hMcn9RrDqlK5bqSB8cHfIfF4lMcuXmrWB_veKDZR2WzYcNT_bQGBgA/s1600-h/xml+data+flow.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 280px; height: 400px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi_jTuTJYNFCtxgdyprkvR4emPMXN6s1-TOM_VkWe1XMYZmZrb5lSSOrkgK-U7RbgqDoSVydpsebUNm4Uyi9Lm_hMcn9RrDqlK5bqSB8cHfIfF4lMcuXmrWB_veKDZR2WzYcNT_bQGBgA/s400/xml+data+flow.png" alt="" id="BLOGGER_PHOTO_ID_5308541292470368738" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p style="text-align: justify;"&gt;The arrangement of the elements in an XML document is called the &lt;i&gt;logical  structure&lt;/i&gt;. As you will see next, an XML document also has a physical  structure. In order to be usable  the logical and physical structure of an XML document must  be &lt;i&gt;synchronous&lt;/i&gt;; they must be completely and properly nested inside each  other.&lt;/p&gt;&lt;p&gt;&lt;span style="font-weight: bold; color: rgb(0, 51, 0);"&gt;Related Post&lt;/span&gt;&lt;br /&gt;&lt;/p&gt;&lt;a href="http://testingcorner.blogspot.com/2009/02/xml-document-anatomy-part-two.html"&gt;XML anatomy part two&lt;/a&gt;&lt;br /&gt;&lt;span style="font-size: 100%;"&gt;&lt;a href="http://testingcorner.blogspot.com/2008/09/testing-software-and-constraints-part.html"&gt;TESTING CONSTRAINTS PART TWO&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/09/life-cycle-teting.html"&gt;LIFE CYCLE TESTING&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/09/testing-metrices.html"&gt;TEST METRICS&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/10/independent-software-testing.html"&gt;Independent Software Testing&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/10/test-process.html"&gt;Test Process&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/software-testing-verification-and.html"&gt;Testing verification and validation&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/software-testing-functional-and.html"&gt;Functional and structural testing&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/software-testing-static-and-dynamic.html"&gt;Static and dynamic testing&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/software-v-model-testing.html"&gt;V model testing&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/softeare-testing-v-model-11-steps.html"&gt;Eleven steps of V model testing&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/software-teting-structural.html"&gt;Structural testing&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/12/software-testing-execution-testing.html"&gt;Execution testing technique&lt;/a&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/12/recovery-testing-technique.html"&gt;&lt;br /&gt;Recovery Testing technique &lt;/a&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/12/software-testing-operations-technique.html"&gt;&lt;br /&gt;Operation testing technique&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/12/compliance-software-testing-technique.html"&gt;Compliance software testing technique&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/12/security-testing-technique.html"&gt;Security testing technique&lt;/a&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;hr /&gt;  &lt;a href="http://www.testingcorner.net"&gt;SOFTWARE TESTING,JAVA,MICROSOFT DOT NET,C PROGRAMMING AT ONE PLACE&lt;/a&gt;&lt;/div&gt;</description><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="72" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi_jTuTJYNFCtxgdyprkvR4emPMXN6s1-TOM_VkWe1XMYZmZrb5lSSOrkgK-U7RbgqDoSVydpsebUNm4Uyi9Lm_hMcn9RrDqlK5bqSB8cHfIfF4lMcuXmrWB_veKDZR2WzYcNT_bQGBgA/s72-c/xml+data+flow.png" width="72"/><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>XML Document Anatomy part two</title><link>http://testingcorner.blogspot.com/2009/02/xml-document-anatomy-part-two.html</link><category>XML</category><author>noreply@blogger.com (Unknown)</author><pubDate>Wed, 25 Feb 2009 17:12:00 +0530</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-36146758167178682.post-5839674537875453721</guid><description>&lt;div style="text-align: justify;"&gt;This post is in continuation with &lt;a href="http://testingcorner.blogspot.com/2009/02/xml-document-anatomy.html"&gt; &lt;/a&gt;&lt;a href="http://testingcorner.blogspot.com/2009/02/xml-document-anatomy.html"&gt;XML Document Anatomy part one&lt;/a&gt; and going through the&lt;a href="http://www.testingcorner.net/2009/02/xml-document-anatomy.html"&gt;&lt;/a&gt; will give you more comfort in understanding  the present topic.
&lt;br /&gt;
&lt;br /&gt;&lt;/div&gt;&lt;h4 style="text-align: justify;"&gt;&lt;a name="Heading5"&gt;&lt;/a&gt;&lt;span style="color: rgb(0, 0, 119);"&gt;&lt;span style="color: rgb(102, 0, 0);"&gt;The Root Element &lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(102, 0, 0);"&gt;(Lines 2 through 23)&lt;/span&gt;&lt;span style="color: rgb(0, 0, 119);"&gt;&lt;span style="color: rgb(102, 0, 0);"&gt;&lt;/span&gt;
&lt;br /&gt;&lt;/span&gt;&lt;/h4&gt;&lt;div style="text-align: justify;"&gt; &lt;/div&gt;&lt;p style="text-align: justify;"&gt;Each XML document must have only one root element, and all the other elements  must be completely enclosed in that element. Line 2 identifies the start of the&lt;/p&gt;&lt;p style="text-align: justify;"&gt;&lt;/p&gt;&lt;blockquote&gt;&amp;amp;lthome.page&amp;gt;
&lt;br /&gt;&lt;/blockquote&gt;   element (the start tag), and line 23  identifies the end of the element (the end tag).&lt;p&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt; &lt;/div&gt;&lt;p style="text-align: justify;"&gt;Note that unlike HTML, in which a
&lt;br /&gt;&lt;/p&gt;&lt;blockquote&gt;&lt;pre&gt;&amp;amp;ltP&amp;gt;
&lt;br /&gt;&lt;/pre&gt;&lt;/blockquote&gt;&lt;div style="text-align: justify;"&gt; tag might often  be used as a sort of formatting instruction to insert a blank line between paragraphs of text, in XML an element normally consists of three things: a start  tag, content (either text or other elements), and an end tag.&lt;/div&gt;&lt;p&gt;&lt;/p&gt;&lt;p style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;An XML element doesn’t always have content. Empty elements, such as the  IMG element in HTML that simply points to an external graphics file through its  SRC attribute, obviously have no content. An empty element might have an end  tag, but it can have a special form of start tag that allows an explicit end tag  to be omitted.&lt;/span&gt;&lt;/p&gt;&lt;p style="text-align: justify;"&gt;the name you use in the element start tag must exactly match the name you use in  the end tag. If you want to use an odd combination of cases to increase the  legibility of long names .&lt;/p&gt;&lt;p style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;XML is case sensitive, recognizing the difference between uppercase  letters (A–Z) and lowercase letters (a–z). In applications that aren’t case  sensitive, mixed-case characters are usually converted—&lt;i&gt;folded&lt;/i&gt; into one  case or the other. The ASCII character set usually folds to uppercase  characters. Unicode usually folds to lowercase characters. XML has to account  for this, and for the fact that it might have to deal with languages in which  the case folding is uncertain. Therefore, XML defaults to lowercase (and the XML  declaration also has to be in lowercase).
&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;&lt;h4 align="left"&gt;&lt;a name="Heading6"&gt;&lt;/a&gt;&lt;span style="color: rgb(102, 0, 0);"&gt;An Empty Element (Line  13)&lt;/span&gt;&lt;/h4&gt; &lt;p&gt;Empty elements are a special case in XML. In SGML and HTML, it is obvious  from the DTD’s definition of an empty element that it is empty and has no  comment. XML, in keeping with its developers’ design goals, requires you to be  much more explicit. Indeed, you might not use a DTD at all, so it could be hard  to decide whether an element is or should be empty. Therefore, empty elements  have to be very clearly identified as such. To do so, there is a special empty  tag close delimiter, &lt;small&gt;/&gt;&lt;/small&gt;, as in the following:&lt;/p&gt; &lt;p&gt;&lt;!-- CODE SNIP //--&gt;&lt;/p&gt;&lt;pre&gt;&amp;amp;ltempty_element/&gt;
&lt;br /&gt;&lt;/pre&gt; &lt;p&gt;&lt;!-- END CODE SNIP //--&gt;&lt;/p&gt; &lt;p&gt;To maintain a certain degree of backward-compatibility with SGML (until such  time as the SGML standard is updated to allow the use of empty-tag close  delimiters), and to make the conversion of existing SGML and HTML code into XML  a little easier (a process called &lt;i&gt;normalization&lt;/i&gt;, which adds end tags to  all elements and is supported by a lot of SGML tools), you can use an end tag  instead of the special empty tag close delimiter. The element declaration&lt;/p&gt; &lt;p&gt;&lt;!-- CODE SNIP //--&gt;&lt;/p&gt;&lt;pre&gt;blockquote&gt;
&lt;br /&gt;&lt;pre&gt;&amp;amp;ltgraphic source=”file.gif”/&amp;gt;
&lt;br /&gt;
&lt;br /&gt;is therefore interchangeable with
&lt;br /&gt;
&lt;br /&gt;&amp;amp;ltgraphic source=”file.gif”&amp;gt;&amp;lt;/graphic&amp;gt;
&lt;br /&gt;
&lt;br /&gt;&lt;/pre&gt;&lt;/pre&gt;&lt;h4 align="left"&gt;&lt;a name="Heading7"&gt;&lt;/a&gt;&lt;span style="font-weight: bold; color: rgb(102, 0, 0);"&gt;Attributes (Lines 7 and  22)&lt;/span&gt;&lt;/h4&gt; &lt;p&gt;Element tags can include one or more optional or mandatory attributes that  give further information about the elements they delimit. &lt;/p&gt; &lt;p&gt;Attributes can only be specified in the element start tag. The syntax for  specifying an attribute is&lt;/p&gt; &lt;p&gt;&lt;!-- CODE SNIP //--&gt;&lt;/p&gt;&lt;&lt;i&gt;element.type.name attribute.name=&lt;/i&gt;”&lt;i&gt;attribute.value&lt;/i&gt;”&gt;  &lt;p&gt;&lt;!-- END CODE SNIP //--&gt;&lt;/p&gt; &lt;p&gt;If elements were nouns, attributes would be adjectives. We could therefore  say &lt;/p&gt; &lt;p&gt;&lt;!-- CODE SNIP //--&gt;&lt;/p&gt;&amp;amp;ltfruit taste=”sharp”&gt;  &lt;p&gt;&lt;!-- END CODE SNIP //--&gt;&lt;/p&gt; &lt;p&gt;or even &lt;/p&gt; &lt;p&gt;&lt;!-- CODE SNIP //--&gt;&lt;/p&gt;&amp;amp;ltproblem size=”huge” cause=”unknown” solution=”run.away”&gt;  &lt;p&gt;&lt;!-- END CODE SNIP //--&gt;&lt;/p&gt; &lt;p&gt;An attribute can only be specified in an element start tag. &lt;/p&gt; &lt;p&gt;In direct contrast to SGML and HTML, in which multiple declarations are  considered to be fatal errors, XML deals with multiple declarations of  attributes in a unique manner. If an element appears once with one set of  attributes and then appears again with a different set of attributes, the two  sets of attributes are merged. The first declaration of an attribute for a  particular element is the only one that counts, and any other declarations are  ignored. The XML processor might warn you about the appearance of multiple  declarations, but it is not required to do so and processing can continue as  normal.&lt;/p&gt;&lt;p&gt;&lt;span style="font-weight: bold; color: rgb(0, 51, 0);"&gt;Related Post&lt;/span&gt;
&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;a href="http://testingcorner.blogspot.com/2009/02/xml-document-anatomy.html"&gt;Xml introduction
&lt;br /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 100%;"&gt;&lt;a href="http://testingcorner.blogspot.com/2008/09/testing-software-and-constraints-part.html"&gt;TESTING CONSTRAINTS PART TWO&lt;/a&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/09/life-cycle-teting.html"&gt;LIFE CYCLE TESTING&lt;/a&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/09/testing-metrices.html"&gt;TEST METRICS&lt;/a&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/10/independent-software-testing.html"&gt;Independent Software Testing&lt;/a&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/10/test-process.html"&gt;Test Process&lt;/a&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/software-testing-verification-and.html"&gt;Testing verification and validation&lt;/a&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/software-testing-functional-and.html"&gt;Functional and structural testing&lt;/a&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/software-testing-static-and-dynamic.html"&gt;Static and dynamic testing&lt;/a&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/software-v-model-testing.html"&gt;V model testing&lt;/a&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/softeare-testing-v-model-11-steps.html"&gt;Eleven steps of V model testing&lt;/a&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/software-teting-structural.html"&gt;Structural testing&lt;/a&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/12/software-testing-execution-testing.html"&gt;Execution testing technique&lt;/a&gt;
&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/12/recovery-testing-technique.html"&gt;
&lt;br /&gt;Recovery Testing technique &lt;/a&gt;
&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/12/software-testing-operations-technique.html"&gt;
&lt;br /&gt;Operation testing technique&lt;/a&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/12/compliance-software-testing-technique.html"&gt;Compliance software testing technique&lt;/a&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/12/security-testing-technique.html"&gt;Security testing technique&lt;/a&gt;
&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;hr /&gt;  &lt;a href="http://www.testingcorner.net"&gt;SOFTWARE TESTING,JAVA,MICROSOFT DOT NET,C PROGRAMMING AT ONE PLACE&lt;/a&gt;&lt;/div&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>XML Document Anatomy</title><link>http://testingcorner.blogspot.com/2009/02/xml-document-anatomy.html</link><category>XML</category><author>noreply@blogger.com (Unknown)</author><pubDate>Mon, 23 Feb 2009 16:28:00 +0530</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-36146758167178682.post-6917588193889808064</guid><description>&lt;p style="text-align: justify;"&gt;XML’s rules for  distinguishing between markup and content are : &lt;/p&gt;&lt;div style="text-align: justify;"&gt;1.The start of markup is identified by either the less-than symbol  (&lt;small&gt;&lt;&lt;/small&gt;) or the ampersand character (&lt;small&gt;&amp;amp;&lt;/small&gt;).
&lt;br /&gt;
&lt;br /&gt;2. Three other characters are also treated as markup characters: the greater-than  symbol (&lt;small&gt;&gt;&lt;/small&gt;), the apostrophe or single quote,  (&lt;small&gt;‘&lt;/small&gt;), and the (double) quotation mark (&lt;small&gt;“&lt;/small&gt;).
&lt;br /&gt;
&lt;br /&gt;3.If you want to use any of the preceding special characters as normal characters,  you must “escape” them by using the general entities that represent them.
&lt;br /&gt;
&lt;br /&gt;To &lt;i&gt;escape&lt;/i&gt; a character means to conceal it from a subsequent software  package or process. It is often used in computing terms to refer to prefixing  certain characters in programming languages with a special character string to  prevent them from being interpreted as special characters.
&lt;br /&gt;
&lt;br /&gt;Originally the ESC  (escape) character string was used to prefix commands sent to the printer itself  to control such things as the font or page size and distinguish the command  strings from printable characters.
&lt;br /&gt;
&lt;br /&gt;4.Everything that is not markup is content (character data).
&lt;br /&gt;
&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiFB-E3B7-qQZ_zZ6e_cxvtJ9daISI8hu9CEP4ODlgXBRVmL0ND1VztEJWE0DaHk4Hx9NOiV2ZpKnBMLhsoq6nNuEtUqsxqoaRTqRYkEdc8k01TZRKsIyxlDRhA9uElIbhiqL3lG97bAQ/s1600-h/xml+predefined.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 278px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiFB-E3B7-qQZ_zZ6e_cxvtJ9daISI8hu9CEP4ODlgXBRVmL0ND1VztEJWE0DaHk4Hx9NOiV2ZpKnBMLhsoq6nNuEtUqsxqoaRTqRYkEdc8k01TZRKsIyxlDRhA9uElIbhiqL3lG97bAQ/s400/xml+predefined.png" alt="" id="BLOGGER_PHOTO_ID_5305947386559740274" border="0" /&gt;&lt;/a&gt;
&lt;br /&gt;&lt;p&gt;The following code shows the XML code for a Web home page. This is a very simple  example, but it contains all the important parts that you will find in nearly  all XML documents.
&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;blockquote&gt;
&lt;br /&gt;&lt;pre&gt;
&lt;br /&gt;1:  &amp;lt;?xml version=”1.0”?&amp;gt;
&lt;br /&gt;2:   &amp;amp;lthome.page&amp;gt;
&lt;br /&gt;3:     &amp;amp;lthead&amp;gt;
&lt;br /&gt;4:       &amp;amp;lttitle&amp;gt;
&lt;br /&gt;5:         My Home Page
&lt;br /&gt;6:       &amp;lt;/title&amp;gt;
&lt;br /&gt;7:       &amp;amp;ltbanner source=”topbanner.gif”/&amp;gt;
&lt;br /&gt;8:     &amp;lt;/head&amp;gt;
&lt;br /&gt;9:     &amp;amp;ltbody&amp;gt;
&lt;br /&gt;10:       &amp;amp;ltmain.title&amp;gt;
&lt;br /&gt;11:         Welcome to My Home Page
&lt;br /&gt;12:      &amp;lt;/main.title&amp;gt;
&lt;br /&gt;13:      &amp;amp;ltrule/&amp;gt;
&lt;br /&gt;14:      &amp;amp;lttext&amp;gt;
&lt;br /&gt;15:        &amp;amp;ltpara&amp;gt;
&lt;br /&gt;16:          Sorry, this home page is still
&lt;br /&gt;17:          under construction. Please come
&lt;br /&gt;18:          back soon!
&lt;br /&gt;19:        &amp;lt;/para&amp;gt;
&lt;br /&gt;20:      &amp;lt;/text&amp;gt;
&lt;br /&gt;21:    &amp;lt;/body&amp;gt;
&lt;br /&gt;22:    &amp;amp;ltfooter source=”foot.gif”/&amp;gt;
&lt;br /&gt;23:  &amp;lt;/home.page&amp;gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;/pre&gt;
&lt;br /&gt;&lt;/blockquote&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-weight: bold; color: rgb(0, 51, 0);"&gt;Related Post&lt;/span&gt;
&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;a href="http://testingcorner.blogspot.com/2009/02/xml-introduction.html"&gt;XML Introduction&lt;/a&gt;
&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 100%;"&gt;&lt;a href="http://testingcorner.blogspot.com/2008/09/testing-software-and-constraints-part.html"&gt;TESTING CONSTRAINTS PART TWO&lt;/a&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/09/life-cycle-teting.html"&gt;LIFE CYCLE TESTING&lt;/a&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/09/testing-metrices.html"&gt;TEST METRICS&lt;/a&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/10/independent-software-testing.html"&gt;Independent Software Testing&lt;/a&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/10/test-process.html"&gt;Test Process&lt;/a&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/software-testing-verification-and.html"&gt;Testing verification and validation&lt;/a&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/software-testing-functional-and.html"&gt;Functional and structural testing&lt;/a&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/software-testing-static-and-dynamic.html"&gt;Static and dynamic testing&lt;/a&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/software-v-model-testing.html"&gt;V model testing&lt;/a&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/softeare-testing-v-model-11-steps.html"&gt;Eleven steps of V model testing&lt;/a&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/software-teting-structural.html"&gt;Structural testing&lt;/a&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/12/software-testing-execution-testing.html"&gt;Execution testing technique&lt;/a&gt;
&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/12/recovery-testing-technique.html"&gt;
&lt;br /&gt;Recovery Testing technique &lt;/a&gt;
&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/12/software-testing-operations-technique.html"&gt;
&lt;br /&gt;Operation testing technique&lt;/a&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/12/compliance-software-testing-technique.html"&gt;Compliance software testing technique&lt;/a&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/12/security-testing-technique.html"&gt;Security testing technique&lt;/a&gt;
&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;hr /&gt;  &lt;a href="http://www.testingcorner.net"&gt;SOFTWARE TESTING,JAVA,MICROSOFT DOT NET,C PROGRAMMING AT ONE PLACE&lt;/a&gt;&lt;/div&gt;</description><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="72" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiFB-E3B7-qQZ_zZ6e_cxvtJ9daISI8hu9CEP4ODlgXBRVmL0ND1VztEJWE0DaHk4Hx9NOiV2ZpKnBMLhsoq6nNuEtUqsxqoaRTqRYkEdc8k01TZRKsIyxlDRhA9uElIbhiqL3lG97bAQ/s72-c/xml+predefined.png" width="72"/><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>XML Introduction</title><link>http://testingcorner.blogspot.com/2009/02/xml-introduction.html</link><category>XML</category><author>noreply@blogger.com (Unknown)</author><pubDate>Sat, 21 Feb 2009 17:06:00 +0530</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-36146758167178682.post-5106924155847096989</guid><description>&lt;div style="text-align: justify;"&gt;&lt;span style="font-weight: bold; color: rgb(102, 0, 0);"&gt;Problems with HTML :&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 102, 0);"&gt;1.&lt;/span&gt;&lt;b style="color: rgb(0, 102, 0);"&gt;HTML  has syntactic checking and Validation constraints:&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;There are formal definitions of the structure of HTML documents. HTML is an SGML application and there is a document type definition  (DTD) for every version of HTML. Web browsers are designed to accept almost anything that looks even slightly  like HTML .The only tag that is  compulsory in an HTML document is the &lt;small&gt;TITLE&lt;/small&gt; tag; and this is one of the least common tags there is.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(0, 102, 0);"&gt;2. &lt;/span&gt;&lt;b style="font-weight: bold; color: rgb(0, 102, 0);"&gt;HTML  content awareness problems:&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Searching the Web is  complicated by the fact that HTML doesn’t give you a way to describe the  information content i.e the semantics of  documents. In XML you can use any tags  you like (such as &lt;small&gt;&amp;amp;ltNAME&gt;&lt;/small&gt; instead of  &lt;small&gt;&amp;amp;ltH3&gt;&lt;/small&gt;), but using attributes in tags (such as  &lt;small&gt;&amp;amp;ltH3 CLASS=“name”&gt;&lt;/small&gt;) can embed just as much semantic  information as custom tags can.&lt;br /&gt;&lt;br /&gt;Without any agreement on tag names, the value of  custom tags becomes a bit doubtful. To worsen matters, the same tag name in one  context can mean something completely different in another. Furthermore, there  are the complications of foreign languages—seeing  &lt;small&gt;&amp;amp;ltinkoopprijs&gt;&lt;/small&gt; isn’t going to help very much if you don’t  know that it’s Dutch for “purchase price.”&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="color: rgb(0, 102, 0);"&gt;HTML is not object-oriented&lt;/span&gt;:&lt;br /&gt;&lt;/b&gt;&lt;br /&gt;Modern programmers have been  making a long and difficult transition to object-oriented techniques. They want  to leverage these skills and have such things as inheritance, and HTML has done  very little to accommodate them.&lt;br /&gt;&lt;br /&gt;&lt;b style="color: rgb(0, 102, 0);"&gt;HTML lacks a robust linking mechanism:&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;If you’ve spent a  few hours on the Web, you’ve probably encountered at least one broken link.  HTML’s links are one-to-one,  with the linking hard coded in the source HTML files. If the location of one  target file changes, a Webmaster may have to update dozens or even hundreds of  other pages.&lt;br /&gt;&lt;br /&gt;&lt;b style="color: rgb(0, 102, 0);"&gt;HTML is not reusable:&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Depending on how well written they are,  HTML pages and fragments of HTML code can be extremely difficult to reuse  because they are so specifically tailored to their place in the web of  associated pages.&lt;br /&gt;&lt;p&gt;&lt;span style="font-weight: bold; color: rgb(102, 0, 0);font-family:arial;" &gt;The &lt;/span&gt;&lt;i style="font-weight: bold; color: rgb(102, 0, 0); font-family: arial;"&gt;Standard Generalized Markup Language&lt;/i&gt;&lt;span style="font-weight: bold; color: rgb(102, 0, 0);font-family:arial;" &gt; (&lt;/span&gt;&lt;i style="font-weight: bold; color: rgb(102, 0, 0); font-family: arial;"&gt;SGML&lt;/i&gt;&lt;span style="font-weight: bold; color: rgb(102, 0, 0);font-family:arial;" &gt;)&lt;/span&gt; from which XML  is derived, is useful to make data storage independent of  any one software package or software vendor. SGML is a &lt;i&gt;meta language&lt;/i&gt;, or  a language for describing markup languages. HTML is one such markup language and  is therefore called an SGML application. In XML, these applications are often  called &lt;i&gt;markup languages&lt;/i&gt;—such as the &lt;i&gt;hand-held device markup  language&lt;/i&gt; (&lt;i&gt;HDML&lt;/i&gt;) and the &lt;i&gt;FAQ markup language&lt;/i&gt; (&lt;i&gt;QML&lt;/i&gt;).&lt;/p&gt;But SGML is just too expensive and complicated for Web use on a large  scale. Using SGML requires too much of an investment in time, tools, and training.&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;span style="font-weight: bold; color: rgb(0, 51, 0);"&gt;XML uses the features of SGML that it needs and tries to incorporate the  lessons learned from HTML. &lt;/span&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-weight: bold; color: rgb(51, 0, 0);"&gt;Advantages of XML :&lt;/span&gt;&lt;/p&gt;&lt;p&gt;1.XML can be used with existing Web protocols and  mechanisms  and it does not impose any additional requirements.  XML has been developed with the Web in mind—features of SGML that were too  difficult to use on the Web were left out, and features that are needed for Web  use either have been added or are inherited from applications that already work.  &lt;/p&gt;&lt;p&gt;2.XML supports a wide variety of applications. It is difficult to support a lot of  applications with just HTML; hence, the growth of scripting languages. HTML is  simply too specific. XML adopts the generic nature of SGML, but adds flexibility  to make it truly extensible.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;3. It is easy to write programs that process XML documents. One of the major  strengths of HTML is that it’s easy for even a non-programmer to throw together  a few lines of scripting code that enable you to do basic processing . HTML even includes  some features of its own that enable you to carry out some basic processing . &lt;/p&gt;4.XML documents are reasonably clear to the any one.A valid XML document  &lt;ol&gt;&lt;li&gt;  Describes the structural rules that the markup attempts to follow  &lt;/li&gt;&lt;li&gt;  Lists any external resources (external entities) that are part of  the document  &lt;/li&gt;&lt;li&gt;  Declares any internal resources (internal entities) that are used  within the document  &lt;/li&gt;&lt;li&gt;  Lists the types of non-XML resources (notations) used and  identifies any helper applications that might be needed  &lt;/li&gt;&lt;li&gt;  Lists any non-XML resources (binaries) that are used within the  document and identifies any helper applications that might be needed &lt;/li&gt;&lt;/ol&gt;5.XML documents are easy to create. HTML is almost famous for its ease of use, and  XML capitalizes on this strength.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(0, 51, 0);"&gt;Other Programming Courses :&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2009/02/security-testing-and-functional-testing.html"&gt;Security testing and functional testing&lt;/a&gt;&lt;br /&gt;&lt;span style="font-size: 100%;"&gt;&lt;a href="http://testingcorner.blogspot.com/2008/09/testing-software-and-constraints-part.html"&gt;TESTING CONSTRAINTS PART TWO&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/09/life-cycle-teting.html"&gt;LIFE CYCLE TESTING&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/09/testing-metrices.html"&gt;TEST METRICS&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/10/independent-software-testing.html"&gt;Independent Software Testing&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/10/test-process.html"&gt;Test Process&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/software-testing-verification-and.html"&gt;Testing verification and validation&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/software-testing-functional-and.html"&gt;Functional and structural testing&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/software-testing-static-and-dynamic.html"&gt;Static and dynamic testing&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/software-v-model-testing.html"&gt;V model testing&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/softeare-testing-v-model-11-steps.html"&gt;Eleven steps of V model testing&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/software-teting-structural.html"&gt;Structural testing&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/12/software-testing-execution-testing.html"&gt;Execution testing technique&lt;/a&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/12/recovery-testing-technique.html"&gt;&lt;br /&gt;Recovery Testing technique &lt;/a&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/12/software-testing-operations-technique.html"&gt;&lt;br /&gt;Operation testing technique&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/12/compliance-software-testing-technique.html"&gt;Compliance software testing technique&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/12/security-testing-technique.html"&gt;Security testing technique&lt;/a&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;hr /&gt;  &lt;a href="http://www.testingcorner.net"&gt;SOFTWARE TESTING,JAVA,MICROSOFT DOT NET,C PROGRAMMING AT ONE PLACE&lt;/a&gt;&lt;/div&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Security Testing and  Functional Testing</title><link>http://testingcorner.blogspot.com/2009/02/security-testing-and-functional-testing.html</link><category>SECURITY</category><author>noreply@blogger.com (Unknown)</author><pubDate>Fri, 13 Feb 2009 12:13:00 +0530</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-36146758167178682.post-6266844054753937973</guid><description>&lt;div style="text-align: justify;"&gt;It’s not the primary job of a tester to find all the bugs in a product. Unless you have an extremely small product that runs on a very limited system, you won’t be able to find all the bugs unless you don’t plan on releasing the product for a very long time.&lt;br /&gt;&lt;br /&gt;The primary job of a tester is not to get all bugs fixed either. There are always bugs that will remain unfixed as a conscious decision. Testers also do not generally make decisions on which bugs get fixed and which ones are deferred to a later date, or even those that there are no plans to fix.&lt;br /&gt;&lt;br /&gt;The primary job of a tester is also not to decide when to ship a product. Although you can relay the state of the product to the company, the decision to release the product is typically made by the company or a  team within the product group.&lt;br /&gt;&lt;br /&gt;Functional testing is testing that is performed on behalf of a legitimate user of the product who is attempting to use it in the way it was intended to be used and for its intended purpose. This is who the functional tester is really the advocate for.The majority of functional testing is done from the viewpoint of a customer.&lt;br /&gt;&lt;br /&gt;Testing from only customer viewpoint will cause  you to bypass a large percentage of security tests. Most security vulnerabilities, although they have a chance of being discovered by the intended customers, are unlikely to be exploited by them.&lt;br /&gt;&lt;br /&gt;The customer may call technical support to report the bug or maybe just grumble about it to friends or acquaintances. It’s unlikely that many of the intended customers will even recognize that bug as more than a nuisance or sign of poor quality, let alone correctly see it as a security risk.&lt;br /&gt;&lt;br /&gt;The attention of functional testing is much more focused on how to enable the customers to perform their tasks in the easiest and most convenient way possible while providing enough checks and safety measures so that they can’t cause inadvertent harm too easily. It’s a sort of&lt;br /&gt;“protect them from themselves” mentality.&lt;br /&gt;&lt;br /&gt;If any security testing is done,it tends to focus on things such as permissions and privileges but, again,only based around the assumption that the customer is using something like the login functionality as intended.&lt;br /&gt;&lt;br /&gt;In essence, because you are performing tests on behalf of a customer,you are trusting that all people using the software you are testing are customers and not merely consumers.&lt;br /&gt;&lt;br /&gt;Customers are the people or organizations that your software is intentionally written to solve a problem or problems for. They have been the main focus throughout the entire development cycle, from the gathering of requirements through the implementation, and that then provides the basis for functional testing.&lt;br /&gt;&lt;br /&gt;Customers are the people or organizations that your software is intentionally written to solve a problem or problems for. They have been the main focus throughout the entire development cycle, from the gathering of requirements through the implementation, and that then provides the basis for functional testing.&lt;br /&gt;&lt;br /&gt;Consumers, on the other hand, are those people or organizations that might use your software in a way it was or was not intended and who are not included in your customers. Sometimes your product’s consumer base grows because your product is able to perform some task as part of its normal repertoire, and that task is all that the consumer wishes to accomplish.&lt;br /&gt;&lt;br /&gt;Sometimes it is because your product interfaces with some other software or hardware, and the consumer wants to use that ability to interface to their own advantage or because they think it may be exploitable.&lt;br /&gt;&lt;br /&gt;Re&lt;span style="font-weight: bold; color: rgb(0, 51, 0);"&gt;lated Posts&lt;a href="http://testingcorner.blogspot.com/2009/02/software-security-vocabulary.html"&gt; &lt;/a&gt;&lt;/span&gt;&lt;a href="http://testingcorner.blogspot.com/2009/02/software-security-vocabulary.html"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/a&gt;&lt;a href="http://testingcorner.blogspot.com/2009/02/software-security-vocabulary.html"&gt;Software security vocabulary&lt;/a&gt;&lt;br /&gt;&lt;span style="font-size: 100%;"&gt;&lt;a href="http://testingcorner.blogspot.com/2008/09/testing-software-and-constraints-part.html"&gt;TESTING CONSTRAINTS PART TWO&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/09/life-cycle-teting.html"&gt;LIFE CYCLE TESTING&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/09/testing-metrices.html"&gt;TEST METRICS&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/10/independent-software-testing.html"&gt;Independent Software Testing&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/10/test-process.html"&gt;Test Process&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/software-testing-verification-and.html"&gt;Testing verification and validation&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/software-testing-functional-and.html"&gt;Functional and structural testing&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/software-testing-static-and-dynamic.html"&gt;Static and dynamic testing&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/software-v-model-testing.html"&gt;V model testing&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/softeare-testing-v-model-11-steps.html"&gt;Eleven steps of V model testing&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/software-teting-structural.html"&gt;Structural testing&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/12/software-testing-execution-testing.html"&gt;Execution testing technique&lt;/a&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/12/recovery-testing-technique.html"&gt;&lt;br /&gt;Recovery Testing technique &lt;/a&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/12/software-testing-operations-technique.html"&gt;&lt;br /&gt;Operation testing technique&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/12/compliance-software-testing-technique.html"&gt;Compliance software testing technique&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/12/security-testing-technique.html"&gt;Security testing technique&lt;/a&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;hr /&gt;  &lt;a href="http://www.testingcorner.net"&gt;SOFTWARE TESTING,JAVA,MICROSOFT DOT NET,C PROGRAMMING AT ONE PLACE&lt;/a&gt;&lt;/div&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Software Security Vocabulary</title><link>http://testingcorner.blogspot.com/2009/02/software-security-vocabulary.html</link><category>SECURITY</category><author>noreply@blogger.com (Unknown)</author><pubDate>Mon, 9 Feb 2009 21:33:00 +0530</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-36146758167178682.post-6719328705283826616</guid><description>&lt;div style="text-align: justify;"&gt;&lt;span style="color: rgb(102, 0, 0);"&gt;Access Control List (ACL):&lt;/span&gt; A data structure or list that is maintained to track what users or groups have permissions to perform what actions.This is a Windows term.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 0, 0);"&gt;Attack:&lt;/span&gt; A particular instance of an attempted introduction of one or more exploits to a system.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 0, 0);"&gt;Attacker:&lt;/span&gt; Someone who is trying to bypass the security of one or more pieces of software to carry out his or her own agenda.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 0, 0);"&gt;Back Door: &lt;/span&gt;A piece of malicious software that is installed and left running to provide a way for an attacker to regain system access at a later time.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 0, 0);"&gt;Cracker:&lt;/span&gt; Someone who “cracks” through software security, particularly licensing and copy protection. It’s thought to have its roots in “safe cracker.” This term isn’t often used, in part because it’s more narrowly focused and in part because it’s just not as widely known, and the differentiation between a hacker and a cracker is not clear.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 0, 0);"&gt;Cracking:&lt;/span&gt; The act of circumventing the copy protection, licensing, or registration functionality of software.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 0, 0);"&gt;Daemon: &lt;/span&gt;A piece of software running in the background, usually as a process. Sometimes used interchangeably with “demon.”&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 0, 0);"&gt;Denial of Service (DoS):&lt;/span&gt; Where legitimate users are prevented from accessing services or resources they would normally be able to access.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 0, 0);"&gt;Distributed Denial of Service (DDoS):&lt;/span&gt; Where legitimate users are prevented from accessing services or resources by a coordinated attack from multiple sources.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 0, 0);"&gt;Escalation of Privilege:&lt;/span&gt; When attackers illegitimately gain more functionality or access than they are authorized to have.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 0, 0);"&gt;Ethical Hacker:&lt;/span&gt; One that performs penetration tests. Sometimes ethical hackers are also called “white hats.”&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 0, 0);"&gt;Exploit: &lt;/span&gt;A code, technique, or program that takes advantage of a vulnerability to access an asset.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 0, 0);"&gt;Firewall:&lt;/span&gt; An application or hardware appliance designed to diminish the chances of an attack by limiting specific types of information that can pass into or out of a system or network. It’s a piece of perimeter security.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 0, 0);"&gt;Hacker: &lt;/span&gt;Someone who “hacks” together programs, i.e., writes them in a particularly haphazard or unorganized manner. This wasn’t originally a term that was specific to attackers, but in the last few years it has become an often-used synonym for attackers, especially in the press.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 0, 0);"&gt;Hijacking:&lt;/span&gt; A situation when an attacker takes over control of one side of a two-sided conversation or connection.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 0, 0);"&gt;Hub:&lt;/span&gt; A networking device that repeats the network packets on the physical network layer among many devices.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 0, 0);"&gt;Information Disclosure:&lt;/span&gt; A situation when an attacker is able to access information he or she shouldn’t be able to.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 0, 0);"&gt;Intrusion Detection System:&lt;/span&gt; An application that monitors a system or network and reports if it recognizes that the signs of an attack are present.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 0, 0);"&gt;Leetspeek:&lt;/span&gt; The stereotypical sign of a script kiddie where text is written with numbers substituted for letters. The name comes from “elite.” For example, “leet” is often written as “1337” or “l33t.”&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 0, 0);"&gt;Media Access Control (MAC) Address:&lt;/span&gt; Also called the Physical Address, it is physically embedded in every network interface card (NIC) during the manufacturing process. MAC addresses are often treated as unique, although that is not actually guaranteed.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 0, 0);"&gt;OSI Network Model/OSI Seven Layer Model:&lt;/span&gt; The Open Systems Interconnection Reference Model. This is commonly used to explain at what point certain processes are taking place and how information travels.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 0, 0);"&gt;Personally Identifiable Information (PII):&lt;/span&gt; Information that is private to the user or machine. Disclosing PII is a violation of user privacy and can be a part of identity theft problems.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 0, 0);"&gt;Phishing:&lt;/span&gt; Social engineering on a large scale, usually to obtain things like login information, credit card numbers, etc.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 0, 0);"&gt;Protocal Stack:&lt;/span&gt; A system that implements protocol behavior based on a series of the OSI Network Model.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 0, 0);"&gt;Reverse Engineering: &lt;/span&gt;The act of wholly or partially recreating the algorithms or designs used in software. This is usually done without sourcecode access.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 0, 0);"&gt;Rootkit or Root Kit:&lt;/span&gt; A set of tools and scripts that an attacker installs after successfully compromising a system. These are designed to automate additional tasks including installing additional programs like key loggers, remote administration tools, packet sniffers, backdoors, etc. Kernel Rootkits are rootkits that hide themselves within the operating system’s kernel, making them a lot more difficult to detect.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 0, 0);"&gt;Router:&lt;/span&gt;A hardware device that routes traffic between two networks. It can also disguise the traffic from the network behind it to make it appear as if all traffic comes from a single system.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 0, 0);"&gt;Script kiddie:&lt;/span&gt; The somewhat derogatory term for an attacker who primarily downloads and uses exploit code designed and written by others. “Script kiddie” tends to be used to signify a  Copy-cat type of attacker that is not particularly skilled or creative on his or her own. A script kiddie is also considered to be young, cocky, and brash.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 0, 0);"&gt;Social Engineering:&lt;/span&gt; The process of tricking or convincing a user into volunteering information the hacker can later use. This is often focused on things that are either finance related or material for identity theft.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 0, 0);"&gt;Spoofing: &lt;/span&gt;Impersonating someone or something else — such as another user or machine — in order to trick software security checks or users.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 0, 0);"&gt;Switch:&lt;/span&gt; A hardware device similar to a hub but which knows the hardware (MAC) addresses of each machine connected to it. This is so it can transmit packets only to the individual machine it is addressed to.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 0, 0);"&gt;Threat:&lt;/span&gt; A possible path to illegitimate access of an asset.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 0, 0);"&gt;Trojan Horse:&lt;/span&gt; A piece of malicious software designed to deceive the victims by appearing to be a benign program that they may wish to use and thus are willing to download or install.&lt;br /&gt;&lt;br /&gt;Virus: A piece of malicious software that is capable of spreading itself, typically as part of a piece of software or a file that is shared between users.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 0, 0);"&gt;Vulnerability: &lt;/span&gt;A bug in the software that would allow an attacker to make use of a threat to illegitimately access an asset. All vulnerabilities are threats, but only unmitigated threats are vulnerabilities.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 0, 0);"&gt;Zero-Day Exploit:&lt;/span&gt; A vulnerability that is exploited immediately after its discovery, often before the software company or the security community is aware of the vulnerability.&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(0, 51, 0);"&gt;&lt;a href="http://www.testingcorner.net/2009/02/proof-techniques-in-testing-and.html"&gt;&lt;br /&gt;&lt;/a&gt;&lt;a href="http://testingcorner.blogspot.com/2009/02/proof-techniques-in-testing-and.html"&gt;See proof techniques here&lt;/a&gt;&lt;br /&gt;&lt;/span&gt;&lt;a style="color: rgb(0, 0, 0);" href="http://www.testingcorner.net/2008/08/aspnet-programming-complete-part-one.html"&gt;&lt;span style="font-weight: bold;"&gt;&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-size: 100%;"&gt;&lt;a href="http://testingcorner.blogspot.com/2008/09/testing-software-and-constraints-part.html"&gt;TESTING CONSTRAINTS PART TWO&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/09/life-cycle-teting.html"&gt;LIFE CYCLE TESTING&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/09/testing-metrices.html"&gt;TEST METRICS&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/10/independent-software-testing.html"&gt;Independent Software Testing&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/10/test-process.html"&gt;Test Process&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/software-testing-verification-and.html"&gt;Testing verification and validation&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/software-testing-functional-and.html"&gt;Functional and structural testing&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/software-testing-static-and-dynamic.html"&gt;Static and dynamic testing&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/software-v-model-testing.html"&gt;V model testing&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/softeare-testing-v-model-11-steps.html"&gt;Eleven steps of V model testing&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/software-teting-structural.html"&gt;Structural testing&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/12/software-testing-execution-testing.html"&gt;Execution testing technique&lt;/a&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/12/recovery-testing-technique.html"&gt;&lt;br /&gt;Recovery Testing technique &lt;/a&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/12/software-testing-operations-technique.html"&gt;&lt;br /&gt;Operation testing technique&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/12/compliance-software-testing-technique.html"&gt;Compliance software testing technique&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/12/security-testing-technique.html"&gt;Security testing technique&lt;/a&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;hr /&gt;  &lt;a href="http://www.testingcorner.net"&gt;SOFTWARE TESTING,JAVA,MICROSOFT DOT NET,C PROGRAMMING AT ONE PLACE&lt;/a&gt;&lt;/div&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Proof Techniques in Testing and Stimulation</title><link>http://testingcorner.blogspot.com/2009/02/proof-techniques-in-testing-and.html</link><category>TESTING TECHNIQUES</category><author>noreply@blogger.com (Unknown)</author><pubDate>Mon, 2 Feb 2009 20:39:00 +0530</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-36146758167178682.post-5683249034993507083</guid><description>&lt;div style="text-align: justify;"&gt;There are two approaches to proof of correctness: formal proof and informal proof. A formal proof consists of developing a mathematical logic consisting of axioms and inference rules and defining a proof either to be a proof tree in the natural deduction style or to be a finite sequence of axioms and inference rules.&lt;br /&gt;&lt;br /&gt;Informal proof techniques follow the logical reasoning behind the formal proof techniques but without the formal logical system.&lt;br /&gt;&lt;br /&gt;Simulation is used in real-time systems development where the "real-world" interface is critical and integration with the system hardware is central to the total design. In many nonreal- time applications, simulation is a cost effective verification and test-data generation technique.&lt;br /&gt;&lt;br /&gt;To use simulation as a verification tool several models must be developed. Verification is performed by determining if the model of the software behaves as expected on models of the computational and external environments using simulation. This technique also is a powerful way of deriving test data. Inputs are applied to the simulated model and the results recorded for later application to the actual code.&lt;br /&gt;&lt;br /&gt;The data sets derived cause errors to be isolated and located as well as detected during the testing phase of the construction and integration stages.&lt;br /&gt;&lt;br /&gt;To develop a model of the software for a particular stage in the development life cycle a formal representation compatible with the simulation system is developed. This consists  of the formal requirement specification, the design specification, or separate model of the program behavior. If a different model is used, then the developer will need to demonstrate and verify that the model is a complete, consistent, and accurate representation of the software at the stage of development being verified.&lt;br /&gt;&lt;br /&gt;The next steps are to develop a model of the computational environment in which the system will operate, a model of the hardware on which the system will be implemented, and a model of the external demands on the total system.&lt;br /&gt;&lt;br /&gt;These models can be largely derived from the requirements, with statistical representations developed for the external demand and the environmental interactions. The software behavior is then simulated with these models to determine if it is satisfactory.&lt;br /&gt;&lt;br /&gt;Simulating the system at the early development stages is the only means of determining the system behavior in response to the eventual implementation environment. At the construction stage, since the code is sometimes developed on a host machine quite different from the target machine, the code may be run on a simulation of the target machine under interpretive control.&lt;br /&gt;&lt;br /&gt;Simulation also plays a useful role in determining the performance of algorithms.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(0, 51, 0);"&gt;Related Posts &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2009/01/walk-tyhroughsinspections-of-software.html"&gt;Walk throgh's and inspections in software testing&lt;/a&gt;&lt;a href="http://testingcorner.blogspot.com/2009/01/walk-tyhroughsinspections-of-software.html"&gt;&lt;br /&gt;&lt;/a&gt;&lt;span style="font-size: 100%;"&gt;&lt;a href="http://testingcorner.blogspot.com/2008/09/testing-software-and-constraints-part.html"&gt;TESTING CONSTRAINTS PART TWO&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/09/life-cycle-teting.html"&gt;LIFE CYCLE TESTING&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/09/testing-metrices.html"&gt;TEST METRICS&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/10/independent-software-testing.html"&gt;Independent Software Testing&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/10/test-process.html"&gt;Test Process&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/software-testing-verification-and.html"&gt;Testing verification and validation&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/software-testing-functional-and.html"&gt;Functional and structural testing&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/software-testing-static-and-dynamic.html"&gt;Static and dynamic testing&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/software-v-model-testing.html"&gt;V model testing&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/softeare-testing-v-model-11-steps.html"&gt;Eleven steps of V model testing&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/software-teting-structural.html"&gt;Structural testing&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/12/software-testing-execution-testing.html"&gt;Execution testing technique&lt;/a&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/12/recovery-testing-technique.html"&gt;&lt;br /&gt;Recovery Testing technique &lt;/a&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/12/software-testing-operations-technique.html"&gt;&lt;br /&gt;Operation testing technique&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/12/compliance-software-testing-technique.html"&gt;Compliance software testing technique&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/12/security-testing-technique.html"&gt;Security testing technique&lt;/a&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;hr /&gt;  &lt;a href="http://www.testingcorner.net"&gt;SOFTWARE TESTING,JAVA,MICROSOFT DOT NET,C PROGRAMMING AT ONE PLACE&lt;/a&gt;&lt;/div&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Walk throughs,Inspections of software testing part two</title><link>http://testingcorner.blogspot.com/2009/01/walk-tyhroughsinspections-of-software.html</link><category>TESTING TECHNIQUES</category><author>noreply@blogger.com (Unknown)</author><pubDate>Wed, 28 Jan 2009 17:43:00 +0530</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-36146758167178682.post-8275470438294422079</guid><description>&lt;div style="text-align: justify;"&gt;This post is continuation with previous post  &lt;a href="http://www.testingcorner.blogspot.com/2009/01/walkthroughsinspections.html"&gt;Walk tyhroughs,Inspections of software testing part one&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(102, 51, 51);"&gt;1.System Requirements Review&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;This review is an examination of the initial progress during the problem definition stage and of the convergence on a complete system configuration. Test planning and test documentation are begun at this review.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(102, 0, 0);"&gt;2 • System Design Review&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;This review occurs when the system definition has reached a point where major system modules can be identified and completely specified along with the corresponding test requirements. The requirements for each major subsystem are examined along with the preliminary test plans. Tools required for verification support are identified at this stage.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(102, 51, 51);"&gt;3• Preliminary Design Review&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;This review is a formal technical review of the basic design approach for each major subsystem or module. The revised requirements and preliminary design specifications for each major subsystem and all test plans, procedures and documentation are reviewed at this stage. Development and verification tools are further identified at this stage. Changes in requirements will lead to an examination of the test requirements to maintain consistency.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(102, 51, 0);"&gt;4• Final Design Review&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;This review occurs just prior to the beginning of the construction stage. The complete and detailed design specifications for each module and all draft test plans and documentation are examined. Again, consistency with previous stages is reviewed, with particular attention given to determining if test plans and documentation reflect changes in the design specifications at all levels.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(102, 51, 0);"&gt;5• Final Review&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;This review determines through testing that the final coded subsystem conforms to the final system specifications and requirements. It is essentially the subsystem acceptance test.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 102, 0);"&gt;Rules should be followed for all reviews:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;1. The product is reviewed, not the producer.&lt;br /&gt;2. Defects and issues are identified, not corrected.&lt;br /&gt;3. All members of the reviewing team are responsible for the results of the review.&lt;br /&gt;&lt;br /&gt;Reviews are conducted to utilize the variety of perspectives and talents brought together in a team. The main goal is to identify defects within the stage or phase of the project where they originate, rather than in later test stages; this is referred to as “stage containment.”&lt;br /&gt;&lt;br /&gt;As reviews are generally greater than 65 percent efficient in finding defects, and testing is often less than 30 percent efficient, the advantage is obvious. In addition, since defects identified in the&lt;br /&gt;review process are found earlier in the life cycle, they are less expensive to correct.&lt;br /&gt;&lt;br /&gt;Another advantage of holding reviews is not readily measurable. That is, reviews are an efficient method of educating a large number of people on a specific product/project in a relatively short period of time. Semiformal reviews are especially good for this, and indeed, are often held for just that purpose.&lt;br /&gt;&lt;br /&gt;In addition to learning about a specific product/project, team members are exposed to a variety of approaches to technical issues, a cross-pollination effect. Finally, reviews provide training in and enforce the use of standards, as non conformance to standards is considered a defect and reported as such.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(0, 51, 0);"&gt;Related Posts &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2009/01/walkthroughsinspections.html"&gt;Parallel testing technique&lt;/a&gt;&lt;br /&gt;&lt;span style="font-size: 100%;"&gt;&lt;a href="http://testingcorner.blogspot.com/2008/09/testing-software-and-constraints-part.html"&gt;TESTING CONSTRAINTS PART TWO&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/09/life-cycle-teting.html"&gt;LIFE CYCLE TESTING&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/09/testing-metrices.html"&gt;TEST METRICS&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/10/independent-software-testing.html"&gt;Independent Software Testing&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/10/test-process.html"&gt;Test Process&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/software-testing-verification-and.html"&gt;Testing verification and validation&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/software-testing-functional-and.html"&gt;Functional and structural testing&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/software-testing-static-and-dynamic.html"&gt;Static and dynamic testing&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/software-v-model-testing.html"&gt;V model testing&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/softeare-testing-v-model-11-steps.html"&gt;Eleven steps of V model testing&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/11/software-teting-structural.html"&gt;Structural testing&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/12/software-testing-execution-testing.html"&gt;Execution testing technique&lt;/a&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/12/recovery-testing-technique.html"&gt;&lt;br /&gt;Recovery Testing technique &lt;/a&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/12/software-testing-operations-technique.html"&gt;&lt;br /&gt;Operation testing technique&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/12/compliance-software-testing-technique.html"&gt;Compliance software testing technique&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://testingcorner.blogspot.com/2008/12/security-testing-technique.html"&gt;Security testing technique&lt;/a&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;hr /&gt;  &lt;a href="http://www.testingcorner.net"&gt;SOFTWARE TESTING,JAVA,MICROSOFT DOT NET,C PROGRAMMING AT ONE PLACE&lt;/a&gt;&lt;/div&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item></channel></rss>