CS665Assign5

With this assignment, starting with Part1 the use of the Observer (Behavioral) pattern gives some benefits in the form of being able to notify users of either promotional or product innovation. This allows for registering, removal and notification to the various users through classes and interfaces such as SimpleSubject (which, in this case, I have built out two, one each for Product and Promotion) So in this part, where we want to get an output of various types of notices, of which there are only 2 we have been able to use Observer in order to enhance the basic no frills notification offered, which allows for potential expansion of other notices.

For Part2, this is a strategy design pattern the justification for using this is the flexibilty to be able to switch between different algorithms at runtime. Again this could allow for greater extension of the program wherein you have accounts for instance with different compounding terms, and features, which could even include hurdles for instance of minimum balances in order to get higher rates of interest.