A Designer is provided with the following statement of requirements by their customer, amongst a larger set of requirements :
The company has multiple warehouses, and each has location (street address) and a manager. Each product has a bar-code and products can be stored in a warehouse, removed from a warehouse or transferred between warehouses. Each product has a specific location (floor/shelf) within each warehouse.
Based on this single statement, which of the following describes a reasonable initial design :
- There is a location class with a warehouse and manager fields which has a transfer method. There is a bar-code class with a product field. The bar-code class has a store and remove method.
- There is a product class with a bar-code field. There is a warehouse class with location and manager fields and store, remove and transfer methods.
- There are no obvious classes, methods or data fields that can be derived from that statement.
- There are store, remove and transfer classes. Each of these classes have warehouse and product fields.