2. For each of the architectural styles described in this chapter, give an example of a real world application whose software design might incorporate that style.
10. You have been hired by a consulting firm to develop an income tax calculation package for an accounting firm. You have designed a system according to the customer’s requirements and presented your design at an architectural review. Which of the following questions might be asked at the review? Explain your answers.
(a) What computer will it run on? (b) What will the input screens look like? (c) What reports will be produced? (d) How many concurrent users will there be? (e) Will you use a multi user operating system? (I) What are the details of the depreciation algorithm?
11. For each of the systems described below, sketch an appropriate software architecture and explain how you would assign key functionalities to the design’s components.
(.a) a system of automated banking machines, acting as distributed kiosks that bank customers can use to deposit and withdraw cash from their accounts (b) a news feeder that notifies each user of news bulletins on topics in which the user has expressed an interest (c) image-processing software that allows users to apply various operations to modify their pictures (e.g., rotation, color tinting, cropping) ( d) a weather forecasting application that analyzes tens of thousands of data elements collected from various sensors; the sensors periodically transmit new data values
12. Propose a redesign of your software architecture for the system of automated banking machines from the previous exercise so that it improves performance. Propose an alternate redesign that improves security. Does your strategy to improve performance adversely affect security, or vice versa?