Ich habe mit UML gespieltWie können Sie Nested/Sub-Klassen in UML ordnungsgemäß modellieren?
Meine primäre Hintergrund ist die eines Systemadministrators, nicht als Programmierer.
Um ein besseres Verständnis der Klasse Modelle zu bekommen ich kartieren zu tun habe versucht, die xmdomain.cfg den Xen-Hypervisor in UML-Datei (können Sie die man-Seite bei http://linux.die.net/man/5/xmdomain.cfg finden)
So nach der Arbeit it out ich bekomme eine grundlegende Start wie folgt (beachten sie, diese Attribute nur, keine Aktionen)
xenDomU:[
- kernelImage
- initialRamdisk
- allocatedMemory
- rootDevice
- nicAmount
- domuName
]
folgende Situation eine echte Nervensäge
„Platte“ und „vif“ kann gewesen Beide treten mehrmals in einer domu-Konfigurationsdatei auf. („Disk“ kann 1 bis unendlich oft auftreten und „vif“ 0 bis unendlich mal) im Wesentlichen sind sie Klassen selbst
disk:[
- backendDevice
- frontendDevice
- deviceAccessMode
]
virtualNetworkInterface:[
- networkBridgeDevice
- interfaceIP
- macAddress
- interfaceName
]
Darüber hinaus „Domain-Shutdown-Optionen“ sind wirklich drei Werte, aber es ist eigentlich am besten summorized als einzelnes Attribut, aber dann erhalten Sie die gleiche Situation wie oben.
shutdownOptions{
- onShutdown
- onReboot
- onCrash
}
Also danach, Sie am Ende mit etwas, das wirklich nicht wie gültige UML für mich scheint.
xenDomU:[
kernelImage
initialRamdisk
allocatedMemory
rootDevice
nicAmount
disk:[
backendDevice
frontendDevice
deviceAccessMode
]
domuName
virtualNetworkInterface:[
networkBridgeDevice
interfaceIP
macAddress
interfaceName
]
shutdownOptions{
onShutdown
onReboot
onCrash
}
]
Ich bin sicher, dass es „besser“ Wege, dies zu tun, aber das ist, was mir wie die natürlichste scheint.
Könnte jemand bitte mich aufklären und den richtigen Weg zeigen, dies zu tun.