1. What is an architectural style?
2. What is a design pattern?
3. Explain the principle of separation of concerns, and the advantages it entails for software development.
4. What is the purpose of each component in a model-view-controller design?
5. What types of software modules are contained in each MVC component?
6. How does a RDBMS fit into an MVC design?
7. What are the relationships between each pair of components in a model-view-controller design? 8. What are principles of good software design in web development? Explain.