Problem
1. Do you have any personal experience with software changes in the underlying abstract machine? Briefly present your experience and discuss what made your software difficult to change.
2. For some existing or hypothetical application, give an example of a software change that might be due to a change in the social environment.
3. Consider the case where the USES relation is defined by a tree. What does the fact that the structure is a tree, and not a DAG, represent? In general, would you prefer a design in which the USES relation is a tree or a design in which the relation is a DAG?