Gregory M. Kapfhammer
Key Concept
Corresponding Diagram
In-Class Discussion
In-Class Activity
Details in SETP or MMM
Feature-oriented
Data-oriented
Process-oriented
Event-oriented
Object-oriented
Which approach do you regularly use? Why?
Decomposition and generalization
Module Dependencies
Program Execution
Implementation and Deployment
Work assignment
All of these views have their merits!
Pipe-and-filter
Client-server
Peer-to-peer
Publish-subscribe
Repository
Layering
Strengths? Weaknesses? Purpose? When to use? Why?
Refer to Slack for photographs of each architecture!
Response time
Throughput
Scalability
Load
What is the influence of a software architecture?
How can testing help to evaluate these attributes?
Security
Reliability
Robustness
Usability
What is the influence of a software architecture?
How can testing help to evaluate these attributes?