The ability for Artisans to have locally saved order data is also needed:

  • As an Artisan, I need to be able to create, manage, and store Order data so that I can fulfill orders when they are relayed to me, and flag them as fulfilled for the Central Office

Order data, though, is a bit different from the Artisan and Product data that we have explored so far at a structural level:

  • An Order, when it comes right down to it, is an association of one customer with one-to-many products.
  • There's no expected need for Artisans to keep track of individual customers, except as they relate to orders, so Artisans need Customer objects that aren't also data objects, in much the same way that Artisan objects have an Address associated ...

Get Hands-On Software Engineering with Python now with O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.