Bounded Context: Gaming Environments

Command Flow:

  1. CreateGamingEnvironment(workingTitle, firstReleaseYear)
  2. CreateHardwarePlatform(workingTitle)
  3. AddHardwarePlatformToGamingEnvironment(GamingEnvironmentId, HardwarePlatformId)
  4. CreateHardwareModel(workingTitle)
  5. AddHardwareModelToHardwarePlatform(HardwarePlatformId, HardwareModelId)

Exemplary CommandFlow:

  1. CreateGamingEnvironment("Commodore Amiga", 1985) => ID1
  2. CreateHardwarePlatform("Amiga 68k Machine") => ID2
  3. AddHardwarePlatformToGamingEnvironment(ID1, ID2)
  4. CreateHardwareModel("Amiga 500") => ID3
  5. AddHardwareModelToHardwarePlatform(ID2, ID3)