Issue 4836: Relate different refinements of the same thing, e.g. protocol stacks Jira Issue SPTP-169
Issue 4837: clarification regarding UML extensibility mechanisms as proposed for UML1.4 Jira Issue SPTP-170
Issue 4838: General conventions used in the profile Jira Issue SPTP-171
Issue 4839: Clarification of the term 'Analysis' Jira Issue SPTP-172
Issue 4840: Chapters 7 and 8 clarification Jira Issue SPTP-173
Issue 4841: domain viewpoint are not present in the UML viewpoint Jira Issue SPTP-174
Issue 4842: "Position regarding Action Language Semantics Work Jira Issue SPTP-175
Issue 4843: fourth column of the tags specification table in the UML viewpoint Jira Issue SPTP-176
Issue 4844: clarification Jira Issue SPTP-177
Issue 4845: Scheduling and Performance sub-profiles do not give details Jira Issue SPTP-178
Issue 4987: Cclarify what is meant by "hard" real-time Jira Issue SPTP-27
Issue 4988: concurrency package Jira Issue SPTP-28
Issue 4989: difference between layered and peer interpretations Jira Issue SPTP-29
Issue 4990: �engineering� is a too much general term Jira Issue SPTP-30
Issue 4991: example of priorities not being relevant to availability analysis Jira Issue SPTP-31
Issue 4992: Make the notion of return values from Model Processing more explicit Jira Issue SPTP-32
Issue 4993: Section 3.3: paradigm Jira Issue SPTP-33
Issue 4994: Modeling Resources, 2nd paragraph, page 14 Jira Issue SPTP-34
Issue 4995: engineering model� introduced on page 34 Jira Issue SPTP-35
Issue 4996: tagged values to reference modeling elements Jira Issue SPTP-36
Issue 4997: Chapter 14.1, reference 10 issue Jira Issue SPTP-37
Issue 4998: Chapter 14.2 Jira Issue SPTP-38
Issue 4999: Section 15.1; Appendix B- Clock Jira Issue SPTP-39
Issue 5000: Appendix B- Execution Engine Jira Issue SPTP-40
Issue 5001: Appendix B- Thread Jira Issue SPTP-41
Issue 5002: Appendix B- Logical Resource Jira Issue SPTP-189
Issue 5003: Appendix B- Physical Model Jira Issue SPTP-42
Issue 5004: Appendix B- Physical Resource Jira Issue SPTP-43
Issue 5006: Suggested insertion at the beginning of the section 3.1 Jira Issue SPTP-44
Issue 5007: The term �Analysis� is very ambiguous Jira Issue SPTP-45
Issue 5008: Chapter 3.2 Jira Issue SPTP-46
Issue 5009: composition relationship between ScenarioStep and Scenario Jira Issue SPTP-47
Issue 5010: Section 4.1.4 2nd paragraph Jira Issue SPTP-48
Issue 5011: Section 4.1.6 Jira Issue SPTP-49
Issue 5012: section 4.2.2 item labeled "GRMscenarioStep Jira Issue SPTP-50
Issue 5013: GRM Profile issue Jira Issue SPTP-51
Issue 5014: GRM Profile issue (02) Jira Issue SPTP-52
Issue 5015: GRM Profile issue (03) Jira Issue SPTP-53
Issue 5016: Section 4.1.4 Are threads and processes (at UNIX meaning) active resources Jira Issue SPTP-54
Issue 5017: Section 4.1.4 -- clarification Jira Issue SPTP-55
Issue 5018: Section 4.1.5 issue Jira Issue SPTP-56
Issue 5019: reappointed ToleranceLevel into ConcurrencyPolicy Jira Issue SPTP-57
Issue 5020: Section 4.1.5 issue related to model of service description Jira Issue SPTP-58
Issue 5021: Figure 20 issue Jira Issue SPTP-59
Issue 5022: 4.1.6 - Access Control Policy Jira Issue SPTP-60
Issue 5023: 4.1.6- Excusive Service Jira Issue SPTP-61
Issue 5024: Resource Broker Jira Issue SPTP-62
Issue 5025: Problem of ref number Jira Issue SPTP-63
Issue 5026: Figure 14 Jira Issue SPTP-64
Issue 5027: Figure 15. Jira Issue SPTP-65
Issue 5028: Section 4.1.4 Jira Issue SPTP-66
Issue 5029: Page 4.23 Jira Issue SPTP-67
Issue 5030: Page 4.23 paragraph 5 Jira Issue SPTP-68
Issue 5031: End of page 4.25 and page 4.26. Jira Issue SPTP-69
Issue 5032: Figure 22 Jira Issue SPTP-70
Issue 5033: Chap. 4, p. 50 Jira Issue SPTP-71
Issue 5034: Chap. 4, p.61 Jira Issue SPTP-72
Issue 5035: Chap. 5, p. 47 and following (4.2.1 Modeling Realization Relationships) Jira Issue SPTP-4
Issue 5036: p. 26/27: Jira Issue SPTP-73
Issue 5037: p. 36 Jira Issue SPTP-74
Issue 5038: p 70 Jira Issue SPTP-75
Issue 5039: p. 72, 80 and 82: Jira Issue SPTP-76
Issue 5040: p. 84 Jira Issue SPTP-77
Issue 5041: p. 84/85: Jira Issue SPTP-78
Issue 5042: approach of application of QoS characteristics Jira Issue SPTP-79
Issue 5043: concept of stimulus of UML metamodels Jira Issue SPTP-80
Issue 5044: Chap. 5, p. 66: remove footnote Jira Issue SPTP-81
Issue 5045: Chap. 5, p. 91 Jira Issue SPTP-82
Issue 5046: Timing Mechanisms, page 65 Jira Issue SPTP-83
Issue 5047: concepts introduced can be redundant with UML Jira Issue SPTP-5
Issue 5048: Section 6.2.2 UML Extensions, page 103 Jira Issue SPTP-6
Issue 5049: p. 99: Jira Issue SPTP-7
Issue 5050: SA Profile issue Jira Issue SPTP-8
Issue 5051: Section 6.1.3 Jira Issue SPTP-84
Issue 5052: The scheduling analysis does not consider some UML concurrency parameters Jira Issue SPTP-85
Issue 5053: The stereotypes of the others profiles are in alphabetic order. SA Profile Jira Issue SPTP-86
Issue 5054: SA Profile issue Jira Issue SPTP-87
Issue 5055: Diagrams of Figures 40 and 41 include messages that only include a LinkEnd Jira Issue SPTP-88
Issue 5056: SA Profile Example Jira Issue SPTP-89
Issue 5057: sequence diagrams of Figure 43 and 42 Jira Issue SPTP-90
Issue 5058: SA Profile Example (SAStep) Jira Issue SPTP-91
Issue 5059: SAStep issue Jira Issue SPTP-92
Issue 5060: Figure 43 you include a QoS, needs clarification Jira Issue SPTP-93
Issue 5061: Section 6.1.1 Jira Issue SPTP-94
Issue 5062: Section 6.1.1 issue Jira Issue SPTP-95
Issue 5063: 6.1.3 Schedulable Entity Jira Issue SPTP-96
Issue 5064: section 6.1.2 Jira Issue SPTP-97
Issue 5065: section 6.1.3 Jira Issue SPTP-98
Issue 5066: Chap. 7, p. 110 � Section 7.1.1, second paragraph: Jira Issue SPTP-99
Issue 5067: Section 7.1.2 Types of Analysis Methods, Dynamic Scheduling paragraph, page Jira Issue SPTP-100
Issue 5068: Figure 7-2 Jira Issue SPTP-101
Issue 5069: TimedAction and SAction Jira Issue SPTP-102
Issue 5070: Definition of 'duration' in TimedAction is confusing Jira Issue SPTP-103
Issue 5071: best way of representing end-to-end times across several schedulable entiti Jira Issue SPTP-104
Issue 5072: Definition of Abs Deadline=Release-time + Rel Deadline Jira Issue SPTP-105
Issue 5073: Worst-case Response time and Worst-case Completion time Jira Issue SPTP-106
Issue 5074: How do I model the response time for the entire scenario Jira Issue SPTP-107
Issue 5075: Section 9.2.3 Modeling Guidelines and Example, Figure 9-2 Jira Issue SPTP-108
Issue 5076: RT CORBA models do not identifies network resources Jira Issue SPTP-109
Issue 5077: Chapter 10: Material presented in this chapetr is too general Jira Issue SPTP-110
Issue 5078: concepts that already exists in UML Jira Issue SPTP-9
Issue 5079: how are the association from the initial class model reflected in the stere Jira Issue SPTP-111
Issue 5080: The limits of the use of stereotypes are sometimes ambiguous Jira Issue SPTP-112
Issue 5081: It is not clear how a QoS characteristic can be attached to a Resource Jira Issue SPTP-113
Issue 5082: How do we formalize stereotypes and tag value constraints Jira Issue SPTP-114
Issue 5083: App. C, p. 200 Jira Issue SPTP-115
Issue 5084: link between the already existing UML elements that target time aspects Jira Issue SPTP-116
Issue 5085: The different profiles do not pay special attention to identify well-formed Jira Issue SPTP-10
Issue 5274: Page 4-36, "GRMAcquire" (issue 1) Jira Issue SPTP-117
Issue 5275: Page 4-36, "GRMAcquire" (issue 2) Jira Issue SPTP-11
Issue 5276: Page 5-21, "RTaction" Jira Issue SPTP-118
Issue 5277: Page 5-22, "RtclkInterrupt" Jira Issue SPTP-119
Issue 5278: Page 5-23, "Rtdelay" Jira Issue SPTP-120
Issue 5279: Page 5-25, "Rtinterval" Jira Issue SPTP-121
Issue 5280: Page 5-25, "Rtinterval" (issue 2) Jira Issue SPTP-122
Issue 5281: Page 5-25,"RtnewTimer" Jira Issue SPTP-123
Issue 5282: Page 5-29,"Rttimeout" Jira Issue SPTP-124
Issue 5283: Page 7-15, "SAaction" Jira Issue SPTP-125
Issue 5284: Page 7-16,"Saengine" Jira Issue SPTP-126
Issue 5285: Page 7-16,"Saengine" (issue 2) Jira Issue SPTP-127
Issue 5286: Page 7-17,"Saengine" Jira Issue SPTP-128
Issue 5287: Page 7-20, "Sascheduler" Jira Issue SPTP-129
Issue 5288: Page 8-17,"PAHost" Jira Issue SPTP-130
Issue 5289: Page 8-18, "PAresource" Jira Issue SPTP-131
Issue 5290: Page 8-20, PaextOpValue Jira Issue SPTP-12
Issue 5291: Page 9-7, "RSAcleint" Jira Issue SPTP-132
Issue 5292: Page 9-7, "RSAConnection" Jira Issue SPTP-133
Issue 5293: Page 9-8, "RSAserver" Jira Issue SPTP-134
Issue 5294: Page 9-9, "RSAorb" Jira Issue SPTP-135
Issue 5295: Page 9-9, "RSAserver" Jira Issue SPTP-136
Issue 5306: Chapter 5: support for scaling of time and clocks Jira Issue SPTP-137
Issue 5307: How do we map months/years to seconds Jira Issue SPTP-138
Issue 5308: The names of tagged values can create confusion Jira Issue SPTP-139
Issue 5309: Figure 27 Jira Issue SPTP-140
Issue 5310: relation of RTtimeEvent in Figure 27 with UML 1.3 metaclass TimeEvent Jira Issue SPTP-141
Issue 5311: RTtimeString issue in chapter 5 Jira Issue SPTP-142
Issue 5312: Delay stereotype needed Jira Issue SPTP-143
Issue 5313: more abstract demand unit needed Jira Issue SPTP-13
Issue 5314: Repetition counts Jira Issue SPTP-14
Issue 5315: The concept of scenario Jira Issue SPTP-15
Issue 5316: there could be a better, more complete RTtimeValue (p90+) Jira Issue SPTP-16
Issue 5317: Frequency Jira Issue SPTP-17
Issue 5318: OrderedTimeSets Jira Issue SPTP-18
Issue 5319: time/frequency definitions Jira Issue SPTP-19
Issue 5320: The properties of timing devices Jira Issue SPTP-144
Issue 5323: First example, on page 6-10 - Jira Issue SPTP-145
Issue 5324: example on page 6-11 Jira Issue SPTP-146
Issue 5334: The capitilzation of stereotype and tag names should be consistent Jira Issue SPTP-147
Issue 5675: potential problems with name clashes Jira Issue SPTP-148
Issue 5698: <<RTaction� This stereotype should also be associated with operations. Jira Issue SPTP-149
Issue 5699: suggest inclusion of <<RTtimedAction>> stereotype (inherited from <<RTactio Jira Issue SPTP-20
Issue 5700: TVL notation Jira Issue SPTP-21
Issue 5701: <<CRaction>>: this stereotype should be inherited from <<RTaction>> Jira Issue SPTP-150
Issue 5702: <<CRasync>>, <<CRsync>> Jira Issue SPTP-151
Issue 5703: <<CRsync>> Jira Issue SPTP-22
Issue 5704: <<SAschedRes>> Jira Issue SPTP-23
Issue 5705: Section 4, Page 4-4, Line 6. Jira Issue SPTP-152
Issue 5706: Section 4, Page 4-10, Line 6 section 4.1.6 and figure 4.9. Jira Issue SPTP-153
Issue 5707: Section 4, figure 4-9. Jira Issue SPTP-154
Issue 5708: Section 4, Page 4-21, Jira Issue SPTP-155
Issue 5709: Section 4,Page 4-31, definition of synchronous Jira Issue SPTP-156
Issue 5710: Section 4, Page 4-38, Jira Issue SPTP-157
Issue 5711: Section 5, figure 5-5. Jira Issue SPTP-24
Issue 5712: Section 5, Page 5-13 first lines. Jira Issue SPTP-25
Issue 5713: Section 7, Figure 7-1 Jira Issue SPTP-158
Issue 5714: Section 7,Page 7-8 Jira Issue SPTP-159
Issue 5715: Section 7, Page 7-8, Jira Issue SPTP-160
Issue 5716: Section 7, Page 7-8 (02) Jira Issue SPTP-161
Issue 5717: Section 7, Page 7-10 Jira Issue SPTP-162
Issue 5718: Section 8, Page 8-15 Jira Issue SPTP-163
Issue 5719: Bibliography Jira Issue SPTP-164
Issue 5720: Fig 5-5 Timed Action should inherit from Action Execution Jira Issue SPTP-26
Issue 5721: Fig 7-1 Jira Issue SPTP-165
Issue 5722: Fig 7-3 Jira Issue SPTP-166
Issue 5724: use of multiple stereotype Jira Issue SPTP-167
Issue 5725: Section 5, Page 5-2: Tag definitions Jira Issue SPTP-168
Issue 5874: Appendix B Jira Issue SPTP-3
Issue 5875: General issue Jira Issue SPTP-1
Issue 5919: Support high-level schedulability analysis Jira Issue SPTP-2
Issue 4836: Relate different refinements of the same thing, e.g. protocol stacks (uml-scheduling-ftf)
Click here for this issue's archive.
Nature: Uncategorized Issue
Severity:
Summary: Relate different refinements of the same thing, e.g. protocol stacks
Resolution: Closed, no change
Revised Text:
Actions taken:
February 7, 2002: received issue
June 30, 2003: closed issue
Issue 4837: clarification regarding UML extensibility mechanisms as proposed for UML1.4 (uml-scheduling-ftf)
Click here for this issue's archive.
Nature: Clarification
Severity:
Summary: The document has been developed assuming the UML extensibility mechanisms as proposed for UML 1.4, but this is not said until section 4.2.3. This assumption is done in the rest of the document, and the rest of the sections do not clarify this. We propose include this clarification in earlier chapters
Resolution: see above
Revised Text: Insert "Note that this profile is based on the extension mechanisms defined in version 1.4 of the UML specification [37]." into section 3.4.1
Actions taken:
February 7, 2002: received issue
June 30, 2003: closed issue
Discussion: State this in the introduction. An explicit statement to this effect has been inserted as part of a new section in chapter 3 (section 3.4.1)
Issue 4838: General conventions used in the profile (uml-scheduling-ftf)
Click here for this issue's archive.
Nature: Uncategorized Issue
Severity:
Summary: A general convention used in the profile is to use prefix GRM, RT and SA for the names of the profiles. RT does not respect this and SA has not respect at tagged value value of stereotype SAArrivalPatternString
Resolution: Closed, no change
Revised Text:
Actions taken:
February 7, 2002: received issue
June 30, 2003: closed issue
Discussion: tag values don�t need them, and inside SAArrivalPattern String is not practical; Still, should be investigated (Bran)
Issue 4839: Clarification of the term 'Analysis' (uml-scheduling-ftf)
Click here for this issue's archive.
Source: Commissariat a l Energie Atomique-CEA (Dr. Sebastien Gerard, sebastien.gerard(at)cea.fr)
Nature: Uncategorized Issue
Severity:
Summary:
Below in the text, the term �Analysis� is used alone (i.e. without reference with objective of the anaysis, i.e. Performance, Scheduling, � which are real-time properties analysis) in association with �model� without and then become very ambiguous because if it is well understood by the majority of real-time system analysts I think it could be misunderstood by non real-time specialist modelers. Indeed, this terms is often used in process definition too as being the development stage where the modeler specify what the system has to do. And yet, this document will be certainly read by non real-time specialists too. To avoid such confusion, I propose to explicitly write �real-time properties analysis� or something closed to that.
Resolution: The term analysis (for model analysis) has been replaced throughout the document, by the term "model analysis"
" � I am certainly not a specialist in Schedulability and Performance Analyses. Thus I can only give a general impression. These two chapters appeared to me as the most diffi-cult to read and understand. The risk (clearly faced by the authors themselves) is that the concepts presented be biased toward existing tools. Another risk is that these con-cepts rely on the new Time and resource modeling, and that the corresponding notions need to be somewhat broken in before being applied."
This issue raises two kinds of concerns: 1. Feasibility of the concepts provided in the Schedulability and Performance sub-profiles 2. Readability of the text Regarding feasibility, these concerns should be somewhat alleviated given that both sub-profiles have been prototyped prior to adoption and, for the schedulability sub-profile at least, have also been made available in commercial products. Concerning readability, this could be corrected with additional text, but based on the RTF policy of minimal change, such a change is deemed outside the scope.
I am very surprised by the fact that very often concepts specified in the domain viewpoint are not present in the UML viewpoint. Some examples can be extracted from the GRM model: the main concept introduced in this package, i.e. Ressource, is not translated in the UML viewpoint.
Add text clarifying why this is so (resources are abstract things and do not appear in any concrete analysis -- there is no value in doing this) (Bran)
"Position regarding Action Language Semantics Work I think that some concepts introduced in the SPT profile are closed, even similar, to ones introduced in the Action Semantics Language profile. For example: Is the concept of action introduced in SPT consistent with this one introduced in ASL? In fact, action definition is the core issue of ASL profile. So my opinion is that it would be better to reuse the ASL concepts as much as possible instead of introducing additional one? These two profiles are know almost mature and then are going to be standardized. Moreover, both are going to be very useful for real-time system area: SPT by nature, and ASL because it will allow to build full executable UML models. So it is very important these two profiles to be coherent. Then I think it could be a good think to take some times to synchronize both woks before standardizing them. "
The fourth column of the tags specification table in the UML viewpoint should be �Domain Attribute/Association Name� instead of �Domain Attribute Name� because sometimes the tags match an attribute of the corresponding domain element but it can also match to an association.
I think that this can be solved by providing a section that explains the format used to specify the profile elements (Bran) Resolution: The original issue was rejected since the way that "associations" are specified (actually it is links) in the profile mechanism is in the form of special values for tags. However, the FTF team felt that the meaning of the various columns needed further clarification. Hence, a section explaining the format of the tag specifications was added to the document (section 3.4.1).
The profiles proposed, but CORBA RT sub-profile, are real-time platform and language independent. The extensions are independent of specific analysis methods, specially the performance and scheduling analysis sub-profiles. To identify some parameters of specific methods new extensions must be introduced. The analysis of platform specific models requires the definition of new sub-profiles based on the profiles of the standard, and this process requires a very good knowledge of this standard.
This is a general criticism, which I think is valid, but which more or less requires a rewriting of the document. I suspect that this is not something that can be easily resolved and we may address it partially but not resolve it as a whole (Bran)
Scheduling and Performance sub-profiles do not give details for the identification of behaviors from UML models. This is especially important in performance and scheduling analysis. They do not restrict the UML behavior models (e.g. collaboration diagrams, activity diagrams and state diagrams, sequence diagrams), and sometimes some types of models are not analyzable (e.g. loops in state and activity diagrams are not directly analyzable with scheduling analysis methods). Because of this, different mappings from UML models to analysis domain models can provide different analysis results or not classify consistent the same models. The profile do not provides restrictions and guidelines of mappings from message sequences, stimulus sequences, and state and activity transitions to scheduling domain models.
First of all, I think that this is a valid comment. However, the problem is similar to the previous one (1.10) and is similarly difficult to resolve. I am not sure we can do much about it. This generality is part of the original intent of the profile. Extensions ....
clarify what is meant by "hard" real-time (i.e., is it regarding timeliness or criticality?); add examples of the types of systems that are covered.
Remove paragraph with no replacement (I don't understand this comment -- Bran) Resolution: (AM) Now have this in 3.2.3: "A common distinction in this regard is between soft and hard real-time, the difference being that in the former a late reply is a good reply as long it is within some acceptable range, while in the latter case a late reply is useless, and sometimes totally unacceptable (fatal)."
do not know where you are within this task, but we should be interested to work with on the concurrency package?
The difference we understand between layered and peer interpretations is that in first case, the client is in the logical model whereas its resource(s) are part of one underlying execution model. In second case, they are at the same level of modeling. Is it right?
The differences should be made clearer
�engineering� is a too much general terms that may designate any kind of enginnering activity and not especially this one that consist in designing an real-time execution model. I propose also to substitute this terms by �execution� or �operational� or �operating� or why not �real-time engineering model�
A theological discussion is not very useful at this point
The example of priorities not being relevant to availability analysis sounds wrong (since it turned out to be quite relevant for availability in the case of the Mars Pathfinder); choose a different example that is not likely to be misunderstood
Give different example
Make the notion of return values from Model Processing more explicit and potentially add new material about meta-level replies
Not sure if this is just a request to clarify or a request to add more substance -- I will interpret as the former since the latter may be out of scope of an FTF (Bran)
introduces the model-processing paradigm. The problem that we find in this paradigm is that some evaluation method (included scheduling analysis) can produce result that cannot be represented with UML elements. For example graphics of resource usage, preemption diagrams and other results that cannot be represented with tagged values, that is the method used in the profile to update the results in the model.
revise section 7 to harmonize with their experience and approaches
Modeling Resources, 2nd paragraph, page 14. This RFP response uses the phrase �required QoS� for identifying the QoS a client demands from a resource. To me, the word �required� implies an �all or nothing� response which I do not think is the right connotation if these QoS values are to be used at run time as well as during analysis. I believe that eventually we will want auto-generated software embedded with these QoS values where the values are exposed and acted upon by the run time infrastructure. In this case, clients may get less than optimal resource service. Recommend the phase �required QoS� be replaced with �desired QoS�. This phrase is used throughout the RFP response.
This is a question of taste; Tom has a point (although in some cases "desired = required"), but I am not sure that it is worth the bother of changing this throughout the document. I will probably reject this one (Bran)
In a first correction, I have mentioned I disagree with the proposed terms of �engineering model� introduced on page 34 in order to define the layer which is more technology-specific. In his reply Bran Selic answers me it was because of the RM-ODP terminology mandated by the OMG. But even if this term is conserved, we could at least put an asterisk explaining it. Because, according to my mind, people who build the logical model are also engineers, I prefer to use terms like: �operational�, �execution�, � instead of �engineering�.
I will put in an extra explanation of this (Bran)
6. UML extensions use tagged values to reference modeling elements. This can create problems in the consistence of the models because of the creation or destruction of modeling elements. This is not a problem specific of this profile, this is a general problem of extension techniques, but in these profiles this solutions is used very often to represent associations.
I will probably reject this one. UML 1.4 provides the use of links defined by tagged values as a valid technique, so this is a valid way of applying UML (Bran).Out of scope.
The reference should be the standard or at least should also include a reference to the standard itself
will check out (Bran)
"The bibliography is abundant and relevant. It would be even more usable if there were links in the text (I know, it�s quite a job!)."
it woud be nice, but I don't plan on doing it (Bran)
Appendix B- Clock
we think that �thread� is a too much ambiguous term and propose to use �flow� instead here.
May be a valid comment, but "flow" is not really much better and is likely to be even more confusing; rejected (Bran)
we think that �thread� is a too much ambiguous term and propose to use �flow� instead here.
we think this term is too vague
it is vague, but this whole thing is very abstract; however, will revisit this as part of the whole issue of deployment modeling (Bran)
we add this expression definition in order to contrast with this one of �Logical model�
it is vague, but this whole thing is very abstract; however, will revisit this as part of the whole issue of deployment modeling (Bran)
physical resource is same think that �execution engine�. Moreover, the expression �execution engine� is not present in the content of the preceding text whereas physical model it is.
"Suggested insertion at the beginning of the section:Extracted from [5]: � May be qualified as � real-time � every application operating a computing system which working is liable for the dynamic evolution of the environment state (so-called technique) that is linked to and which it has to control the behavior. �. Extracted from [38]: � Real-Time systems are those systems in which correctness of the system depends not only on the logical results of computations, but also on the time at which results are produced. �. Both previous definitions of the term �real-time� give us following features of real-time system: - A real-time system is tied up with its environment because it has to supervise its behavior via sensors and actuators; - Its computations has to be of course right, but also has to be delivered at the right "
I am not sure that a definitive specification of the term "real-time" is something that this document should produce; I will have a look at this, but my inclination is to reject it (Bran)
The term �Analysis� is very ambiguous because if it is well understood by the majority of real-time system analysts I think it could be misunderstood by non real-time specialist modelers. Indeed, this terms is often used in process definition too as being the development stage where the modeler specify what the system has to do. And yet, this document will be certainly read by non real-time specialists too. To avoid such confusion, I propose to explicitly write �real-time analysis�.
I thought I saw this one already (will check for duplicates). I will investigate a proper definition (Bran)
Do you plan to provide an example of that (e.g. for Rate-Monotonic Analysis)? This could be an help for further reader of the profile to understand the mechanism.
There is one.
the composition relationship between ScenarioStep and Scenario is shown as ordered. It is not clear how this is specified in the profile.
We�re intending this to be used in ordered relationships in a UML model
This should be expanded to identify what other taxonomies exist and guidelines should be added to help modelers identify how to classify specific resource types
expand on these taxonomies and consider other taxonomies (I agree to look into this -- Bran)
item labeled "ReleaseResource" should be defined as a "non-exclusive" service rather than an "exclusive" service
item labeled "GRMscenarioStep: should the stereotype also apply to Activity?
I don't see that there is necessarily a link between these two concepts. I will check this (Bran)
The profile some concepts as stereotypes when they are concepts that could be represented with other types of UML extensions, especially constraints. Some examples are GRMqosCharacteristic and GRMaccesControlPolicy. [1,4,8] use extensively constraint to represent these concepts, the represent the concepts like response times, and control policies as constraints. The problem is the formal language for the description of these concepts in the constraints, but we can use stereotyped constraints. This mean stereotypes for constraints, these stereotypes can include the tagged values that represent the constraint parameters and the constraint can represent the characteristic [3]. We can use the stereotype inheritance to represent the inheritance of these types of constraints.
Resolve Morgan[2] and revisit.
The stereotype GRMconxtet is limited to collaboration, package and instance, but most of examples included in the proposal associate a diagram to collaborations or packages and stereotype the collaboration or package. An alternative would be to stereotype the diagrams, but it is not possible in UML 1.3. May be in UML 1.4. An alternative would be a configuration based on diagrams. If we represent the same collaboration with two alternative collaboration diagrams (two possible solutions) we can configure the analysis for a specific solution. If we stereotype the collaboration, what are we going to do? do we include both diagrams with all its elements?
Agree - this is a UML problem. This is possible, based on a single coherent description, using Analysis Context. There is a misunderstanding of UML underlying this comment
The stereotype GRMresourceUsage could be associate to BehavioralFeature to represent the resource usage in all messages or stimulus to the same operation
this is done against GRMresourceService
Are threads and processes (at UNIX meaning) active resources? If yes (I think yes), I suggest to add an example which do not come from hardware area.
Seems reasonable to add these examples. (I agree -- Bran)
I do not well understand the differency between the concept of �Ressource Broker� and this one of �Access Control Policy�. As described in the sentence, it seems to me that it designates the same thing. Moreover if you attache a �Ressource broker� to one or more unprotected resources they become protected. It is the reason I propose to suppress this concept in the Figure 19.
Needs to be explained: the broker is the entity that enforces a policy; this may be too subtle; revisit (Bran)
We introduce the term �query� in order to fit to the isQuery meta-attribute of BehavioralFeature in UML specifying when true that the execution of a feature leaves the state of the system unchanged and conversely we introduce the term �modifying� to fit to the case where the isQuery value is false that is involving side-effects. This point is similar to the one pertaining to read and write operations. This new terms are just propositions and may be of course changed
I don't really understand what this is trying to say; if it's just terminology quibling, I am inclined to reject (Bran)
have reappointed �ToleranceLevel� into �ConcurrencyPolicy� because I think this concept is more relative to concurrency issues between different services provided by a given resource. Moreover ToleranceLevel may be give indication about fault tolerance.
It would be interesting to look at the current UML definition of concurrency also. (I will look into this -- Bran)
Previous model of service description allow release operation to performed concurrently and thus as being without side-effect on the resource state. For example, if you consider the Semaphore resource defind in POSIX, it get a release service so-called sem_post that modifies the resource state incrementing the semaphore value. So a release service may involve side-effect on its resource. (see. New model proposed below).
Will look into this (Bran)
We propose to add a link between the concepts �Service� and �Resource� (I have reappointed �RessourceService� into �Service� because it is evident due to the link). Moreover, I have reappointed also �AcquireRessource� into �AcquireService� and �ReleaseResource� into �ReleaseService� because I think it is more natural due to the fact we are describing services. Moreover, I think that a service typed �ReleaseService� is an exclusive service. Indeed, I do not think it can be executed concurrently with another �ReleaseService�.
May have a point here; will check (Bran)
There is certainly a link to do between this concept and the �ConcurrencyPolicy� concept managing concurrent execution of services of a given a resource. But I did not find it�
I don't see that there is necessarily a link between these two concepts. It is unclear to me what is meant by "Concurrency Policy" in the text of the issue. In the Concurrency section there is no such concept, although there are corresponding concepts in the Schedulability and Performance analysis sections. However, in the schedulability sub-profile, the concept is a subclass of ResourceControlPolicy (which is wrong since it should be a subclass of AccessControlPolicy instead), whereas in the Performance analysis section the connection has not been made at all (although the same enumeration values are used for both cases). These two derivative issues could be fixed with a relatively minor change to the domain model with no accompanying backward compatibility problems (since they are in the abstract part of the domain model)..
We propose to suppress this association for following reason: It has been demonstrated (REF. MCH 94: C. McHale, �Synchronization in concurrent, object oriented languages: expressive power, genericity and inheritance.�, PhD thesis, Department of Computer Science, Trinity College, Dublin, Ireland, October 1994) that specifying mutual exclusion constraint among services by listing explicitly conflicting services penalizes maintainability, evolutivity of the system. Namely, this point leads to the question of inheritance anomaly. Indeed, it does not allow to change the interface (i.e. set of service it provides to clients) without reanalyzing whole concurrency issues. herefore, specifying concurrency constraints of services by declaring the set of used resource and their using mode (modifying, querying, �) ensures that the specification of each services remains independent. And thus it will remove the drawbacks mentioned before.
There is a difference between good design practices and ones that we need to support because people do them anyway; I will check this out, but my inclination is to reject since I am not convinced that we should be dictating how people do things (Bran)
I do not well understand the difference between the concept of �Resource Broker� and this one of �Access Control Policy�. According to me, it is the same thing and moreover if you attache a �Resource broker� to one or more unprotected resources they become protected and are no more unprotected resource. It is the reason I propose to suppress this concept in the Figure 19.
Problem of ref number, 3.3, last para
May have already been fixed (Bran)
in this Figure, change of �Engineering� into �Execution�
According to previous remark, I change also in the Figure �Engineering Model� into �ExecutionModel�.
depends on resolution of issue 3.9 (Bran)
introduces the dimension protection, �which identifies whether the device is protected against concurrent access or not�. Some resources can be qualified as protected and concurrent at the same time if the resource capacity is limited. The attribute Capacity in page 6.5 introduces the Multi-Unit objects. A good example of these kind of resources are the multi-thread objects of RT-CORBA [9]. The access is controlled with specific policies, but the concurrent access is limited. In page 4.18 the class ProtectedResource includes the attribute AccessControlPolicy �that control access to the exclusive services
change to limited and unlimited (I don't really understand this one -- Bran)
end of paragraph 3 two point
Fix
Page 4.23 paragraph 5. UML 1.3 does not describe how to refer a Model Element with tagged values (I do not know if this will be included in UML 1.4). CASE tools have problems to maintain consistencies, when we use tagged value references. Modification names are not updated in the tagged values.
This is a problem with the UML mechanism; agree (Bran)
At the beginning of page 4.24 it is said �It is often useful to group sets of QoS characteristics that are related�� The ideas included in page 4.25 proposes distinguish �which annotations represent required QoS and which ones are offered QoS�. The stereotype SAResource includes the tagged value SAPriorityCeiling that is an output result of some scheduling analysis tools, and the stereotype includes other required tagged values
The two concepts are orthogonal.
The hierarchy of Figure 22 creates problems when we combine protection and activeness in the same resource (this is very common). An alternative is to use two tagged values in GSMResource to distinguish protection and activeness
Fixed by UML 1.4
Bullets for the definitions of Exclusive static and Exclusive dynamic: the use of the verb to support in this context brings trouble (to me at least); it has not been used so far to describe the relationship between clients and suppliers, and its meaning appears con-fuse (in fact, what supports what?); May be we should stick to using the verb to real-ize."
Don't quite understand this, but will look into it (Bran)
Second introductory paragraph: I agree with the idea of limiting this submission to metric time (as opposed to logical time), but I find a little too short the justification for the restriction. After all, real time system are also concerned by correction wrt logical time. Moreover, at run time, logical time (as represented by interrupt events) is often the only time of which the system is aware and that it may manipulate. This deserves certainly consideration, even at modeling level. Of course take this remark as from somebody whose real-time background deals mostly with logical time!"
Adding this goes beyond the intended scope of the RFP (Bran)
The distinction between Refinement and Realization becomes less and less clear to me. I understand the logical difference between presenting the same model with vari-ous levels of details (refinement) and setting a bridge between two different models, one realizing/implementing/deploying the other (realization). However, as far as the modeling elements and their relationships are concerned, the mechanisms seem to be identical and the frontier often appears fuzzy. This trouble and confusion is apparent in the submission itself since one category of realization may well be considered as refinement (replacement, p. 51), as indicated by the authors themselves. The argument that hardware and software are still different entities is not completely convincing to make it a realization: indeed the hardware manipulates (although under different forms) the same information as the software, at run-time. Another question: why restrict replacement to the deploy mapping and to a relation-ship between hardware and software? Is not �code� a form of replacement? � I was also expecting a general notation for representing the Realization (or Realiza-tion/ Refinement) relationship in UML. This is only sketched in the document (p. 48) but far from expressing the whole richness. The following characteristics seem of interest to me: - multiplicity, both on client and supplier sides - conjunction or disjunction - exclusivity or not - "optionality" or "mandatority" - static or dynamic nature of the relationship and of all the above characteristics - combination of functionalities (additive, replacement...) I am not sure that the simple distinction between require on the one hand and inclu-sive and exclusive (static or dynamic) on the other hand (p. 50) is sufficient to repre-sent all the useful and significant cases. However, I am already late to send this review so I have no time to elaborate more on this, but I would be pleased to discussed it with anybody, if this is found interesting. Of course, this submission might not be the place to set up a general model of Real-ization/ Refinement.
This has been pointed out as one of the major weak areas of the submission and needs to be elaborated further or maybe removed (Bran). As indicated in previous discussions, this is indeed considered to be a major weak point in the spec and at least warrants some additional clarifications to the text in sections 4.1.8.1 and 4.1.8.2. However, it is not expected that these will be sufficient to remove the issue. Also, the issuer seems to have missed the fact that at least some of the characteristics he mentions as being omitted (multiplicty, conjunction/disjunction, etc.) are in fact addressed in section 4.2.1.2. Keep the issue open for the 2.0 version of the profile.
This is a misunderstanding: there is no first and last event being modeled here. It has to do with the difference between reception and generation -- these are two distinct concepts. (Bran)
See document (???? what is the issue?)
Will look into this (Bran)
A time interval is always relative; it makes no sense to talk about an absolute time interval (Bran)
see document (don't know, what the issue is)
Will look into this (Bran) Resolution: fixed; "probability" changed to "duration" in RTduration tag definition; calrification written for "start" and "stop"; no action taken for the adding of a delay on RTtimedAction since this could be added in a specialization of the profile (the concept as currently defined is very general and the request here is for a very specific use of that concept)
I see no compelling reason to support this feature -- it strikes me as being too detailed for the kinds of analyses envisaged by the profile (Bran)
The fourth column of the table describing the tags of �RTnewTimer� and �RTset� is not consistent with others. It is a description instead of the domain attribute name specification.
Will look into this (Bran)
The approach of application of QoS characteristics from the descriptor to instances can have associated problems, when the descriptor is an interface and the interface is implemented by multiples classifiers with different implementations of methods (the descriptor of the instance can be the interface and the classes can have associated different QoS characteristics and we cannot identify the characteristics of the instances).
Will look into this (Bran) Resolution: This is indeed a concern, and a specific warning on this point has been added to the text in section 4.1.1
Most of behavior concepts are based on the stimulus concept that is used in UML metamodels for the description of sequence diagrams semantics, but not for other diagrams like collaboration diagrams. This creates confusion because we can think that we are talking about the concept of stimulus of UML metamodels, and I suppose that this is not the intention of the authors.
This is a general problem; all the useful terms are already taken and it is impractical to try to avoid conflicts with some existing UML metamodel terms. An explicit warning was provided early in the document about this and I do not think we need to do more (Bran)
Footnote: the reference to Einstein appear rather pompous to me.
I will remove the reference (Bran)
The grammar for expressing time values, and especially dates, is very much Western time oriented. It may appear as regressive compared to time internationalization found in modern programming languages like Java, or even C! Although what is pre-sented here is certainly sufficient for most real time applications, it cannot serve as a general notion of time, usable by all sorts of UML models throughout many types of application domains. By the way, there was not a year 0, there will be hopefully a year 10000, and there were negative years!
This lines up somewhat with the comments made by Michael Chonoles; this whole area needs to be revisited based on that input (Bran)
Timing Mechanisms, page 65. Typo. There is a missing word in the first line of the second-to-last paragraph.
will fix (Bran)
Other concepts introduced can be redundant with UML modeling elements or attributes; for example SynchronousInvoke and AsynchronousInvoke are redundant with attributes of methods and operation attributes in UML metamodels
This was intentional, but may need to be looked into; the problem is that some of the existing UML models of such things tended to be rather na�ve and did not fit well into the more sophisticated models required here; however, I will revisit this and see if something can be done (Bran). Valid comment but it should be taking into account in the context of an alignement work with UML2.0. It implies, it is out of the scope of this RTF.
The proposed <<CRConcurrent>> stereotype appears to overlap concepts found in UML active classes and objects yet there is no discussion of their relationships. Recommend such a discussion be included.
I will add such discussion in order to state "active" stereotype regarding these one introduced in the SPT profile. I fully share this point. But the problem is very difficult to solve because in theory a UML profile should be an extension or a subset of the UML. In this case, the UML instantiate a concept that is defined in a generic way in a profile. So how to status about this issue? BTW, we will have the same problem later with the version 2.0 of the UML profile SPT regarding concept of time for example
"In the domain view point describing the concurrency feature, two specific kinds of service are introduced: DeferredService and ImmediateService. I propose to add: IgnoredService A kind of service instance that is ignored if the receiving object is not able to handle it when it receives it. RejectedService A kind of service instance that is rejected if the receiving object is not able to handle it when it receives it. The rejection of a call will also raise an exception that can be catch either by the sender of the stimuli or by the system itself."
I propose to enrich this part in order to aligned with incoming proposal of UML 2.0. This point should be done in the context of alignment with UML2.0 (e.g. with concepts ciontroduced for protocol statemachine). So it is out of the scope of a RTF and should be done in the version 2.0 of the UML profile for SPT.
Activity diagrams are an interesting solution for the description of behaviors. This notation restricted (we cannot include loops and the fork join pseudo states must be used in cobegin-coend sequences) can represent the same types of responses used in some scheduling analysis methods [6,5,7,3]. They can be used to describe the behavior of Operations and this will describe the response associated to messages and stimulus. This is useful to describe sequences of actions that use different types of resources, and these actions could be executed in sequence, parallel or selection. If we have the sequence of a collaboration diagram DD1 ope1 -> DD1.1 ope2 -> DD1.2 ope3, and the operations are described with the activity diagrams like ((action1 || action2) | action3) -> action4 (|| represents the parallel execution, | the selection, and actioni are action states that can be stereotyped as SAStep), we can substitute the operation message or stimuli by their activity diagram, and create an event response based on the combination of both types of behavior description. These notations are useful to represent complex behaviors of operations and messages and to optimize the evaluation of jitters
Aim is sound, but problem with representing executions in Activity Graphs in UML. Consider activity graphs more fully in GRM. Given that we do not intend to incorporate any elements of UML 2.0 in to this revision this is outside the scope of the RTF but should be deferred to version 2.0.
it is said that the schedulability analysis is inherently instance-based. The instance-based description is required to identify the system load (identify the active objects and their execution distributions) and data resources (objects that can be used for synchronization purposes). But the non-blocking passive objects can be analyzed description-based, and their dynamic instantiation do not affect to the analysis because their responses do not depend on the instance (but some polymorpic behaviors). The instance-based analysis does not allow analyze systems where passive objects are created dynamically (the static analysis of systems with dynamic creation of active and resource objects is a different problem).
This scenario is outside the scope of the conceptual model - this needs to be addressed by a major revision.
The scheduling analysis does not consider some UML concurrency parameters. Will the analyzers take in to account these attributes? Examples of these parameters are the concurrency attribute of metaclass Operation and attribute isActive of metaclass Class.
We need to show compliance to these charactestics, but we will maintain duplicate attributes in the profile. Our eventual aim will be to harmonize the profile and the UML.
The stereotypes of the others profiles are in alphabetic order.
The stereotype SARealTimeSituation makes reference to stereotype GRMAAnalysisContext that has been named GRMcontext
Diagrams of Figures 40 and 41 include messages that only include a LinkEnd. UML 1.3 specifies two or more LinkEnd associated to the Link. Next Figure is part of UML 1.3 metamodel
This is correct � we�ll consider how to represent the environment of the context, probably as Actor
In these examples, the links represent the initial events, and we could represent this concept linking an actor instance to the SAEvent Link. But if we want to represent events that are not originated by external actors (for example a cyclic object executed periodically) other solutions are need (for example a classifier stereotype like SACyclic with a tagged value that identifies the sequence message generated periodically [2]).
Create new standalone tag-value called RecurrencePattern, which can be attached to active objects (amongst other things); I will look into this (Bran). This could be solved by allowing SAtrigger to apply to a wider category of UML model elements, in particular it appears, Classifiers. I suggest we do that.
The sequence diagrams of Figure 43 and 42 (the Figure numbers are incorrect) include similar problems because the use pseudo sender object for the initial stimulus.
Explain the use of the 'boundary bar'
When we use SAStep intern to the objects instances (like step DD1 in diagram Figure 40) we need to identify the message sequence, and define its order. The SAStep stereotype has not associated tagged values to do this. In UML 1.3 this is represented with the associations predecessor and activator of metaclass Message.
Actions have defined sequence in the UML model, so we don�t need to associate it to message, and Action Executions have an implied order..
If we include SAStep in the objects to represent the messages sequences we will not respect the method used in UML 1.3, because the element stereotyped are the objects and not the messages, and we can not use the sequence activator-predecessor to define the response sequence with steps associated to objects. Another problem: If we associate more than one SAStep to the object, who defines the order? we need some kind of tagged value in the stereotype to do this.
The order will be defined by the ordering of the underlying actions
In Figure 43 you include a QoS constraint to represent end-to-end response times. But it is not clear how you do this. If WCRT:80 is a tagged value, this cannot be represented in UML 1.3 because we can only associate a tagged value to a single element, and we cannot associate it to two messages, and if we do the association to the object we cannot identify the end points. Another alternative would be use constraints to represent the WCRT:80 condition (we can associate the constraint to more than one UML element), but you do not clarify this
OK, change the diagram to reflect the association to SAStep.
the schedulable entity used at modeling stage may be some times not a concrete entity, It may depend on the modeling stage the modeler/user is working.
Seems a reasonable addition
to be consistent with previous � where �thread� is only one possible example of the �schedulable entities�
Agree witth the suggested change.
in fact the whole sentence could be suppressed, because it has been described in these terms before
I prefer the original sentence
we need to clarify what the term "value-based scheduling" means (there was some disagreement on this point)
The item labeled as "Schedulable Entity"; the sub-item "isSchedulable" may be too simplistic as a result and should perhaps support something more sophisticated (e.g., an ordered list of alternative conclusions?)
This idea is not consistent with the analysis approach embodied in this profile. Each analsysis is for one concrete scenario. Alternatives have to be represented by separate scenarios.
"The schedule is the result of a scheduler implementing a scheduling policy across a set of scheduling jobs on the execution engines that it schedules. This sentence appears rather tautological to me and little informative. Note that it is repeated (without increasing the information) on top of p. 114: A scheduler is responsible for generating a schedule which is used to sched-ule one or more scheduling jobs."
Rewrite sentences
This paragraph mentions �value based scheduling�. This phrase however, does not appear in following pages where tag � value pairs are defined for scheduling policies. Is the �MaxizeAccruedUtility� policy meant to cover value based scheduling? If so, I recommend the phrase �value based scheduling� be replaced with �utility-based scheduling�.
Add reference to utility-based scheduling as alternative nomenclature
Figure 7-2 includes a direct and indirect inheritance from SAction to Scenario. Why two inheritances?
8. TimedAction and SAction are introduced as actions that can include subactions. In that case the priority of an action can be variable (subactions can vary their priority). Because of this, the description of priority in page 115 can create confusion.
Clarify
9. TimedAction defines �duration� as �the time interval during which the action is occurring�. This creates confusion when is reused in SAction because I suppose that duration defines the amount of time that preemptable resources will be used in the execution of the action. �duration� definitions looks like the definition of �Worst-case Completion Time� (�the overall time taken to execute the action, including all overheads�). �duration� includes the overheads too? When the action is blocked or preempted, is it occurring?
Duration in SAaction reflects computation, not blocking or preemption.
"What's the best way of representing end-to-end times across several schedulable entities; "
Add a new tag, SAEndToEnd, which is the worst case completion time for the dependency chain of "tasks" measured from the arrival of an external event. This deals with one type of end-to-end time, but the other, where there is no dependency chain is outside the scope of the FTF. Resolution: Add a new tag, SAEndToEnd, which is the worst case completion time for the dependency chain of "tasks" measured from the arrival of an external event. This deals with one type of end-to-end time, but the other, where there is no dependency chain is outside the scope of the FTF.
"One definition of Abs Deadline=Release-time + Rel Deadline, whereas we seem to mean something else in the spec, i.e abs is used when laxity is hard, rel is when laxity is soft"
Definitions differ depending on the research center. Sidharth's definition comes from Liu Other groups measure time from system initiation, not release time. The definition in the profile (laxity) is unconventional. I suggest that we change the profile to agree with Sidarth (and Liu). Resolution: Definitions differ depending on the research center. Sidharth's definition comes from Liu Other groups measure time from system initiation, not release time. The definition in the profile (laxity) is unconventional. I suggest that we change the profile to agree with Sidarth (and Liu).
"Is there any difference between Worst-case Response time and Worst-case Completion time, or are the terms synonymous?"
Generally the terms are NOT synonymous. We measure response time from task release time and completion time from the arrival of a "trigger" event (external event). Some groups treat completion time as an "absolute" time measured from system start.
How do I model the response time for the entire scenario when there are three independent triggers and all the messages are sent asynchronously?
This is outside the scope of the FTF
This example figure shows several active objects and two node instances in the same diagram. Is there a UML view that allows this? If not, perhaps the response should include this as part of a change to UML.
yes there is such a view; UML does not prevent any diagrams being mixed as modelers find appropriate (Bran)
10. RT CORBA models do not identifies network resources. RT CORBA standard does not pay special attention to communication transport times (like operating system support), but an scheduling analysis that does not take into account network resources (e.g. ATM, CAN networks, or RSVP protocols) provide scheduling analysis non realistic. The profile includes comments about the operating systems dependencies but not communication transport.
I will look into this (Bran) The behavior of the communication transport probably belongs in the "engineering" layer along with processors and RTOSs. One approach is to define a specialization of execution engine to define the transport characteristics. Then transport would be either an association class for the association between execution engines, or an engineering layer class that realizes the association between execution engines We've added a new Channel class to represent some kinds of communication
Most of the material presented in this chapter appears to me as rather general and applicable to almost all kinds of UML models. Thus I do not clearly understand why it belongs here."
It is an RFP requirement (Bran)
We think it is not possible to forget some concepts that already exists in UML and that are very closed to some of the previous one. More precisely I think about three following issues: 1.������ The isActive meta-attribute of the Class meta-class � Active/passive object which are particular case of active/passive resource; So, according to me they are specialization of the stereotype <<GRMactiveRessource>>. 2.������ The concurrency meta-attribute of the Operation meta-class which is a kind of concurrency policy on operations; 3.������ The isQuery meta-Attribute of BehavioralFeature may be connected to the Service concept. 4.������ Both stereotypes <<Thread>> and <<Process>> of the Classifier meta-class I deem that they are outside the scope of UML core and could be placed in the RT profile. There are indeed specialization of the stereotype <<GRMactiveResource>>. To conclude, we think that the links between this profile and UML meta-model is not so simple. Today we have no precise solution. One way to proceed could be to remove from UML all concepts pertaining to concurrency and put them in the concurrency profile for UML � to remove isActive, concurrency and isQuery meta-attributes and <<Thread>> , <<Process>> stereotypes;
We should at least map the concepts over.
The concepts described in the beginning of each section in terms of a class model are later transposed in terms of stereotypes. But how are the association from the initial class model reflected in the stereotypes (which are, as I understand, the only normative part of the profile)?For example, a Resource has a set of offered QoS characteristics. How is the connection between a user <<GRMressource>> class and its corresponding <<GRMqosCharacteristics>> made in the user's model?The same question holds for all other associations. In some cases the connection is obvious informally: for example in case of a user class stereotyped with <<GRMresource>>, whose operations are stereotyped with<<GRMresourceService>>, it is clear that the operations represent the services of the resource represented by the user class. But that link is not captured formally by the metamodel / stereotype definition
It�s up to the analysis tool to determine the associations, except for very specific situations, such as Realizes and a new one Usage. We need to ensure that GRM associations between the base types can be derived from a combination of GRM associations and standard UML associations. However, It's up to the analysis tool to determine the associations, except for very specific situations, such as Realizes and a new one Usage. We need to ensure that GRM associations between the base types can be derived from a combination of GRM associations and standard UML associations. This part of the issue has been deferred via issue 5875
The limits of the use of stereotypes are sometimes ambiguous. For example, in Fig. 28 there is a composition drawn between two stereotypes. This is not supported in UML (stereotypes are not classifiers). Inheritance between stereotypes imposes constraints on the set of metaclasses on which the stereotypes are defined. For example, how is it possible for GRMaccessControlPolicy to be defined for ActivityGraphs, while its ancestor GRMqosCharacteristic is not valid on ActivityGraphs
This is an issue that was raised against the initial submission and not against the revised submission. The particular problems reported in this issue were resolved in the final submission and the issue should have been closed even before the FTF. Most abstract stereotypes, such as "GRMqosCharacteristic" were removed from the proposal. Also, in all cases where one stereotype is defined as a subclass of another stereotype, there is consistency in terms of their base classes in the sense that the specialized stereotype applies to only a subset of the base classes of the parent class.
It is not clear how a QoS characteristic can be attached to a Resource. The example given throughout Chapter 4 is {qosDeadline = 5ms}, which leaves the reader with the idea that QoS characteristics will be attached as tagged values. But later QoS characteristics are defined to be stereotyped Packages, Values, Instances or Classifiers (stereotyped with <<GRMqosCharacteristic>>), and qosDeadline turns out to be a predefined tag value without connection to the <<GRMqosCharacteristic>> stereotype. Furthermore, in Fig. 28, the QoS characteristics of a clock are defined as required tags of the RTtimingMechanism stereotype, with no mention to <<GRMqosCharacteristic>>.
This particular issue was really related to the initial submission and much clarifying text was added and changes made to the domain model to deal with it. It really should have been closed by the FTF since the specific issues that it raises were solved there. The only reason it was kept was that it was misinterpreted as being a broader complaint about the overall vagueness of some parts of the profile. However, on reviewing it this time, I no longer see that interpretation of this issue.
How do we formalize stereotypes and tag value constraints (e.g. Limited To) in the UML
Defer to UML; change definition of stereotypes
Response to RFP 6.5.6: this response is short. The model of concurrency presented in chapter 6 is only a partial answer to 6.5.6; to complete it, it could be added that syn-chronization mechanisms are mentioned in chapter 4 (protected resource and access control policy). Even with this addition, we are far from the specifics of 6.5.6. At this point a (short) sentence might be needed to justify the gap."
I am not sure tht these sections are actually retained in the adopted specification; they may possibly be removed completely; I need to check this (Bran)
"Position regarding to existing UML concepts pertaining to time aspects In the proposal, I have not really seen something about a link between the already existing UML elements that target time aspects (e.g. TimeEvent, active/passive objects, concurrent states�) and the concepts proposed by the SPT profile. I think the proposal does not position enough itself regarding to UML elements. "
This is simply a summary of a set of other individual issues raised elsewhere (Bran)
The different profiles do not pay special attention to identify well-formed rules. Each stereotype has a set of rules, but they are not OCL constraints. The rules pay attention to the consistence of the stereotypes and their tagged values, but there are not consistence rules of complete models (e.g. the workload elements in performance models must have associated some steps that must be identified in the context of the model, and this identification depends on the mapping).
Valid point; but probably exceeds the scope of an FTF (Bran). I guess this is a complaint that some of the semantic relationships that exist in the domain model are not captured explicitly through OCL constraints. This is definitely the case, but would require significant effort to rectify - beyond the scope of an RTF but should be a requirement in the future RfP.
Why is GRMexclServ a tag of GRMAqcuire, is this because this particular acquire only gives access to this set of services?
Shouldn't the services referenced by GRMexclServ have a stereotype to say that they're exclusive - we used to have one GRMExclusive but this appears to have been removed.
The scope of this goes beyond an RTF but shouldn't be forgotten.
The domain attribute name of the Rtduration tag is TimedAction::probability - should be TimedAction::duration I think.
Stimulus doesn't appear to have a Rttimestamp tag.
It seems odd that a sub-type "Rtdelay" is more constrained than the super-type, "Rtaction", consider addressing this.
It seems odd that we have two sets of tags that model the same thing - RtintStart/Rtstart, RtintEnd/Rtend etc. Consider harmonising them
In the domain concepts for TimedInterval, we say that duration is not explicitly modelling and yet it is.
RttimerPar is an RttimeValue, but presumably that only applies to instances of the service, not to the description of the service - presumably in that case, it is a reference to the formal parameter that is used to convey the new time. How should we model this?
Resolution: The utility of declaring this and other timing mechanism operations as stereotypes of Operation is quite dubious. It is much better if they are actually stereotypes of some kind of action execution, since that is a much more common way of specifying that a timer has been started, stopped, reset, rather than doing it on operations. Besides, as the problem report states, it makes no sense to declare actual values against an operation, since that is merely a declaration and not a usage of the operation. Hence, the base class for these stereotypes was changed from Opertion to a number of concepts that may represent action executions. More needs to be done here. The utility of declaring this and other timing mechanism operations as stereotypes of Operation is quite dubious. It is much better if they are actually stereotypes of some kind of action execution, since that is a much more common way of specifying that a timer has been started, stopped, reset, rather than doing it on operations. Besides, as the problem report states, it makes no sense to declare actual values against an operation, since that is merely a declaration and not a usage of the operation. Hence, the base class for these stereotypes was changed from Opertion to a number of concepts that may represent action executions. More needs to be done here. On reviewing this issue and its accompanying comment, it is not clear at all what is meant by "more needs to be done here" (I am not sure what I had in mind). As far as I can tell, this issue was resolved by the solution executed in the FTF.
Again, RTStimulus doesn't have a timestamp tag.
Resolution: the issue report erroneously refers to RTStimulus when it meant Rttimeout (seems to be a copy/paste problem from issue 5277), which had mistakenly included an Rttimestamp tagged value which does not exist. That tag was removed in the draft spec) and the proper start and end tags were inserted in the Tags column.
SAActualPty is not in the domain model, or in the tag table - is it actually needed - perhaps it is the Sapriority tag applied to a specific instance
Both this and resource have an access policy - are they in fact the same and so should have the same tag definition - if so, how do we show this?
SacontextSwitch has a tag type of Time Function - should this be RttimeValue?
Should SaschedulingPolicy include a value of FIFO?
SaschedulingPolicy references a similarly named tag - isn't this really the same tag?
PaschdPolicy uses acronyms whereas scheduling policy in theSAprofile uses full names - consider harmonizing
Resolution: Full names for policies provided; also added the possibility for policies to have parameters (requires new tag); and did the same for the schedulabilty sub-profile (for ExecutionEngine and for SResource). Also provide full lists in the domain descriptions for Processing Resource and Passive Resource. Harmonise policy names with the schedulability profile.
Shouldn't a resource have an access policy, not a scheduling policy?
PaextOpValue is a complex tagged value that seems to iterate over a set of operation and provide information about those operations. Wouldn't it be better to introduce a stereotype of operation and add <integer> and <time-value> to that? We would then either add a tag from "Pastep" to this new stereotype or use an existing UML relationship.
The recommendation for an RTF revisit of this was based on a misunderstanding of what RTFs are mandated to do. This is a new feature that requires a separate RFP.
Why have RSAclPrio when the parent supports a priority?
In the Paprofile and Saprofile we've used Priority Range whereas here we've used High and Low priorities - consider harmonising
The tag name is SaaccessControl, but the enumeration values are different, so should be different tag.
The tag Saschedulingpolicy seems to be related to SchedulingPolicy::timeout
Resolution: That looks to be an error. The domain attribute should be ExecutionEngine::SchedulingPolicy
Why have RSAsrvPrio when the parent supports a priority?
there should be support for scaling of time and clocks so that models can work with heterogeneous time scales (e.g., microseconds as well as days all in the same model and diagrams)
How do we map months/years to seconds
The names of tagged values can create confusion, especially when we want to combine this profile with other profiles. Tagged value names as value and arg can be repeated in the profiles for the same element and this can create collisions of tagged values
What is the relation of Figure 27 with UML 1.3 DataType package and the metaclass TimeExpression
I thought we had fixed this one in the FTF, but after reviewing the document I realize that I had not (again, I believe that I read more into this issue than what was reported - this must be the reason why I did not fix it). This should be easily fixed with a small comment in section 5.2.1.2.
What is the relation of stereotype RTtimeEvent in Figure 27 with UML 1.3 metaclass TimeEvent?
Same comment as for issue 5309, except that the clarifying text should be in section 5.2.1.8.
RTtimeString should be able to represent a percentile requirement (for soft real-time systems)...a value and a percentage of responses that should meet it.
A critical delay may begin at one event and end at a different one which is in a different place in the system. Time at the moment is represented in tagged values associated with stereotypes. What may be needed is a Delay stereotype, which points to the initiating event and the terminating event, and has time tags.
CPU demands are represented as time values... this is useful for limited studies, but a more abstract demand unit, that can be scaled to different platforms, which give greater modeling power. There is no obvious unit for this... the definition of execution demands could be relaxed so it can be any units. Call it demand instead of execution time.
Valid comment, but this is a new feature that is outside the scope of either an FTF or RTF. Should be deferred to major revision.
Repetition counts on messages need to be RTtimeString rather than integers, to allow for more general behaviour. For instance in sending an image frame, the number of packets sent is not a fixed number, but depends on compression... so an RTtimeString could give the distribution or average number.
Valid comment, but this is a new feature that is outside the scope of either an FTF or RTF. Should be deferred to major revision.
The concept of scenario is limited to an ordered set of steps. It needs to accomodate scenario structure, such as a graph with connectors such as OR-form/join, and probabilities of forks. This kind of structure is also needed in the sequence diagram, so maybe the same solution can be used for both.
This new feature needs UML 2.0 sequence diagrams, so defer to new RfP
"1) I believe that there could be a better, more complete RTtimeValue (p90+). While the included format does handle many situations it is not sufficiently general. For example, it could handle several other common time designators, e.g., time zones (EST, GMT, PDT,...), Julian Date, and (the un-related) Julian Calendar, approximates times, and to support diversity, non Gregorian calendars."
Again, the existing comment reflects a misunderstanding of an RTF mandate. This is a new feature that requires a new RFP.
"2) Frequency. While the probabilistic definitions are included (and necessary), there are many other instances of repeatable events that need to be described e.g., Every Third Monday, the 15th of the month, twice a day. (or a really hard one, every Easter). Though you may feel that these events are out of scope, they are important in any sort of scheduler, and are necessary to ensure that the low-level time definitions scale up. It would not be good to use incompatible time/frequency expressions at different scale."
Again, the existing comment reflects a misunderstanding of an RTF mandate. This is a new feature that requires a new RFP.
"3) OrderedTimeSets: While I did some ordered time for the purpose of schedule. I believe that a more robust OrderedTimeSet may be needed for the concepts of observations. The special case of a OrderedTimeSet with 2 elements becomes the basis for Duration."
Again, the existing comment reflects a misunderstanding of an RTF mandate. This is a new feature that requires a new RFP.
"The general timing specification (GTS) semantically is a general set of points in time. The purpose of the GTS is to specify the complex timing of events and actions (mainly in orders and scheduling systems.) The GTS also supports the cyclical validity patterns that may exist for certain kinds of information, such as phone numbers (evening, daytime)... The GTS data type has the following aspects: � GTS as a general set of points in time (SET<TS>). From this aspect GTS answers whether any given point in time falls in the schedule described by the GTS value. � GTS as the combination of multiple periodic intervals of time. This aspect describes how both simple and complex repeat-patterns are specified with the GTS. � GTS as a generator of a sequence of intervals of point in time (LIST<IVL<TS>>). From this aspect, GTS can generate all occurrence intervals of an event or action, or all validity periods for a fact. � GTS as an expression-syntax defined for a calendar. This aspect is the GTS literal form. In all cases the GTS is defined as a set of point in time (SET<TS>). Using the set operations, union, intersection and difference, more complex sets of time can be constructed from simpler ones. Ultimately the building blocks from which all GTS values are constructed are interval, periodic interval, and event-related periodic interval. The construction of the GTS can be specified in the literal form... I've recently passed part of the HL7 data type spec to Bran Selic, I arguing for using this opportunity to develop a more broadly useful and powerful time [BTW, I'd personally enumerate the days of the week with Sunday first, not last]
Again, the existing comment reflects a misunderstanding of an RTF mandate. This is a new feature that requires a new RFP.
"� The properties of timing devices are listed, but some of them are not explained, and no clue is given as to measure or represent them. This is the case for stability and skew. In particular, the relationship between skew and offset should be explicit. � Last paragraph but one, last sentence, definition of drift: the definition does not appear very clear to me: what can be the relative frequency of a clock between two successive ticks? Is not the drift simply measured by (the absolute value of) the difference of fre-quencies? (Frequency taken with the usual definition, one over the period.) � Last paragraph, last sentence: It says that a timer is always associated with a particular clock; this is not explicit on the diagram of fig. 5-3; in fact, according to this diagram, a timer is indirectly and implicitly associated with (at least) two clocks, one coming through inheritance from TimingMechanism (the reference clock) and the other com-ing through the association with TimeValue, which is itself associated with a refer-ence clock; there is no constraint to express that these two clocks should be the same. Should they?"
Resolution: The first two sub-issues have been resolved by providing an explicit reference to the latest version of the Enhanced View of Time Specification (formal/02-05-07) which contains the appropriate definitions (repeating these complex definitions in the RT profile spec would require repeating a substantial portion of text already specified in the EVT spec). The last sub-issue is rejected. They do not have to be the same. The timer is a timing mechanism in its own right and can have its own reference clock.
First example, on page 6-10 - "The clock main scenario executes a MessageAction that is a <<CRImmediate>> invocation of the TelemDataGather operation in DataGatherer. What I wonder: Why is TG clock's life line stereotyped <<CRAsynch>>? Is it an indication that nobody is blocking on the main scenario of TGClock?
Resolution: (BS)It is not the lifeline that is stereotyped but the focus of control block (which maps into an ActionExecution). This simply means that the execution of this block is executing asynchronously of any action that caused its invocation. Since this action is not shown, it probably is not necessary to show its stereotype in the diagram. (AM)As Bran says it is the focus of control. What this is supposed to mean is that the call action of "TelemDataGather" is made asynchronously. This begs the question of what the return arrow means - strictly it should mean that any return values are read asynchronously, perhaps via a Future; I don't think is the case here, so there should be no return arrow.
Second, in the example on page 6-11 "there is a notational difference that I don't get. <<CRAsync>> is put on the receiving instance (on TelemDataDisplay) but for the synch. invocations <<CRSynch>> is put on the client side (TelemetryDisplayer). '[email protected]
Resolution: (BS) Well, the stereotype is attached to the action execution (not the instance), which is mainfested as a focus of control block in the diagram. So, the first block, labeled <<CRAsynch>> is invoked asynchronously of the main thread of the TelemetryDisplayer (implying some kind of forking of a supplementary thread), while the subsequent blocks are invoked synchronously, indicating that the main thread will be blocked until the synchronous actions are completed. (AM) I think that the <<CRasynch>> tag is attached to the wrong control block - it should be attached to the TGClock lifeline.
The capitilzation of stereotype and tag names should be consistent throughout the profile.
Resolution: Change - the profile prefix should be in caps, the immediately following character should be in lower-case and the rest of the tag name should be lower except to emphasise the start of a new word.
There is a stereotype called<<SAschedulable>> and a tag definition called SAschedulable in the SAprofile package - to avoid potential problems with name clashes (UML is unclear > whether this is > > allowed) the stereotype should be renamed <<SAschedRes>>.
<<RTaction� This stereotype should also be associated with operations.
"As actions can have a limited time budget, they should include a deadline. Therefore, I suggest the inclusion of the <<RTtimedAction>> stereotype (inherited from <<RTaction>>), which would represent an action with a deadline (tag RTdeadline - also new) and a timeout exception handler (tag RTtimeoutException). A motivation for adding this new element is that, in general, modeling such restrictions is more complex than programming it using ORC APIs! Another benefit is that the exception caused by the deadline violation would be explicitly associated with the stereotype. Please take a look at item 1 in the attached file (Leandro Diagrams.doc)."
Valid point that requires a new feature and, hence, an RFP
"TVL notation: I could observe the absence of expressiveness to indicate a condition to finish the event generation (e.g. in the TMO one can say ""generate events from 10am to 10:50am""): ""for t = from 10am to 10:50am every 30min start-during (t, t+5min) finish-by t+10min"", i.e.: {""start-during (10am, 10:05am) finish-by 10:10am"", ""start-during (10:30am, 10:35am) finish-by 10:40am""}."
Valid point that requires a new feature and, hence, an RFP
<<CRaction>>: this stereotype should be inherited from <<RTaction>>
Because of lack of more information about the motivations relating this change and its impact of the profile architecture, I propose to reject this issue.
<<CRasync>>, <<CRsync>>: In my understanding, UML already includes means to represent sync and async invocations (through the arrow shape - e.g. in RTS one can edit the 'Timing' folder in the methods properties). Therefore, I would consider these stereotypes as alternative to the already existing UML notation. Nevertheless, such stereotypes are associated with the UML notion of action (e.g. OSD::Step), what forbids combining them directly with the methods invocations (or operations). To be more exact, I suggest allowing these stereotypes to be associated also with operations (see attached item 2 in (Leandro Diagrams.doc)
<<CRsync>>: we suggest the inclusion of a new tagged valued called CRcallTimeout. It would represent the maximum waiting time from the calling object. For example, this would be useful to model the RT-CORBA Messaging:: RELATIVE_RT_TIMEOUT_POLICY_TYPE attribute. Like in 1.2, the could be a timeout handler associated with, for example, a stereotype named RTcallTimeoutHandler (see attached item 3 in (Leandro Diagrams.doc)).
Because of impact on the profile architecture (dependency between time and concurrency sub-profiles), I suggest to defer this issue the version 2.0.
<<SAschedRes>>: why this stereotype isn't inherited from <<CRconcurrent>>? As I could understand from the documentation, they represent the same thing: "a unit of concurrent execution, such as a task, a process, or a thread". Therefore, I believe it should also include the tag CRmain.
I agree with this suggestion - but it does change the normative specification slightly, by adding a new feature, so I'll defer to 2.0.
Suggest adding " In this case, the QoS characteristics and QoS value of descriptors and instance must be compatible". This addition tries to clarify that the annotations on classifier is a good technique to reuse the annotations but can create inconsistencies be-cause of inheritance (subclass and superclass have annotations incompatibles; the type of an instance in the scenarios is the superclass, but the class in exe-cution is the subclass). The same problem appears when the annotations are attached to interfaces (the interface and its implementations can have incon-sistent annotations and the real type of the instance, classified with the inter-face, is not known when we do the analysis).
I think that Miguel is confusing things here: section 4.1.1 describes the domain model that is defined independently of how it is mapped to UML stereotypes. Inserting the proposed sentence at the recommended point would not be particularly useful since it merely states the obvious: that instances conform to their class specification. The intent of the sentence is to propose a general statement on how to map from domain models to corresponding UML extensions. Since that is not the subject of this specification, I don't see a need for this at all.
We suggest you introduce a new superclass (Executing Resource), with the following descritpion "executing resources represent any type of resource that support services for the execution of actions", to generalize the executing resources that can be included in an analysis (specially to associate this new type to the scheduling analysis metamodels, to consider the scheduling policies not only of processor resources). This affects section 7 figure 7-2.
Spelling error in the title of figure
description of protected resource. Suggest this for the first 3 sentences of the definition: "This is an instance of a resource that provides one or more exclusive services�services that can only be accessed according to an access control policy administered by an associated resource broker. (The resource broker is a role that may be played by the resource itself.) The number of concurrent services executed in the resource is bounded and in general 1". SResource in section 7 inherits of protected resource, but has associated the capacity attribute (number of permissible concurrent users). Both definitions are inconsistent.
We think that client and supplier are interchanged.
GRMrelase stereotype there is a spelling error.
Some scheduling analysis techniques use more than one duration time in the description of actions (one action, specially SAction that inherits TimedAction, can have associated more than one duration and this can provide different scheduling analysis results).
Requires significant change to the spec, so outside scope of RTF - useful idea though so bear in mind for new RfP.
The definition of duration looks like an �execution time� definition, not like a �computation time� definition, that is the role of this attribute in analysis metamodels. Suggest the following definition: "the time interval of execution capacity used by the action"
This may be true in certain analysis domains, but I do not believe that it holds for all necessarily. Hence, the general nature of the concept of "duration" in this abstract part of the model should be retained and then refined in the appropriate subsections. This is related to the proposed resolution of issue 5711. Hence, this should be retained as an RTF item.
We suggest changing some multiplicities to avoid some problems. The association ExecutionEngine-SchedulingJob imposes a single ExecutionEngine to SchedulingJob. In distributed systems an schedulingjob will execute in mode than one execution engine (the modification of page 118 description of Scheduling Jobs is because of this). Some scheduling analysis techniques support alternative of responses (more than one response for each scheduling job), and more than one trigger event can generate the execution of the scheduling job.
Resolution: AM - Miguel provided a class diagram here,(see document: ptc/2002-12-05) � - I agree with the suggested changes
Suggest the following definition Execution Engine: "An execution engine is an active, protected, executing-type resource that is allocated to the execution of schedulable resources, and hence any actions that use those schedulable resources to execute. In general, they are processor, network or device." See issue with page 30 in section 4. This modification takes in to account the scheduling policies in networks and devices (not only processors)
Suggest this as first sentence for definition of host "the schedulable resource that the action executes on; this is only defined if all the internal SActions that constitute the SAction execute on the same schedulable resource". This modification tries to clarify the same details that include the same definition in page 140.
definition Processing Rate. We are talking about percents and we use probabilities as numbers, so suggest normative value is 100%.
definition of role "executionEngine" should be "the execution engines which realizes this scheduling job" (the same reason as modification page 113 figure 7-1).
,
some spelling errors and remote references in second title and first line of second paragraph.
Title 8.2.2.3 - apply correct font throughout First paragraph of section Title 8.2.2.3 should read: "In this section we describe how the domain concepts can be represented in UML. First we discuss the mappings in general, and then introduce the actual UML extensions defined for this purpose. It is not necessary to define a separate stereotype for every domain concept, since some of the concepts do not appear explicitly in UML models. However, their presence can be inferred from the presence of others. For descriptions of the semantics of the stereotypes defined here and the rules for their usage, the reader should refer to sections: 8.1.3, "Domain Model" and 8.1.4, "Domain Concept Details"."
Reference 10, "Guiterrez" should read "Gutierrez"
Fig 5-5 Timed Action should inherit from Action Execution - this would allow it to have predecessors and successors and requiredQoS as well as Scenario properties (because Action Execution inherits from Scenario) Julio Medina [[email protected]]
This is a new feature request that requires an RFP
Fig 7-1 In order to better support analysis of distributed scheduling problems, we need to weaken some of the multiplicities: A (distrubuted) Scheduling Job should be related to one or more Execution Engines; An SAction has an optional host. Julio Medina [[email protected]]
Fig 7-3 An Execution Engine may have one to many Scheduling Policies - this seems clear if you follow the relationship from Execution Engine through Scheduler to Scheduling Policy. Julio Medina [[email protected]]
I find the use of multiple stereotypes just to get the tags required to do a simple global RMA analysis, plus all the indirection necessary. ugly, ugly, ugly. A thought occurred to me - why not highly-specific analysis subprofiles, where we would define a set of stereotypes like <<RMAG_Task>> which would be <<CRConcurrnent>>, <<SASchedulable>> and <<SAAction>> all bundled together? (RMA Global is where I got RMAG). Thus we could stereotype elements such as active objects and resources very simply. A small set of internally consistent tags with the right properties that map specifically to the kind of analysis to be perform would make the profile much easier to use.
Tag definitions. The domain attribute name of RTduration is wrong.
Update Appendix B to align the specification with RT CORBA 2.0
Need to say for each association in the domain models, how they map to UML with the SPT profile applied.
This requires significant rework much of which will have to be redone for the 2.0 version of the profile. Hence, it is better to resolve the issue in 2.0.
Often in the early stages of analysis, an the active objects, rather than their internal operations are treated as the schedulable entity. In order to support this mode of analysis, the stereotypes associated to schedulable entities, SAtrigger and SAresponse, must include in their base types all relevant classifiers and Instance