Page 191 -
P. 191
174 Chapter 6 Architectural design
6.5. Explain why you normally use several architectural patterns when designing the architecture
of a large system. Apart from the information about patterns that I have discussed in this
chapter, what additional information might be useful when designing large systems?
6.6. Suggest an architecture for a system (such as iTunes) that is used to sell and distribute music
on the Internet. What architectural patterns are the basis for this architecture?
6.7. Explain how you would use the reference model of CASE environments (available on the
book’s web pages) to compare the IDEs offered by different vendors of a programming
language such as Java.
6.8. Using the generic model of a language processing system presented here, design the
architecture of a system that accepts natural language commands and translates these into
database queries in a language such as SQL.
6.9. Using the basic model of an information system, as presented in Figure 6.16, suggest the
components that might be part of an information system that allows users to view information
about flights arriving and departing from a particular airport.
6.10. Should there be a separate profession of ‘software architect’ whose role is to work
independently with a customer to design the software system architecture? A separate
software company would then implement the system. What might be the difficulties of
establishing such a profession?
REFERENCES
Bass, L., Clements, P. and Kazman, R. (2003). Software Architecture in Practice, 2nd ed. Boston:
Addison-Wesley.
Berczuk, S. P. and Appleton, B. (2002). Software Configuration Management Patterns: Effective
Teamwork, Practical Integration. Boston: Addison-Wesley.
Booch, G. (2009). ‘Handbook of software architecture’. Web publication.
http://www.handbookofsoftwarearchitecture.com/.
Bosch, J. (2000). Design and Use of Software Architectures. Harlow, UK: Addison-Wesley.
Buschmann, F., Henney, K. and Schmidt, D. C. (2007a). Pattern-oriented Software Architecture
Volume 4: A Pattern Language for Distributed Computing. New York: John Wiley & Sons.
Buschmann, F., Henney, K. and Schmidt, D. C. (2007b). Pattern-oriented Software Architecture
Volume 5: On Patterns and Pattern Languages. New York: John Wiley & Sons.
Buschmann, F., Meunier, R., Rohnert, H. and Sommerlad, P. (1996). Pattern-oriented Software
Architecture Volume 1: A System of Patterns. New York: John Wiley & Sons.