diff --git a/libraries/EPF_Practices_Library/core.mgmt.common.base/workproducts/risk_list.xmi b/libraries/EPF_Practices_Library/core.mgmt.common.base/workproducts/risk_list.xmi
index f13a1ea..caab3be 100644
--- a/libraries/EPF_Practices_Library/core.mgmt.common.base/workproducts/risk_list.xmi
+++ b/libraries/EPF_Practices_Library/core.mgmt.common.base/workproducts/risk_list.xmi
@@ -3,7 +3,7 @@
     xmlns:xmi="http://www.omg.org/XMI" xmlns:org.eclipse.epf.uma="http://www.eclipse.org/epf/uma/1.0.5/uma.ecore"
     xmlns:rmc="http://www.ibm.com/rmc" rmc:version="7.5.0" xmlns:epf="http://www.eclipse.org/epf"
     epf:version="1.5.0" xmi:id="-4VJ_0upihz-bR7VRlm63Vw"
-    name="risk_list,_Ckay8Cc_EduIsqH1Q6ZuqA" guid="-4VJ_0upihz-bR7VRlm63Vw" changeDate="2008-07-28T09:40:37.964-0700"
+    name="risk_list,_Ckay8Cc_EduIsqH1Q6ZuqA" guid="-4VJ_0upihz-bR7VRlm63Vw" changeDate="2008-08-14T11:24:13.664-0400"
     version="7.2.0">
   <mainDescription>&lt;p>&#xD;
     This list identifies, in decreasing order of priority, all the &lt;a class=&quot;elementLinkWithUserText&quot; href=&quot;./../../openup/guidances/termdefinitions/risk_33255339.html&quot; guid=&quot;_ii2LUEvGEdunZcj9T5hrMQ&quot;>risks&lt;/a> associated to a project.&amp;nbsp;It serves as a focal point for project&#xD;
@@ -17,6 +17,12 @@
     whether they are really serious risks. Tracking more than 20 risks is an onerous task.&#xD;
 &lt;/p></keyConsiderations>
   <purpose>To&amp;nbsp;capture the perceived risks to the success of the project.</purpose>
+  <impactOfNotHaving>.If risks are not identified, then the required mitigation strategies will not be in place and&amp;nbsp;any adverse events that&#xD;
+do occur on a project will have to be dealt with in an ad-hoc manner.&amp;nbsp; Undocumented risks that do occur are also more&#xD;
+likely to impact the overall schedule and quality of the solution</impactOfNotHaving>
+  <reasonsForNotNeeding>&lt;p>&#xD;
+    Unless there are no risks, or very minimal ones, &amp;nbsp;there is no reason not to produce this artifact.&#xD;
+&lt;/p></reasonsForNotNeeding>
   <representationOptions>&lt;h4>&#xD;
     Option: List of risks captured in the coarse-grained plan for the project&#xD;
 &lt;/h4>&#xD;
diff --git a/libraries/EPF_Practices_Library/core.mgmt.common.base/workproducts/work_items_list.xmi b/libraries/EPF_Practices_Library/core.mgmt.common.base/workproducts/work_items_list.xmi
index 67382b8..f7fa844 100644
--- a/libraries/EPF_Practices_Library/core.mgmt.common.base/workproducts/work_items_list.xmi
+++ b/libraries/EPF_Practices_Library/core.mgmt.common.base/workproducts/work_items_list.xmi
@@ -4,7 +4,7 @@
     xmlns:rmc="http://www.ibm.com/rmc" rmc:version="7.5.0" xmlns:epf="http://www.eclipse.org/epf"
     epf:version="1.5.0" xmi:id="-buxz4BVToq97bSxaqyjySg"
     name="work_items_list,_rGNWsCbSEdqh1LYUOGRh2A" guid="-buxz4BVToq97bSxaqyjySg"
-    changeDate="2008-07-22T13:47:36.453-0700" version="1.0.0">
+    changeDate="2008-08-14T11:36:29.476-0400" version="1.0.0">
   <mainDescription>&lt;p>&#xD;
     This artifact provides a focal point for the entire team:&#xD;
 &lt;/p>&#xD;
@@ -61,6 +61,48 @@
 &lt;/p></keyConsiderations>
   <purpose>To collect all requests for work that will potentially be taken on within the project, so work can be prioritized, effort&#xD;
 estimated and progress tracked.</purpose>
