<?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>KentW Limited</title>
	<atom:link href="http://ltd.kentw.co.uk/feed/" rel="self" type="application/rss+xml" />
	<link>http://ltd.kentw.co.uk</link>
	<description>Appsblog 2.1</description>
	<lastBuildDate>Sat, 10 Sep 2011 11:34:32 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Agile ERP Implementations &#8211; Planning</title>
		<link>http://ltd.kentw.co.uk/projectmgnt/agile-erp-implementations-planning/</link>
		<comments>http://ltd.kentw.co.uk/projectmgnt/agile-erp-implementations-planning/#comments</comments>
		<pubDate>Sat, 10 Sep 2011 11:30:19 +0000</pubDate>
		<dc:creator>Kent</dc:creator>
				<category><![CDATA[Project Management]]></category>
		<category><![CDATA[Agile]]></category>
		<category><![CDATA[Scrum]]></category>

		<guid isPermaLink="false">http://ltd.kentw.co.uk/projectmgnt/agile-erp-implementations-planning/</guid>
		<description><![CDATA[This post is an extension of the overview &#8211; read this first: Agile ERP Implementations
The Scrum methodology is a framework for developing high value products iteratively using self-regulating teams to improve synergy and effectiveness. 
Scrum prescribes the following projects activities which are all related to a specific Sprint:

Sprint Planning Meeting &#8211; scope and approach for [...]]]></description>
			<content:encoded><![CDATA[<p>This post is an extension of the overview &#8211; read this first: <a href="http://ltd.kentw.co.uk/projectmgnt/methodology/agile-erp-implementations/" target="_blank">Agile ERP Implementations</a></p>
<p>The Scrum methodology is a framework for developing high value products iteratively using self-regulating teams to improve synergy and effectiveness. </p>
<p>Scrum prescribes the following projects activities which are all related to a specific Sprint:</p>
<ul>
<li>Sprint Planning Meeting &#8211; scope and approach for the next Sprint or Increment </li>
<li>Daily Scrum &#8211; short daily meeting to coordinate within the Sprint team </li>
<li>Sprint Review Meeting &#8211; review of the current Sprint on Product Backlog </li>
<li>Sprint Retrospective &#8211; review of how to improve the Sprint </li>
</ul>
<p>Scrum does not however specify Pre- and Post-Game activities and does not prescribe the processes and techniques for building products.</p>
<p>An ERP implementation is a complex project where the implementation process will impact the Scrum methodology:</p>
<ul>
<li>Multiple Sprints in Parallel </li>
<li>Interdependent and prerequisite Sprints </li>
<li>Significant non-Sprint activities </li>
<li>Coordination of internal; external or offshore project resources </li>
<li>Management of third party product and service deliveries </li>
</ul>
<p>To keep the spirit of the Scrum Guide each Sprint should be self-regulating to produce the next Increment whilst the Product Manager must ensure each Sprint is executed in the right sequence. Planning the Scrum project becomes focus on coordinating Sprints rather than planning the individual Sprint itself. </p>
<h3>Pre-Game Phase</h3>
<p>The Pre-Game planning is to ensure the following:</p>
<ul>
<li>Project Kick-off </li>
<li>Creation of Product Backlog </li>
<li>Creation of Sprint overview plan with expected number of Sprints and their dependencies and needed non-Sprint activities </li>
<li>Creation of strategic working documents like Stakeholder and Risk Management strategies </li>
</ul>
<p>In particular for ERP implementations there is a specific process that must be followed as ERP systems require a sequential setup process due to module and functionality dependencies. </p>
<p><a href="http://ltd.kentw.co.uk/wp-content/uploads/2011/09/image2.png"><img style="display: inline" title="image" alt="image" src="http://ltd.kentw.co.uk/wp-content/uploads/2011/09/image_thumb2.png" width="372" height="161" /></a></p>
<h3>Sprint Phase</h3>
<p>The planning of the individual Sprint is very much given by the Scrum methodology with the Sprint Backlog and the addition of a few ERP specific processes:</p>
<ul>
<li>Scrum items:
<ul>
<li>Sprint Planning Meeting &#8211; scope and approach for the next Sprint or Increment </li>
<li>Daily Scrum &#8211; short daily meeting to coordinate within the Sprint team </li>
<li>Sprint Review Meeting &#8211; review of the current Sprint on Product Backlog </li>
<li>Sprint Retrospective &#8211; review of how to improve the Sprint </li>
</ul>
</li>
<li>ERP specific items:
<ul>
<li>Development Work &#8211; functional or&#160; technical work to produce features according to Sprint Backlog </li>
<li>Acceptance and Sign-off &#8211; client approval of “done” features </li>
<li>Increment Delivery &#8211; apply new features to Gold environment </li>
</ul>
</li>
</ul>
<p>The Sprint Team will plan the Development Work within the team so no project plan will be made for the individual Sprint &#8211; however a generic plan can be made to communicate the expected process for each Sprint &#8211; for example:</p>
<p><a href="http://ltd.kentw.co.uk/wp-content/uploads/2011/09/image3.png"><img style="display: inline" title="image" alt="image" src="http://ltd.kentw.co.uk/wp-content/uploads/2011/09/image_thumb3.png" width="410" height="219" /></a></p>
<p>All Sprints will start with a Sprint Planning Meeting to produce the Sprint Backlog based on selected features from the Product Backlog.&#160; Next the Sprint will commence where Daily Scrum; Development Work and Feature Acceptance and Sign-off as on-going processes.</p>
<p>When the Sprint is complete the Increment is delivered and Sprint Review and Retrospective will take place.</p>
<p>Depending on the Development Work the Increment Delivery can be anything from setting up the Gold environment to deploying a new database.</p>
<p>So a multi-Sprint project could look like this:</p>
<p><a href="http://ltd.kentw.co.uk/wp-content/uploads/2011/09/image4.png"><img style="display: inline" title="image" alt="image" src="http://ltd.kentw.co.uk/wp-content/uploads/2011/09/image_thumb4.png" width="475" height="408" /></a></p>
<p>The Scrum methodology states each Development Team organises their own Sprint. So the Product Owner concentrates on coordinating Sprints and other dependencies like Infrastructure.</p>
<p>The above example having 4 Increments would have a 4-5 months duration &#8211; so a fairly simple implementation.</p>
<h3>Post-Game Phase</h3>
<p>According to the Scrum methodology the Product Backlog is never complete but from an ERP project point of view there must be a go-live point and a point where external resources are released. The Product Backlog and then accumulate and a Phase 2 project can be initiated at a later stage.</p>
<p>An example of a Post-Game phase with a go-live and support phase and wind-down period:</p>
<p><a href="http://ltd.kentw.co.uk/wp-content/uploads/2011/09/image5.png"><img style="display: inline" title="image" alt="image" src="http://ltd.kentw.co.uk/wp-content/uploads/2011/09/image_thumb5.png" width="409" height="123" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://ltd.kentw.co.uk/projectmgnt/agile-erp-implementations-planning/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Agile ERP Implementations &#8211; Artefacts</title>
		<link>http://ltd.kentw.co.uk/projectmgnt/methodology/agile-erp-implementations-artefacts/</link>
		<comments>http://ltd.kentw.co.uk/projectmgnt/methodology/agile-erp-implementations-artefacts/#comments</comments>
		<pubDate>Thu, 01 Sep 2011 12:52:40 +0000</pubDate>
		<dc:creator>Kent</dc:creator>
				<category><![CDATA[Project Methodology]]></category>
		<category><![CDATA[Agile]]></category>
		<category><![CDATA[Scrum]]></category>

		<guid isPermaLink="false">http://ltd.kentw.co.uk/projectmgnt/methodology/agile-erp-implementations-artefacts/</guid>
		<description><![CDATA[This post is an extension of the overview &#8211; read this first: Agile ERP Implementations
Artefacts and project document flows vary by the size of a project so I would use this as a generic guide only.
The Scrum methodology states the following Artefacts are needed:

Product Backlog &#8211; list of desired product features 
Sprint Backlog &#8211; list [...]]]></description>
			<content:encoded><![CDATA[<p>This post is an extension of the overview &#8211; read this first: <a href="http://ltd.kentw.co.uk/projectmgnt/methodology/agile-erp-implementations/" target="_blank">Agile ERP Implementations</a></p>
<p>Artefacts and project document flows vary by the size of a project so I would use this as a generic guide only.</p>
<p>The Scrum methodology states the following Artefacts are needed:</p>
<ul>
<li>Product Backlog &#8211; list of desired product features </li>
<li>Sprint Backlog &#8211; list of product features to be developed in a specific Sprint </li>
<li>Increment &#8211; a working product based on all Sprints completed to date </li>
</ul>
<p>In addition to the Scrum methodology an ERP implementation may need additional Artefacts:</p>
<ul>
<li>Issue Backlog &#8211; list of issues or changes</li>
</ul>
<p>Other working documents that may or may not be needed depending on the size of the project are:</p>
<ul>
<li>Setup documents &#8211; module configurations with specific setup sequences </li>
<li>Interface documents &#8211; complex interface scenarios </li>
<li>Data migration documents &#8211; complex data migration scenarios</li>
<li>Test documents &#8211; test scripts to verify if a feature has been fulfilled</li>
<li>User Procedures &#8211; end-user procedures and user guides</li>
<li>Training documents &#8211; end-user training documents </li>
<li>Cut-over document &#8211; complex go-live scenarios needing coordination of interfaces, data migration and people </li>
</ul>
<p>Some working documents like the setup documents should be regarded as part of the Increment and final documentation where others is only relevant during the ERP project.</p>
<p>Some documents like user-guides and training documents for a feature could with some advantage be created during the Sprint developing that feature.</p>
<p>The working documents are normal documents for an ERP implementation so they will not be discussed further in this article.</p>
<p>The Scrum document workflow is as follows (disregarding working documents and project size considerations):</p>
<p><a href="http://ltd.kentw.co.uk/wp-content/uploads/2011/09/image.png"><img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://ltd.kentw.co.uk/wp-content/uploads/2011/09/image_thumb.png" width="271" height="313" /></a></p>
<p>Keep in mind the above diagram indicates that multiple Sprints and Sprint Backlogs can exist at any one time whereas there is only one Product Backlog; Increment and Issue Backlog throughout a Scrum ERP implementation project.</p>
<h3>Product Backlog</h3>
<p>The Product Backlog is owned and maintained by the Product Owner throughout the whole Scrum project.</p>
<p>The Product Backlog in accordance to the Scrum methodology contains all features, functions, requirements, enhancements, and bug fixes. Well this would be rather impossible to manage in an ERP implementation as just the requirements may be in the hundreds and issues/bugs may run into thousands. To put all functions into the Product Backlog would not add any value as with an ERP system one would expect certain basic functions to exist like “Ability to create a journal”.</p>
<p>The Scrum methodology also states that the Product Backlog is dynamic and constantly changing &#8211; an approach that would be dangerous in a large scale ERP implementation. For an ERP implementation it is necessary to manage changes to requirements due to multiple stakeholders; costs; resources and dependencies. Change to the Product Backlog should be agreed in the steering committee to ensure any impacts are properly assessed.</p>
<p>The Product Backlog must be tailored to ERP Implementations so it becomes manageable and value added. The Product Backlog should only contain requirements specific to the business having the ERP implementation and the requirements must have an owner or a sponsor who is responsible for the desired need &#8211; ideally grouped by functional area and type of requirement like legal; business or non-functional.</p>
<p>Other qualifying items may be priority, cost and dependencies. Dependencies are necessary in ERP implementations as even if the Receivables module is the most important for the project you must implement the General Ledger first and before doing this you must define security and chart of accounts and so forth.</p>
<p>Suggested Product Backlog fields:</p>
<ul>
<li>Requirement &#8211; id; name and description of the feature</li>
<li>Type &#8211; legal; regulatory; business or non-functional like performance and security </li>
<li>Status &#8211; open or closed</li>
<li>Owner &#8211; the person; stakeholder or department needing the requirement </li>
<li>Functional Area &#8211; module area or discipline </li>
<li>Dependency &#8211; referring id to a dependent feature </li>
<li>Priority &#8211; must have, highly desirable,&#160; nice to have</li>
<li>Estimate &#8211; duration</li>
<li>Sprint &#8211; id of assigned sprint </li>
</ul>
<p>Other fields may be necessary depending on the size and needs of the project.</p>
<h3>Sprint Backlog</h3>
<p>A Sprint Backlog is owned by the Scrum Master and is created for each Sprint.</p>
<p>The Sprint Backlog is populated with selected Product Backlog features and then enriched with subtasks needed as part of the development ensuring that each feature/item is measurable down to 1-2 days. This detailed breakdown ensures easy tracking and removes the need for separate planning within a Sprint.</p>
<p>Issue relevant for the Sprint may be added from the Issue Backlog.</p>
<p>Issues encountered during the Sprint should be added to the Sprint Backlog as a subtask and if not resolved during the Sprint or if outside the Sprint scope &#8211; the issue should be added to the Issue Backlog.</p>
<p>Suggested Sprint Backlog fields:</p>
<ul>
<li>Development Item &#8211; id; name and approach of feature/subtask/issue </li>
<li>Type &#8211; feature; subtask or issue</li>
<li>Reference &#8211; requirement id or related development item id </li>
<li>Status &#8211; open; setup; developed; tested; accepted or cancelled</li>
<li>Assigned &#8211; assigned Sprint team member</li>
<li>Estimate &#8211; duration (if estimate is &gt;2 days additional subtasks are needed)</li>
</ul>
<p>For a successful Sprint &#8211; all or most of the development items should have accepted hence a Sprint item do not have a priority.</p>
<p>When the Sprint is complete the Product Backlog is updated from the Sprint Backlog which then cease to exist.</p>
<h3>Increment</h3>
<p>The Increment is owned by the Product Owner throughout the whole Scrum project.</p>
<p>The Increment is the accumulated working product of the latest Sprint. In an ERP implementation this is a new base-lined instance of an environment &#8211; normally called <em>gold</em>. When a new configuration or development has been successfully tested and accepted &#8211; it is applied to the gold environment and then backed. The new gold environment is now ready for go-live or the next Sprint.</p>
<p>A type typical ERP implementation Sprint could be done as follows:</p>
<p><a href="http://ltd.kentw.co.uk/wp-content/uploads/2011/09/image1.png"><img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://ltd.kentw.co.uk/wp-content/uploads/2011/09/image_thumb1.png" width="379" height="302" /></a></p>
<p>The Sprint environment is the clone of the gold environment where development; changes and test are being made. As the Sprint environment contains dirty data -&#160; the base-lined changes must be re-applied to the Gold Environment. The Gold backup is needed in case something goes wrong during the base-line setup.</p>
<p>The environment is maintained by the infrastructure team on an on-going basis and is therefore outside the Agile ERP implementation methodology.</p>
<h3>Issue Backlog</h3>
<p>The Issue Backlog is owned by the Product Owner throughout the whole Scrum project but can be maintained by the Product Owner and the Scrum Master(s).</p>
<p>The Issue Backlog is an ERP implementation specific need due to the high number of issues; changes and bugs normally occurring in an ERP project. Many issues are also be cross-functional and could be outside the scope of the current Sprint and hence should be tracked outside the Sprint.</p>
<p>If the ERP implementation scope is only one or two modules then this Issue Backlog could be avoided by including the issues in the Product Backlog.</p>
<p>Suggested Issue Backlog fields:</p>
<ul>
<li>Issue Item &#8211; id; name and problem description </li>
<li>Reference &#8211; related requirement id</li>
<li>Status &#8211; open or closed </li>
<li>Priority &#8211; critical, important,&#160; cosmetic</li>
<li>Estimate &#8211; duration</li>
<li>Approach Id &#8211; id of assigned Sprint Backlog or Product Backlog item</li>
</ul>
<p>Any issue can be selected for a Sprint Backlog or converted into a Product Backlog item if it’s a new feature.</p>
]]></content:encoded>
			<wfw:commentRss>http://ltd.kentw.co.uk/projectmgnt/methodology/agile-erp-implementations-artefacts/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Agile ERP Implementations</title>
		<link>http://ltd.kentw.co.uk/projectmgnt/methodology/agile-erp-implementations-2/</link>
		<comments>http://ltd.kentw.co.uk/projectmgnt/methodology/agile-erp-implementations-2/#comments</comments>
		<pubDate>Sat, 27 Aug 2011 08:26:31 +0000</pubDate>
		<dc:creator>Kent</dc:creator>
				<category><![CDATA[Project Methodology]]></category>
		<category><![CDATA[Agile]]></category>
		<category><![CDATA[Scrum]]></category>

		<guid isPermaLink="false">http://ltd.kentw.co.uk/projectmgnt/methodology/agile-erp-implementations-2/</guid>
		<description><![CDATA[By applying Agile development and project management methods we can improve overall customer satisfaction by increasing customer interaction throughout the project without sacrificing scope control and quality.
The Agile methodology helps the customer to gradually understand and accept the new system whilst providing constructive feedback and suggestions to the implementation team throughout the project.
This article will [...]]]></description>
			<content:encoded><![CDATA[<p>By applying Agile development and project management methods we can improve overall customer satisfaction by increasing customer interaction throughout the project without sacrificing scope control and quality.</p>
<p>The Agile methodology helps the customer to gradually understand and accept the new system whilst providing constructive feedback and suggestions to the implementation team throughout the project.</p>
<p>This article will focus mainly on the high-level phases of Agile. </p>
<p>A later article will discuss the detailed project management and the resource management side of Agile.</p>
<p>More reading:</p>
<ul>
<li><a href="http://ltd.kentw.co.uk/projectmgnt/methodology/agile-erp-implementations-the-team/" target="_blank">Agile ERP Implementations &#8211; The Team</a> </li>
<li><a href="http://ltd.kentw.co.uk/projectmgnt/methodology/agile-erp-implementations-artefacts/" target="_blank">Agile ERP Implementations &#8211; Artefacts</a></li>
<li><a href="http://ltd.kentw.co.uk/projectmgnt/agile-erp-implementations-planning/" target="_blank">Agile ERP Implementations &#8211; Planning</a></li>
</ul>
<h3>Agile Development</h3>
<p>The term Agile originates from Agile Software Development which is a software engineering methodology that focuses on interactive development and regular working releases.</p>
<p>The <a href="http://agilemanifesto.org/">Agile Manifesto</a> states:</p>
<p><b><i>We are uncovering better ways of developing software by doing it and helping others do it.</i></b></p>
<p><b><i>Through this work we have come to value:</i></b></p>
<p>· <b><i>Individuals and interactions over processes and tools</i></b></p>
<p>· <b><i>Working software over comprehensive documentation</i></b></p>
<p>· <b><i>Customer collaboration over contract negotiation</i></b></p>
<p>· <b><i>Responding to change over following a plan</i></b></p>
<p><b><i>That is, while there is value in the items on the right, we value the items on the left more.</i></b></p>
<p>The above makes sense not only in a software development but also in ERP implementations. In order to ensure the Agile manifesto applies to an implementation we need to apply an Agile project management method.</p>
<h4>Agile Project Management</h4>
<p>There are several Agile project management methods but let’s have a closer look at Scrum as an example. There are many flavours of Scrum as it was originally made for product development but from a high level we can say there is three phases in a Scrum project lifecycle:</p>
<p><a href="http://ltd.kentw.co.uk/wp-content/uploads/2011/08/clip_image001.png"><img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto; padding-top: 0px" title="clip_image001" border="0" alt="clip_image001" src="http://ltd.kentw.co.uk/wp-content/uploads/2011/08/clip_image001_thumb.png" width="506" height="170" /></a></p>
<p>· Pre-game Phase &#8211; project initiation with requirements and high-level planning</p>
<p>· Development Phase &#8211; multiple development cycles (<b>Sprint</b>’s) delivering working product releases</p>
<p>· Post-game Phase &#8211; project go-live with deployment and documentation delivery</p>
<h5>Pre-game Phase </h5>
<p>In this phase the business and non-functional requirements are put into a prioritised list of features called the <i>Product Backlog -</i> essentially forming the project scope and high-level project plan. </p>
<p>The <i>Product Backlog</i> should only define what is needed:</p>
<p><a href="http://ltd.kentw.co.uk/wp-content/uploads/2011/08/clip_image002.png" target="_blank"><img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto; padding-top: 0px" title="clip_image002" border="0" alt="clip_image002" src="http://ltd.kentw.co.uk/wp-content/uploads/2011/08/clip_image002_thumb.png" width="309" height="164" /></a></p>
<p>So no huge scope or requirements document but merely a list of customer needs. In my experience this makes sense as it is impossible to define <u>all</u> requirements up-front &#8211; even for an out of the box solution especially when the make of the future system is unknown.</p>
<p>The original Scrum methodology states that anyone on the project can update the Product Backlog with new requirements and any defects or issues encountered. On an ERP project &#8211; where the team is huge and defects and/or issues can run into the 100s &#8211; I would refrain from this approach and rather treat the Product Backlog as being under change control to avoid scope creep. The defects and issues could be places in a separate <i>Issue Backlog</i> or similar.<i></i></p>
<h5>Development Phase</h5>
<p>This phase contains multiple development cycles &#8211; each called a <i>Sprint</i>. Each Sprint delivers a product release with new features as defined in the <i>Sprint Backlog,</i> which is a subset of features from the <i>Product Backlog</i> and any previous defects or issues to be resolved from the <i>Issue Backlog</i>:</p>
<p><a href="http://ltd.kentw.co.uk/wp-content/uploads/2011/08/clip_image003.png" target="_blank"><img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto; padding-top: 0px" title="clip_image003" border="0" alt="clip_image003" src="http://ltd.kentw.co.uk/wp-content/uploads/2011/08/clip_image003_thumb.png" width="477" height="281" /></a></p>
<p>Each Sprint contains analysis; design; build; test and delivery. </p>
<p>Each ERP Sprint would encompass:</p>
<p>· Sprint Backlog &#8211; subset of Product Backlog features</p>
<p>· Application Design &#8211; configuration planning</p>
<p>· Configuration &#8211; cloning if needed; configure and unit test items in Sprint Backlog</p>
<p>· User Acceptance Test &#8211; user test and acceptance of items in Sprint Backlog</p>
<p>Multiple Sprint cycles can operate in parallel if they are delivering independent features. For example can customisations be considered as an independent Sprint cycle.</p>
<p>The number of Sprint’s will vary depending on project size and complexity. But for example a minor project could be arranged like this:</p>
<p>1. Core features &#8211; chart of accounts; ledgers and user security</p>
<p>2. Basic features &#8211; sub-ledger transactions; posting; reporting and journals</p>
<p>3. Advanced features &#8211; intercompany, multicurrency and consolidation</p>
<p>4. Development -customisations; interfaces and data migration</p>
<p>Where Sprint 4 could be run in parallel with Sprint 3 if the customisation is independent of these features.</p>
<p>So a small implementation is around 4-5 sprints.</p>
<p>Each Sprint cycle duration would be around 3-4 weeks.</p>
<p>In accordance to the Scrum methodology each Sprint requires the user to test and accept the delivered features. So the Scrum methodology provides a rolling User Acceptance Test (UAT) ensuring a more balanced approach to acceptance and project completion. </p>
<p>The user also incrementally learns about the system and can therefore better provide constructive feedback for both the current as well as the next Sprint cycle.</p>
<p>Commercially this is also good approach as each Sprint is having an UAT the payment milestones would naturally match the Sprint cycles.</p>
<h5>Post-game Phase</h5>
<p>This phase deploys the last Sprint release into production and the documentation is delivered.</p>
<p>This is similar to a normal implementation project where the last tested configuration is deployed.</p>
<p>The documentation can be generated automatically or manually as on a normal ERP implementation as part of each UAT:</p>
<p><a href="http://ltd.kentw.co.uk/wp-content/uploads/2011/08/clip_image0041.png" target="_blank"><img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto; padding-top: 0px" title="clip_image004" border="0" alt="clip_image004" src="http://ltd.kentw.co.uk/wp-content/uploads/2011/08/clip_image004_thumb1.png" width="484" height="285" /></a></p>
<p>The benefit of Agile/Scrum is that the go-live leap should be smaller as the UAT has been a progressive experience rather than a big bang.</p>
<h4>The Phased Implementation &#8211; Looking Back</h4>
<p>Still to this day the normal way of implementing ERP systems is to use the phased implementation model with a known method like Oracle Application Implementation Method (AIM); Oracle Unified Method (OUM) or similar.</p>
<p>The typical waterfall phases are:</p>
<p>· Analysis</p>
<p>· Design</p>
<p>· Build</p>
<p>· Transition</p>
<p>· Production</p>
<p>Several environments are delivered from design to production with the final test being the User Acceptance Test (UAT) for final signoff before going live.</p>
<p>The phased implementation models are characterised by complicated project plans and documentation flows. It is often unclear what is a deliverable and what is a work product and how this tie in with the commercial contract.</p>
<p>Anyone who has been a part of a large phased implementation knows the following symptoms:</p>
<p>· Requirements are missed</p>
<p>· Loads of paper being produced</p>
<p>· Deadlines are missed</p>
<p>· Communication failures</p>
<p>· Payment disputes</p>
<p>· Fear of going live</p>
<p>Some newer implementation methods are leaning towards being agile &#8211; like the Oracle Business Accelerator (OBA) which speeds up the delivery of the first working instance but the remaining phases are still similar to AIM.</p>
]]></content:encoded>
			<wfw:commentRss>http://ltd.kentw.co.uk/projectmgnt/methodology/agile-erp-implementations-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Agile ERP Implementations &#8211; The Team</title>
		<link>http://ltd.kentw.co.uk/projectmgnt/methodology/agile-erp-implementations-the-team/</link>
		<comments>http://ltd.kentw.co.uk/projectmgnt/methodology/agile-erp-implementations-the-team/#comments</comments>
		<pubDate>Thu, 25 Aug 2011 12:51:15 +0000</pubDate>
		<dc:creator>Kent</dc:creator>
				<category><![CDATA[Project Methodology]]></category>
		<category><![CDATA[Agile]]></category>
		<category><![CDATA[Scrum]]></category>

		<guid isPermaLink="false">http://ltd.kentw.co.uk/?p=1100</guid>
		<description><![CDATA[This post is an extension of the overview &#8211; read this first: Agile ERP Implementations
In this post we will focus on the implementation team.
The standard Scrum method has an organisational structure as follows:

Scrum Team &#8211; Everybody on the project

Product Owner &#8211; Project Manager

Development Team &#8211; Individual Sprint team

Scrum Master &#8211; Team leader and facilitator 
Team [...]]]></description>
			<content:encoded><![CDATA[<p>This post is an extension of the overview &#8211; read this first: <a href="http://ltd.kentw.co.uk/projectmgnt/methodology/agile-erp-implementations/" target="_blank">Agile ERP Implementations</a></p>
<p>In this post we will focus on the implementation team.</p>
<p>The standard Scrum method has an organisational structure as follows:</p>
<ul>
<li>Scrum Team &#8211; Everybody on the project
<ul>
<li>Product Owner &#8211; Project Manager
<ul>
<li>Development Team &#8211; Individual Sprint team
<ul>
<li>Scrum Master &#8211; Team leader and facilitator </li>
<li>Team Member &#8211; Professional developer </li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>
<p>In addition to this an ERP implementation project may need cross-departmental and multi-project coordination:</p>
<ul>
<li>Steering Committee &#8211; Cross-departmental coordination </li>
<li>Programme Manager &#8211; Cross-project coordination </li>
</ul>
<p>Organisation Chart:</p>
<p><a href="http://ltd.kentw.co.uk/wp-content/uploads/2011/08/image.png"><img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://ltd.kentw.co.uk/wp-content/uploads/2011/08/image_thumb.png" width="499" height="480" /></a></p>
<h3>Scrum Team</h3>
<p>The Scrum Team is a self-organising cross-functional project team responsible for delivering a product. </p>
<p>With an ERP implementation the product would be a working implementation live in production. </p>
<p>As with any normal business you may have several parallel on-going projects however these would have their own Scrum Teams. Coordination between projects may require a programme manager or similar.</p>
<p>As ERP implementation projects mostly are cross-departmental the scope of the Scrum should be controlled by a Steering Committee. This is not stated as part of the Scrum methodology but the Scrum methodology is made for product development where most products are developed within one department &#8211; hence no need for this kind of coordination.</p>
<h3>Product Owner</h3>
<p>The Product Owner is responsible for delivery of the product on time and budget. The product owner owns and maintains the product backlog. In an ERP Implementation the product owner may have to answer to a steering committee to ensure cross-departmental interests are met.</p>
<p>The Product Owner will also manage any agreed change to the product backlog and may maintain a project wide issue log.</p>
<p>The Product Owner has the power to cancel a Sprint if it is overrunning or hitting unexpected difficulties.</p>
<h3>Development Team</h3>
<p>The Development Team is responsible for delivering a Sprint producing a working product or a new feature.</p>
<p>The Development Team is tailored to the individual Sprint and is not static throughout the whole Scrum project.</p>
<p>Multiple Development Teams can work in parallel &#8211; each producing a Sprint. However care must be taken to ensure features are not dependent between parallel Sprints.</p>
<p>Each Development Team should be kept to a minimum ideally less than 8 people.</p>
<p>A typical development team for a basic General Ledger setup Sprint could be:</p>
<ul>
<li>Scrum Master </li>
<li>Client Accountant </li>
<li>Client Chief Accountant<!--EndFragment--> </li>
<li>External General Ledger Consultant </li>
<li>External Developer </li>
</ul>
<p>This may vary based on module and project size but if the team becomes too big for a Sprint &#8211; it is better to split the Sprint into smaller pieces.</p>
<p>Smaller teams are more efficient and communicate better which is the basic idea behind the Scrum methodology.</p>
<h3>Scrum Master</h3>
<p>The Scrum Master is the development team leader responsible for facilitating and monitoring the Sprint.</p>
<p>The Scrum Master will ensure the Scrum methodology is followed by all development team members.</p>
<p>The Scrum Master owns and maintains the Sprint backlog and reports progress back to the Product Owner.</p>
<p>Any issues or impediments are resolved within the Development Team or escalated to the Product Owner.</p>
<h3>Team Member</h3>
<p>The Team Member is a professional responsible for developing the product with the help of the other team members.</p>
<p>All team members are equal and are all developers with the sole focus of producing the product or feature in accordance to the Sprint backlog.</p>
<p>Any issues identified are reported to the Scrum Master.</p>
]]></content:encoded>
			<wfw:commentRss>http://ltd.kentw.co.uk/projectmgnt/methodology/agile-erp-implementations-the-team/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Agile ERP Implementations</title>
		<link>http://ltd.kentw.co.uk/projectmgnt/methodology/agile-erp-implementations/</link>
		<comments>http://ltd.kentw.co.uk/projectmgnt/methodology/agile-erp-implementations/#comments</comments>
		<pubDate>Thu, 28 Jul 2011 13:56:36 +0000</pubDate>
		<dc:creator>Kent</dc:creator>
				<category><![CDATA[Project Methodology]]></category>
		<category><![CDATA[Agile]]></category>
		<category><![CDATA[Scrum]]></category>

		<guid isPermaLink="false">http://ltd.kentw.co.uk/projectmgnt/methodology/agile-erp-implementations/</guid>
		<description><![CDATA[By applying Agile development and project management methods we can improve overall customer satisfaction by increasing customer interaction throughout the project without sacrificing scope control and quality.
The Agile methodology helps the customer to gradually understand and accept the new system whilst providing constructive feedback and suggestions to the implementation team throughout the project.
This article will [...]]]></description>
			<content:encoded><![CDATA[<p>By applying Agile development and project management methods we can improve overall customer satisfaction by increasing customer interaction throughout the project without sacrificing scope control and quality.</p>
<p>The Agile methodology helps the customer to gradually understand and accept the new system whilst providing constructive feedback and suggestions to the implementation team throughout the project.</p>
<p>This article will focus mainly on the high-level phases of Agile. A later article will discuss the detailed project management and the resource management side of Agile.</p>
<h4>Agile Development</h4>
<p>The term Agile originates from Agile Software Development which is a software engineering methodology that focuses on interactive development and regular working releases.</p>
<p>The <a href="http://agilemanifesto.org/">Agile Manifesto</a> states:</p>
<p><b><i>We are uncovering better ways of developing software by doing it and helping others do it.</i></b></p>
<p><b><i>Through this work we have come to value:</i></b></p>
<p>· <b><i>Individuals and interactions over processes and tools</i></b></p>
<p>· <b><i>Working software over comprehensive documentation</i></b></p>
<p>· <b><i>Customer collaboration over contract negotiation</i></b></p>
<p>· <b><i>Responding to change over following a plan</i></b></p>
<p><b><i>That is, while there is value in the items on the right, we value the items on the left more.</i></b></p>
<p>The above makes sense not only in a software development but also in ERP implementations. In order to ensure the Agile manifesto applies to an implementation we need to apply an Agile project management method.</p>
<h4>Agile Project Management</h4>
<p>There are several Agile project management methods but let’s have a closer look at Scrum as an example. There are many flavours of Scrum as it was originally made for product development but from a high level we can say there is three phases in a Scrum project lifecycle:</p>
<p><a href="http://ltd.kentw.co.uk/wp-content/uploads/2011/07/clip_image001.png"><img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto; padding-top: 0px" title="clip_image001" border="0" alt="clip_image001" src="http://ltd.kentw.co.uk/wp-content/uploads/2011/07/clip_image001_thumb.png" width="506" height="170" /></a></p>
<p>· Pre-game Phase &#8211; project initiation with requirements and high-level planning</p>
<p>· Development Phase &#8211; multiple development cycles (<b>Sprint</b>’s) delivering working product releases</p>
<p>· Post-game Phase &#8211; project go-live with deployment and documentation delivery</p>
<h5>Pre-game Phase </h5>
<p>In this phase the business and non-functional requirements are put into a prioritised list of features called the <i>Product Backlog -</i> essentially forming the project scope and high-level project plan. </p>
<p>The <i>Product Backlog</i> should only define what is needed:</p>
<p><a href="http://ltd.kentw.co.uk/wp-content/uploads/2011/07/clip_image002.png" target="_blank"><img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto; padding-top: 0px" title="clip_image002" border="0" alt="clip_image002" src="http://ltd.kentw.co.uk/wp-content/uploads/2011/07/clip_image002_thumb.png" width="309" height="164" /></a></p>
<p>So no huge scope or requirements document but merely a list of customer needs. In my experience this makes sense as it is impossible to define <u>all</u> requirements up-front &#8211; even for an out of the box solution especially when the make of the future system is unknown.</p>
<p>The original Scrum methodology states that anyone on the project can update the Product Backlog with new requirements and any defects or issues encountered. On an ERP project &#8211; where the team is huge and defects and/or issues can run into the 100s &#8211; I would refrain from this approach and rather treat the Product Backlog as being under change control to avoid scope creep. The defects and issues could be places in a separate <i>Issue Backlog</i> or similar.<i></i></p>
<h5>Development Phase</h5>
<p>This phase contains multiple development cycles &#8211; each called a <i>Sprint</i>. Each Sprint delivers a product release with new features as defined in the <i>Sprint Backlog,</i> which is a subset of features from the <i>Product Backlog</i> and any previous defects or issues to be resolved from the <i>Issue Backlog</i>:</p>
<p><a href="http://ltd.kentw.co.uk/wp-content/uploads/2011/07/clip_image003.png" target="_blank"><img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto; padding-top: 0px" title="clip_image003" border="0" alt="clip_image003" src="http://ltd.kentw.co.uk/wp-content/uploads/2011/07/clip_image003_thumb.png" width="477" height="281" /></a></p>
<p>Each Sprint contains analysis; design; build; test and delivery. </p>
<p>Each ERP Sprint would encompass:</p>
<p>· Sprint Backlog &#8211; subset of Product Backlog features</p>
<p>· Application Design &#8211; configuration planning</p>
<p>· Configuration &#8211; cloning if needed; configure and unit test items in Sprint Backlog</p>
<p>· User Acceptance Test &#8211; user test and acceptance of items in Sprint Backlog</p>
<p>Multiple Sprint cycles can operate in parallel if they are delivering independent features. For example can customisations be considered as an independent Sprint cycle.</p>
<p>The number of Sprint’s will vary depending on project size and complexity. But for example a minor project could be arranged like this:</p>
<p>1. Core features &#8211; chart of accounts; ledgers and user security</p>
<p>2. Basic features &#8211; sub-ledger transactions; posting; reporting and journals</p>
<p>3. Advanced features &#8211; intercompany, multicurrency and consolidation</p>
<p>4. Development -customisations; interfaces and data migration</p>
<p>Where Sprint 4 could be run in parallel with Sprint 3 if the customisation is independent of these features.</p>
<p>So a small implementation is around 4-5 sprints.</p>
<p>Each Sprint cycle duration would be around 3-4 weeks.</p>
<p>In accordance to the Scrum methodology each Sprint requires the user to test and accept the delivered features. So the Scrum methodology provides a rolling User Acceptance Test (UAT) ensuring a more balanced approach to acceptance and project completion. </p>
<p>The user also incrementally learns about the system and can therefore better provide constructive feedback for both the current as well as the next Sprint cycle.</p>
<p>Commercially this is also good approach as each Sprint is having an UAT the payment milestones would naturally match the Sprint cycles.</p>
<h5>Post-game Phase</h5>
<p>This phase deploys the last Sprint release into production and the documentation is delivered.</p>
<p>This is similar to a normal implementation project where the last tested configuration is deployed.</p>
<p>The documentation can be generated automatically or manually as on a normal ERP implementation as part of each UAT:</p>
<p><a href="http://ltd.kentw.co.uk/wp-content/uploads/2011/08/clip_image004.png" target="_blank"><img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: block; float: none; margin-left: auto; border-top: 0px; margin-right: auto; border-right: 0px; padding-top: 0px" title="clip_image004" border="0" alt="clip_image004" src="http://ltd.kentw.co.uk/wp-content/uploads/2011/08/clip_image004_thumb.png" width="484" height="285" /></a></p>
<p>The benefit of Agile/Scrum is that the go-live leap should be smaller as the UAT has been a progressive experience rather than a big bang.</p>
<h4>The Phased Implementation &#8211; Looking Back</h4>
<p>Still to this day the normal way of implementing ERP systems is to use the phased implementation model with a known method like Oracle Application Implementation Method (AIM); Oracle Unified Method (OUM) or similar.</p>
<p>The typical waterfall phases are:</p>
<p>· Analysis</p>
<p>· Design</p>
<p>· Build</p>
<p>· Transition</p>
<p>· Production</p>
<p>Several environments are delivered from design to production with the final test being the User Acceptance Test (UAT) for final signoff before going live.</p>
<p>The phased implementation models are characterised by complicated project plans and documentation flows. It is often unclear what is a deliverable and what is a work product and how this tie in with the commercial contract.</p>
<p>Anyone who has been a part of a large phased implementation knows the following symptoms:</p>
<p>· Requirements are missed</p>
<p>· Loads of paper being produced</p>
<p>· Deadlines are missed</p>
<p>· Communication failures</p>
<p>· Payment disputes</p>
<p>· Fear of going live</p>
<p>Some newer implementation methods are leaning towards being agile &#8211; like the Oracle Business Accelerator (OBA) which speeds up the delivery of the first working instance but the remaining phases are still similar to AIM.</p>
]]></content:encoded>
			<wfw:commentRss>http://ltd.kentw.co.uk/projectmgnt/methodology/agile-erp-implementations/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>R12 FND User password lock down</title>
		<link>http://ltd.kentw.co.uk/technical/r12-installation/r12-fnd-user-password-lock-down/</link>
		<comments>http://ltd.kentw.co.uk/technical/r12-installation/r12-fnd-user-password-lock-down/#comments</comments>
		<pubDate>Sat, 26 Feb 2011 10:48:10 +0000</pubDate>
		<dc:creator>Kent</dc:creator>
				<category><![CDATA[R12 Installation]]></category>
		<category><![CDATA[Installation]]></category>
		<category><![CDATA[R12]]></category>

		<guid isPermaLink="false">http://ltd.kentw.co.uk/technical/r12-installation/r12-fnd-user-password-lock-down/</guid>
		<description><![CDATA[When making your R12 server available on-line you need to protect your FND user password.
This assumes that you have ONLY opened port 8000 for APPS login access.
For any other access I can only recommend to use VPN as a full OEL and RDBMS lock down is very complex.
I used the following script (use at your [...]]]></description>
			<content:encoded><![CDATA[<p>When making your R12 server available on-line you need to protect your FND user password.</p>
<p>This assumes that you have ONLY opened port 8000 for APPS login access.</p>
<p>For any other access I can only recommend to use VPN as a full OEL and RDBMS lock down is very complex.</p>
<p>I used the following script (use at your own risk):</p>
<blockquote><p><font size="1"><em>begin         <br />&#160;&#160;&#160; /* lock ALL seeded accounts first */          <br />&#160;&#160;&#160; update fnd_user set end_date=sysdate;          <br />&#160;&#160;&#160; commit;          <br />&#160;&#160;&#160; /* then unlock the necessary ones */          <br />&#160;&#160;&#160; update fnd_user set end_date=null where user_name in (          <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160; &#8216;ANONYMOUS&#8217;,          <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160; &#8216;APPSMGR&#8217;,          <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160; &#8216;AUTOINSTALL&#8217;,          <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160; &#8216;CONCURRENT MANAGER&#8217;,          <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160; &#8216;FEEDER SYSTEM&#8217;,          <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160; &#8216;GUEST&#8217;, /* NEVER touch this account as this enables APPS login */          <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160; &#8216;INITIAL SETUP&#8217;,          <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160; &#8216;ORACLE&#8217;, /* my demo account */&#160; <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160; &#8216;SYSADMIN&#8217;          <br />&#160;&#160;&#160; );          <br />&#160;&#160;&#160; commit;          <br />&#160;&#160;&#160; /* set password – but NOT for GUEST */          <br />&#160;&#160;&#160; fnd_user_pkg.updateuser(&#8216;ANONYMOUS&#8217;,null,&#8217;password&#8217;);          <br />&#160;&#160;&#160; fnd_user_pkg.updateuser(&#8216;APPSMGR&#8217;,null,&#8217;password&#8217;);          <br />&#160;&#160;&#160; fnd_user_pkg.updateuser(&#8216;AUTOINSTALL&#8217;,null,&#8217;password&#8217;);          <br />&#160;&#160;&#160; fnd_user_pkg.updateuser(&#8216;CONCURRENT MANAGER&#8217;,null,&#8217;password&#8217;);          <br />&#160;&#160;&#160; fnd_user_pkg.updateuser(&#8216;FEEDER SYSTEM&#8217;,null,&#8217;password&#8217;);          <br />&#160;&#160;&#160; fnd_user_pkg.updateuser(&#8216;INITIAL SETUP&#8217;,null,&#8217;password&#8217;);          <br />&#160;&#160;&#160; fnd_user_pkg.updateuser(&#8216;SYSADMIN&#8217;,null,&#8217;password&#8217;);          <br />&#160;&#160;&#160; fnd_user_pkg.updateuser(&#8216;ORACLE&#8217;,null,&#8217;password&#8217;);          <br />&#160;&#160;&#160; commit;          <br />end;          <br />/          <br />exit;</em></font></p>
</blockquote>
<p>Note: Do NOT to touch the GUEST user.</p>
]]></content:encoded>
			<wfw:commentRss>http://ltd.kentw.co.uk/technical/r12-installation/r12-fnd-user-password-lock-down/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>R12 on a HTPC</title>
		<link>http://ltd.kentw.co.uk/technical/r12-installation/r12-on-a-htpc/</link>
		<comments>http://ltd.kentw.co.uk/technical/r12-installation/r12-on-a-htpc/#comments</comments>
		<pubDate>Sat, 26 Feb 2011 10:10:44 +0000</pubDate>
		<dc:creator>Kent</dc:creator>
				<category><![CDATA[R12 Installation]]></category>
		<category><![CDATA[Installation]]></category>
		<category><![CDATA[R12]]></category>

		<guid isPermaLink="false">http://ltd.kentw.co.uk/technical/r12-installation/r12-on-a-htpc/</guid>
		<description><![CDATA[Want to access your R12 installation from a client site?
No problem – pick up the R12 installation described earlier and install the hard disk in a HTPC!
For the purpose I bought a Acer AspireRevo R3700 with the following relevant specifications:

Processor Intel® Atom D525 processor 1.8GHz
Memory 2GB DDR3 800MHz
Graphics NVIDIA ION graphics solution
Networking Gigabit Ethernet, Wake-on-LAN [...]]]></description>
			<content:encoded><![CDATA[<p>Want to access your R12 installation from a client site?</p>
<p>No problem – pick up the R12 installation described <a href="http://ltd.kentw.co.uk/technical/r12-installation/r12-vis-installation/" target="_blank">earlier</a> and install the hard disk in a HTPC!<a href="http://ltd.kentw.co.uk/wp-content/uploads/2011/02/image.png"><img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 10px 5px 10px 0px; padding-left: 0px; padding-right: 0px; display: inline; float: left; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" align="left" src="http://ltd.kentw.co.uk/wp-content/uploads/2011/02/image_thumb.png" width="199" height="243" /></a></p>
<p>For the purpose I bought a Acer AspireRevo R3700 with the following relevant specifications:</p>
<ul>
<li>Processor Intel® Atom D525 processor 1.8GHz</li>
<li>Memory 2GB DDR3 800MHz</li>
<li>Graphics NVIDIA ION graphics solution</li>
<li>Networking Gigabit Ethernet, Wake-on-LAN ready and WLAN: 802.11b/g/n</li>
</ul>
<p>Replace the built-in harddisk with the R12 harddisk and boot the machine.</p>
<p>The machine can be accessed from your network using <a href="http://www.chiark.greenend.org.uk/~sgtatham/putty/" target="_blank">Putty</a> or <a href="http://sourceforge.net/projects/xming/" target="_blank">Xming</a>.</p>
<p>The only problem experienced was to fix the Realtek LAN networking.</p>
<p>A Linux driver is needed for the network card <a href="http://218.210.127.131/downloads/" target="_blank">Realtek R8168</a>. </p>
<p>Unpack the file and follow the instructions in the readme file.</p>
<p>Don’t forget to open port 8000 in your firewall and <a href="http://ltd.kentw.co.uk/technical/r12-installation/r12-fnd-user-password-lock-down/" target="_blank">lock down your FND USER passwords</a>.</p>
<h3>Conclusion</h3>
<p>Performance is good and rather improved thanks to the internal SATA connection which is much faster than using an external USB 2.0 connection. </p>
<p>The dual core Intel Atom D525 netbook CPU seems unimpressed with the R12 technical stack and performs well.</p>
<p>Running one Java client and a concurrent manager report does not stress the CPU.</p>
<p>The R12 system with a single user logged on tops out around 1.7Gb RAM so the built-in 2Gb RAM is plenty.</p>
<p>Note the hyper threading shows as additional CPU’s:</p>
<p><a href="http://ltd.kentw.co.uk/wp-content/uploads/2011/02/image1.png"><img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://ltd.kentw.co.uk/wp-content/uploads/2011/02/image_thumb1.png" width="644" height="416" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://ltd.kentw.co.uk/technical/r12-installation/r12-on-a-htpc/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>GL Chart of Accounts &#8211; Number of Segments</title>
		<link>http://ltd.kentw.co.uk/functional/generalledger/gl-chart-of-accounts-number-of-segments/</link>
		<comments>http://ltd.kentw.co.uk/functional/generalledger/gl-chart-of-accounts-number-of-segments/#comments</comments>
		<pubDate>Tue, 07 Sep 2010 13:56:31 +0000</pubDate>
		<dc:creator>Kent</dc:creator>
				<category><![CDATA[General Ledger]]></category>
		<category><![CDATA[COA]]></category>

		<guid isPermaLink="false">http://ltd.kentw.co.uk/functional/generalledger/gl-chart-of-accounts-number-of-segments/</guid>
		<description><![CDATA[How many segments in my Chart of Accounts (COA) are needed for my business?
There are many considerations and this article will only focus on the number of segments rather than the segment values which will be handled in a later post.
Some of the considerations are:

Oracle System requirements 
Legal reporting requirements 
Financial management reporting needs 
Globalisation [...]]]></description>
			<content:encoded><![CDATA[<p>How many segments in my Chart of Accounts (COA) are needed for my business?</p>
<p>There are many considerations and this article will only focus on the number of segments rather than the segment values which will be handled in a later post.</p>
<p>Some of the considerations are:</p>
<ul>
<li>Oracle System requirements </li>
<li>Legal reporting requirements </li>
<li>Financial management reporting needs </li>
<li>Globalisation needs (some countries have special requirements) </li>
<li>Consolidation needs (some segments may have to be used globally) </li>
<li>Security needs </li>
</ul>
<h3>Oracle System Requirements</h3>
<p>Oracle E-Business suite requires the following segments:</p>
<ul>
<li>Balancing </li>
<li>Natural Account </li>
<li>Cost Center (for Fixed Assets) </li>
</ul>
<p>Optionally you can also have:</p>
<ul>
<li>Intercompany </li>
<li>Management (for security) </li>
<li>Secondary Tracking (for extra year-end tracking) </li>
</ul>
<p>Usage details can be found in the General Ledger Implementation Guide.</p>
<p>All other requirements vary so below is a few do’s and don’ts:</p>
<h3>Do’s</h3>
<p>The User Guide details the Oracle requirements for a segment however in addition to that I recommend this:</p>
<ul>
<li>Keep it simple – your users will have to type it in a lot of times </li>
<li>Focus on <u>financial</u> reporting requirements and needs </li>
<li>Identify segments likely to be consolidated and make global usage rules for these </li>
<li>Have same number of segments globally (to ease documentation and customisations) </li>
<li>Have same segment names globally (to ease documentation and customisations) </li>
</ul>
<h3>Don&#8217;ts</h3>
<p>Could be a very long list but I’ll keep it to the typical errors I have seen in implementations:</p>
<ul>
<li>Have too many segments (impacts usability and performance) </li>
<li>Use of subledger reporting segments like:
<ul>
<li>Product or Item (sales reporting in the GL) </li>
<li>Customer (sales reporting in the GL) </li>
<li>Project (project accounting in the GL) </li>
</ul>
</li>
<li>Dual purpose segments (like one segment for both product and department) </li>
<li>Think you can change the COA after go-live: you cannot </li>
</ul>
<p>Subledger reporting segments are often driven by the requirement for global reporting on subledger data where the use of the GL and consolidations could provide this. </p>
<p>However implications are huge ranging from simple performance problems to feeble attempts to maintain a customer hierarchy in the GL. </p>
<p>Keep in mind the GL is for financial reporting and not for subledger reporting. </p>
<p>By putting subledger reporting in the GL you will also implicit impose limitations of the GL on your subledger which can cause unintended problems like need for custom segment validation and worst case will limit your business as your subledger reporting needs cannot be accomplished in the GL.</p>
<p>In very rare cases combined purpose segments can be justified but the values <u>must </u>be mutual exclusive as any overlapping will cause problems and is in fact a need for an additional segment.</p>
<h3>An Example</h3>
<p>Most mid to large scale business could have a structure like this:</p>
<ul>
<li>Company (Balancing) </li>
<li>Department (Cost Center) </li>
<li>Account (Natural Account) </li>
<li>Analysis 1 </li>
<li>Analysis 2 </li>
<li>Intercompany (same segment values as Company) </li>
</ul>
<p>Company, Department and Account segments are self explanatory. </p>
<p>Company and Account is for legal reporting.</p>
<p>Account, Department, Analysis 1 and 2 is used to support management reporting requirements.</p>
<p>Note there is a dual purpose for the Account segment in both legal and management reporting and sometimes this is remedied by adding a separate sub-account segment for the sole purpose of management reporting. </p>
<p>The intercompany segment is used for tracking the source of an intercompany transaction.</p>
<p>Keep the analysis segments to a finite number of values so if any subledger information is to be contained within these use summary levels like product line, customer group and similar as these values are unlikely to change over time.</p>
<h3>Technical and performance</h3>
<p>Two tables are the focus for performance:</p>
<ul>
<li>GL_CODE_COMBINATIONS – stores unique segment values as a single unique value combination id: CCID </li>
<li>GL_BALANCES – stores summarised GL journals for each CCID </li>
</ul>
<h4>GL_CODE_COMBINATIONS</h4>
<p>The content of this table expands for every new segment value combination entered per COA:</p>
<p><a href="http://ltd.kentw.co.uk/wp-content/uploads/2010/09/image1.png"><img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://ltd.kentw.co.uk/wp-content/uploads/2010/09/image_thumb1.png" width="484" height="326" /></a> </p>
<p>So looking at the example above – if we have the following segments and number of segment values:</p>
<li>Company = 10 </li>
<li>Department = 25 </li>
<li>Account = P/L 1500 and B/S 500 = 2000 </li>
<li>Analysis 1 = 20 </li>
<li>Analysis 2 = 20 </li>
<li>Intercompany = 10
<p>We can have a worst case number of combinations: 10 x 25 x 2000 x 20 x 20 x 10 = 2,000,000,000</p>
<p>So 2 billion rows in this table doesn’t sound good?</p>
<p>The try to imagine if you use subledger segments using all of your world-wide customers, products or projects?</p>
<p>The above number is not that bad as Department and Analysis segments would normally only be used with P/L accounts and intercompany would apply to very few specific accounts.</p>
<p>So a more precise estimate is:</p>
<p>Combinations = P/L combinations + B/S combinations = 10 x 25 x 1500 x 20 x 20 x 1 + 10 x 1 x 500 x 1 x 1 x 1 = 150,000,000 + 5,000 = 150,005,000</p>
<p>A lot less but still significant so performance is a very important consideration when creating your COA.</p>
<h4>GL_BALANCES</h4>
<p>The content of this table expands per:</p>
<ul>
<li>Set of Books </li>
<li>Code Combination (CCID) </li>
<li>Currency </li>
<li>Period </li>
<li>Balance Type (Actual, Budget or Encumbrance) </li>
</ul>
<p>For each month opened all rows from the previous month are duplicated – so the more CCID that are used the more will be carried forward.</p>
<p>So for the above example if we say each of the companies have one set of books and one currency each and they have 12 periods per year. So we will disregard from any budgets and encumbrances as these are normally for a limited number of accounts at a summary level.</p>
<p>New rows per year = 1 x 150,005,000 x 1 x 12 x 1 = 1,800,060,000</p>
<p>So for a large business intending to keep financial data on-line for a few years the number of code combinations have a huge impact.</p>
</p>
</li>
]]></content:encoded>
			<wfw:commentRss>http://ltd.kentw.co.uk/functional/generalledger/gl-chart-of-accounts-number-of-segments/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Project Directory Structure &#8211; Script</title>
		<link>http://ltd.kentw.co.uk/projectmgnt/projecttech/project-directory-structure-script/</link>
		<comments>http://ltd.kentw.co.uk/projectmgnt/projecttech/project-directory-structure-script/#comments</comments>
		<pubDate>Sun, 15 Aug 2010 12:42:48 +0000</pubDate>
		<dc:creator>Kent</dc:creator>
				<category><![CDATA[Project Technology]]></category>
		<category><![CDATA[directories]]></category>
		<category><![CDATA[structure]]></category>

		<guid isPermaLink="false">http://ltd.kentw.co.uk/projectmgnt/projecttech/project-directory-structure-script/</guid>
		<description><![CDATA[I&#8217;ve often been thinking it could be useful to have a script that could create a directory structure for me based on a text file and a simple windows batch script.
Well here it is&#8230;
The default input file name is dirs.txt:
;Comment      0 Project Name       1&#160;&#160; [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve often been thinking it could be useful to have a script that could create a directory structure for me based on a text file and a simple windows batch script.</p>
<p>Well here it is&#8230;</p>
<p>The default input file name is dirs.txt:</p>
<p><font size="1" face="Courier New">;Comment      <br />0 Project Name       <br />1&#160;&#160; Project Management       <br />2&#160;&#160;&#160;&#160; Plan       <br />2&#160;&#160;&#160;&#160; Issues       <br />2&#160;&#160;&#160;&#160; Resources       <br />1&#160;&#160; Deliverables       <br />2&#160;&#160;&#160;&#160; Configuration       <br />3&#160;&#160;&#160;&#160;&#160;&#160; Architecture       <br />3&#160;&#160;&#160;&#160;&#160;&#160; BR100s       <br />3&#160;&#160;&#160;&#160;&#160;&#160; MD50s       <br />2&#160;&#160;&#160;&#160; Development       <br />3&#160;&#160;&#160;&#160;&#160;&#160; MD70s       <br />3&#160;&#160;&#160;&#160;&#160;&#160; Source Code       <br />2&#160;&#160;&#160;&#160; Interfaces       <br />3&#160;&#160;&#160;&#160;&#160;&#160; Interface Strategy       <br />2&#160;&#160;&#160;&#160; Data Conversion       <br />3&#160;&#160;&#160;&#160;&#160;&#160; Data Conversion Strategy       <br />2&#160;&#160;&#160;&#160; Testing       <br />3&#160;&#160;&#160;&#160;&#160;&#160; Test Strategy       <br />3&#160;&#160;&#160;&#160;&#160;&#160; Test Script       <br />;Comment again       <br />1&#160;&#160; Info       <br />2&#160;&#160;&#160;&#160; News       <br />2&#160;&#160;&#160;&#160; Contacts       <br />2&#160;&#160;&#160;&#160; Tools       <br />2&#160;&#160;&#160;&#160; This is a long dir name</font></p>
<p>The digit is the directory level &#8211; without this it is impossible to create a structure with a simple windows batch script.</p>
<p>The main script is makedirs.cmd:</p>
<p><font size="1" face="Courier New">@echo off      <br /></font><font size="1" face="Courier New">rem makedirs.cmd syntax:      <br /></font><font size="1" face="Courier New">rem %1 = target dir. default = current dir .      <br />rem %2 = name of dir file. default = dirs.txt       <br />setlocal ENABLEEXTENSIONS ENABLEDELAYEDEXPANSION       <br />:ARG1       <br />&#160; set targetdir=.       <br />&#160; if not &quot;%1&quot; == &quot;&quot; set targetdir=%1       <br />&#160; if not exist %targetdir% goto NODIR       <br />:ARG2       <br />&#160; set dirfile=dirs.txt       <br />&#160; if not &quot;%2&quot; == &quot;&quot; set dirfile=%2       <br />&#160; if not exist %dirfile% goto NOFILE       <br />:MAIN       <br />&#160; set sourcedir=%cd%       <br />&#160; echo Creating dirs in %targetdir%       <br />&#160; for /f &quot;eol=; tokens=1* delims= &quot; %%i in (%dirfile%) do call makedir %%i &quot;%%j&quot;       <br />goto XIT       <br />:NODIR       <br />&#160; echo Directory %targetdir% does not exist       <br />goto XIT       <br />:NOFILE       <br />&#160; echo File %dirfile% does not exist       <br />goto XIT       <br />:XIT       <br />&#160; echo Done&#8230;</font></p>
<p>This script does not need any parameters if the input file is &quot;dirs.txt&quot; and the target directory is current dir. See rem lines above for syntax.</p>
<p>The makedirs.cmd calls makedir.cmd which creates a single dir:</p>
<p><font size="1" face="Courier New">@echo off      <br />rem makedir.cmd syntax:</font><font size="1" face="Courier New">      <br />rem %1 = level       <br />rem %2 = dirname       <br />set level=%1       <br />set dirname=%~2       <br />if &quot;%level%&quot;==&quot;0&quot; goto LEVEL0       <br />if not &quot;%dirpath0%&quot;==&quot;&quot; goto LEVELX       <br />&#160; rem special case where no 0 level line defined       <br />&#160; set dirpath0=%targetdir%       <br />&#160; rem done &#8211; now continue as normal       <br />goto LEVELX       <br />:LEVELX       <br />&#160; set /a above=%level%-1       <br />&#160; set dirpath=!dirpath%above%!       <br />&#160; set dirpath%level%=%dirpath%\%dirname%       <br />&#160; rem echo mkdir &quot;!dirpath%level%!&quot;       <br />&#160; mkdir &quot;!dirpath%level%!&quot;       <br />goto XIT       <br />:NOLEVEL0       <br />&#160; rem no level 0 line defined so use current dir as top       <br />&#160; set dirpath0=.       <br />goto XIT       <br />:LEVEL0       <br />&#160; rem level 0 line defined so set top as current plus dirname       <br />&#160; set dirpath0=%targetdir%\%dirname%       <br />&#160; rem echo mkdir &quot;%dirpath0%&quot;       <br />&#160; mkdir &quot;%dirpath0%&quot;       <br />goto XIT       <br />:XIT</font></p>
<p>This script is not meant to be used on its own.</p>
]]></content:encoded>
			<wfw:commentRss>http://ltd.kentw.co.uk/projectmgnt/projecttech/project-directory-structure-script/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Project Directory Structure</title>
		<link>http://ltd.kentw.co.uk/projectmgnt/projecttech/project-directory-structure/</link>
		<comments>http://ltd.kentw.co.uk/projectmgnt/projecttech/project-directory-structure/#comments</comments>
		<pubDate>Wed, 11 Aug 2010 11:41:04 +0000</pubDate>
		<dc:creator>Kent</dc:creator>
				<category><![CDATA[Project Technology]]></category>
		<category><![CDATA[directories]]></category>
		<category><![CDATA[structure]]></category>

		<guid isPermaLink="false">http://ltd.kentw.co.uk/projectmgnt/projecttech/directory-structure-and-file-naming-standards/</guid>
		<description><![CDATA[Most projects &#8211; even the smallest ones &#8211; need a project directory structure for storing important documents.
You may think this is a straight forward thing to create however after you may have tried working on several projects where the project structure didn’t work very well you realise it is not that easy anyway.
Things that may [...]]]></description>
			<content:encoded><![CDATA[<p>Most projects &#8211; even the smallest ones &#8211; need a project directory structure for storing important documents.</p>
<p>You may think this is a straight forward thing to create however after you may have tried working on several projects where the project structure didn’t work very well you realise it is not that easy anyway.</p>
<p>Things that may indicate a bad directory structure:</p>
<ul>
<li>You gat asked all the time where to find files</li>
<li>You cannot always find your own files</li>
<li>You are tempted to or already have copied files to your local drive for accessibility</li>
<li>You have several copies of the same file but in different places</li>
<li>You have to remember current project phase to find files</li>
<li>You or somebody else keep moving files or directories around</li>
<li>You find the structure over engineered and too deep</li>
</ul>
<p>This above list could be very long but golden rule is a good directory structure works for you rather than you have to work for the structure…</p>
<p>So what do we want to achieve with our better directory structure?</p>
<p>Negating some of the problems above and adding some of my experience we get this:</p>
<ul>
<li>A lean and mean structure</li>
<li>Documents remain in same place throughout the whole project</li>
<li>Intuitive structure</li>
<li>Structure focused on deliverables rather than phases and departments</li>
</ul>
<p>There is no single solution to the above and any solution will depend of the type and size of project.</p>
<p>For one of my recent projects I would have liked the following top-level structure :</p>
<ul>
<li>Management
<ul>
<li>Scope</li>
<li>Planning</li>
</ul>
<ul>
<li>Resourcing</li>
<li>Quality Management</li>
<li>Status Reporting</li>
<li>Change Requests</li>
<li>Issues</li>
</ul>
</li>
<li>Deliverables
<ul>
<li>Process
<ul>
<li>Requirements</li>
<li>To-Be Processes</li>
</ul>
</li>
<li>Data Conversion
<ul>
<li>Data Conversion Plan</li>
<li>Data Conversion Strategy</li>
</ul>
</li>
<li>Interfaces
<ul>
<li>Interface Plan</li>
<li>Interface Strategy</li>
</ul>
</li>
<li>Configuration
<ul>
<li>BR100 – Application Setup</li>
<li>MD50 – Functional Design</li>
</ul>
</li>
<li>Development
<ul>
<li>MD40 – Build Standards</li>
<li>MD70 – Technical Design</li>
</ul>
</li>
<li>Database
<ul>
<li>Environment Plan</li>
<li>Patch Management</li>
</ul>
</li>
<li>Test
<ul>
<li>Test Plan</li>
<li>Test Strategy</li>
<li>Test Scripts</li>
</ul>
</li>
</ul>
</li>
</ul>
<p>As said – the above is an example only and will change based on project size and complexity.</p>
<p>Each directory above – especially MD50 can get out of hand on large projects so you may want to subdivide this by module or work stream.</p>
<p>Most operating systems arrange directories alphabetically however if you need to arrange directories within one level you can prefix the directory names with a number:</p>
<ul>
<li>10 Test Plan</li>
<li>20 Test Strategy</li>
<li>30 Test Scripts</li>
</ul>
<p>Be sure to number with gaps in case you need a new directory in the middle.</p>
]]></content:encoded>
			<wfw:commentRss>http://ltd.kentw.co.uk/projectmgnt/projecttech/project-directory-structure/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

