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

<channel>
	<title>Learn Software Development &#187; Methods</title>
	<atom:link href="http://learnsoftwareprocesses.com/category/methods/feed/" rel="self" type="application/rss+xml" />
	<link>http://learnsoftwareprocesses.com</link>
	<description>All about the processes involved in software development</description>
	<lastBuildDate>Tue, 07 Feb 2012 19:53:10 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>What is scrum ? &#8211; A simple (non-technical) definition</title>
		<link>http://learnsoftwareprocesses.com/2009/10/23/what-is-scrum-a-simple-non-technical-definition/</link>
		<comments>http://learnsoftwareprocesses.com/2009/10/23/what-is-scrum-a-simple-non-technical-definition/#comments</comments>
		<pubDate>Fri, 23 Oct 2009 20:19:35 +0000</pubDate>
		<dc:creator>ashish</dc:creator>
				<category><![CDATA[Agile]]></category>
		<category><![CDATA[Definition]]></category>
		<category><![CDATA[Explanation]]></category>
		<category><![CDATA[Methods]]></category>
		<category><![CDATA[Process]]></category>
		<category><![CDATA[Agile Software Development]]></category>
		<category><![CDATA[Backlog]]></category>
		<category><![CDATA[Cross Functional Team]]></category>
		<category><![CDATA[Development Methodology]]></category>
		<category><![CDATA[Iterative]]></category>
		<category><![CDATA[Scrum]]></category>
		<category><![CDATA[Software Development]]></category>
		<category><![CDATA[Sprint]]></category>
		<category><![CDATA[Team]]></category>

		<guid isPermaLink="false">http://learnsoftwareprocesses.com/?p=430</guid>
		<description><![CDATA[<p>Well, for those of you who play rugby, it&#8217;s not what you think. In software development, scrum (of as some people like to call it with capital letters, SCRUM) is a relatively newer technique, a part of agile development methodologies. Scrum aims to merge the differences between the different constituents of a software development team [...]]]></description>
			<content:encoded><![CDATA[<p>Well, for those of you who play rugby, it&#8217;s not what you think. In software development, scrum (of as some people like to call it with capital letters, SCRUM) is a relatively newer technique, a part of agile development methodologies. Scrum aims to merge the differences between the different constituents of a software development team (primarily the Dev and QE), and make them into one single solid team that works together to develop the software. This helps in reducing some of the tension that normally builds up between team members, and fosters a much higher degree of communication between the team members.<br />
Scrum also takes pride in being a technique which allows for very fast incorporation of changing requirements, accepting that demanding that requirements be frozen before the start of the development process may not be a realistic approach. Instead, you break the work down into 2-4 week long development timelines, and at the start of every new such cycle, you review the requirements at that point of time.<br />
Some of the terms that appear during scrum are &#8216;backlog&#8217;, &#8216;sprint&#8217;, &#8216;ScrumMaster&#8217;, &#8216;ProductOwner&#8217;, &#8216;Team&#8217;, &#8216;User Story&#8217;, &#8216;Daily Scrum&#8217;, &#8216;Sprint Planning Meeting&#8217;, etc. (these will be explained in future posts).</p>
]]></content:encoded>
			<wfw:commentRss>http://learnsoftwareprocesses.com/2009/10/23/what-is-scrum-a-simple-non-technical-definition/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Overview of Formal Methods &#8211; Foundation for analysis methods</title>
		<link>http://learnsoftwareprocesses.com/2009/09/18/overview-of-formal-methods-foundation-for-analysis-methods/</link>
		<comments>http://learnsoftwareprocesses.com/2009/09/18/overview-of-formal-methods-foundation-for-analysis-methods/#comments</comments>
		<pubDate>Fri, 18 Sep 2009 17:53:04 +0000</pubDate>
		<dc:creator>ashish</dc:creator>
				<category><![CDATA[Analysis]]></category>
		<category><![CDATA[Methods]]></category>
		<category><![CDATA[Applications]]></category>
		<category><![CDATA[Concepts]]></category>
		<category><![CDATA[Formal methods]]></category>
		<category><![CDATA[Mathematics]]></category>

		<guid isPermaLink="false">http://learnsoftwareprocesses.com/?p=387</guid>
		<description><![CDATA[<p>Formal methods provide a foundation for specification environments leading to analysis models that are more complete, consistent, and unambiguous than those produced using conventional or object-oriented methods. The descriptive facilities of set theory and logic notation enable a software engineer to create a clear statement of facts.</p> <p>The underlying concepts that govern formal methods are [...]]]></description>
			<content:encoded><![CDATA[<p>Formal methods provide a foundation for specification environments leading to analysis models that are more complete, consistent, and unambiguous than those produced using conventional or object-oriented methods. The descriptive facilities of set theory and logic notation enable a software engineer to create a clear statement of facts.</p>
<p>The underlying concepts that govern formal methods are :<br />
- the data invariant, a condition true throughout the execution of the system that contains a collection of data.<br />
- the state, a representation of a system&#8217;s externally observable mode of behavior, or the stored data that a system accesses and alters.<br />
- the operation, an action that takes place in a system and reads or writes data to a state. An operation is associated with two conditions : a precondition and a postcondition.</p>
<p>Discrete mathematics &#8211; the notation and heuristics associated with sets and constructive specification, set operators, logic operators, and sequences &#8211; forms the basis of formal methods. Discrete mathematics is implemented in the context of formal specification languages, such as OCL and Z. These formal specification languages have both syntactic and semantic domains. The syntactic domain uses a symbology that is closely aligned with the notation of sets and predicate calculus. The semantic domain enables the language to express requirements in a concise manner.</p>
<p>A decision to use formal methods should consider startup costs as well as the cultural changes associated with a radically different technology. In most instances, formal methods have highest payoff for safety-critical and business-critical systems.</p>
<p>Where are Formal Methods applied?<br />
Although a complete formal verification of a large complex system is impractical at this time, formal methods are applied to various aspects, or properties, of large systems. More commonly, they are applied to the detailed specification, design, and verification of critical parts of large systems such as avionics and aerospace systems, and to small, safety-critical systems such as heart monitors. </p>
]]></content:encoded>
			<wfw:commentRss>http://learnsoftwareprocesses.com/2009/09/18/overview-of-formal-methods-foundation-for-analysis-methods/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

