User Tools

Site Tools


sysml-roadmap:systems_engineering_model_construction_focus_area

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
sysml-roadmap:systems_engineering_model_construction_focus_area [2017-03-23 09:19]
roncwilliamson [2. Model Construction Service Interface Requirement]
sysml-roadmap:systems_engineering_model_construction_focus_area [2017-05-02 18:47] (current)
roncwilliamson [March, 2017 - SysML 2.0 Model Construction RFP Requirements (updated based on the March 2017 Reston workshop audience feedback)]
Line 67: Line 67:
  
 ---- ----
-===== March, 2017 -  SysML 2.0 Model Construction RFP Requirements =====+===== March, 2017 -  SysML 2.0 Model Construction RFP Requirements ​(updated based on the March 2017 Reston workshop ​ audience feedback)===== 
 + 
 +{{ :​sysml-roadmap:​sysml_v2_rfp_model_construction_requirement_may_2017.docx | May 2017 Model Construction Requiremnts Document}} 
 + 
 +Some of the feedback included.  
 +    * A core requirement is to create, update, and delete a data set with 1 or more data elements 
 +    * Replace the service requirement to import and transform multiple elements in batch mode with a transaction service. This includes a requirement to read a list of structured data elements and its associated schema, and another requirement to transform the structured data to model elements.  
 +    * When creating an element or other model construct, create the element id (i.e., UUID) 
 +    * When transforming structured data, optionally set the id depending on whether one is specified 
 +    * When deleting an element, ensure the final state is consistent with the deletion semantics. 
 +    * When deleting an element, retain and reserve its uuid. (This may be a model management function) 
 +    * Add a service requirement to apply a pattern.  
 +    * Consider how to construct models through elaboration and refinement to transition from one level of abstraction to another, while preserving the earlier abstraction. (Note: this may be considered a transformation of one abstraction level to another that can be viewed in different viewpoints.) 
 +    * Consider usability issues that were identified in the usability discussion below 
 + 
 +Action: Ron to update model construction service requirements with pre and post conditions. ​ Send requirements to Geoffrey Biggs and Andy Ko for review. 
  
  
-{{ :​sysml-roadmap:​sysmlv2rfp_model_construction_requirements-draft-b-march_2017.pdf |SysML 2 Model Construction Requirements}} 
 ==== 1. Model Construction Functional Requirements for the Systems Modeling Environment (SME) ==== ==== 1. Model Construction Functional Requirements for the Systems Modeling Environment (SME) ====
   * **1.1 Functional Requirements Overview**   * **1.1 Functional Requirements Overview**
Line 83: Line 98:
       * Model construction uses services provided by these other capability areas, and the other capability areas use the model construction services.       * Model construction uses services provided by these other capability areas, and the other capability areas use the model construction services.
     * It is expected that all interactions with the SME be in the context of a transaction that provides the ability to ensure all SME operations are either completed successfully or the SME can be rolled back to a prior consistent state. ​     * It is expected that all interactions with the SME be in the context of a transaction that provides the ability to ensure all SME operations are either completed successfully or the SME can be rolled back to a prior consistent state. ​
 +    * Deletion Semantics: ​  It is expected that the submitters will define the semantics associated with the deletion of model elements or constructs. ​
   * **1.2 Create**   * **1.2 Create**
     * SysML v2 shall provide the ability to create model elements and other model constructs interactively via Visualization Services using textual, graphical, and/or tabular entry. ​     * SysML v2 shall provide the ability to create model elements and other model constructs interactively via Visualization Services using textual, graphical, and/or tabular entry. ​
     * SysML v2 shall provide the ability to create a set of model elements and other model constructs from an external source, and transforming the source data to the corresponding model elements or constructs being created.     * SysML v2 shall provide the ability to create a set of model elements and other model constructs from an external source, and transforming the source data to the corresponding model elements or constructs being created.
 +    * SysML v2 shall create the element id (e.e. UUID) when crating an element or other model construct.
 +    * SysML v2 shall optionally set the element id depending on whether one is specified, when transforming structured data.
   * **1.3. Update**   * **1.3. Update**
     * SysML v2 shall provide the ability to update model elements and other model constructs interactively via Visualization Services using textual, graphical, and/or tabular entry. ​     * SysML v2 shall provide the ability to update model elements and other model constructs interactively via Visualization Services using textual, graphical, and/or tabular entry. ​
