Chapter 6 New
Chapter 6 New
Objectives
y Introduce the concepts of data centered software architecture y Describe the repository and blackboard architectures y Discuss applicable domains for data centered software architecture y Discuss the benefits and limitations of data centered software architecture y Discuss the data centered architecture when incorporated with other architectures
Agenda
- Centralized data store
- Overview - Repository Architecture Style - Blackboard Architecture Style
Overview
The architecture is characterized by a centralized data store
Shared by all surrounding software components.
The connections between the data module and the software components
Implemented by
explicit method invocation implicit method invocation.
Repository Architecture
Applicable Domain:
Suitable for large complex information systems
Where many software component clients need to access it in different ways.
Benefits:
Data integrity
easy to backup and restore.
Limitations:
Data store reliability and availability is a very important issue.
Centralized repository is vulnerable to failure compared to distributed repository with data replication.
High dependency between data structure of data store and its agents.
The changes of data structure have significant impacts on its agents.
The data evolution is more difficult and expensive.
Knowledge sources
Where the domain-specific knowledge is stored.
Backward Reasoning
The backward reasoning works in the opposite direction than the forward reasoning.
Summary
The data centered repository architecture may be one of the most popular software architectures since most of software application needs to have a data repository. Repositories are often used in layered architecture, client/server architecture, data tier in multi-tier architecture, and many other architecture designs. The data store is passive in the repository architecture and agents control and trigger all operations on the data store. Agents of the data store in data centered repository architecture control the logic flow.
The data centered blackboard architecture is a knowledge-based architecture where the status of the data in the data store controls and triggers most of operations. The data store is active in the blackboard software architecture. The connection between the components in the blackboard architecture is implemented implicitly instead of explicit invocation in the repository systems. There are many expert systems for pattern recognition, voice or speech recognition, or other similar systems with this architecture.
The set of facts is F1: animal eats meat F2: animal gives milk F3: animal has black strips F4: animal has tawny color The goal is to recognize which animal it is. The problem may ask you to approve a statement or get a best recognition in the animal category.