+  <impactOfNotHaving>Without this artifact there is not a single place that provides a list of all of the work to be done and it's current&#xD;
+status.&amp;nbsp; individual team members may also be unclear as to&amp;nbsp;what work has been&amp;nbsp;assigned to them.</impactOfNotHaving>
+  <reasonsForNotNeeding>This artifact may not be needed&amp;nbsp;if the work assignments are going to be managed using a different technique or&#xD;
+artifact.&amp;nbsp; In that case it should also be ensured that items like enhancements requests are also be adequately covered&#xD;
+elsewhere.</reasonsForNotNeeding>
+  <briefOutline>&lt;p>&#xD;
+    This artifact should consist of the following information for each work item:&#xD;
+&lt;/p>&#xD;
+&lt;ul>&#xD;
+    &lt;li>&#xD;
+        Name/Description&#xD;
+    &lt;/li>&#xD;
+    &lt;li>&#xD;
+        Priority&#xD;
+    &lt;/li>&#xD;
+    &lt;li>&#xD;
+        Size Estimate&#xD;
+    &lt;/li>&#xD;
+    &lt;li>&#xD;
+        State&#xD;
+    &lt;/li>&#xD;
+    &lt;li>&#xD;
+        References&#xD;
+    &lt;/li>&#xD;
+&lt;/ul>&#xD;
+&lt;p>&#xD;
+    Assigned work items should also contain the following:&#xD;
+&lt;/p>&#xD;
+&lt;ul>&#xD;
+    &lt;li>&#xD;
+        Target Iteration or Completion Date&#xD;
+    &lt;/li>&#xD;
+    &lt;li>&#xD;
+        Assignee&#xD;
+    &lt;/li>&#xD;
+    &lt;li>&#xD;
+        Estimated Effort Remaining&#xD;
+    &lt;/li>&#xD;
+    &lt;li>&#xD;
+        Hours Worked&#xD;
+    &lt;/li>&#xD;
+&lt;/ul></briefOutline>
   <representationOptions>&lt;h3>&#xD;
     As a spreadsheet or database&#xD;
 &lt;/h3>&#xD;
diff --git a/libraries/EPF_Practices_Library/core.tech.common.base/workproducts/implementation.xmi b/libraries/EPF_Practices_Library/core.tech.common.base/workproducts/implementation.xmi
index 1c0b59e..b5279b1 100644
--- a/libraries/EPF_Practices_Library/core.tech.common.base/workproducts/implementation.xmi
+++ b/libraries/EPF_Practices_Library/core.tech.common.base/workproducts/implementation.xmi
@@ -1,10 +1,10 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <org.eclipse.epf.uma:ArtifactDescription xmi:version="2.0"
-    xmlns:xmi="http://www.omg.org/XMI" xmlns:org.eclipse.epf.uma="http://www.eclipse.org/epf/uma/1.0.4/uma.ecore"
-    xmlns:epf="http://www.eclipse.org/epf" epf:version="1.2.0" xmlns:rmc="http://www.ibm.com/rmc"
-    rmc:version="7.2.0" xmi:id="-HPCdXGOQ2SGSCHZaDEKJRg"
+    xmlns:xmi="http://www.omg.org/XMI" xmlns:org.eclipse.epf.uma="http://www.eclipse.org/epf/uma/1.0.5/uma.ecore"
+    xmlns:rmc="http://www.ibm.com/rmc" rmc:version="7.5.0" xmlns:epf="http://www.eclipse.org/epf"
+    epf:version="1.5.0" xmi:id="-HPCdXGOQ2SGSCHZaDEKJRg"
     name="implementation,_0YoQcMlgEdmt3adZL5Dmdw" guid="-HPCdXGOQ2SGSCHZaDEKJRg" authors="Jim Ruehlin"
-    changeDate="2007-03-02T10:47:39.492-0800" version="1.0.0">
+    changeDate="2008-08-14T12:13:19.523-0400" version="1.0.0">
   <mainDescription>&lt;p>&#xD;
     This artifact&amp;nbsp;is the collection of one or more of&amp;nbsp;these elements:&#xD;
 &lt;/p>&#xD;
@@ -26,6 +26,9 @@
     To represent the physical parts that make up the system to be built, organized in a way that is understandable and&#xD;
     manageable.&#xD;
 &lt;/p></purpose>
