<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<!--[if !mso]><style>v\:* {behavior:url(#default#VML);}
o\:* {behavior:url(#default#VML);}
w\:* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}
</style><![endif]--><style><!--
/* Font Definitions */
@font-face
        {font-family:Courier;
        panose-1:0 0 0 0 0 0 0 0 0 0;}
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:-webkit-standard;
        panose-1:2 11 6 4 2 2 2 2 2 4;}
@font-face
        {font-family:Times;
        panose-1:0 0 5 0 0 0 0 2 0 0;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
span.EmailStyle17
        {mso-style-type:personal-compose;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-family:"Calibri",sans-serif;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
/* List Definitions */
@list l0
        {mso-list-id:1537816705;
        mso-list-template-ids:-318103386;}
@list l0:level1
        {mso-level-number-format:bullet;
        mso-level-text:o;
        mso-level-tab-stop:.5in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:"Courier New";
        mso-bidi-font-family:"Times New Roman";}
@list l0:level2
        {mso-level-number-format:bullet;
        mso-level-text:o;
        mso-level-tab-stop:1.0in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:"Courier New";
        mso-bidi-font-family:"Times New Roman";}
@list l0:level3
        {mso-level-number-format:bullet;
        mso-level-text:o;
        mso-level-tab-stop:1.5in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:"Courier New";
        mso-bidi-font-family:"Times New Roman";}
@list l0:level4
        {mso-level-number-format:bullet;
        mso-level-text:o;
        mso-level-tab-stop:2.0in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:"Courier New";
        mso-bidi-font-family:"Times New Roman";}
@list l0:level5
        {mso-level-number-format:bullet;
        mso-level-text:o;
        mso-level-tab-stop:2.5in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:"Courier New";
        mso-bidi-font-family:"Times New Roman";}
@list l0:level6
        {mso-level-number-format:bullet;
        mso-level-text:o;
        mso-level-tab-stop:3.0in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:"Courier New";
        mso-bidi-font-family:"Times New Roman";}
@list l0:level7
        {mso-level-number-format:bullet;
        mso-level-text:o;
        mso-level-tab-stop:3.5in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:"Courier New";
        mso-bidi-font-family:"Times New Roman";}
@list l0:level8
        {mso-level-number-format:bullet;
        mso-level-text:o;
        mso-level-tab-stop:4.0in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:"Courier New";
        mso-bidi-font-family:"Times New Roman";}
@list l0:level9
        {mso-level-number-format:bullet;
        mso-level-text:o;
        mso-level-tab-stop:4.5in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:"Courier New";
        mso-bidi-font-family:"Times New Roman";}
@list l1
        {mso-list-id:2122144114;
        mso-list-template-ids:2053899110;}
@list l1:level1
        {mso-level-number-format:bullet;
        mso-level-text:;
        mso-level-tab-stop:.5in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l1:level2
        {mso-level-number-format:bullet;
        mso-level-text:;
        mso-level-tab-stop:1.0in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l1:level3
        {mso-level-number-format:bullet;
        mso-level-text:;
        mso-level-tab-stop:1.5in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l1:level4
        {mso-level-number-format:bullet;
        mso-level-text:;
        mso-level-tab-stop:2.0in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l1:level5
        {mso-level-number-format:bullet;
        mso-level-text:;
        mso-level-tab-stop:2.5in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l1:level6
        {mso-level-number-format:bullet;
        mso-level-text:;
        mso-level-tab-stop:3.0in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l1:level7
        {mso-level-number-format:bullet;
        mso-level-text:;
        mso-level-tab-stop:3.5in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l1:level8
        {mso-level-number-format:bullet;
        mso-level-text:;
        mso-level-tab-stop:4.0in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l1:level9
        {mso-level-number-format:bullet;
        mso-level-text:;
        mso-level-tab-stop:4.5in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
ol
        {margin-bottom:0in;}
ul
        {margin-bottom:0in;}
--></style>
</head>
<body lang="EN-US" link="#0563C1" vlink="#954F72" style="word-wrap:break-word">
<div class="WordSection1">
<p class="MsoNormal"><span style="color:black">Dear CSS colleagues,<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:black"> <o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:black">The SEA SAWG has identified an issue that we believe needs a relatively minor corrigendum update.  We have fixes to make in the ASL Green Book, CCSDS 371.0-G-1, where we defined (or referenced) a set of terms that
 we used in the document.  During yesterday’s SAWG meeting while we were examining the ontology (yes, an actual ontology) that is going to be incorporated in the RASDS updates we stumbled upon an issue in one particular definition.  On further exploration it
 appears that this also shows up in many of the CSS Area docs as well.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:black"> <o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:black">The term “Service” is defined in at least two different ways in CCSDS:<o:p></o:p></span></p>
<ul style="margin-top:0in" type="circle">
<li class="MsoNormal" style="color:black;mso-list:l0 level1 lfo1">Service (RASDS): “A <b>service </b>is a provision of an interface of an object to support actions of another object.”   And “Any given Object may expose one or more Service Interfaces and provide
 one or more Core Functions. Through its External Interface, it may call upon other Objects to provide services to it. “<o:p></o:p></li><li class="MsoNormal" style="color:black;mso-list:l0 level1 lfo1">Service (ASL): <b>“</b>A set of capabilities that a component provides to another component via an interface. A service is defined in terms of the set of operations that can be invoked and performed
 through the service interface. Service specifications define the capabilities, behavior, and external interfaces, but do not define the implementation. “<o:p></o:p></li></ul>
<p class="MsoNormal"><span style="color:black"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="color:black">The problem that we have is that we believe that “capability” is a rather high level, generalized, term describing what an organization wants, or needs, to achieve, and that service (and the functions that offer
 service interfaces) is a more specific and focused term that implies an actual implementation.   This “service is a set of capabilities” definition inverts that sense, hence the issue.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:black"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="color:black">In trying to come to terms with this we looked in the CCSDS Terms set.  We also found “abstract-service” from 910.2, which is loosely aligned with the ASL usage as shown, “application-service-element”(ditto), “communications
 service” from 912.3 (911.1, 912.2. etc).  In fact, a lot of these CSS related definitions seem to derive from the venerable OSI-BRM, ISO 7498, which defined (N)-Service:<o:p></o:p></span></p>
<p class="MsoNormal" style="margin-left:.5in"><span style="font-size:12.0pt;color:#2E75B6"> </span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal" style="margin-left:.5in;background:white"><span style="font-size:12.0pt;color:#5B9BD5"><img width="48" height="8" style="width:.5in;height:.0833in" id="Picture_x0020_1" src="cid:image001.png@01D752FB.AA7D3440" alt="page12image55298912"></span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal" style="margin-left:.5in;background:white"><span style="font-size:12.0pt;font-family:Times;color:#2E75B6">(N)-service: <b>A </b>capability of the (N)-layer and the layers beneath it, which is provided to (N+l)-entities at the boundary between
 the (N)-layer and the (N+l)-layer.</span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:black"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="color:black">Here they appear to be talking in a sort of general way about the capability of a layer.  But then the BRM also defines:<o:p></o:p></span></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:.5in;background:white">
<b><span style="font-size:9.0pt;font-family:Courier;color:#2E75B6">(N)-service-access-point,</span></b><span style="font-family:"-webkit-standard",serif;color:black"><o:p></o:p></span></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:.5in;background:white">
<span style="font-size:10.0pt;font-family:Times;color:#2E75B6">(N)-SAP: The point at which (N)-services are provided by an (N)-entity to a (N+l)-entity. </span><span style="font-family:"-webkit-standard",serif;color:black"><o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:black">And …<o:p></o:p></span></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:.5in;background:white">
<span style="font-size:10.0pt;font-family:Times;color:#2E75B6">(N)-function: A part of the activity of (N)-entities.</span><span style="font-family:"-webkit-standard",serif;color:black"><o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:black">The ISO BRM also talks about N-layer functions, and how the protocol associated  with the N-Layer exposes those functions.  There is, in effect, an unexpressed distinction between the “capabilities <b><i>of</i></b> a
 layer” and the “functions <b><i>in</i></b> a layer”.  One is an abstract <b><i>outside</i></b> view, the other a technical <b><i>inside</i></b> view.  Unfortunately this is not made crystal clear, but there is a consistent distinction between what shows up
 as a description of a layer and what is inside as functions.  Later specs dealing with service oriented architectures, and other kinds of services, get this  right.  But the ISO BRM predates all of that stuff.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:black"> <o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:black">Our concerns are that the meaning of “capability” and the meaning of “function” and the distinctions between them are somewhat muddied, and it only gets worse with (casual) use.   In my other “day job” I just went
 through an exercise with one of the “Enterprise Architecture” weenies who was describing how they were defining “capabilities” and then mapping these to “services”.  And then he mumbled something about how the applications and services were related, but this
 all sounded vague and further questions did not clarify it.  So I went looking for decent definitions, and found some, which I am providing here.  Some are a little at odds with one another, which is just indicative of how hard it is to  get this ”right”.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:black"> <o:p></o:p></span></p>
<ul style="margin-top:0in" type="disc">
<li class="MsoNormal" style="color:black;mso-list:l1 level1 lfo2">Capability, business<o:p></o:p>
<ul style="margin-top:0in" type="disc">
<li class="MsoNormal" style="color:black;mso-list:l1 level2 lfo2">An expression of what business does and can do.  A business capability denotes the “What” a business can do, whereas a business process outlines how a particular activity gets done.  <o:p></o:p></li><li class="MsoNormal" style="color:black;mso-list:l1 level2 lfo2">At an elemental level, a business capability is the encapsulation of the underlying functionality expressed abstractly. <o:p></o:p></li></ul>
</li><li class="MsoNormal" style="color:black;mso-list:l1 level1 lfo2">Capability, system<o:p></o:p>
<ul style="margin-top:0in" type="disc">
<li class="MsoNormal" style="color:black;mso-list:l1 level2 lfo2">An ability that an organization, person, or system possesses. Capabilities are typically expressed in general and high-level terms and typically require a combination of organization, people,
 processes, and technology to achieve.<o:p></o:p></li></ul>
</li><li class="MsoNormal" style="color:black;mso-list:l1 level1 lfo2">Capability<o:p></o:p>
<ul style="margin-top:0in" type="disc">
<li class="MsoNormal" style="color:black;mso-list:l1 level2 lfo2">A set of features implemented by technical, physical, and procedural means. Such features are typically selected to achieve a common organizationally valued purpose.<o:p></o:p></li></ul>
</li><li class="MsoNormal" style="color:black;mso-list:l1 level1 lfo2">System<o:p></o:p>
<ul style="margin-top:0in" type="disc">
<li class="MsoNormal" style="color:black;mso-list:l1 level2 lfo2">A System is a group of interacting or interrelated Elements that act according to a set of rules to form a unified whole. A System, surrounded and influenced by its environment, is described
 by its boundaries, structure and purpose and expressed in its functioning.<o:p></o:p></li><li class="MsoNormal" style="color:black;mso-list:l1 level2 lfo2">A collection of interacting components organized to accomplish a specific function or set of functions.  A System is composed of Elements, which may be any of: Hardware, Software, People, and
 Procedures.<o:p></o:p></li></ul>
</li><li class="MsoNormal" style="color:black;mso-list:l1 level1 lfo2">Function<o:p></o:p>
<ul style="margin-top:0in" type="disc">
<li class="MsoNormal" style="color:black;mso-list:l1 level2 lfo2">A Function is the purpose for which an Element is intended. This can be an activity performed by the Element or the usage of this Element by other parts of the system.<o:p></o:p></li><li class="MsoNormal" style="color:black;mso-list:l1 level2 lfo2">A Function is interpreted as a specific process, action or task that a System is able to perform.<o:p></o:p></li></ul>
</li><li class="MsoNormal" style="color:black;mso-list:l1 level1 lfo2">Service<o:p></o:p>
<ul style="margin-top:0in" type="disc">
<li class="MsoNormal" style="color:black;mso-list:l1 level2 lfo2">A mechanism to enable access to a set of one or more functions of an Element, where the access is provided using a prescribed interface and is exercised consistent with constraints and policies
 as specified by the service description.<o:p></o:p></li><li class="MsoNormal" style="color:black;mso-list:l1 level2 lfo2">A Service is an exposed interface of a Function.<o:p></o:p></li></ul>
</li><li class="MsoNormal" style="color:black;mso-list:l1 level1 lfo2">Interface<o:p></o:p>
<ul style="margin-top:0in" type="disc">
<li class="MsoNormal" style="color:black;mso-list:l1 level2 lfo2">An Interface represents a set of mechanical, electrical, signal, or other properties that describe some aspect of a Element’s connection to or interaction with another Element.<o:p></o:p></li><li class="MsoNormal" style="color:black;mso-list:l1 level2 lfo2">An interface is formed of the ports on two or more elements and the junction that joins them.<o:p></o:p></li></ul>
</li></ul>
<p class="MsoNormal"><span style="color:black"> <o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:black">My conclusion after looking at this stuff and talking it over with my SAWG team and my JPL Data System Standards team is that “capability” is a rather high level, generalized, term describing what an organization
 wants, or needs, to achieve, and that service (and the functions that offer service interfaces) is a more specific and focused term that implies an actual implementation. <o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:black"> <o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:black">All of which motivates me to propose that all of these definitions that loosely use “capabilities” where they really mean functions or services, need to be changed.   So instead of the ASL saying “A set of capabilities
 that a component provides …” it should say “A set of functions that a component provides…”.  I intend to ask Tom Gannett to make a small number of changes to the ASL to fix the definition and a limited number of places where the phrase appears in a similar
 context.  There are other locations in the document where “capability” is used more loosely, and more accurately, that we can leave alone.  I think this is suitable for a corrigendum. <o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:black"> <o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:black">That said, I believe that there are similar changes of definition and usage to the set of CSS / SLE documents.  This is going to be rather more laborious and troublesome, but since I have been informed that they
 are in revision now perhps this is the right time to  fix this so we get consistent terms.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:black"> <o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:black">Are you open to discussing this?<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:black"> <o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:black">Peter<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:black"> <o:p></o:p></span></p>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
</body>
</html>