| Description | This pattern implements an asset whose features are distributed across several facet sub-assets. |
|---|---|
| Default Namespace |
http://www.aoModeling.org/patterns/meta/generic/facettedAsset
|
| Namespace Prefixes | {none} |
| Scope Definitions | {none} |
| Default Type System | {none} |
| Type System Prefixes | {none} |
| Default Constraint Language | {none} |
| Constraint Language Prefixes | {none} |
| Default Operation Vocabulary | {none} |
| Operation Vocabulary Prefixes | {none} |
| Design Patterns | {none} |
| Included Models | {none} |
Pattern Info |
|
| Category | meta/generic |
| Keywords | facet aspect star |
| Alias names | AssetAspects StarComponentSchema StarSchema |
| Purpose | The purpose of this pattern is to distribute the properties of an asset among several facets or aspects. For example, core features of an asset are defined in the asset itself, while features that are subject to frequent change, or features that are maintained by other maintainers are defined in separate facets. |
| Motivation | Keeping all features within one core asset may cause that the core asset is modified frequently, which may give cause to high application maintenance cost. Also, when different departments are affected by asset features (e.g. order processing, shipping, invoicing), change requests would have to be routed to the core business objects group when all features are defined in the core asset. Separating these features into specific assets enables these departments to act autonomously. |
| Applicability | This design pattern should be applied for complex assets that have both core features and non-core features. |
| Consequences |
Advantages: Enables distributed maintenance of models, reduces the frequency of necessary changes to core assets Disadvantages: It may be necessary to represent even simple properties as facet assets. |
| Known Applications |
Product asset, Customer asset, Company asset, etc. |
| Related Patterns | {none} |
| Level 2 Structures | {none} |
| Assets |
Asset
Facet |
| Annotations | {none} |
| Errors | {none} |
| Warnings | {none} |
| Infos | {none} |
| Status | Pattern contains 0 errors, 0 warnings, and 0 infos |