Draw a class diagram add write necessary codes to implement appropriate design pattern so that your code fulfill all the requirements for the following scenarios.
In the burger shop Takeout at Dhanmondi many BUET students visit (often with their software engineering sessional group mate) when they receive salary as private tutor. There, they have option to choose different types of burger such as Chicken or Beef. Each type of burger has specific type of patty, sauce, and cheese. When the customer gives order, the waiter prepares burger with proper type of patty, sauce, and cheese so that the customer enjoys it and returns next month when subsequent salary is received.
Coffee Factory should create coffee of different types, CoffeeA, CoffeeB, CoffeeC.
CoffeeA, CoffeeB, CoffeeC, all these types must have milk as well as caffein. For sugar, CoffeeA and CoffeeC do have sugar, but CoffeeB is for diabetic people and so should never have sugar.
As a customer of CoffeeFactory you don’t know any of this unnecessary detail, you just order your preferred coffee using the produceCoffee function of CoffeeFactory.
Also, as CoffeeFactory owner is very skeptical about the world, you must also ensure that there is only one CoffeeFactory in the whole world.
2:00 AM, April 29, 2018
Note: You must use bitbucket or github private repositoryfor version controlling. There will be a percentage of marks allocated for version controlling. So, after implementing a feature, commit the changes and regularly push it to bitbucket. We will validate your commit history