4.2. An architecture designed to support security may be based on either a centralized model, where all sensitive information is stored in one secure place or a distributed model, where information is spread around and stored in many different places. Suggest one advantage and one disadvantage of each approach.
4.3 Why is it important to try to minimize complexity in a software system?
4.7 Using a diagram, show how the generic architecture for a webbased application can be implemented using a multi-tier clientserver architecture.
4.8 Under what circumstances would you push as much local processing as possible onto the client in a client-server architecture?
4.10 Do some background reading and describe three fundamental differences between relational and NoSQL databases. Suggest three types of software product that might benefit from using NoSQL databases, explaining why the NoSQL approach is appropriate.
5.1. Why should companies that are developing software products use cloud servers to support their development process?
5.3. Explain why it is simple and fast to deploy a replica of a container on a new server.
5.5. What are the benefits to software product vendors of delivering software as a service? In what situations might you decide not to deliver software in this way?
5.6. Using an example, explain why EU data protection rules can cause difficulties for companies that offer software as a service.
5.7. What is the fundamental difference between a multi-tenant SaaS system and a multi-instance SaaS system?
5.10. What do you need to do to deliver a resilient cloud-based system that offers your software as a service?