Figure PR.23 - AdapterRoles and HolderRoles

Header Image
Project:
Figure PR.23 - AdapterRoles and HolderRoles : Class diagram
Created: 3/28/2022 3:51:09 PM
Modified: 10/3/2023 6:36:22 AM
Project:
Advanced:
While this is a workable model, it still isn’t capable of modelling some important cases. For example, think of a Card that has a physical connector on it that accepts either another (daughter) Card or even a Chip (e.g., Memory, or a routing or encryption ASIC). The model shown in Figure above mandates the use of a Holder.  However, in the above example, there is no explicit EquipmentHolder – we are forced to either make a physical connector a holder, or insert an artificial holder. Both are incorrect.<br/>Recall the HardwareRole from the Figure above. The purpose of the PhysicalHardwareRole class is to represent the different types of roles that various types of Hardware components can take on. For this first iteration, two specialized roles have been defined: HolderRole and AdapterRole. Their purpose is to cover situations where an Equipment also acts like an EquipmentHolder. Without these classes, such common situations are very difficult to model. We can use the PhysicalConnector class to connect appropriate Hardware entities together, which transmit signals and/or power between them. Thus, our previous model is modified as follows.<br/>The HolderRole enables different types of PhysicalResources, such as a Card, to take on the role of holding other Equipment. This addresses the problem that we described above, where a Card took on the additional role of holding another Card. This enables a single managed entity, such as a NetworkCard, to have multiple roles - it can function as a Route Processor as well as a Holder of Equipment.<br/>The Adapter role enables a piece of Hardware to adapt its use. For example, sometimes Cards and Chassis evolve along separate paths, causing future versions of one to no longer be physically compatible with present and/or future versions of the other. The solution to this is to use an intermediate piece of Hardware, called an Adapter, to extend the existing physical structure of an EquipmentHolder to enable otherwise incompatible Equipment to be plugged into an EquipmentHolder. The Adapter conceptually creates a new type of EquipmentHolder that fits into the existing EquipmentHolder. This enables Cards that would otherwise be physically and/or electrically incompatible with the existing EquipmentHolder to be supported, by interfacing to the old EquipmentHolder via the new Adapter. <br/>The additional semantics provided by the Adapter can be captured as a second type of PhysicalResourceRole. This represents the common practice of vendors providing special adapters that enable old Equipment or EquipmentHolders to be used with new EquipmentHolders or Equipment, respectively. <br/><br/>