+  <impactOfNotHaving>Without this artifact there is no&amp;nbsp;application to be delivered as part of the solution.</impactOfNotHaving>
+  <reasonsForNotNeeding>The only reason not to produce this artifact is if the actual development of an application is not within the scope of the&#xD;
+solution.</reasonsForNotNeeding>
   <representationOptions>&lt;p>&#xD;
     Implementation files represented as files in the local file system. File folders (directories), represented as&#xD;
     packages, group the files into logical units.&#xD;
diff --git a/libraries/EPF_Practices_Library/core.tech.common.base/workproducts/test_log.xmi b/libraries/EPF_Practices_Library/core.tech.common.base/workproducts/test_log.xmi
index 3438734..d301e3b 100644
--- a/libraries/EPF_Practices_Library/core.tech.common.base/workproducts/test_log.xmi
+++ b/libraries/EPF_Practices_Library/core.tech.common.base/workproducts/test_log.xmi
@@ -1,9 +1,9 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <org.eclipse.epf.uma:ArtifactDescription xmi:version="2.0"
-    xmlns:xmi="http://www.omg.org/XMI" xmlns:org.eclipse.epf.uma="http://www.eclipse.org/epf/uma/1.0.4/uma.ecore"
-    xmlns:rmc="http://www.ibm.com/rmc" rmc:version="7.2.0" xmlns:epf="http://www.eclipse.org/epf"
-    epf:version="1.2.0" xmi:id="_NqePEKeqEdmKDbQuyzCoqQ"
-    name="test_log,_0ZlSsMlgEdmt3adZL5Dmdw" guid="_NqePEKeqEdmKDbQuyzCoqQ" changeDate="2006-09-29T16:02:01.621-0700"
+    xmlns:xmi="http://www.omg.org/XMI" xmlns:org.eclipse.epf.uma="http://www.eclipse.org/epf/uma/1.0.5/uma.ecore"
+    xmlns:rmc="http://www.ibm.com/rmc" rmc:version="7.5.0" xmlns:epf="http://www.eclipse.org/epf"
+    epf:version="1.5.0" xmi:id="_NqePEKeqEdmKDbQuyzCoqQ"
+    name="test_log,_0ZlSsMlgEdmt3adZL5Dmdw" guid="_NqePEKeqEdmKDbQuyzCoqQ" changeDate="2008-08-14T11:16:29.008-0400"
     version="7.2.0">
   <mainDescription>This artifact&amp;nbsp;provides a detailed, typically time-based record that serves both as verification that a set of tests&#xD;
 were executed, and provides information relating to the success of those tests.&amp;nbsp; The focus is typically on the&#xD;
@@ -17,11 +17,32 @@
         To provide information relating to the success of those tests&#xD;
     &lt;/li>&#xD;
 &lt;/ul></purpose>
-  <representationOptions>&lt;p>&#xD;
-    Since this is a collection of raw data for subsequent analysis, it can be represented in a number of ways.&#xD;
+  <impactOfNotHaving>&lt;p>&#xD;
+    Without this or similar documentation, there is no record of which tests were executed successfully, what variances&#xD;
+    were discovered, and what action was taken. If this information is not available:&#xD;
 &lt;/p>&#xD;
-&lt;p>&#xD;
-    Some suggestions are:&#xD;
+&lt;ul>&#xD;
+    &lt;li>&#xD;
+        There will be no way to know which tests passed and which failed&#xD;
+    &lt;/li>&#xD;
+    &lt;li>&#xD;
+        There will be no way to assess the status of testing and the quality of the product at that level of testing&#xD;
+    &lt;/li>&#xD;
+    &lt;li>&#xD;
+        It will be difficult to know how many tests remain outstanding&#xD;
+    &lt;/li>&#xD;
+    &lt;li>&#xD;
+        Contractual and legal issues may arise&#xD;
+    &lt;/li>&#xD;
+&lt;/ul></impactOfNotHaving>
+  <reasonsForNotNeeding>&lt;p>&#xD;
+    &lt;font size=&quot;2&quot;>There is no reason not to log the results of testing, since, without them, testing has little value. The&#xD;
+    only situation where this may not be formally done is when ad hoc testing is conducted. In this case also, any problems&#xD;
+    that are found will be recorded along with resolution.&lt;/font>&#xD;
+&lt;/p></reasonsForNotNeeding>
+  <representationOptions>&lt;p>&#xD;
+    Since this is a collection of raw data for subsequent analysis, it can be represented in a number of ways.&amp;nbsp; Some&#xD;
+    suggestions are:&#xD;
 &lt;/p>&#xD;
 &lt;ul>&#xD;
     &lt;li>&#xD;
