CMU CS 15-675 Architectures for Software Systems Spring 1998

Problem Types and Problem Frames

with answers

Garlan & Kazman Questions on Readings for Lecture 3 Due: Mon Jan 19, 1998

The papers:

[Jac95]: Software Requirements and Specifications, Read sections: Polya, Phenomena, Problem Context, Domains, Application Domain, Machine, Problem Frames, Domain Characteristics, Domain Interactions, Context Diagrams, Frame Diagrams, Shared Phenomena, Simple Control Frame, Simple IS Frame, Connection Frame, Workpiece Frame, JSP Frame, Multi-Frame Problem 1.

[Pol73]: How to Solve It, pp.xvi-xvii, 33-36

[Rec92]: The Art of Systems Architecting

Hints:

These readings help you think about the kind of problem you are solving; this is a precursor of selecting an architecture to solve it. They have two common themes: (1) It is essential to discriminate among different kinds of problems and solutions, and hence to make informed choices among solution strategies. (2) The most important design decisions deal with overall system structure – not with, for example, programming details.

You may find it helpful to read the sections of Jac95 in roughly the order given. Note there is a fair amount of reading here, so plan accordingly.

Pay attention to the kind of information the authors regard as most important. Also pay attention to the specific problem and solution structures they identify and the methodological implications. During the semester, we will often ask you to identify the problem frame of the problem for which you are proposing an architecture.

Questions:

1. What two kinds of problems does Polya identify?

Problems to solve and problems to prove.

2. What are the principal parts of a problem frame?

One or more application domains, a machine domain, and a domain relationship that describes a required relation among domains.

3. What is the most significant difference between the real world domain of the simple IS frame and the controlled domain of the simple control frame?

The real world is active and autonomous -- it proceeds without regard for what the machine (the system) of the IS frame is doing. The controlled domain, on the other hand, is reactive and biddable; indeed, the purpose of the machine (the controller) is to affect the controlled domain.

4. What are four methods commonly used by architects? Which is particularly characteristic?

This comes directly from p.67 of Rechtin (2nd and 3rd columns).


Back

Heather L. Marko

Modified: 5/18/98