Line 92: Line 110:
     * SysML v2 shall provide the ability to delete model elements and other model constructs interactively via Visualization Services using textual, graphical, and/or tabular entry. ​     * SysML v2 shall provide the ability to delete model elements and other model constructs interactively via Visualization Services using textual, graphical, and/or tabular entry. ​
     * SysML v2 shall provide the ability to delete model elements and other model constructs based on data obtained from an external source, and transforming the source data to the corresponding model elements or constructs being deleted. ​     * SysML v2 shall provide the ability to delete model elements and other model constructs based on data obtained from an external source, and transforming the source data to the corresponding model elements or constructs being deleted. ​
 +    * SysML v2 shall preserve the unique identifiers (UUID) for the deleted model elements and constructs
 +    * SysML v2 shall define model element and construct deletion semantics. ​
 +    * SysML v2 shall ensure the final state is consistent with the deletion semantics, when deleting a model element or construct.
   * **1.5 Apply**   * **1.5 Apply**
     * SysML v2 shall provide the ability to apply patterns, model library content, or other model element source data to the model under construction. ​     * SysML v2 shall provide the ability to apply patterns, model library content, or other model element source data to the model under construction. ​
 +  * **1.6 Crosscutting**
 +    * SysML v2 shall manage unique identifiers for all model elements and constructs. ​
 +    * SysML v2 shall provide a transaction mechanism for all operations on the system modeling environment. ​
 +    * SysML v2 shall consider how to construct models through elaboration and refinement to transition from one level of abstraction to another, while preserving the earlier abstraction. (Note: this may be considered a transformation of one abstraction level to another that can be viewed in different viewpoints.)
 +    * SysML v2 shall consider usability issues as defined in the usability section of the SysML v2 RFP.
  
 ==== 2. Model Construction Service Interface Requirement ==== ==== 2. Model Construction Service Interface Requirement ====
Line 99: Line 125:
     * Model construction services further specify each of the functions defined by the functional requirements above and provide a definition of the signatures associated with each of the functions.     * Model construction services further specify each of the functions defined by the functional requirements above and provide a definition of the signatures associated with each of the functions.
   * **2.2 Create**   * **2.2 Create**
 +    * Pre Condition: ​ Model element being created does not exist with the specified id (i.e. UUID)
 +    * Post Condition: The model is updated to include the new model element and remains in a consistent state.
     * return value: Single UUID or collection of UUID's of the model elements that were created     * return value: Single UUID or collection of UUID's of the model elements that were created
     * Function Name: createModelElements     * Function Name: createModelElements
Line 111: Line 139:
     * **Example:​** createModelElements( { {Attribute, String, Name, “MyName”},​ {Attribute, String, Description,​ “My description”},​ {Operation, Integer, Sum, {{myValue1, 10}, {myValue2, 20} } } }, {Relationship,​ Dependency, “my dependency”,​ aUUID } )     * **Example:​** createModelElements( { {Attribute, String, Name, “MyName”},​ {Attribute, String, Description,​ “My description”},​ {Operation, Integer, Sum, {{myValue1, 10}, {myValue2, 20} } } }, {Relationship,​ Dependency, “my dependency”,​ aUUID } )
   * **2.3 Update**   * **2.3 Update**
 +    * Pre Condition: ​ Model element being updated exists with a uniue id.
 +    * Post Condition: The model is updated to include the new model element updates and remains in a consistent state.
     * Return value: Single UUID or collection of UUID's of the model elements that were updated     * Return value: Single UUID or collection of UUID's of the model elements that were updated
     * Function Name: updateModelElements     * Function Name: updateModelElements
Line 117: Line 147:
     * **Example:​** updateModelElements({{MyUUID,​ MyAttributeName1,​ NewValue1}, {MyUUID, MyAttributeName2,​ NewValue2}})     * **Example:​** updateModelElements({{MyUUID,​ MyAttributeName1,​ NewValue1}, {MyUUID, MyAttributeName2,​ NewValue2}})
   * **2.4 Delete**   * **2.4 Delete**
 +    * Pre Condition: ​ Model element being deleted exists with a uniue id.
 +    * Post Condition: The model is updated without the deleted element and remains in a consistent state.
     * Return value: Boolean (true if deleted successfully,​ false if error condition)     * Return value: Boolean (true if deleted successfully,​ false if error condition)
     * Function Name: deleteModelElements     * Function Name: deleteModelElements
Line 123: Line 155:
     * **Example:​** first retrieve a collection of model element UUID's and then invoke the deleteModelElements service using the UUID collection as a parameter.     * **Example:​** first retrieve a collection of model element UUID's and then invoke the deleteModelElements service using the UUID collection as a parameter.
   * **2.5 Apply**   * **2.5 Apply**
 +    * Pre Condition: ​ The pattern being applied is complete and self consistent.
 +    * Post Condition: The model is updated to include the new pattern remains in a consistent state.
     * Return value: TBD     * Return value: TBD
     * Function Name: applySourceData     * Function Name: applySourceData
Line 148: Line 182:
     * Batch Mode - User initiated operations using an external collection of model element properties, operations and- or relationships     * Batch Mode - User initiated operations using an external collection of model element properties, operations and- or relationships
     * External (Resource) Collection - A file based or database or link based mechanism to persist descriptions of model elements     * External (Resource) Collection - A file based or database or link based mechanism to persist descriptions of model elements
 +    * Transaction - A mechanism to ensure an operation applied to the SME maintains the SME in a consistent state. ​
 +    * Deletion Semantics - The rules associated with deletion of model elements or constructs. ​
  
 ---- ----
sysml-roadmap/systems_engineering_model_construction_focus_area.1490275149.txt.gz · Last modified: 2017-03-23 09:19 by roncwilliamson