-
Key: UAF13-16
-
Status: open
-
Source: Department of Navy ( Mr. James Ciarcia)
-
Summary:
SysML has very tight constraints on ProxyPorts and InterfaceBlocks that are bypassed by using FullPorts. Specifically the no_behavior and no_part constraints on InterfaceBlocks. By constricting UAF::*Ports to ProxyPorts, it prevents UAF architects from taking full advantage of behaviors and parts on UAF::*Ports. Just like SysML, an alternate method for having ports with parts and/or behaviors should be allowed.
I don't see any perfect specific recommendation, there will probably have to be a change that tool vendors will have to create a mapping for.
Alternate 1: Make UAF::*Port an Abstract Stereotype, removing the Generalization to ProxyPort. Then create 2 new specializations of ResourcePort, one for "ResourcePortProxy" and another "ResourcePortFull" each specializing SysML::ProxyPort or SysML::FullPort respectively.Alternate 2: Remove/Obsolete the stereotype altogether or remove it's dependence on Proxy or Full and require double stereotype like UPDM l1 compliance. Instead place constraints on *Performer.ownedPort metaproperty based on if it's port is either Proxy (using *Interface type) or Full (using *Performer type).
Alternate 3: Just switch generalization of UAF::*Ports from SysML::ProxyPort to SysML::FullPort. There are no constraint violations as FullPorts can be typed by InterfaceBlocks, so no changes needed for users or UAF::*Interface. Requires update to UAF::*Port.type constraints to allow addition of <<OperationalAgent>>, <<Service>>, or <<ResourcePerformer>> as valid types.
-
Reported: UAF 1.2 — Fri, 14 Jan 2022 21:55 GMT
-
Updated: Mon, 2 Sep 2024 00:59 GMT
UAF13 — Support for SysML::FullPort as alternate for UAF::*Ports
- Key: UAF13-16
- OMG Task Force: Unified Architecture Framework (UAF) 1.3 RTF