@startuml [*] --> UNDEPLOYED: Create UNDEPLOYED --> [*]: Delete UNDEPLOYED --> DEPLOYING: Deploy DEPLOYING --> DEPLOYED: AC Instance Elements\nall DEPLOYED DEPLOYING --> UNDEPLOYING: Undeploy DEPLOYED --> UNDEPLOYING: Undeploy DEPLOYED --> UPDATING: Update DEPLOYED --> MIGRATING: Migrate UPDATING --> DEPLOYED: AC Instance Elements\nall UPDATED MIGRATING --> DEPLOYED: AC Instance Elements\nall MIGRATED UNDEPLOYING --> UNDEPLOYED: AC Instance Elements\nall UNDEPLOYED state DEPLOYED { [*] --> LOCKED: Deploy LOCKED --> [*]: Undeploy LOCKED --> UNLOCKING: Unlock UNLOCKING --> UNLOCKED: AC Instance Elements\nall UNLOCKED UNLOCKED --> LOCKING: Lock UNLOCKING --> LOCKING: Lock LOCKING --> LOCKED: AC Instance Elements\nall LOCKED } @enduml