Consider a software system to implement a mobile application and a companion back-end system. This application would implement Canvas on your phone. The back-end system could have other front-ends, such as a web-based application. Note that in this system, due to FERPA regulations, all software components must be developed and deployed in-house and information must not be transmitted between clients. For this system, what software architecture patterns would be a good possible fit? Mark all that apply. (Note: although almost any architecture pattern could be applied to almost any system, think of the pros and cons and select only those that make the most sense in the given context O Client-Server Onion Pattern Peer-to-Peer (P2P) Model-View-Controller (MVC) Layer Pattern □ Service Oriented Architecture Broker Pattern Map-Reduce