1 kumpf 1.2 // ===================================================================
2 // Title: Application MOF Specification 2.7,
3 // Software Features and Elements in support of Deployment
4 // Filename: Application27_DeploymentModel.mof
5 // Version: 2.7.0
6 // Status: Final
7 // Date: 31 March 2003
8 // CVS: $Revision: 1.3 $
9 // ===================================================================
10 // Copyright 1998-2003 Distributed Management Task Force, Inc. (DMTF).
11 // All rights reserved.
12 // DMTF is a not-for-profit association of industry members dedicated
13 // to promoting enterprise and systems management and interoperability.
14 // DMTF specifications and documents may be reproduced for uses
15 // consistent with this purpose by members and non-members,
16 // provided that correct attribution is given.
17 // As DMTF specifications may be revised from time to time,
18 // the particular version and release date should always be noted.
19 //
20 // Implementation of certain elements of this standard or proposed
21 // standard may be subject to third party patent rights, including
22 kumpf 1.2 // provisional patent rights (herein "patent rights"). DMTF makes
23 // no representations to users of the standard as to the existence
24 // of such rights, and is not responsible to recognize, disclose, or
25 // identify any or all such third party patent right, owners or
26 // claimants, nor for any incomplete or inaccurate identification or
27 // disclosure of such rights, owners or claimants. DMTF shall have no
28 // liability to any party, in any manner or circumstance, under any
29 // legal theory whatsoever, for failure to recognize, disclose, or
30 // identify any such third party patent rights, or for such party's
31 // reliance on the standard or incorporation thereof in its product,
32 // protocols or testing procedures. DMTF shall have no liability to
33 // any party implementing such standard, whether such implementation
34 // is foreseeable or not, nor to any patent owner or claimant, and shall
35 // have no liability or responsibility for costs or losses incurred if
36 // a standard is withdrawn or modified after publication, and shall be
37 // indemnified and held harmless by any party implementing the
38 // standard from any and all claims of infringement by a patent owner
39 // for such implementations.
40 //
41 // For information about patents held by third-parties which have
42 // notified the DMTF that, in their opinion, such patent may relate to
43 kumpf 1.2 // or impact implementations of DMTF standards, visit
44 // http://www.dmtf.org/about/policies/disclosures.php.
45 // ===================================================================
46 // Description: These object classes define the DMTF Application Model
47 // and include classes to represent software features,
48 // and deployable/installable elements.
49 //
50 // The object classes below are listed in an order that
51 // avoids forward references. Required objects, defined
52 // by other working groups, are omitted.
53 // ==================================================================
54 // 06/07/99 Added FRUIncludesSoftwareFeature association (CR277b)
55 // Removed min(1) from SoftwareFeatureSoftwareElements (CR395)
56 // Added more processor types (CR318c)
57 // Added video processor to Arch Type (CR377)
58 // Added Sparc processor to Arch Type (CR297)
59 // Added additional OS type (CR363)
60 // Added VSE and TPF OS types (CR409)
61 //
62 // 01/10/00 Add keys to refs of FRUIncludesSoftwareFeature (CR453)
63 // Add Itanium processor to Arch Type (CR449)
64 kumpf 1.2 //
65 // 01/17/00 Updated Mappingstrings qualifiers (CR431)
66 //
67 // 03/07/00 Change Intel Processor types for legal reasons (CR438)
68 //
69 // 06/08/00 Added SoftwareElementService/SAPImplementation
70 // associations (CR482a)
71 //
72 // 11/29/00 - Version 2.5
73 // - CR533b Add Windows(R) Me to *.TargetOperatingSystem*
74 // - CR540c Add SoftwareFeatureComponent Association
75 // - CR542 Add "Not Applicable" to the *TargetOperatingSystem
76 // property
77 //
78 // 03/09/2002 CIM 2.6 Final release
79 // - CR658 Add Key Qualifier to association references
80 // in Appl and SysDev MOFs. This changed
81 // CIM_ProductSoftwareFeatures,
82 // CIM_InstalledSoftwareElement,
83 // CIM_InstalledProductImage
84 // - CR746 Add Version qualifier (Version 2.6.0) to
85 kumpf 1.2 // all classes and associations.
86 // - CR823 Cleanup all Descriptions and other textual issues
87 // - CR828 Fix inconsistencies between Device, Appl and
88 // System Models wrt processor and OS type enums
89 //
90 // 06/06/2002 CIM 2.7 Preliminary Release
91 // - CR 618 - Add Pentium 4 Processor
92 // - CR 686 - Add Xeon Processor
93 // - CR 770 - Add WinXP to OSTypes
94 // - CR 772 - Add new AMD Processor types
95 // - CR 839 - Add other Processor Types
96 // - Define Application MOF structure
97 //
98 // 09/22/2002 CIM 2.7 Public Preliminary Release
99 // - CR 876 - Rename the "Digital Unix" operating system
100 // type to "Tru64 UNIX".
101 // 03/17/2003 CIM 2.7 Publid Final Release
102 // - CR 935 - Add entries to targetOperatingSystem value map.
103 // Added z/OS and changed VM/EAS to VM
104 // ===================================================================
105
106 kumpf 1.2 #pragma locale ("en_US")
107
108
109 // ==================================================================
110 // ApplicationSystem
111 // ==================================================================
112 [Version("2.6.0"), Description (
113 "The CIM_ApplicationSystem class is used to represent an "
114 "application or a software system that supports a particular "
115 "business function and that can be managed as an independent "
116 "unit. Such a system can be decomposed into its functional "
117 "components using the CIM_SoftwareFeature class. The "
118 "Features for a particular application or software system "
119 "are located using the CIM_ApplicationSystemSoftwareFeature "
120 "association.") ]
121 class CIM_ApplicationSystem : CIM_System {
122 };
123
124
125 // ==================================================================
126 // SoftwareElement
127 kumpf 1.2 // ==================================================================
128 [Version("2.7.0"), Description (
129 "The CIM_SoftwareElement class is used to decompose a "
130 "CIM_SoftwareFeature object into a set of individually "
131 "manageable or deployable parts, for a particular platform. "
132 "A SoftwareElement's platform is uniquely identified by "
133 "its underlying hardware architecture and operating system "
134 "(for example Sun Solaris on Sun Sparc or Windows NT on "
135 "Intel platforms). As such, to understand the details of "
136 "how the functionality of a particular SoftwareFeature is "
137 "provided on a particular platform, the CIM_SoftwareElement "
138 "objects referenced by CIM_SoftwareFeatureSoftwareElements "
139 "associations are organized in disjoint sets based on the "
140 "TargetOperatingSystem property. A CIM_SoftwareElement "
141 "object captures the management details of a part "
142 "or component in one of four states characterized by the "
143 "SoftwareElementState property.") ]
144 class CIM_SoftwareElement : CIM_LogicalElement {
145
146 [Key, MaxLen (256), Override ("Name"), Description (
147 "The name used to identify this SoftwareElement.") ]
148 kumpf 1.2 string Name;
149
150 [Key, MaxLen (64), Description (
151 "Software Version should be in the form "
152 "<Major>.<Minor>.<Revision> or "
153 "<Major>.<Minor><letter><revision>."),
154 MappingStrings {"MIF.DMTF|SubComponent Software |001.4"} ]
155 string Version;
156
157 [Key, Description (
158 "The SoftwareElementState is defined in this model to "
159 "identify various states of a SoftwareElement's life cycle. \n"
160 " - A SoftwareElement in the deployable state describes the "
161 "details necessary to successfully distribute it and the "
162 "details (Checks and Actions) required to move it to "
163 "the installable state (i.e, the next state). \n"
164 " - A SoftwareElement in the installable state describes the "
165 "details necessary to successfully install it and the details "
166 "(Checks and Actions) required to create an element in the "
167 "executable state (i.e., the next state). \n"
168 " - A SoftwareElement in the executable state describes the "
169 kumpf 1.2 "details necessary to successfully start it and the details "
170 "(Checks and Actions) required to move it to the running "
171 "state (i.e., the next state). \n"
172 " - A SoftwareElement in the running state describes the "
173 "details necessary to manage the started element."),
174 ValueMap {"0", "1", "2", "3"},
175 Values {"Deployable", "Installable", "Executable", "Running"} ]
176 uint16 SoftwareElementState;
177
178 [Key, MaxLen (256), Description (
179 "This is an identifier for the SoftwareElement and is "
180 "designed to be used in conjunction with other keys to "
181 "create a unique representation of the element.") ]
182 string SoftwareElementID;
183
184 [Key, MappingStrings {"MIF.DMTF|SubComponent Software|001.8"},
185 Description (
186 "The TargetOperatingSystem property specifies the element's "
187 "operating system environment. The value of this "
188 "property does not ensure that it is binary executable. Two "
189 "other pieces of information are needed. First, the version of "
190 kumpf 1.2 "the OS needs to be specified using the class, CIM_OSVersion"
191 "Check. The second piece of information is the architecture "
192 "that the OS runs on. This information is verified using "
193 "CIM_ArchitectureCheck. The combination of these constructs "
194 "clearly identifies the level of OS required for a "
195 "particular SoftwareElement."),
196 ValueMap {"0", "1", "2", "3", "4",
197 "5", "6", "7", "8", "9",
198 "10", "11", "12", "13", "14",
199 "15", "16", "17", "18", "19",
200 "20", "21", "22", "23", "24",
201 "25", "26", "27", "28", "29",
202 "30", "31", "32", "33", "34",
203 "35", "36", "37", "38", "39",
204 "40", "41", "42", "43", "44",
205 "45", "46", "47", "48", "49",
206 "50", "51", "52", "53", "54",
207 "55", "56", "57", "58", "59",
208 "60", "61", "62", "63", "64",
209 "65", "66", "67", "68"},
210 Values {"Unknown", "Other", "MACOS", "ATTUNIX", "DGUX",
211 kumpf 1.2 "DECNT", "Tru64 UNIX", "OpenVMS", "HPUX", "AIX",
212 //10
213 "MVS", "OS400", "OS/2", "JavaVM", "MSDOS",
214 "WIN3x", "WIN95", "WIN98", "WINNT", "WINCE",
215 //20
216 "NCR3000", "NetWare", "OSF", "DC/OS", "Reliant UNIX",
217 "SCO UnixWare", "SCO OpenServer", "Sequent",
218 "IRIX", "Solaris",
219 //30
220 "SunOS", "U6000", "ASERIES", "TandemNSK", "TandemNT",
221 "BS2000", "LINUX", "Lynx", "XENIX", "VM",
222 //40
223 "Interactive UNIX", "BSDUNIX", "FreeBSD", "NetBSD",
224 "GNU Hurd", "OS9", "MACH Kernel", "Inferno", "QNX",
225 "EPOC",
226 //50
227 "IxWorks", "VxWorks", "MiNT", "BeOS", "HP MPE",
228 "NextStep", "PalmPilot", "Rhapsody", "Windows 2000",
229 "Dedicated",
230 //60
231 "OS/390", "VSE", "TPF","Windows (R) Me",
232 kumpf 1.2 "Caldera Open UNIX", "OpenBSD", "Not Applicable",
233 "Windows XP", "z/OS"},
234 ModelCorrespondence {"CIM_OperatingSystem.OSType"} ]
235 uint16 TargetOperatingSystem;
236
237 [Description (
238 "The OtherTargetOS property records the manufacturer and "
239 "operating system type for a SoftwareElement when the "
240 "TargetOperatingSystem property has a value of 1 (\"Other\"). "
241 "For all other values of TargetOperatingSystem, the "
242 "OtherTargetOS property is NULL."),
243 MaxLen (64),
244 ModelCorrespondence {"CIM_OperatingSystem.OtherTypeDescription"} ]
245 string OtherTargetOS;
246
247 [MaxLen (256),
248 MappingStrings {"MIF.DMTF|SubComponent Software|001.3"},
249 Description ("Manufacturer of this SoftwareElement.") ]
250 string Manufacturer;
251
252 [MaxLen (64),
253 kumpf 1.2 MappingStrings {"MIF.DMTF|Software Component Information|002.4"},
254 Description (
255 "The internal identifier for this compilation of "
256 "SoftwareElement.") ]
257 string BuildNumber;
258
259 [MaxLen (64), MappingStrings {"MIF.DMTF|ComponentID|001.4"},
260 Description (
261 "The assigned serial number of this SoftwareElement.") ]
262 string SerialNumber;
263
264 [MaxLen (64), Description (
265 "The code set used by this SoftwareElement. It defines the bit "
266 "patterns that a system uses to identify characters. ISO "
267 "defines various code sets such as UTF-8 and ISO8859-1.") ]
268 string CodeSet;
269
270 [MaxLen (64),
271 MappingStrings {"MIF.DMTF|SubComponent Software|001.6"},
272 Description (
273 "The manufacturer's identifier for this SoftwareElement. "
274 kumpf 1.2 "Often this will be a stock keeping unit (SKU) or a "
275 "part number.") ]
276 string IdentificationCode;
277
278 [MaxLen (32),
279 MappingStrings {"MIF.DMTF|SubComponent Software|001.7"},
280 Description (
281 "The value of this property identifies the language edition "
282 "of this SoftwareElement. The language codes defined in ISO 639 "
283 "should be used. Where the element represents a multi-lingual "
284 "or international version, the string \"Multilingual\" should "
285 "be used.") ]
286 string LanguageEdition;
287 };
288
289
290 // ==================================================================
291 // SoftwareFeature
292 // ==================================================================
293 [Version("2.6.0"), Description (
294 " The CIM_SoftwareFeature class defines a particular function "
295 kumpf 1.2 "or capability of a product or application system. This class "
296 "captures a level of granularity describing a unit of "
297 "installation, rather than the units that reflect "
298 "how the product is built or packaged. The latter detail "
299 "is captured using a CIM_SoftwareElement class. When a "
300 "SoftwareFeature can exist on multiple platforms or operating "
301 "systems (for example, a client component of a three tiered "
302 "client/server application that runs on Solaris, Windows NT, "
303 "and Windows 95), the Feature is a collection of all the "
304 "SoftwareElements for these different platforms. In this "
305 "case, the users of the model must be aware of this situation "
306 "since typically they will be interested in a sub-collection "
307 "of the SoftwareElements required for a particular platform. \n"
308 " SoftwareFeatures are always defined in the context of a "
309 "CIM_Product, using the CIM_ProductSoftwareFeature association. "
310 "Features are delivered through Products. Optionally, "
311 "SoftwareFeatures from one or more Products can be organized "
312 "into ApplicationSystems using the "
313 "CIM_ApplicationSystemSoftwareFeature association.") ]
314 class CIM_SoftwareFeature : CIM_LogicalElement {
315
316 kumpf 1.2 [Propagated ("CIM_Product.IdentifyingNumber"), Key,
317 MaxLen (64), Description (
318 "The scoping Product's identification.") ]
319 string IdentifyingNumber;
320
321 [Propagated ("CIM_Product.Name"), Key, MaxLen (256),
322 Description ("The scoping Product's commonly used name.") ]
323 string ProductName;
324
325 [Propagated ("CIM_Product.Vendor"), Key, MaxLen (256),
326 Description ("The scoping Product's supplier.") ]
327 string Vendor;
328
329 [Propagated ("CIM_Product.Version"), Key, MaxLen (64),
330 Description ("The scoping Product's version.") ]
331 string Version;
332
333 [Key, Override ("Name"), MaxLen (256), Description (
334 "The Name property defines the unique label by which the "
335 "SoftwareFeature is identified. This label should be a "
336 "human-readable name that uniquely identifies the element "
337 kumpf 1.2 "in the context of the element's namespace.") ]
338 string Name;
339 };
340
341
342 // ==================================================================
343 // SoftwareFeatureSoftwareElements
344 // ==================================================================
345 [Association, Aggregation, Version("2.6.0"),
346 Description (
347 "SoftwareFeatureSoftwareElements identifies the Software"
348 "Elements that make up a particular SoftwareFeature.") ]
349 class CIM_SoftwareFeatureSoftwareElements : CIM_Component {
350
351 [Aggregate, Override ("GroupComponent"),
352 Description ("The SoftwareFeature that groups the "
353 "SoftwareElement.") ]
354 CIM_SoftwareFeature REF GroupComponent;
355
356 [Override ("PartComponent"),
357 Description ("The SoftwareElement that makes up the Feature.") ]
358 kumpf 1.2 CIM_SoftwareElement REF PartComponent;
359 };
360
361
362 // ==================================================================
363 // SoftwareFeatureComponent
364 // ==================================================================
365 [Association, Aggregation, Version("2.6.0"),
366 Description (
367 "The SoftwareFeatureComponent aggregation models a set of "
368 "subordinate or independent Software Features of a Product. "
369 "These are aggregated together to form a higher-level or "
370 "large grain Feature under the same Product.") ]
371 class CIM_SoftwareFeatureComponent : CIM_Component {
372
373 [Override ("GroupComponent"), Aggregate,
374 Description ("The parent SoftwareFeature.") ]
375 CIM_SoftwareFeature REF GroupComponent;
376
377 [Override ("PartComponent"),
378 Description ("The component SoftwareFeature.") ]
379 kumpf 1.2 CIM_SoftwareFeature REF PartComponent;
380 };
381
382
383 // ==================================================================
384 // ProductSoftwareFeatures
385 // ==================================================================
386 [Association, Aggregation, Version("2.6.0"),
387 Description (
388 "The ProductSoftwareFeatures association identifies the "
389 "SoftwareFeatures for a particular Product.") ]
390 class CIM_ProductSoftwareFeatures {
391
392 [Key, Min (1), Max (1), Aggregate,
393 Description ("The Product that scopes the SoftwareFeatures.") ]
394 CIM_Product REF Product;
395
396 [Key, Weak,
397 Description ("The SoftwareFeature in a Product.") ]
398 CIM_SoftwareFeature REF Component;
399 };
400 kumpf 1.2
401
402 // ==================================================================
403 // ApplicationSystemSoftwareFeature
404 // ==================================================================
405 [Association, Aggregation, Version("2.6.0"),
406 Description (
407 "The ApplicationSystemSoftwareFeature association identifies "
408 "the Features that make up a particular ApplicationSystem. "
409 "The SoftwareFeatures can be scoped by different Products.") ]
410 class CIM_ApplicationSystemSoftwareFeature : CIM_SystemComponent {
411
412 [Override ("GroupComponent"), Aggregate,
413 Description (
414 "The ApplicationSystem that aggregates the Features.") ]
415 CIM_ApplicationSystem REF GroupComponent;
416
417 [Override ("PartComponent"), Description (
418 "The Features in an ApplicationSystem.") ]
419 CIM_SoftwareFeature REF PartComponent;
420 };
421 kumpf 1.2
422
423 // ==================================================================
424 // SoftwareFeatureServiceImplementation
425 // ==================================================================
426 [Association, Version("2.6.0"), Description (
427 " An association between a Service and how it is implemented "
428 "in software. The cardinality of this association is many-to"
429 "-many. A Service may be provided by more than one "
430 "SoftwareFeature. When multiple SoftwareFeatures are "
431 "associated with a single Service, it is assumed that "
432 "these elements operate in conjunction to provide the Service. "
433 "Note that any SoftwareFeature may provide more than one "
434 "Service. \n"
435 " If different implementations of a Service exist, "
436 "each of these implementations would result in individual "
437 "instantiations of the Service object. These individual "
438 "instantiations would then have their own associations to "
439 "the unique implementations.") ]
440 class CIM_SoftwareFeatureServiceImplementation : CIM_Dependency {
441
442 kumpf 1.2 [Override ("Antecedent"), Description (
443 "The SoftwareFeature implementing the Service.") ]
444 CIM_SoftwareFeature REF Antecedent;
445
446 [Override ("Dependent"), Description (
447 "The Service being implemented.") ]
448 CIM_Service REF Dependent;
449 };
450
451
452 // ==================================================================
453 // SoftwareFeatureSAPImplementation
454 // ==================================================================
455 [Association, Version("2.6.0"), Description (
456 " An association between a ServiceAccessPoint and how it is "
457 "implemented in software. The cardinality of this association "
458 "is many-to-many. A SAP may be provided by more than one "
459 "SoftwareFeature. When multiple SoftwareFeatures are "
460 "associated with a single SAP, it is assumed that these "
461 "elements operate in conjunction to provide the AccessPoint. "
462 "Note that any SoftwareFeature may provide more than one "
463 kumpf 1.2 "ServiceAccessPoint. \n"
464 " If different implementations of a SAP exist, each "
465 "of these implementations would result in individual "
466 "instantiations of the ServiceAccessPoint object. "
467 "These individual instantiations would then have their own "
468 "associations to the unique implementations.") ]
469 class CIM_SoftwareFeatureSAPImplementation : CIM_Dependency {
470
471 [Override ("Antecedent"), Description (
472 "The SoftwareFeature implementing the SAP.") ]
473 CIM_SoftwareFeature REF Antecedent;
474
475 [Override ("Dependent"), Description (
476 "The AccessPoint being implemented.") ]
477 CIM_Service REF Dependent;
478 };
479
480
481 // ==================================================================
482 // FRUIncludesSoftwareFeature
483 // ==================================================================
484 kumpf 1.2 [Association, Aggregation, Version("2.6.0"),
485 Description (
486 " The FRUIncludesSoftwareFeature association identifies the "
487 "SoftwareFeature(s) packaged with a particular FRU. A common "
488 "usage is to determine whether the FRU is compatible with "
489 "a hardware/software platform. In order to determine this, "
490 "the following conditions need to be verified: \n"
491 "(1) Is the physical package of the FRU compatible with the "
492 "slots or equivalent packaging of the hardware? \n"
493 "(2) Are there any physical constraints (such as power "
494 "consumption) that prevent the FRU from being installed? \n"
495 "(3) Are the SoftwareFeatures packaged with the FRU "
496 "compatiable with the underlying operating system and other "
497 "software already installed/to be installed on the platform? \n"
498 " This latter question can be answered by first checking "
499 "if an instance of FRUIncludesSoftwareFeature exists. If it "
500 "does, then the compatibility of each SoftwareFeature can be "
501 "determined by evaluating the Check classes for the Software"
502 "Elements that are part of the Feature (found by traversing "
503 "the association, SoftwareFeatureSoftwareElements). For "
504 "example, there might be a SoftwareElementVersionCheck that "
505 kumpf 1.2 "declares that a SoftwareElement (of the FRU's Software"
506 "Feature) is not compatible with current software.") ]
507 class CIM_FRUIncludesSoftwareFeature {
508
509 [Key, Max(1), Aggregate,
510 Description ("The field replaceable unit.") ]
511 CIM_FRU REF FRU;
512
513 [Key, Description (
514 "The SoftwareFeature which is included in the FRU and whose"
515 "SoftwareElements should be evaluated.") ]
516 CIM_SoftwareFeature REF Component;
517 };
518
519
520 // ==================================================================
521 // SoftwareElementServiceImplementation
522 // ==================================================================
523 [Association, Version("2.6.0"), Description (
524 " An association between a Service and how it is implemented "
525 "by one or more executable SoftwareElements. Note that this "
526 kumpf 1.2 "association is restricted to 'executable' Elements. In "
527 "earlier phases of deployment, the SoftwareFeatureService"
528 "Implementation association is adequate and recommended. \n"
529 " The relationship between this association and Software"
530 "FeatureServiceImplementation is more fully described here. "
531 "SoftwareElementServiceImplementation allows the description "
532 "of greater granularity than SoftwareFeatureService"
533 "Implementation, when a SoftwareFeature is fully deployed and "
534 "results in several executable Elements. These Elements may "
535 "implement several different Services. \n"
536 " Since SoftwareFeatures decompose into SoftwareElements, "
537 "it is possible to describe how software implements a Service "
538 "by using either this association or the SoftwareFeature"
539 "ServiceImplementation relationship. One or the other should "
540 "be chosen. Both associations should not be used for a single "
541 "Service instance, since their information is redundant. \n"
542 " This relationship is especially important when the "
543 "SoftwareFeature and Product aspects are not described for a "
544 "SoftwareElement (ie, when the acquisition and deployment of "
545 "the software is not detailed). In this case, the Software"
546 "ElementServiceImplementation association is the only one "
547 kumpf 1.2 "available to describe how a Service is implemented in "
548 "software. Since SoftwareFeatures are not instantiated, it "
549 "is not possible to use the SoftwareFeatureService"
550 "Implementation association. \n"
551 " The cardinality of this association is many-to-many. A "
552 "Service may be provided by more than one SoftwareElement. "
553 "If this is true, it is assumed that the SoftwareElements "
554 "operate in conjunction. And, any SoftwareElement may "
555 "provide more than one Service.") ]
556 class CIM_SoftwareElementServiceImplementation : CIM_Dependency {
557
558 [Override ("Antecedent"),
559 Description (
560 "The executable SoftwareElement implementing the Service.") ]
561 CIM_SoftwareElement REF Antecedent;
562
563 [Override ("Dependent"),
564 Description (
565 "The Service implemented by the SoftwareElement.") ]
566 CIM_Service REF Dependent;
567 };
568 kumpf 1.2
569
570 // ==================================================================
571 // SoftwareElementSAPImplementation
572 // ==================================================================
573 [Association, Version("2.6.0"), Description (
574 " An association between a ServiceAccessPoint and how it is "
575 "implemented by one or more executable SoftwareElements. Note "
576 "that this association is restricted to 'executable' "
577 "Elements. In earlier phases of deployment, the Software"
578 "FeatureSAPImplementation association is adequate and "
579 "recommended. \n"
580 " The relationship between this association and Software"
581 "FeatureSAPImplementation is more fully described here. "
582 "SoftwareElementSAPImplementation allows the description of "
583 "greater granularity than SoftwareFeatureSAPImplementation, "
584 "when a SoftwareFeature is fully deployed and results in "
585 "several executable Elements. These Elements may implement "
586 "several different ServiceAccessPoints. \n"
587 " Since SoftwareFeatures decompose into SoftwareElements, "
588 "it is possible to describe how software implements a SAP "
589 kumpf 1.2 "by using either this association or the SoftwareFeatureSAP"
590 "Implementation relationship. One or the other should be "
591 "chosen. Both associations should not be used for a "
592 "particular AccessPoint, since their information is "
593 "redundant. \n"
594 " This relationship is especially important when the "
595 "SoftwareFeature and Product aspects are not described for "
596 "a SoftwareElement (ie, when the acquisition and deployment "
597 "of the software is not detailed). In this case, the Software"
598 "ElementSAPImplementation association is the only one "
599 "available to describe how an AccessPoint is implemented in "
600 "software. Since SoftwareFeatures are not instantiated, it "
601 "is not possible to use the SoftwareFeatureSAP"
602 "Implementation association. \n"
603 " The cardinality of this association is many-to-many. A "
604 "ServiceAccessPoint may be provided by more than one Software"
605 "Element. (If this is true, it is assumed that the Software"
606 "Elements operate in conjunction.) And, any SoftwareElement "
607 "may provide more than one SAP.") ]
608 class CIM_SoftwareElementSAPImplementation : CIM_Dependency {
609
610 kumpf 1.2 [Override ("Antecedent"),
611 Description (
612 "The executable SoftwareElement implementing the SAP.") ]
613 CIM_SoftwareElement REF Antecedent;
614
615 [Override ("Dependent"),
616 Description (
617 "The ServiceAccessPoint implemented by the SoftwareElement.") ]
618 CIM_ServiceAccessPoint REF Dependent;
619 };
620
621
622 // ==================================================================
623 // end of file
624 // ==================================================================
|