Classes of Architectures of Software System
|
In software systems, the components and connectors
are software objects [^].
For software systems there exists some work in classifying
(them by) their architecture.
The focus is not on developing a complete taxonomy,
but on identifying and characterizing the most important classes of architectures,
called "architectural styles".
[REAL] David R Harris, Howard B Reubenstein, Alexander S Yeh:
Reverse Engineering to the Architectural Level; 186-195; SE'95.
(except for 'event-driven')
|
Interacting-components architecture (agents, objects) [REAL].
client-server architecture
with directed "messages" (=> explicit transfer of control)
(the foundational architecture of eg. object systems)
event-driven architecture
with multicast "events" (=> implicit transfer of control)
(the foundational architecture of eg. multiagent systems)
|
|
Layered architecture [REAL], also called "stratified design":
opaque = access only adjacing layers, or
transparent = can access more than one layer away.
|
|
Abstract-data-type architecture [REAL]
|
|
API-users architecture [REAL]
|
|
Optimizing-algorithm architecture [REAL]
|
|
Task-spawning architecture [REAL]
|
| |