<?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; Software</title>
	<atom:link href="http://learnsoftwareprocesses.com/category/software/feed/" rel="self" type="application/rss+xml" />
	<link>http://learnsoftwareprocesses.com</link>
	<description>All about the processes involved in software development</description>
	<lastBuildDate>Thu, 15 Jul 2010 18:51:14 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=9888</generator>
		<item>
		<title>Using VersionOne tool with Scrum</title>
		<link>http://learnsoftwareprocesses.com/2009/12/21/using-versionone-tool-with-scrum/</link>
		<comments>http://learnsoftwareprocesses.com/2009/12/21/using-versionone-tool-with-scrum/#comments</comments>
		<pubDate>Mon, 21 Dec 2009 18:09:19 +0000</pubDate>
		<dc:creator>ashish</dc:creator>
				<category><![CDATA[Agile]]></category>
		<category><![CDATA[Scrum]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Tools]]></category>
		<category><![CDATA[Review]]></category>
		<category><![CDATA[Tool]]></category>
		<category><![CDATA[VersionOne]]></category>

		<guid isPermaLink="false">http://learnsoftwareprocesses.com/?p=483</guid>
		<description><![CDATA[There are many tools you can use for the purpose of running your Scrum process, with some people even using Excel with a combination of Post-It notes. However, I have found that it makes things more efficient by using a professional tool in the Scrum process. One of the more famous tool in this regard [...]]]></description>
			<content:encoded><![CDATA[<p>There are many tools you can use for the purpose of running your Scrum process, with some people even using Excel with a combination of Post-It notes. However, I have found that it makes things more efficient by using a professional tool in the Scrum process. One of the more famous tool in this regard is called VersionOne (<a href="http://www.versionone.com/" target="_blank">website</a>) (of course, VersionOne can be used for other Agile methodologies as well). From the site itself, here are some of the features of VersionOne.<br />
- Built–in support for agile development: Our methodology templates for Scrum, XP, DSDM and Agile UP have &#8220;packaged&#8221; various Agile practices and principles together in a way that helps guide teams through the process of rapidly planning and delivering working, tested software.<br />
- With V1: Agile Enterprise, organizations have the option to select either an on-demand or an on-site deployment.<br />
- With 60+ agile metrics, reports, and executive dashboards, no other agile management tool provides greater visibility into the progress, status, and health of agile projects.<br />
- V1: Agile Enterprise is extensible via an API, intuitive SDK, and third-party tool integrations.<br />
Learn more with <a href="http://www.versionone.com/products_V1Enterprise_SprintPlanning.asp" target="_blank">this link</a>.</p>
<p>Some more reviews:<br />
At BrightHub.com (<a href="http://www.brighthub.com/office/project-management/articles/25793.aspx" target="_blank">link</a>)<br />
At borisgloger.com (<a href="http://borisgloger.com/2009/05/11/scrum-tools-versionone-review/" target="_blank">link</a>)<br />
At redmondmag.com (<a href="http://redmondmag.com/articles/2003/02/05/quick-look-versionone.aspx" target="_blank">link</a>)<br />
Another article at BrightHub.com (<a href="http://www.brighthub.com/office/project-management/articles/8120.aspx" target="_blank">link</a>)</p>
]]></content:encoded>
			<wfw:commentRss>http://learnsoftwareprocesses.com/2009/12/21/using-versionone-tool-with-scrum/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Scrum tool &#8211; Scrumedge.com</title>
		<link>http://learnsoftwareprocesses.com/2009/12/08/scrum-tool-scrumedge/</link>
		<comments>http://learnsoftwareprocesses.com/2009/12/08/scrum-tool-scrumedge/#comments</comments>
		<pubDate>Tue, 08 Dec 2009 18:09:18 +0000</pubDate>
		<dc:creator>ashish</dc:creator>
				<category><![CDATA[Scrum]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Application]]></category>
		<category><![CDATA[ScrumEdge]]></category>
		<category><![CDATA[Tool]]></category>

		<guid isPermaLink="false">http://learnsoftwareprocesses.com/?p=474</guid>
		<description><![CDATA[Using Scrum can really change the way you run your software business. You can get your team to be more self-empowered, more involved with the project, as well as viewing the semi-finished project on a more regular basis. However, your experience with Scrum is also dependent on the tool that you use &#8211; use a [...]]]></description>
			<content:encoded><![CDATA[<p>Using Scrum can really change the way you run your software business. You can get your team to be more self-empowered, more involved with the project, as well as viewing the semi-finished project on a more regular basis. However, your experience with Scrum is also dependent on the tool that you use &#8211; use a tool that is not good for the job and it becomes difficult to keep the morale levels high, as well as not getting the right information to make the important decisions.<br />
One tool that we are looking at today is called ScrumEdge, and to try to get feedback, we will look for some reviews of the tool on the internet.</p>
<p>Details about ScrumEdge (<a href="http://www.scrumedge.com/" target="_blank">link</a>)<br />
ScrumEdge is a collaborative tool that allows teams, ScrumMasters, and stakeholders to manage the Scrum lifecycle at the product and sprint levels.<br />
In the service industry your hours are your inventory. Lose track of them — they spoil. ScrumEdge gives you the information you need, when you need it. Nail your mark, every time.</p>
<p>Some reviews:<br />
1. ScrumEdge &#8211; Review at BrightHub.com (<a href="http://www.brighthub.com/office/project-management/reviews/53027.aspx" target="_blank">link</a>)</p>
<blockquote><p>
ScrumEdge might be for you if you use the Scrum project management methodology already and are familiar and comfortable with the scrum process. The program is well suited for small and startup businesses wishing to use agile project management methodologies as well as those who are established. Finally, the program is good for those who want software that isn&#8217;t as complex as MS Project and its alternatives, but also don&#8217;t want anything too simplistic.
</p></blockquote>
<p>2. ScrumEdge on feedmyapp.com (<a href="http://www.feedmyapp.com/p/a/scrumedge-your-online-scrum-management-tool/13723" target="_blank">link</a>)</p>
<blockquote><p>
With ScrumEdge you’ll no longer need to deal with shared excel-sheets or walls covered in post-its! The icing on the cake is the ease with which ScrumMasters and Team Members can access their data and view a project’s progress from any location; office, home or even while traveling!
</p></blockquote>
<p>3. ScrumEdge on listio.com (<a href="http://www.listio.com/web20/app/ScrumEdge-1/" target="_blank">link</a>)</p>
<blockquote><p>
ScrumEdge enables agile development teams to better organize and manage project deliverables, allowing them to deliver high quality products in short time-frames.
</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://learnsoftwareprocesses.com/2009/12/08/scrum-tool-scrumedge/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>System Engineering</title>
		<link>http://learnsoftwareprocesses.com/2009/10/25/system-engineering/</link>
		<comments>http://learnsoftwareprocesses.com/2009/10/25/system-engineering/#comments</comments>
		<pubDate>Sun, 25 Oct 2009 05:59:49 +0000</pubDate>
		<dc:creator>ashish</dc:creator>
				<category><![CDATA[Engineering]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[System]]></category>
		<category><![CDATA[Process]]></category>
		<category><![CDATA[Purpose]]></category>
		<category><![CDATA[SDLC]]></category>
		<category><![CDATA[System Engineering]]></category>
		<category><![CDATA[Tasks]]></category>

		<guid isPermaLink="false">http://learnsoftwareprocesses.com/?p=433</guid>
		<description><![CDATA[Systems Engineering is an interdisciplinary process that ensures that the customer&#8217;s needs are satisfied throughout a system&#8217;s entire life cycle. This process is comprised of the following seven tasks. 1. State the problem. Stating the problem is the most important systems engineering task. It entails identifying customers, understanding customer needs, establishing the need for change, [...]]]></description>
			<content:encoded><![CDATA[<p>Systems Engineering is an interdisciplinary process that ensures that the customer&#8217;s needs are satisfied throughout a system&#8217;s entire life cycle. This process is comprised of the following seven tasks.</p>
<p>   1. State the problem. Stating the problem is the most important systems engineering task. It entails identifying customers, understanding customer needs, establishing the need for change, discovering requirements and defining system functions.<br />
   2. Investigate alternatives. Alternatives are investigated and evaluated based on performance, cost and risk.<br />
   3. Model the system. Running models clarifies requirements, reveals bottlenecks and fragmented activities, reduces cost and exposes duplication of efforts.<br />
   4. Integrate. Integration means designing interfaces and bringing system elements together so they work as a whole. This requires extensive communication and coordination.<br />
   5. Launch the system. Launching the system means running the system and producing outputs &#8212; making the system do what it was intended to do.<br />
   6. Assess performance. Performance is assessed using evaluation criteria, technical performance measures and measures &#8212; measurement is the key. If you cannot measure it, you cannot control it. If you cannot control it, you cannot improve it.<br />
   7. Re-evaluation. Re-evaluation should be a continual and iterative process with many parallel loops.</p>
<p>The purpose of systems engineering is to produce systems that satisfy the customers&#8217; needs, increase the probability of system success, reduce risk and reduce total-life-cycle cost.<br />
Systems engineering, which stands at the interface between engineering and management, is conspicuously practical and down to earth. In contrast, systems theories, which lie at the core of engineering science, are mathematical and rather abstract. This in no way implies that systems theories are impractical; they are practical in a general way. Connecting them to systems engineering is the notion of function, through which systems theories are applied to particular designs.</p>
]]></content:encoded>
			<wfw:commentRss>http://learnsoftwareprocesses.com/2009/10/25/system-engineering/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Construction Practice &#8211; Type of Software Egineering practice</title>
		<link>http://learnsoftwareprocesses.com/2009/10/20/construction-practice-type-of-software-egineering-practice/</link>
		<comments>http://learnsoftwareprocesses.com/2009/10/20/construction-practice-type-of-software-egineering-practice/#comments</comments>
		<pubDate>Tue, 20 Oct 2009 19:34:42 +0000</pubDate>
		<dc:creator>ashish</dc:creator>
				<category><![CDATA[Coding]]></category>
		<category><![CDATA[Engineering]]></category>
		<category><![CDATA[Process]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Construction Practice]]></category>
		<category><![CDATA[software engineering]]></category>

		<guid isPermaLink="false">http://learnsoftwareprocesses.com/?p=426</guid>
		<description><![CDATA[The construction activity encompasses a set of coding and testing tasks that lead to operational software that is ready for delivery to the customer or end-user. A set of fundamental principles and concepts are applicable to coding and testing. 1. Coding principles : A number of fundamental principles that can be stated are : - [...]]]></description>
			<content:encoded><![CDATA[<p>The construction activity encompasses a set of coding and testing tasks that lead to operational software that is ready for delivery to the customer or end-user. A set of  fundamental principles and concepts are applicable to coding and testing.<br />
1. Coding principles : A number of fundamental principles that can be stated are :<br />
- Preparation principles<br />
* Understand the problem you are trying to solve.<br />
* Understand the basic design principles and concepts.<br />
* Pick an appropriate programming language.<br />
* Select a programming environment.<br />
* Create a set of unit tests that will be applied once the component you code is completed.<br />
- Coding Principles<br />
* Constrain your algorithms by following structured programming practice.<br />
* Select data structures.<br />
* Understand the software architecture and create interfaces.<br />
* Keep conditional logic as simple as possible.<br />
* Create nested loops in a way that makes them easily testable.<br />
* Select meaningful variable names and follow other local coding standards.<br />
* Write code that is self-documenting.<br />
* Create a visual layout.<br />
- Validation principles<br />
* Conduct a code walk through when appropriate.<br />
* Perform unit tests.<br />
* Refactor the code.<br />
2. Testing Principles : It is a process of executing a program with the intent of finding an error. A set of testing principles that have been adapted are :<br />
- All tests should be traceable to customer requirements.<br />
- Tests should be planned long before testing begins.<br />
- The Pareto principle states that 80% of all errors uncovered during testing will likely be traceable to 20% of all program components applies to software testing.<br />
- Testing should begin &#8220;in the small&#8221; and progress toward testing &#8220;in the large&#8221;.<br />
- Exhaustive testing is not possible.    </p>
]]></content:encoded>
			<wfw:commentRss>http://learnsoftwareprocesses.com/2009/10/20/construction-practice-type-of-software-egineering-practice/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Modeling Practices &#8211; Type of Software Engineering Practice</title>
		<link>http://learnsoftwareprocesses.com/2009/10/20/modeling-practices-type-of-software-engineering-practice/</link>
		<comments>http://learnsoftwareprocesses.com/2009/10/20/modeling-practices-type-of-software-engineering-practice/#comments</comments>
		<pubDate>Tue, 20 Oct 2009 17:18:31 +0000</pubDate>
		<dc:creator>ashish</dc:creator>
				<category><![CDATA[Engineering]]></category>
		<category><![CDATA[Model]]></category>
		<category><![CDATA[Process]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Modeling Practices]]></category>
		<category><![CDATA[Software Engineering Practice]]></category>

		<guid isPermaLink="false">http://learnsoftwareprocesses.com/?p=423</guid>
		<description><![CDATA[We create models to gain a better understanding of the actual entity to be built. If the entity is a physical thing, we can build a model that is identical in form and shape but smaller in scale. However, when the entity is a software, a model is created that is capable of representing the [...]]]></description>
			<content:encoded><![CDATA[<p>We create models to gain a better understanding of the actual entity to be built. If the entity is a physical thing, we can build a model that is identical in form and shape but smaller in scale. However, when the entity is a software, a model is created that is capable of representing the information that software transforms, the architecture and functions that enable the transformation to occur, the features that the users desires, and the behavior of the system as the transformation is taking place.<br />
Two classes of models are  created :<br />
1. Analysis models : they represent the customer requirements by depicting the software in three different domains : the information domain, the functional domain, and the behavioral domain. All analysis methods are related by a set of operational principles :<br />
- The information domain of a problem must be represented and understood.<br />
- The function that the software performs must be defined.<br />
- The behavior of the software must be represented.<br />
- The models that depict information, function, and behavior must be partitioned in a manner that uncovers detail in a layered fashion.<br />
- The analysis task should move from essential information toward implementation detail.<br />
2. Design Models : These models represent characteristics of the software that help practitioners to construct it effectively : the architecture, the user interface, and the component-level detail. There is no shortage of methods for deriving the various elements of a software design. A set of design principles that can be applied regardless of the method that is used.<br />
- Design should be traceable to the analysis model.<br />
- Always consider the architecture of the system to be built.<br />
- Design of data is as important as design of processing functions.<br />
- Interfaces (both internal and external) must be designed with care.<br />
- User interface design should be tuned to the needs of the end-user.<br />
- Component-level design should be functionally independent.<br />
- Components should be loosely coupled to one another and to the external environment.<br />
- Design representations should be easily understandable.<br />
- The design should be developed iteratively. </p>
]]></content:encoded>
			<wfw:commentRss>http://learnsoftwareprocesses.com/2009/10/20/modeling-practices-type-of-software-engineering-practice/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
