Requirement
Pattern
Data Exchange
Description This pattern expresses the need of having the system functionality for importing and exporting data.
Comments This is just an import and export data system functionality (usually a component).
Pattern goal Exchange data with legacy and external systems
Author SSI, GESSI
Sources (0..*)
  • Requirement books from SSI
  • Specialized literature
Keywords (0..*)Data Integration, Export Data, Import Data
Dependencies (0..*) ----
Requirement
Form
Data Exchange Functionality
Description This form expresses the general need of exchanging data and also offers an extension for specifying the data formats
Comments The first three extensions may be applied at most once. Fourth and fifth extensions may be applied more than once, and they require the third extension to be applied before (see restrictions on parameters).
Version date 2009-03-20 00:00:00.0
Author GESSI, SSI
Sources (0..*)
  • Requirement books from SSI
  • Specialized literature
Fixed PartQuestion text ----
Form text The system shall offer functionalities for importing and exporting data.
Extended Part Data Exchange FormatsQuestion text ----
Form text The system shall be able to %exchangeDirection% data in %formNames% formats
ParameterMetric
exchangeDirection: represents one of the possible directions for exchanging dataExchangeDirection: ExchangeDirections= Domain(Import, Export, Import and Export
formNames: is a non-empty set of names of data formats, if the value is “Some Standard”, then the size must be oneFormatTypes: FormatTypes = Set(FormatType)
FormatType = Domain(Some Standard, XML,HTML,...)
Extended Part Data Exchange FrequencyQuestion text ----
Form text The system shall be able to exchange data with %extSystems% systems every %amountOfTime% %timeUnit%
ParameterMetric
timeUnit: is a unit of time corresponding to the units of frequency for exchanging dataTimeUnitType: TimeUnitType = Domain(Days, Hours, Minutes, Seconds, Miliseconds, ...)
extSystems: is a non-empty set of software names (systems, database, etc.); it must be a subset of the same parameter in the first extensionSoftwareNames: SoftwareNames = Set(SoftwareName)
SoftwareName = String
amountOfTime: is a number that indicates frequencyamountOfTimeUnitType :
Extended Part Data Exchange TriggersQuestion text ----
Form text The system shall be able to exchange data with %extSystems% systems when %condNames% happens
ParameterMetric
condNames: is a non-empty set of conditions that trigger the data exchangeConditionNames: ConditionNames = Set(ConditionName)
ConditionName = String
extSystems: is a non-empty set of software names (systems, database, etc.); it must be a subset of the same parameter in the first extensionSoftwareNames: SoftwareNames = Set(SoftwareName)
SoftwareName = String
Extended Part External System to Exchange Data withQuestion text ----
Form text The system shall be able to exchange data with the %extSystems% systems
ParameterMetric
extSystems: is a non-empty set of software names (systems, database, etc.)SoftwareNames: SoftwareNames = Set(SoftwareName)
SoftwareName = String
Extended Part Metadata FormatsQuestion text ----
Form text The system shall be able to exchange metadata of the system resources in %metFormat% format
ParameterMetric
metFormat: is a non-empty set of metadata format, if the value is “Some Standard”, then the size must be oneMetadataFormats: MetadataFormats = Set(MetadataFormat)
MetadataFormat = Domain(Some Standard, Non-Propietary, \nXML, EDI, OBF, …)\n