@@ -31,7 +52,7 @@
         For automated tests, direct the output to log files that you can trace back to the automated Test Script&#xD;
     &lt;/li>&#xD;
     &lt;li>&#xD;
-        Track raw results data in a test management tool.&#xD;
+        Track raw results data in a test management tool&#xD;
     &lt;/li>&#xD;
 &lt;/ul></representationOptions>
 </org.eclipse.epf.uma:ArtifactDescription>
diff --git a/libraries/EPF_Practices_Library/core.tech.common.base/workproducts/test_script.xmi b/libraries/EPF_Practices_Library/core.tech.common.base/workproducts/test_script.xmi
index 8afd5d4..f73fcd9 100644
--- a/libraries/EPF_Practices_Library/core.tech.common.base/workproducts/test_script.xmi
+++ b/libraries/EPF_Practices_Library/core.tech.common.base/workproducts/test_script.xmi
@@ -1,6 +1,18 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <org.eclipse.epf.uma:ArtifactDescription xmi:version="2.0"
-    xmlns:xmi="http://www.omg.org/XMI" xmlns:org.eclipse.epf.uma="http://www.eclipse.org/epf/uma/1.0.4/uma.ecore"
-    xmlns:rmc="http://www.ibm.com/rmc" rmc:version="7.2.0" xmlns:epf="http://www.eclipse.org/epf"
-    epf:version="1.2.0" xmi:id="_NqYIcqeqEdmKDbQuyzCoqQ"
-    name="test_script,_0ZfMEMlgEdmt3adZL5Dmdw" guid="_NqYIcqeqEdmKDbQuyzCoqQ" changeDate="2005-07-19T16:12:17.077-0700"/>
+    xmlns:xmi="http://www.omg.org/XMI" xmlns:org.eclipse.epf.uma="http://www.eclipse.org/epf/uma/1.0.5/uma.ecore"
+    xmlns:rmc="http://www.ibm.com/rmc" rmc:version="7.5.0" xmlns:epf="http://www.eclipse.org/epf"
+    epf:version="1.5.0" xmi:id="_NqYIcqeqEdmKDbQuyzCoqQ"
+    name="test_script,_0ZfMEMlgEdmt3adZL5Dmdw" guid="_NqYIcqeqEdmKDbQuyzCoqQ" changeDate="2008-08-14T11:54:15.383-0400"
+    version="7.2.0">
+  <purpose>&lt;p>&#xD;
+    To provide the implementation of a subset of required tests in an efficient and effective manner.&#xD;
+&lt;/p></purpose>
+  <impactOfNotHaving>Without a this artifact it will be difficult to ensure that tests are being carried out in a consistent manner so that&#xD;
+results are repeatable and any errors discovered can be recreated.&amp;nbsp; It also makes it more difficult to validate that&#xD;
+errors were not caused because of the way in which tests were executed.</impactOfNotHaving>
+  <reasonsForNotNeeding>&lt;p>&#xD;
+    If the tests are very simple in nature or testing is only being done on an ad-hoc basis this artifact may not be&#xD;
+    required&#xD;
+&lt;/p></reasonsForNotNeeding>
+</org.eclipse.epf.uma:ArtifactDescription>
diff --git a/libraries/EPF_Practices_Library/core.tech.common.base/workproducts/use_case.xmi b/libraries/EPF_Practices_Library/core.tech.common.base/workproducts/use_case.xmi
index 39f9177..e71729c 100644
--- a/libraries/EPF_Practices_Library/core.tech.common.base/workproducts/use_case.xmi
+++ b/libraries/EPF_Practices_Library/core.tech.common.base/workproducts/use_case.xmi
@@ -1,9 +1,9 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <org.eclipse.epf.uma:ArtifactDescription xmi:version="2.0"
-    xmlns:xmi="http://www.omg.org/XMI" xmlns:org.eclipse.epf.uma="http://www.eclipse.org/epf/uma/1.0.4/uma.ecore"
-    xmlns:epf="http://www.eclipse.org/epf" epf:version="1.2.0" xmlns:rmc="http://www.ibm.com/rmc"
-    rmc:version="7.2.0" xmi:id="_zHZW8qYSEdmvhNXG0Oc2uA"
-    name="use_case,_0VGbUMlgEdmt3adZL5Dmdw" guid="_zHZW8qYSEdmvhNXG0Oc2uA" changeDate="2008-04-01T10:44:30.295-0700"
+    xmlns:xmi="http://www.omg.org/XMI" xmlns:org.eclipse.epf.uma="http://www.eclipse.org/epf/uma/1.0.5/uma.ecore"
+    xmlns:rmc="http://www.ibm.com/rmc" rmc:version="7.5.0" xmlns:epf="http://www.eclipse.org/epf"
+    epf:version="1.5.0" xmi:id="_zHZW8qYSEdmvhNXG0Oc2uA"
+    name="use_case,_0VGbUMlgEdmt3adZL5Dmdw" guid="_zHZW8qYSEdmvhNXG0Oc2uA" changeDate="2008-08-14T12:17:34.664-0400"
     version="1.0.0">
   <purpose>&lt;p>
     Use cases are used for the following purposes:
