<?xml version="1.0" encoding="UTF-8"?>
<org.eclipse.epf.uma:ContentDescription xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:org.eclipse.epf.uma="http://www.eclipse.org/epf/uma/1.0.3/uma.ecore" epf:version="1.0.0" xmi:id="-fCBrf_5JlrmuKgyrCaKGOA" name="requirement_attributes_1,_VQ268O0KEdqHTdbLTmC5IQ" guid="-fCBrf_5JlrmuKgyrCaKGOA" authors="Chris Sibbald" changeDate="2006-09-20T14:41:34.651-0400" version="0.2">
  <mainDescription>&lt;p&gt;
    Attributes are a very important source of requirements information. Just as every person has attributes (age, hair
    color, gender), each requirement has a source, a relative importance, and time it was created. Attributes do more than
    simply clarify a&amp;nbsp;requirement.&amp;nbsp; If created properly, they can yield significant information about the state of
    the system. Just as you can run a database query to find all men with brown hair over age 30, given our human example,
    you can run queries on the status of requirements to find&amp;nbsp;all high-priority requirements from the customer in the
    last 30 days. &lt;a class=&quot;&quot; href=&quot;./../../../openup_basic/guidances/supportingmaterials/references,_9ToeIB83Edqsvps02rpOOg.html&quot; guid=&quot;_9ToeIB83Edqsvps02rpOOg&quot;&gt;[TEL06]&lt;/a&gt;
&lt;/p&gt;
&lt;h4&gt;
    Examples of attributes
&lt;/h4&gt;
&lt;p&gt;
    Listed below is a partial list of some common attributes and a brief description of their meaning. Some attributes are
    best described as a number, date, Boolean (true or false) or a text field for entering free format comments. Other
    attributes can be expressed as lists. For instance, priority type is a list of high, medium, and low; Weekday is a list
    which includes Monday, Tuesday, and so on.
&lt;/p&gt;
&lt;p&gt;
    &lt;em&gt;Source&lt;/em&gt; - Person, document or other origin of a given requirement.&amp;nbsp; This is&amp;nbsp;useful&amp;nbsp;for
    determining whom to call for questions or for grouping&amp;nbsp;requirements according to the person making the demands.
&lt;/p&gt;
&lt;p&gt;
    &lt;em&gt;Priority&lt;/em&gt; - Statement of relative importance of the requirement, either to the system (mandatory, critical,
    optional) or to other requirements (high, medium, low). It is good to track the mandatory or high-priority
    items&amp;nbsp;as an indication of how well the system will meet the greatest needs or for compliance-related metrics.
&lt;/p&gt;
&lt;p&gt;
    &lt;em&gt;Assigned to&lt;/em&gt; - Who in the organization is responsible for making sure the requirement is met (person's name or
    organizational name).
&lt;/p&gt;
&lt;p&gt;
    &lt;em&gt;Comments&lt;/em&gt; - Reviewer's or writer's comments on a requirement.
&lt;/p&gt;
&lt;p&gt;
    &lt;em&gt;Difficulty&lt;/em&gt; - An indication of the level of effort needed or how hard it will be to implement the requirement
    (high, medium, low).
&lt;/p&gt;
&lt;p&gt;
    &lt;em&gt;Status&lt;/em&gt; - Degree of completeness (completed, partial, not started).
&lt;/p&gt;
&lt;p&gt;
    &lt;em&gt;Risk&lt;/em&gt; - Confidence measure on the likelihood of meeting (or not meeting) a requirement. Could be high, medium,
    low or the integers one through ten.
&lt;/p&gt;
&lt;p&gt;
    &lt;em&gt;Due By&lt;/em&gt; - Date the requirement must be provided.
&lt;/p&gt;
&lt;p&gt;
    &lt;em&gt;Method of verification&lt;/em&gt; - Qualification type to be used to verify that a requirement has been met: analysis,
    demonstration, inspection, test, and walkthrough.
&lt;/p&gt;
&lt;p&gt;
    &lt;em&gt;Level of Test&lt;/em&gt; - Describes the verification lifecycle stage at which the requirement is determined to be met:
    unit test, component, system or product.
&lt;/p&gt;
&lt;p&gt;
    &lt;em&gt;Subsystem Allocation&lt;/em&gt; - Name of system or subsystem a requirement is to be assigned to (for instance, flight
    control module, wing assembly, passenger cabin).
&lt;/p&gt;
&lt;p&gt;
    &lt;em&gt;Test Number&lt;/em&gt; - Identification of a specific test or other method of verification.
&lt;/p&gt;
&lt;br /&gt;
&lt;br /&gt;</mainDescription>
</org.eclipse.epf.uma:ContentDescription>
