Honda recently announced it is modifying its Atlanta GA factory (hypothetically for the purpose of this assignment). The modifications of the Honda car factory will produce batteries for three different models of Honda cars (Civic, Accord, Odyssey and CR-V). Honda will eventually develop one of these BatteryFactory in every continent they currently have presence (USA, Africa, Asia, and EU). Because of this, they need quite an advanced software application to keep track of every battery that every factory produces. Every battery has 4 components (cells, casing, controller, charger). See table below for different configurations per car and region. To ensure the highest quality cars, Honda management wants every battery factory to use the same sequence of functions listed below for producing each battery:
Civic | Accord | Odyssey | CR-V | |
USA Cells Casing Controller Charger | Lead Particleboard Raspberry Pi 110 Volts | Lithium Aluminum Arduino 110 Volts | Dual Carbon Kevlar Arduino V2 110 Volts | Dual Carbon Kevlar Arduino V2 110 Volts |
Africa Cells Casing Controller Charger | Lead Cardboard Raspberry Pi 220 Volts | Lithium Aluminum Arduino 220 Volts | Dual Carbon Kevlar Arduino V2 220 Volts | Dual Carbon Kevlar Arduino V2 220 Volts |
Asia Cells Casing Controller Charger | Lead Bamboo Raspberry Pi 230 Volts | Lithium Aluminum Xiaomi 230 Volts | Dual Carbon Kevlar Xiaomi V2 230 Volts | Dual Carbon Kevlar Xiaomi V2 230 Volts |
EU Cells Casing Controller Charger | Lead Bamboo Raspberry Pi 240 Volts | Lithium Aluminum Xiaomi 240 Volt | Dual Carbon Kevlar Xiaomi V2 240 Volts | Dual Carbon Kevlar Xiaomi V2 240 Volts |
Design and implement a software system to ensure quality control using the Factory Pattern. Create a UML class diagram for your solution.