Implementation Architecture
Implementation Architecture
2.Infrastructure - are needed to make the system run but are not related to the application
functionality
A container component provides an execution environment for the contained components and
manages their lifetime
Connectors
outside of a component
Define infrastructurecomponents
Define interfaces
One-to-one
One-to-many
Many-to-one
Technical prototypes - Quickly developed to serve their purpose, but not at product quality
level
the team)
Certain patterns and structures appear very often, there fore architectural patterns are discovered,
not invented
of the components that are used ,the connections that can be used, set of constraints how they
can be used
Classification of styles
Data-flow architectures
Data-centered architectures
N-tier architectures
Notification architectures
Heterogeneous architectures
Data-flow architectures
Data enter the system and then flows through the componentsone at a time
Conceptually filters consume data from input and write data to output (Variations: structural
andcommunicational)
Data-centered architectures
These architectures have the goal of achieving the quality of
integrability of data
The means of communication distinguishes the two subtypes: repository and blackboard
Web applications
Rich clients
Notification architectures
notification mechanism
===================================================================
Network-Centered Style
Twobasictypesoftopologyoftheserver
Multiple, distributedservers
maintain, monitor,...)
Horizontally, byaddingmoremachines(scaleout)
If the client-server communication is stateful,the server keeps track of the application state
If the client-server communication is stateless,the client is responsible
*Peer topeer
Peer topeer
GUI Architectures
ModelViewController (MVC)
==================================================================
In parallel computing all component share a common memory, typically threads within a single
program
In distributed computing each component has it own memory
Group serialisation
Distributed locks
Restrict access to shared resources to only a single node at a time, E.g. allow only a single node to
write to a file
e.g. Blackboard
Barriers
Distributed FileSystems
Sharding
-------
Asynchronous Architectures
---
Lambda Architecture
---
Kappa Architecture
=========================================================
CompetingArchitectures
operations of a service
SOAP (SimpleObject Access Protocol) - one-way, stateless protocol to transfer XML data
to a single receiver (since SOAP 1.2 there can be more receivers)
Binding of Services:
Application frontend - typically not a service, initiate operation and receive results
Process centric services - implement the business logic, typically manage the process
state
SaaS Idea
An application is made available via a service interface. The application is hosted by a service
Microservices