[Css-csts] Is refinement of procedure behavior possible?
John Pietras
john.pietras at gst.com
Fri Jul 2 15:49:31 EDT 2010
CSTSWG colleagues ---
In Portsmouth, we decided that if a CSTS specification only refines a
procedure by refining a parameter of an operation of that procedure, it
is not necessary to give that procedure a new name and procedure
identifier. As recorded in the MoM from Portsmouth:
Also, the Guidelines shall be updated to contain the following:
An extension to a procedure implies the definition of a new procedure.
A refinement of a procedure does not require a redefinition (uses the
procedure as is).
In case a procedure is refined or extended, the Service shall specify
the refinement or the extension.
The table 4.1 , Chapter 4.5.2.4, shall be modified in item c. Cases:
adopted, extended only, refined only, extended and refined.
In attempting to work this into the Guidelines, I came across the
following description/definition :
3.6.2 A CSTS may refine a procedure through:
a) Narrowing the specification of the values of one or more parameters
of constituent operations of the base procedure;
b) Narrowing the specification of the behavior of one or more
constituent operations of the base procedure; and/or
c) Narrowing the specification of the behavior of the
procedure upon termination of the association due to protocol abort,
PEER-ABORT, or UNBIND
Clearly, item (a) is consistent with the notion of using the procedure
as-is, because it does not affect the functionng of the procedure (more
on this in a bit). But items (b) and (c) state that the behavior of the
procedure itself changes. I don't think that it is possible to change
the behavior of a procedure and still call it the same procedure. I
contend that any change to a procedure constitutes an extension of that
procedure, and requires a new name and procedure identifier. I believe
that items (b) and (c) should be removed, and that refinement of a
procedure be defined solely as " Narrowing the specification of the
values of one or more parameters of constituent operations of the base
procedure". I can't think of a counter example in which the behavior of
a procedure can be merely refined - please provide on if you have one .
Note that even if a parameter value is only refined, it would still
result in an extended (i.e., refined and extended) procedure if the
behavior of the procedure changes and uses the refined parameter. for
example, if a procedure has data parameter that is an
otherwise-unspecified octet-string, and the service refines that string
to be a virtual channel frame *and* redefines the procedure behavior to
accept only frames of a pre-authorized VC, that redefintion should be an
extended procedure with a new name and procedure identifier.
Finally, if we limit the scope of refinement of a procedure to narrowing
the values of a parameter and leaving the procedure itself as-is, it
seems incorrect to describe that refinement as a "derivation". By
definition, it's the same procedure, so we shouldn't be calling it a
derived procedure.
I ask for and welcome your feedback.
Best regards,
John
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mailman.ccsds.org/pipermail/css-csts/attachments/20100702/9eef811b/attachment.html
More information about the Css-csts
mailing list