@@ -25,6 +25,7 @@
         to write user documentation.
     &lt;/li>
 &lt;/ul></purpose>
+  <impactOfNotHaving>Without this artifact it may be unclear&amp;nbsp;what functionality the solution needs to support.</impactOfNotHaving>
   <reasonsForNotNeeding>A project may use alternative requirements practices (e.g. “The system shall…” statements) which could replace use&#xD;
 cases.&lt;br /></reasonsForNotNeeding>
   <briefOutline>&lt;p>&#xD;
diff --git a/libraries/EPF_Practices_Library/core.tech.common.base/workproducts/use_case_model.xmi b/libraries/EPF_Practices_Library/core.tech.common.base/workproducts/use_case_model.xmi
index e9cdc39..2b665e7 100644
--- a/libraries/EPF_Practices_Library/core.tech.common.base/workproducts/use_case_model.xmi
+++ b/libraries/EPF_Practices_Library/core.tech.common.base/workproducts/use_case_model.xmi
@@ -3,13 +3,22 @@
     xmlns:xmi="http://www.omg.org/XMI" xmlns:org.eclipse.epf.uma="http://www.eclipse.org/epf/uma/1.0.5/uma.ecore"
     xmlns:rmc="http://www.ibm.com/rmc" rmc:version="7.5.0" xmlns:epf="http://www.eclipse.org/epf"
     epf:version="1.5.0" xmi:id="-kQg7MSGPB3RPjrplyxwimQ"
-    name="uc_model,_W2SgEDR5EdutE_HNDTJk5Q" guid="-kQg7MSGPB3RPjrplyxwimQ" changeDate="2008-08-08T15:50:50.203-0400"
+    name="uc_model,_W2SgEDR5EdutE_HNDTJk5Q" guid="-kQg7MSGPB3RPjrplyxwimQ" changeDate="2008-08-14T12:30:35.711-0400"
     version="1.0.0">
   <purpose>&lt;p>
     This artifact presents an overview of the system's intended behavior.&amp;nbsp;It&amp;nbsp;is the basis for agreement
     between&amp;nbsp;stakeholders and the project team regarding the intended functionality for the system. It also helps to
     guide the various tasks in the software development lifecycle.
 &lt;/p></purpose>
+  <impactOfNotHaving>Without this artifact it will be more difficult to determine all of the relationships between actors and use cases as well&#xD;
+gain an understanding of how the different use cases relate to each other.</impactOfNotHaving>
+  <reasonsForNotNeeding>&lt;p>&#xD;
+    If the overall set of use cases is fairly small with no complex relationships between them then this artifact may not&#xD;
+    be required.&amp;nbsp;&amp;nbsp;&#xD;
+&lt;/p>&#xD;
+&lt;p>&#xD;
+    If an alternative approach is being used to document functional requirements then this artifact is not needed.&#xD;
+&lt;/p></reasonsForNotNeeding>
   <representationOptions>&lt;p>&#xD;
     Representation options include: reports and diagrams from UML modeling tools, graphical representations created using&#xD;
     drawing tools, drawings on whiteboards. Most of the information in the use-case model is captured in the use-case&#xD;
