SoftwarePractice.org: Home | Courseware | Wiki | Archive

Module 2: Architectural Analysis and Design

From SoftwarePractice.org

Module 2 of the Foundations of Software Architecture course, based on A Software Architecture Primer by John Reekie and Rohan McAdam.


Contents

Text-reading questions

  1. What is criticality? Give examples of different levels of criticality.
  2. How does organizational structure affect software architecture?
  3. Sketch the relation between customer need and architectural response.
  4. What is a contextual factor? Explain each of its components.
  5. In what four categories should we look for context factors?
  6. What is a technical requirement? Give examples.
  7. What is a persona? Why it is useful?
  8. What is a usage narrative? Why is it useful for software architecture?
  9. How do you know that you have a good set of usage narratives?
  10. List the PURS quality attributes. What kind of quality attribute are they?
  11. List the MeTRiCS quality attributes. What kind of quality attribute are they?
  12. What is (architectural) behavior? Give an example that illustrates how it is different from functionality.
  13. What is a use-case map?
  14. How is a use-case map used to explore behavior?
  15. What triggers a use-case map? Suggest a number of ways in which you can locate these.
  16. What is an architectural view? What is its purpose?
  17. Name the three viewtypes used in this course. What is the key difference between them?

Exploratory questions

  1. What is a typical set of stakeholders that most systems would have? What kinds of system properties do you think each of them would be most interested in?
  2. UTSOnline (the Blackboard software) allows students to obtain course materials and check their grades. Write a representative set of usage narratives for the student stakeholder of this system.
  3. In what way does system software (such as operating systems) constrain and/or enable architecture? What are some other technological constraint, enablers, and risks?
  4. What kinds of constraints/enablers/risks do you think will commonly occur in the organizational and policy categories?
  5. Why do quality needs need to be prioritized?
  6. Write one or two narratives for your architecture that highlight one or more of the MeTRiCS quality attributes.
  7. Discuss the PURS and MeTRiCS quality attributes for each of the following. Prioritize the most important ones, and note in what way each is important to that particular system:
    1. The Blackboard system (aka UTSOnline)
    2. An airline reservation system
    3. Microsoft Word

Related articles

(None listed)

Personal tools