| John D. McGregor | |
| Clemson University |
| These are the requirements that determine the “shape” of the architecture | |
| “the software receives a notification whenever a particular action occurs and acts on that notification” | |
| “the software takes a file name as parameter. It reads a formatting line as the first line in the file. It then reads data values and computes a requested statistical measure” | |
| “the tool must be able to present data that has been written in an indeterminate number of different format. The number of formats will expand overtime” |
| Hard real-time – must clear a register before it is overwritten | |
| Soft real-time – must echo input to the screen | |
| Human time – respond to query before user gets angry | |
| In this technique design moves are determined by how well they enhance specific attributes | |
| Identify module to decompose | |
| Refine the module | |
| a. identify drivers | |
| b. choose an architectural pattern | |
| c. identify modules | |
| d. define module interfaces | |
| e. verify modules by checking against use cases | |
| 3. Repeat steps |
Distributed, real-time, embedded
| A component provides services thru standardized functional interfaces but provides non-standard control of the quality of service such as throughput, jitter, security: | |
| Application should be able to monitor and control the qualities that are important to it | |
| Long-lived applications should be able to use multiple implementations of standard interfaces without manual interference | |
| For time-critical mode transitions, resources must be reallocated quickly | |
| Solution? |
| Static application connector – acts on application source code before it is compiled, acts like an aspect weaver to add new source code to use the Quality connector | |
| Static infrastructure connector – acts on the middleware components – may be automatic selection of implementations | |
| Dynamic connector – allocates infrastructure resources to data flows |