Graphics in PDF format: model_construction_graphic_rev_b.pdf
Graphics in PDF format: pdf_model_construction_concept_graphic.pdf
Graphics in PPT format:model_construction_concept_2017-03-08-b.pptx
The SME (Systems Modeling Environment) Model Construction Capability will enable intuitive and efficient model construction including,
May 2017 Model Construction Requiremnts Document
Some of the feedback included.
Action: Ron to update model construction service requirements with pre and post conditions. Send requirements to Geoffrey Biggs and Andy Ko for review.
SME Access Point | Service | Description | Inputs | Input Types | Output | Output Types | In Out |
---|---|---|---|---|---|---|---|
Model Editor, External Interface | createModel | Creates a SysML model based on a set of ModelElement descriptors | Set of ModelElement Descriptors | Descriptor | Link to the Model | ModelLink | In |
Mode lEditor, External Interface | createModelElement | Creates a SysML ModelElement based on a ModelElement description (the model element can be a node or a relationship | ModelElement Descriptor | Descriptor | Link to the Model Element | ModelLink | In |
Model Editor, External Interface | createProject | Creates a new SysML project as a collection of SysML models | Project Descriptor | Descriptor | Link to the Project | ModelLink | In |
Model Editor, External Interface | createPattern | Creates a new SysML Pattern as a sub model (ie. model elements and relationships) | Pattern Descriptor | Descriptor | Link to Pattern | ModeLink | In |
Model Editor, External Interface | createLibrary | Create a new SysML model library. | Library Descriptor | Descriptor | Link to Library | ModeLink | In |
Model Editor, External Interface | createVariationPoint | Create a new VariationPoint. | VariationPoint Descriptor | Descriptor | Link to VariationPoint | ModeLink | In |
Model Editor, External Interface | createVariation | Create a new Variation | Variation Descriptor | Descriptor | Link to Variation | ModeLink | In |
Model Editor, External Interface | createConfiguration | Create a new Configuration | Set of Variation Descriptors | Set of Descriptors | Link to Configuration | ModelLink | In |
Model Editor, External Interface | createVariationConstraint | Create a new VariationConstraint | VariationConstraint Descriptor | Descriptor | Link to VariationConstraint | ModeLink | In |
Model Editor, External Interface | createView | Create a new View | View Descriptor | Descriptor | Link to View | ModeLink | In |
Model Editor, External Interface | createViewpoint | Create a new Viewpoint | Viewpoint Descriptor | Descriptor | Link to Viewpoint | ModeLink | In |
Model Editor, External Interface | delete*FromModel | Delete any * (created element(s)) from the model and project | Links to model element | Set of ModelLink | Boolean return (0==failure, 1==success) | Boolean | In |
Model Editor, External Interface | remove*FromDiagram | Remove any * (created element(s)) from a diagram | Links to diagram and model element(s) | Set of ModelLink | Boolean return (0==failure, 1==success) | Boolean | In |
Model Editor, External Interface | update* | Update the features (e.g. attributes, operations, parts, constraints and/or relationships) of an existing model element. | Link to model element and Set of model element descriptors | ModelLink, Set of Descriptors | Link to Model Element | ModelLink | In |
Model Editor, External Interface | updateAdd* | Update the referenced model element by adding new features | Link to model element and Set of model element descriptors | ModelLink, Set of Descriptors | Link to Model Element | ModelLink | In |
Model Editor, External Interface | updateDelete* | Delete the features of a referenced model element. | Link to model element and Set of model element descriptors | ModelLink, Set of Descriptors | Link to Model Element | ModelLink | In |
Concept Name | Description |
---|---|
ModelElement | Defined in Concept Model as any generic SysML model element including (Diagram, Block, ConstraintBlock, InterfaceBlock, Part, Activity, Action, State, Port, Pin, Association, Dependency, etc.…) |
Model | A complete and consistent set of Model elements |
Project | A collection of SysML models, libraries, profiles, etc. That can be persisted (e.g. in the file system, repository, library, etc.) |
Descriptor (Primitive) | A collection of name / value pairings that fully describes a concept from the Concept Model (e.g. type: Block, name: myBlock, description: myDescription, etc.) |
Set (Primitive) | A collection of descriptors (e.g. Set: (setName: mySet; (Model Descriptor), (Model Descriptor), (Model Descriptor),…) ) |
ModelLink | A UUID/URL reference that can be used to access a model (as a collection of model elements) or individual model elements |
Create | Creation of a new concept in SysML via two access points: Model Editor (assumes visualization mechanism to capture the “Descriptor” information and feed to the service interface and External Interface (assumes a service API that provides the “Descriptor” information as a collection of attribut/value pairs. |
Update | |
Delete |
The next-generation modeling language and tools shall
Source: http://www.uxdesignedge.com/2010/06/intuitive-ui-what-the-heck-is-it/
Definition: A UI is efficient when users are enabled to perform an action with a minimum amount of effort
A UI is efficient when it has an appropriate combination of:
Source: http://www.uxdesignedge.com/2010/06/intuitive-ui-what-the-heck-is-it/
Definition: A UI is intuitive when users understand its behavior and effect without use of reason, experimentation, assistance, or special training.
A UI is intuitive when it has an appropriate combination of:
Model Construction OMG Orlando June 2016 Update
Change Scenario Example - Model Construction Focus
See the Workflow Wiki page at: Collaboration & Workflow Working Group
The context for the model construction use cases and services is highlighted in the following conceptual architecture for the Systems Modeling Environment (SME).
The construction of a systems model can be initiated in three basic ways: i) via a “rich” model editor client, ii) via a “web” model editor client or iii) via an external interface mechanism including programmatic (e.g. via a programming language graph representation), tabular input (e.g. MS Excel), graphics (e.g. MS Visio or PowerPoint) or textual (e.g. text document). The task of construction a system model ranges from being a purely manual process to a semi-automated process that loads the external representation of the model content, parses through the external description, transforms the description based on the System Model's concept model and/or metamodel and finally provides a visualization of the resulting model (in both textual and graphical representations.).
UseCase | ModelElements | SourceData | Tool Interoperability |
---|---|---|---|
Create/Update Viewpoint Definitions | Viewpoint | ISO and IEEE definitions | TBD |
Create/Update View Definitions | View, Query, Model Reference | ISO and IEEE definitions | TBD |
Create/Update Pattern Definitions | Model, Model Dependency, Pattern | TBD | TBD |
Create/Update Model Library Definitions | Model, Library, Reference, | ISO and IEEE definitions | TBD |
Create/Update User Role Definitions | User, Role, AccessControl | TBD | TBD |
UseCase | ModelElements | SourceData | Tool Interoperability |
---|---|---|---|
Create/Update Capability Definitions | Capability | DoD: Capability Definition Document | MS Office, Adobe PDF |
Create/Update Capability Dependencies | Capability, Sequence, Association, Mission, Policy, Vision, Objective | DoD: Capability Definition Document | MS Office, Adobe PDF |
UseCase | ModelElements | SourceData | Tool Interoperability |
---|---|---|---|
Import Requirement Objects | Requirement, Association | DoD: System Requirements Document, System/Subsystem Requirements Document | MS Office, Adobe PDF, DOORS, RequisitePro |
Link Requirement Objects | Requirement, Association, ExternalLink | Model, External Requirements Repository | DOORS, RequisitePro |
UseCase | ModelElements | SourceData | Tool Interoperability |
---|---|---|---|
Create System Architecture Structure | Context, System, Subsystem, Resource, Exchange, Association | DoD: DoDAF System/Services Viewpoint | MS Office, Adobe PDF |
Create System Architecture Behaviors | Task, Process, Function, State, Message | DoD: System/Subsystem Design Document | MS Office, Adobe PDF |
Create System Architecture Constraints | Doctrine, Tactic, Technique, Procedure, Law | DoD: DOTMLPF | MS Office, Adobe PDF |
UseCase | ModelElements | SourceData | Tool Interoperability |
---|---|---|---|
Create System Design Structure | Context, Component, Resource, Exchange, Association | DoD: System/Subsystem Design Document | MS Office, Adobe PDF |
Create System Design Behaviors | Task, Process, Function, State, Message | DoD: System/Subsystem Design Document | MS Office, Adobe PDF |
Create System Design Constraints | Design Rules | DoD: Standards | MS Office, Adobe PDF |
UseCase | ModelElements | SourceData | Tool Interoperability |
---|---|---|---|
Create/Update AoA Definitions | AoA | DoD: AoA Definition Document | MS Office, Adobe PDF |
UseCase | ModelElements | SourceData | Tool Interoperability |
---|---|---|---|
Create/Update Quality Attribute Definitions | QA | DoD: Quality Definition Document | MS Office, Adobe PDF |
UseCase | ModelElements | SourceData | Tool Interoperability |
---|---|---|---|
Create/Update KPP, TPM, CPM Definitions | TPM, CPM, KPP | DoD: Performance Definition Document | MS Office, Adobe PDF |
UseCase | ModelElements | SourceData | Tool Interoperability |
---|---|---|---|
Create/Update Test Case Definitions | TestCase | DoD: IV&V Specifications | MS Office, Adobe PDF |
UseCase | ModelElements | SourceData | Tool Interoperability |
---|---|---|---|
Create/Update Software Architecture Definitions | SoftwareArchitecture | DoD: Software Requirements Specification | MS Office, Adobe PDF |
Create/Update Hardware Architecture Definitions | HardwareArchitecture | DoD: Software Requirements Specification | MS Office, Adobe PDF |
Name | Documentation |
---|---|
Component | A constituent part of an element or system that contributes to the properties and behaviors of the whole (emergent). Note: A leaf component does not have constituent parts. |
Data | A component of information. |
Data type | Refer to UML specification |
Domain | A scope that encompasses a set of entities and relationships that may be addressed by the model. |
Element | Anything of interest to the modeler, which is uniquely identifiable and can be characterized by a set of properties. |
Environment | A collection of systems and elements that interact either directly or indirectly with the system of interest. |
Instance | A unique model element in a set that iis defined by the general features of its classifier. |
Interface | The inputs, outputs, ports, connections, connecting components (i.e. harness), and associated information that support one or more interactions between systems. Note: The UML definition of interface also includes the operations that must be performed in response to the inputs or invocations. |
Mission | The operational context and purpose that the system is intended to support. |
Model (graphical, visual) | A representation of something of interest that includes notation and semantics. |
Model element | A construct that is used to build a model. |
Model interchange | The ability to exchange model information. |
Model view | A subset of model elements and associated relationships, that are of use to the modeler for a particular purpose and context. |
Node | A component of a system that provides resources to support execution. |
Port | The part of a system or component that provides access between a system’s behaviors and properties, and its environment. Note: this is sometimes referred to as an interaction point. |
Resource | Any element that is needed for the execution of a function. |
Role | Refer to System role |
Software | A component of a system that specifies instructions which are executed by a computer. |
Stakeholder | Individuals, groups, and/or institutions which may be impacted by the system throughout its life cycle, including acquisition, development, production, deployment, operations, support, and disposal. |
Subsystem | A logical or physical partitioning of a system. |
System | An element, with structure, that exhibits observable properties and behaviors. |
System context | A depiction of the inputs and outputs between a system and its environment. |
System role | A subset of its behaviors, properties, and structure. Note: The subset may be associated with specific interactions. |
Name | Documentation |
---|
Performance requirement | A performance property a system must satsify. |
Requirement | The capability, behavior, structure, and/or properties that a system, component, or element must satisfy. Note: This is used to establish a contract between the customer (or stakeholder) and implementer. |
Requirement attribute | An attrirbue fo a requirement, which may include its criticality or weighting, level of uncertainty, verification status, etc. |
Name | Documentation |
---|---|
Condition | An expression with a discrete output, which is true as long as the expression evaluates true, and is false otherwise. |
Effectiveness measure | A criterion for system optimization that is critcial to the success of the mission. Note: The criterion are often used to support trade studies to select among alternatives, as well as to optimize a given design. |
Expression | Refer to UML specification |
Parametric model | An analysis model which defines a set of dependent or logically grouped parametric relationships. |
Performance property | A measure of the transformation or response of a function or behavior (i.e response time, etc). |
Property | A quantifiable characteristic. |
Property value | Unique state of a property. |
Name | Documentation |
---|---|
Action | A non-interruptible function. Note: An action represents an atomic unit of processing or work. Actions may be continuous or discrete. Discrete actions may or may not be assumed to execute in zero time. |
Activity | One or more related actions. |
Behavior | The activation/deactivation of one or more functions. Note: This describes how a system interacts with its environment. Reactive behavior includes the stimulus and response. |
Condition | An expression with a discrete output, which is true as long as the expression evaluates true, and is false otherwise. |
Event | A noteworthy occurrence that occurs at the instant of time when a specified expression evaluates true. |
Fork | A control operator which enables all of its outputs, when the input is evaluated true. |
Function | A transformation of inputs to outputs that may include the creation, monitoring, modification or destruction of elements, or a null transformation. |
Input/Output | An element that is subject to a transformation by a function. |
Interaction | Emergent behavior that results from two or more dependent behaviors Note: A system or component interacts with other components its environment, to yield an emergent system behavior from the individual component behaviors . |
Iteration loop | A specialized loop where the loop repeats a specified number of times. |
Process | A set of inter-related functions and their corresponding inputs and outputs, which are activated and deactivated by their control inputs. |
Sequential state | A state which can only be active when the other sequential states are not active. |
Simple state | A state that does not have nested states. |
State (finite) | A condition of a system or element, as defined by some of its properties, which can enable system behaviors and/or structure to occur. Note: The enabled behavior may include no actions, such as associated with a wait state. Also, the condition that defines the state may be dependent on one or more previous states. |
Test scenario | A scenario which replicates the behavior of the environment that interacts with the system under test. |
Name | Documentation |
---|---|
Association | Refer to UML specification |
Connection | Identification of which ports connect to one another. |
Decomposition | A description of a whole in terms of its component parts. |
Dependency | A relationship where a change to one entity results in a change to the other. |
Generalization | The factoring of common features to characterize a more general concept. |
Parametric relationship | A dependency between properties, such that a change to the value of one property impacts the value of the other property. |
Requirement allocation | The assignment of a requirement to an element, component, or system. |
Requirement traceability | The relationship between a source requirement and the derived requirements needed to satisfy the source requirement. |
Requirement verification | A comparison between a requirement and the verification results that is intended to satisfy the requirement. |
Spatial representation | A geometrical relationship among elements. |
Specialization | A classification of an entity (e.g., element, system, function, requirement, …), which specifies the common features of the more general element, and unique features of the specific element. |
System hierarchy | A decomposition of a system and its components. |
System interconnection | The connection between systems and between components. |
Transition | Response to events/conditions, which triggers a behavior. |
Name | Documentation |
---|---|
Boolean | Refer to UML specification |
Complex Number | A number which can includes a real and imaginary part. |
Enumerated value | Refer to UML specification |
Geometric model | A model of the geometric relationships associated with one or more elements. |
Integer | A whole number |
Mean | The expected value associated with a probability distirbution. |
Physical property | A physical characteristic of a system or element (i.e. weight, color). |
Probability Distribution | A mathematical function which defines the likelihood of a particular set of outcomes. |
Real number | A number which can have any value from negative infinity to infinity. |
Spatial Property | ?? Note: Representation of Primitive Location Types e.g. Geographic lat-log, Relative x-y-z |
String | A value represented by alphanumeric characters. |
Time Property | A property of the model that represents a local or global time, which other properties may depend on. Note: The property can support continuous or discrete-time models. This variable should not be confused with the measured or computed time that an actual system uses, which depends on a number of implementation specific factors related to clocks, synchronization, etc. |
Variance | A measure of the distribution about the mean of a probability distribution. Refer to the mathematical definition associated with a probability distribution. |
Vector | A data type, which specifies a magnitude and direction. |
See the Interoperability Working Group Wiki Page for a complete set of Services (including Model Construction) at: Interoperability Working group
The following Hybrid SUV Change Scenario will be used to illustrate the concept:
Assumption: Assume physics based analysis / simulation run: From the design model, generate the simulation, get results, compare with original requirements Model Construction: (Services, Description) (Query, Inspect design features) Determine design features relevant to the requirement (Export design features) Export features to analysis/simulation tool (Import assessment) Import assessment (Link assessment) Link the assessment to the requirement and design features
Assumption: Change could be functional, performance, environmental Model Construction: (Services, Description) (Create req variant) Create a variant of the requirement
Assumption: Original requirement, requirement dependencies and design features are the starting point Model Construction: (Services, Description) (Create Temporary Working Viewpoint) Gather all dependent model elements into a working package (Update change impact flag and note) Determine impact on other requirements (Update change impact flag and note) Determine impact on design features
Assumption: Two paths to get here, i) no requirement change or ii) requirement change, leading indirectly to a design change. Model Construction: (Services, Description) (Append proposed change request) Append proposed change requirest to relevant design features (Generate CM change notification) Notify the CCB of the proposed change (Query proposed change package) CCB gathers relevant change information to assess impact (Approve change) CCB approves proposed changes (Deny change) CCB denies proposed changes (Import CCB assessment) Import the CCB assessment to the model (Link assessment) Link the CCB assessment to the requirement variant
Assumption: CCB approved requirement change and subsequent design change or only the design change Model Construction: (Services, Description) (Add new baseline requirement) Requirement variant added to the baseline, overriding the original requirement (if needed) (Create design feature variant) Update the design baseline with new design features variants to reflect the CCB approved changes
Assumption: Existing test suite updated to reflect design changes Model Construction: (Services, Description) (Create test plan variant) Test plan may need to be updated (assuming the plan is in the model) (Create test scenario variant) Test scenarios may need to be updated (assuming the ascenarios are represented in the model) (Create test procedure variant) Test procedures may need to be updated (assuming the test procedures are represented in the model) (Verify system design) Execute any relevant system tests to ensure verification
Date | Author | Description | Web Link |
---|---|---|---|
2000 | Hubert Hofmann | Requirements Engineering: A Situated Discovery Process | http://www.amazon.com/Requirements-Engineering-Discovery-Information-IV-Controlling/dp/3824472155/ |
2012 | Drechsler, Soeken & Wille | Formal Specification Level: Towards Verification-driven Design based on Natural Language Processing | http://ieeexplore.ieee.org/xpl/login.jsp?tp=&arnumber=6336984&url=http%3A%2F%2Fieeexplore.ieee.org%2Fiel5%2F6330712%2F6336975%2F06336984.pdf%3Farnumber%3D6336984 |
2015 | Tao Yue | Applying A Restricted Natural Language Based Test Case Generation Approach in An Industrial Context | http://www.simula.no/publications/applying-restricted-natural-language-based-test-case-generation-approach-industrial |
Construct SE Model Overview - August 2015
Formal Specification level: Towards Verfication-driven Design Based on natural Language Processing
Construct SE Model Overview - August 2015
Name | Organization | |
---|---|---|
Ron Williamson | Raytheon | ron_c_williamson@raytheon.com |
Name | Organization | Web Reference | |
---|---|---|---|
Tao Yue | Simula Research laboratory | tao@simula.no | http://www.simula.no/people/tao |
Manas Bajaj | InterCAX | manas.bajaj@intercax.com | http://intercax.com/products/syndeia/ |
Drechsler, Soeken & Wille | University of Bremen | drechsle@informatik.uni-bremen.de | http://www.informatik.uni-bremen.de/cms/detail.php?id=82 |