Reference no: EM133240087
Question 1 - A DISTRIBUTED ADDRESS BOOK APPLICATION.
There are various reasons that an application may need to -- or benefit from -- being distributed.
What are the different types of canonical applications that are distributed for this reason? Then, we will turn our attention to a particular hypothetical example.
For the purposes of our discussion using an address book application. We will make the functionality simple: let us suppose we have two main domain objects, a Person and an Address. There is a many-to-many relationship between them. One can obviously implement this as a desktop application but let us suppose instead we want to build the world's largest, most highly scaled, address book. What would it look like? The goal is to break down the application into its component pieces. At a very high level, there will be a client, some kind of data store, and some kind of processing. But there will be many more pieces once we have made this highly scalable.
Question 2- DISTRIBUTED SYSTEM EXAMPLES.
Based on the set of components that you covered in the example above (address book application), create some sample distributed system designs for the address book application. The goal of this is not to create a perfect design but instead to explore the different kinds of distributed systems that are possible. You should describe an implementation of the address book application as a distributed system using one of the types of system