<?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>Software design and embedded system tools. &#187; agile</title>
	<atom:link href="http://embedsoftdev.com/tag/agile/feed/" rel="self" type="application/rss+xml" />
	<link>http://embedsoftdev.com</link>
	<description>Good information for software design</description>
	<lastBuildDate>Sun, 25 Jul 2010 17:08:05 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>Scrum and Extreme Programming</title>
		<link>http://embedsoftdev.com/software-engineering/scrum-and-extreme-programming/</link>
		<comments>http://embedsoftdev.com/software-engineering/scrum-and-extreme-programming/#comments</comments>
		<pubDate>Thu, 03 Jun 2010 13:39:15 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Software Engineering]]></category>
		<category><![CDATA[agile]]></category>
		<category><![CDATA[agile methodology]]></category>
		<category><![CDATA[agile process]]></category>
		<category><![CDATA[extreme programming]]></category>
		<category><![CDATA[scrum]]></category>
		<category><![CDATA[sprint]]></category>

		<guid isPermaLink="false">http://embedsoftdev.com/software-engineering/scrum-and-extreme-programming/</guid>
		<description><![CDATA[Agile Process (Scrum and Extreme Programming) The Agile Process or software development refers to a set of software development methods which are based on iterative development. In this process, the solutions and requirements both evolve mutual collaboration between cross functional teams. These teams are self-organizing in nature. The Agile software development approach usually promotes a [...]


Related posts:<ol><li><a href='http://embedsoftdev.com/software-engineering/agile-software-development-model-ii/' rel='bookmark' title='Permanent Link: Agile software development model II.'>Agile software development model II.</a></li>
<li><a href='http://embedsoftdev.com/software-engineering/agile-software-development-model-i/' rel='bookmark' title='Permanent Link: Agile software development model I.'>Agile software development model I.</a></li>
<li><a href='http://embedsoftdev.com/software-engineering/software-process-and-software-development-model/' rel='bookmark' title='Permanent Link: Software Process and Software Development model.'>Software Process and Software Development model.</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fembedsoftdev.com%2Fsoftware-engineering%2Fscrum-and-extreme-programming%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fembedsoftdev.com%2Fsoftware-engineering%2Fscrum-and-extreme-programming%2F&amp;style=normal" height="61" width="50" title="Scrum and Extreme Programming" alt="Scrum and Extreme Programming" /><br />
			</a>
		</div>
<p><strong>Agile Process (Scrum and Extreme Programming)</strong><br />
The Agile Process or software development refers to a set of software development methods which are based on iterative development. In this process, the solutions and requirements both evolve mutual collaboration between cross functional teams. These teams are self-organizing in nature.<br />
	The Agile software development approach usually promotes a regimented kind of project management process which encourages:<br />
* Frequent adaptation and inspection<br />
* Self-organization and accountability<br />
* A leadership philosophy which promotes teamwork<br />
* A business approach which bring into line the development with customer needs and company goals<br />
* And a group of best engineering practices having an intention to allow for rapid delivery of good-quality software.<br />
<strong>Extreme Programming (EP)</strong><br />
        It is a software development methodology with an intention to enhance software responsiveness and quality to the volatile requirements of customers. Being a type of Agile process, it promotes frequent releases in small development cycles. This introduces checkpoints and improves the productivity in a way that the new requirements from customers can be adopted.<br />
<strong>The advantages of Extreme Programming are:</strong><br />
* Unit testing of all code<br />
* Avoiding programming of features until needed<br />
* Programming in pairs or carrying out extensive code review<br />
* Clarity and simplicity in code<br />
* Volatile customer requirements better understood<br />
* A flag management structure<br />
* Frequent communication between the programmers and even with the customer<br />
<strong>It has been noted however that there are certain drawbacks with Extreme programming. They are:</strong><br />
* No documented compromises of user conflicts<br />
* Unstable requirements<br />
* Lack of overall design document or specification<br />
* Incorporates inadequate software design<br />
* Necessitates meetings at recurrent intervals at huge expense to customers<br />
* Can enlarge the risk of scope creep due to the lack of thorough requirements documentation<br />
* Requires excess of cultural change to adopt</p>
<p><strong>Scrum </strong><br />
	Scrum  is an incremental, iterative framework for agile software development and project management. The word “Scrum” is not really an acronym. However, many companies using this methodology spell it with capital letters. Initially Scrum methodology was focused for management of software development projects, but in recent times it can be used to run general program/project management approach or software maintenance teams.<br />
Scrum, which contains sets of predefined roles and practices, is a process skeleton. Main roles in this method are:<br />
1. Product Owner – Represents Stakeholders<br />
2. Scrum Master – The one responsible for maintaining the processes<br />
3. Team – A cross functional group of about 6-8 people who do actual design, testing, implementation, etc.<br />
	Each of the iteration is called a “sprint”, typical time frame for which is normally about two to four weeks. The length of each sprint is decided by the team. The product “backlog” pushes the set of features into a spring. These features are prioritized set of higher level requirements for the task to be carried out. Based on this product “backlog”, the team determines how many of the items can be completed in the next sprint. Once the sprint begins, nobody is allowed to alter the sprint backlog, which means that the set of requirements are frozen. On successful completion of a sprint, the team demonstrates the usage of that particular software.<br />
	This methodology should be encouraged in organizations since the major advantage of using the Scrum is that it enables the creation of teams which are highly self-organizing in nature. This is achieved by encouraging verbal communication amongst the team members, co-location of all the team members and disciplines which are involved for the project.</p>
<p><strong>Differences between Scrum and Extreme Programming(EP) :</strong><br />
1. The time span for iterative sprints is different in both approaches.<br />
2. Changes are not allowed by the Scrum teams during their sprints. Whereas Extreme Programming teams have to be much more agreeable to changes.<br />
3. Work is done by EP teams in strict priority order. Whereas in case of Scrum, the product owner prioritizes the set of activities.<br />
4. EP does prescribe some engineering practices; Scrum does not.</p>
<p>Thank you</p>
<h4>Incoming search terms for the article:</h4><ul><li><a href="http://embedsoftdev.com/software-engineering/scrum-and-extreme-programming/" title="agile extreme programming sprints">agile extreme programming sprints</a></li><li><a href="http://embedsoftdev.com/software-engineering/scrum-and-extreme-programming/" title="scrum embedded software">scrum embedded software</a></li><li><a href="http://embedsoftdev.com/software-engineering/scrum-and-extreme-programming/" title="petit fatfs">petit fatfs</a></li><li><a href="http://embedsoftdev.com/software-engineering/scrum-and-extreme-programming/" title="scrum extreme programming">scrum extreme programming</a></li><li><a href="http://embedsoftdev.com/software-engineering/scrum-and-extreme-programming/" title="scrum embedded">scrum embedded</a></li><li><a href="http://embedsoftdev.com/software-engineering/scrum-and-extreme-programming/" title="self-organizing extreme programming">self-organizing extreme programming</a></li><li><a href="http://embedsoftdev.com/software-engineering/scrum-and-extreme-programming/" title="software design part of sprint scrum">software design part of sprint scrum</a></li><li><a href="http://embedsoftdev.com/software-engineering/scrum-and-extreme-programming/" title="scrum programming">scrum programming</a></li><li><a href="http://embedsoftdev.com/software-engineering/scrum-and-extreme-programming/" title="scrum for embedded">scrum for embedded</a></li><li><a href="http://embedsoftdev.com/software-engineering/scrum-and-extreme-programming/" title="software design specification">software design specification</a></li><li><a href="http://embedsoftdev.com/software-engineering/scrum-and-extreme-programming/" title="Software Engineering SCRUM">Software Engineering SCRUM</a></li><li><a href="http://embedsoftdev.com/software-engineering/scrum-and-extreme-programming/" title="software maintenance scrum">software maintenance scrum</a></li><li><a href="http://embedsoftdev.com/software-engineering/scrum-and-extreme-programming/" title="scrum sprint goal design document">scrum sprint goal design document</a></li><li><a href="http://embedsoftdev.com/software-engineering/scrum-and-extreme-programming/" title="When should SCRUM Programming approach be used">When should SCRUM Programming approach be used</a></li><li><a href="http://embedsoftdev.com/software-engineering/scrum-and-extreme-programming/" title="extreme programming checkpoints">extreme programming checkpoints</a></li><li><a href="http://embedsoftdev.com/software-engineering/scrum-and-extreme-programming/" title="extreme programming scrum maintenance">extreme programming scrum maintenance</a></li><li><a href="http://embedsoftdev.com/software-engineering/scrum-and-extreme-programming/" title="extreme programming backlog">extreme programming backlog</a></li><li><a href="http://embedsoftdev.com/software-engineering/scrum-and-extreme-programming/" title="embedded scrum">embedded scrum</a></li><li><a href="http://embedsoftdev.com/software-engineering/scrum-and-extreme-programming/" title="eXtreme Programming sprint">eXtreme Programming sprint</a></li><li><a href="http://embedsoftdev.com/software-engineering/scrum-and-extreme-programming/" title="extreme programming sprints">extreme programming sprints</a></li><li><a href="http://embedsoftdev.com/software-engineering/scrum-and-extreme-programming/" title="extreme programming tools">extreme programming tools</a></li><li><a href="http://embedsoftdev.com/software-engineering/scrum-and-extreme-programming/" title="scrum and extreme programming">scrum and extreme programming</a></li><li><a href="http://embedsoftdev.com/software-engineering/scrum-and-extreme-programming/" title="agile methodology sprint features to customers">agile methodology sprint features to customers</a></li><li><a href="http://embedsoftdev.com/software-engineering/scrum-and-extreme-programming/" title="software design sprint">software design sprint</a></li><li><a href="http://embedsoftdev.com/software-engineering/scrum-and-extreme-programming/" title="extreme programming git">extreme programming git</a></li><li><a href="http://embedsoftdev.com/software-engineering/scrum-and-extreme-programming/" title="extreme programming number of sprint">extreme programming number of sprint</a></li><li><a href="http://embedsoftdev.com/software-engineering/scrum-and-extreme-programming/" title="scrum sprint backlog unit testing">scrum sprint backlog unit testing</a></li><li><a href="http://embedsoftdev.com/software-engineering/scrum-and-extreme-programming/" title="Scrum spelled capital">Scrum spelled capital</a></li><li><a href="http://embedsoftdev.com/software-engineering/scrum-and-extreme-programming/" title="scrum software design">scrum software design</a></li><li><a href="http://embedsoftdev.com/software-engineering/scrum-and-extreme-programming/" title="Scrum or Extreme Programming project methods">Scrum or Extreme Programming project methods</a></li><li><a href="http://embedsoftdev.com/software-engineering/scrum-and-extreme-programming/" title="scrum or extreme programming">scrum or extreme programming</a></li><li><a href="http://embedsoftdev.com/software-engineering/scrum-and-extreme-programming/" title="scrum methodology official site">scrum methodology official site</a></li><li><a href="http://embedsoftdev.com/software-engineering/scrum-and-extreme-programming/" title="SCRUM for embedded programming">SCRUM for embedded programming</a></li><li><a href="http://embedsoftdev.com/software-engineering/scrum-and-extreme-programming/" title="scrum design">scrum design</a></li></ul><!-- SEO SearchTerms Tagging 2 plugin took 10.594 ms -->

<p>Related posts:<ol><li><a href='http://embedsoftdev.com/software-engineering/agile-software-development-model-ii/' rel='bookmark' title='Permanent Link: Agile software development model II.'>Agile software development model II.</a></li>
<li><a href='http://embedsoftdev.com/software-engineering/agile-software-development-model-i/' rel='bookmark' title='Permanent Link: Agile software development model I.'>Agile software development model I.</a></li>
<li><a href='http://embedsoftdev.com/software-engineering/software-process-and-software-development-model/' rel='bookmark' title='Permanent Link: Software Process and Software Development model.'>Software Process and Software Development model.</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://embedsoftdev.com/software-engineering/scrum-and-extreme-programming/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Agile software development model II.</title>
		<link>http://embedsoftdev.com/software-engineering/agile-software-development-model-ii/</link>
		<comments>http://embedsoftdev.com/software-engineering/agile-software-development-model-ii/#comments</comments>
		<pubDate>Sun, 12 Jul 2009 13:40:12 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Software Engineering]]></category>
		<category><![CDATA[agile]]></category>
		<category><![CDATA[agile development model]]></category>
		<category><![CDATA[agile methodology]]></category>
		<category><![CDATA[AMDD]]></category>
		<category><![CDATA[extreme programming]]></category>
		<category><![CDATA[TDD]]></category>
		<category><![CDATA[xp]]></category>
		<category><![CDATA[xp model]]></category>

		<guid isPermaLink="false">http://embedsoftdev.com/?p=63</guid>
		<description><![CDATA[This article is the continue version of the last article (Agile Software development model I) The technique for development using Agile is as follow. -Agile model driven development (AMDD) -Code Refactor : is the method to redesign code that is to modify the code immediately and then the design is also change. -Pair Programming : [...]


Related posts:<ol><li><a href='http://embedsoftdev.com/software-engineering/agile-software-development-model-i/' rel='bookmark' title='Permanent Link: Agile software development model I.'>Agile software development model I.</a></li>
<li><a href='http://embedsoftdev.com/software-engineering/software-process-and-software-development-model/' rel='bookmark' title='Permanent Link: Software Process and Software Development model.'>Software Process and Software Development model.</a></li>
<li><a href='http://embedsoftdev.com/software-engineering/scrum-and-extreme-programming/' rel='bookmark' title='Permanent Link: Scrum and Extreme Programming'>Scrum and Extreme Programming</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fembedsoftdev.com%2Fsoftware-engineering%2Fagile-software-development-model-ii%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fembedsoftdev.com%2Fsoftware-engineering%2Fagile-software-development-model-ii%2F&amp;style=normal" height="61" width="50" title="Agile software development model II." alt="Agile software development model II." /><br />
			</a>
		</div>
<p>This article is the continue version of the last article (Agile Software development model I)</p>
<p><strong>The technique for development using Agile</strong> is as follow.<br />
      -Agile model driven development (AMDD)<br />
      -Code Refactor : is the method to redesign code that is to modify the code immediately and then<br />
                         the design is also change.<br />
      -Pair Programming : Combine the two developers to work together for the same project.<br />
                          These two developers work at the same location and<br />
                          also use the same computer.Share the computer in the way that one<br />
                          person implement the code and another person has a responsibility for<br />
                          checking the correction of implemented code.<br />
      -Test Driven Development(TDD) : is the technique for writing the test-case and write the test<br />
                          case before implement the code.</p>
<p><strong>The format(pattern) of Agile.</strong></p>
<p>       Agile methodology has many patterns that can be used for developing the system such as Scrum, FDD,<br />
XP (extreme programming), DSDM, RUP, etc&#8230;But the popular pattern in my opinion is XP (extreme programming) because XP is the pattern that emphasize on the satisfaction of the customer and XP can change the system easily when the customer change the requirement.</p>
<p><strong>Addition aspect for Agile.</strong><br />
       &#8211; When we have the old project that can be used for additional development.It mean that<br />
         we have the asset that can be used as the base system for develop the new project,<br />
         so if the new project arrive then we can send the old project to the customer before sending<br />
         the new one.<br />
       &#8211; In the first step of developing new project,we can also deliver the things such as the screen,<br />
         the prototype,infrastructure to our customer without the software (because we have not written<br />
         the software yet)<br />
       &#8211; We also can think about Agile as the modifier of the former software development process such as<br />
             &#8211; Use Agile for rearrange the importance of the project development activity ,<br />
               which activity should be done and which should not be done.<br />
             &#8211; Use Agile to control the former project and look at some part of former project.The part that<br />
               is important for use with the development of new project should be done ,<br />
               the unimportant part will be ignored.</p>


<p>Related posts:<ol><li><a href='http://embedsoftdev.com/software-engineering/agile-software-development-model-i/' rel='bookmark' title='Permanent Link: Agile software development model I.'>Agile software development model I.</a></li>
<li><a href='http://embedsoftdev.com/software-engineering/software-process-and-software-development-model/' rel='bookmark' title='Permanent Link: Software Process and Software Development model.'>Software Process and Software Development model.</a></li>
<li><a href='http://embedsoftdev.com/software-engineering/scrum-and-extreme-programming/' rel='bookmark' title='Permanent Link: Scrum and Extreme Programming'>Scrum and Extreme Programming</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://embedsoftdev.com/software-engineering/agile-software-development-model-ii/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Agile software development model I.</title>
		<link>http://embedsoftdev.com/software-engineering/agile-software-development-model-i/</link>
		<comments>http://embedsoftdev.com/software-engineering/agile-software-development-model-i/#comments</comments>
		<pubDate>Thu, 09 Jul 2009 15:43:53 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Software Engineering]]></category>
		<category><![CDATA[agile]]></category>
		<category><![CDATA[agile development model]]></category>
		<category><![CDATA[agile model]]></category>
		<category><![CDATA[agile process]]></category>
		<category><![CDATA[xp model]]></category>

		<guid isPermaLink="false">http://embedsoftdev.com/software-engineering/agile-software-development-model-i/</guid>
		<description><![CDATA[Agile Agile is the new idea for software development that try to scrape through the old methodology to shorten the development process. It is the principle of new software development methodology that emphasize on the following topic. &#8211; Rapid and flexible response to change &#8211; speed up the development process - don&#8217;t stop, do the [...]


Related posts:<ol><li><a href='http://embedsoftdev.com/software-engineering/agile-software-development-model-ii/' rel='bookmark' title='Permanent Link: Agile software development model II.'>Agile software development model II.</a></li>
<li><a href='http://embedsoftdev.com/software-engineering/software-process-and-software-development-model/' rel='bookmark' title='Permanent Link: Software Process and Software Development model.'>Software Process and Software Development model.</a></li>
<li><a href='http://embedsoftdev.com/software-engineering/scrum-and-extreme-programming/' rel='bookmark' title='Permanent Link: Scrum and Extreme Programming'>Scrum and Extreme Programming</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fembedsoftdev.com%2Fsoftware-engineering%2Fagile-software-development-model-i%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fembedsoftdev.com%2Fsoftware-engineering%2Fagile-software-development-model-i%2F&amp;style=normal" height="61" width="50" title="Agile software development model I." alt="Agile software development model I." /><br />
			</a>
		</div>
<p><strong>Agile</strong></p>
<p>     Agile is the new idea for software development<br />
that try to scrape through the old methodology to shorten<br />
the development process.<br />
It is the principle of new software development methodology<br />
that emphasize on the following topic.</p>
<p>        &#8211; Rapid and flexible response to change<br />
        &#8211; speed up the development process<br />
	- don&#8217;t stop, do the development continuously despite<br />
of the things that will affect the development process<br />
	- when there is a change, we can support this<br />
alteration rapidly and flexible</p>
<p>The objective of Agile<br />
      1.Emphasize on the aptitude of each developer.Try<br />
to commune with each other more than impress on the<br />
tools and methodology.Such as the programmer have a chance<br />
to talk with the customer and can do the project in agreement<br />
with the customer&#8217;s requirement.<br />
      2.Do the project by concentrate on the result or final<br />
software.The old methodology is concentrate on the document<br />
but Agile is not,the purpose of Agile is that we have a<br />
ready software to send to the customer on the definited time.<br />
      3.The main point of Agile is communication.Agile is not<br />
prefer the contact but Agile is stress on the communication<br />
between the customer and developer.<br />
      4.Accept the changefulness.The old methodology is must do<br />
follow the plans (gantt chart) but Agile is not necessary to follow the plans.<br />
But Agile must able to respond to the change.</p>
<p>The model of Agile is as follow.</p>
<p>      &#8211; choose only some methodologies for developing project.<br />
      &#8211; the chosen methodolgy must be able to use the<br />
priciple of Agile to manage the documents and the existing<br />
system.<br />
      &#8211; In Agile,It must consist of<br />
               &#8211; value (result)<br />
               &#8211; principle<br />
               &#8211; practices</p>
<p>The three things above are the part of Agile model that<br />
can be use for develop the project efficiently and have<br />
less overhead.</p>
<p>That&#8217;s all for this article but the story of Agile is not finish.<br />
In my next articles I will write about technique of development using Agile and other<br />
addition aspect for using Agile.</p>


<p>Related posts:<ol><li><a href='http://embedsoftdev.com/software-engineering/agile-software-development-model-ii/' rel='bookmark' title='Permanent Link: Agile software development model II.'>Agile software development model II.</a></li>
<li><a href='http://embedsoftdev.com/software-engineering/software-process-and-software-development-model/' rel='bookmark' title='Permanent Link: Software Process and Software Development model.'>Software Process and Software Development model.</a></li>
<li><a href='http://embedsoftdev.com/software-engineering/scrum-and-extreme-programming/' rel='bookmark' title='Permanent Link: Scrum and Extreme Programming'>Scrum and Extreme Programming</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://embedsoftdev.com/software-engineering/agile-software-development-model-i/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

<!-- Performance optimized by W3 Total Cache. Learn more: http://www.w3-edge.com/wordpress-plugins/

Minified using disk
Page Caching using disk (enhanced) (user agent is rejected)
Database Caching 70/199 queries in 0.654 seconds using disk

Served from: embedsoftdev.com @ 2010-07-30 06:49:13 -->