Software Architecture
Central Repository Architectural Style
- Components
o Data repository – A central, reliable, permanent data structure that represents the
state of the system
o Data accessors – A Collection of independent computational elements that operate
on the central data
- Connectors
o Read/write mechanism (requires sophisticated infrastructure
- Examples
o Graphical editors
o Database applications
o AI knowledge bases
- Specialisations
o Blackboard Architecture
An accessor component changes data on the repository, other components
are notified
Require an Active Data Repository that notifies all components about arrival
of new data or changes
Notification often implemented as database triggers
o Passive Data Repository
Components access repository as and when they want
- Benefits
o Efficient way to share large amounts of data
o Centralised management of the repository
- Weakness
o All independent components must agree on a repository data model prior
o Distribution of data can be a problem
o Connectors implement complex infrastructure
- Problem Context
o How to provide a design that is suitable for processing data streams
o How to transform input data streams into output data streams