Understanding Exchange Processes
Most requirements management tools have the capability to export and import requirements using the ReqIF standard. This feature on its own is of limited use without considering a goal i.e., a description of what is to be achieved using this feature. One such goal is to enable a two-way dialogue between two parties where requirements can be developed by a customer/OEM and exported via ReqIF which is then imported into a supplier's tool. The supplier will perform evaluation of the requirements and reply with a ReqIF containing evaluation responses to be imported back into the customer's tool. This two-way exchange is an iterative process occurring over a period of time with the ultimate aim of arriving at some sort of conclusion, usually a form of acceptance of the specification. This is an Exchange Process.
An Exchange Process consists of the following
- Participants - two entities who will be sending and receiving ReqIFs
- Use case definition - a description of the goal to be achieved
- Rules - which establish the boundaries that provide structure and control
Participants in an Exchange Process
There are two participants in an Exchange Process.
- Owner - this is the author of the requirements who performs the activity and, for the SRC use case, often termed the Customer/OEM Role
- Contributor - this is the contributor to the requirements who performs the activity and, for the SRC use case, often termed the Supplier Role
There are more complex use cases e.g., the participant playing the Supplier Role could also play the Customer Role in a multi-tier process. This use case can also be handled by REQIFtoolkit by creating a separate Exchange Process Timeline for the tier-2 exchange.
Role Responsibilities
It is helpful to define the responsibilities of each participant within the Exchange Process.
Responsibilities of the Customer
Aside from drafting the requirement specifications, the customer is also responsible for establishing the ReqIF framework to be used to exchange the requirements. This comprises the ReqIF schema i.e., the set of Datatype, Attribute and SpecType definitions to be used in the process. Defining the ReqIF schema is sometimes a function performed automatically by the requirements management tool. In other words, the ReqIF schema is based on the attribute names and types in the tool. In other requirements management tools, the schema can be developed independently of the tool's internal attributes and types.
In addition to the standard ReqIF attributes such as the requirement and heading text, the schema must include the attributes that are required by the Exchange Process. These must be defined both in the customer's requirements management tool and in the ReqIF schema.
Once the required attributes have been defined, the customer will normally communicate this information to the supplier so that an appropriate supplier environment can be configured in order to import the customer's ReqIFs. At this point there must be agreement about which attributes the customer will own and update, and which attributes the supplier will own and update.
During ReqIF exchanges with the supplier, the customer must not change the values of any attributes designated as owned by the supplier.
Responsibilities of the Supplier
During ReqIF exchanges with the customer, the supplier must not change the values of any attributes designated as being owned by the customer. Additionally, the Exchange Process dictates that the supplier must not alter the structure of a specification e.g., by moving or adding requirements.