A mobile app has to dynamically select an encryption algorithm based on security requirements and computing time constraints.
a) Describe which design pattern you would select and why you would select.
b) Draw a UML class diagram depicting the classes in the pattern and justify your choice.