A partition represents some logical or physical boundary of the system. It is optional to model partitions but useful.
For example partitions could be used to represent the web, business and data tiers of a traditional n-tier application.
Partitions might also be used to denote more physical boundaries (such as my primary data center, secondary site,
customer site, partners and so on), in which case the crossing of partitions may have particular constraints for
security, allowed protocols, bandwidth and so on.
A partition may only have properties that represent nested parts, be they services or other partitions. Note that this
is a constraint -- no other elements may currently be represented in a partition.
A partition also has the notion of being "strict", a strict partition ensures that all communication between it and
peer partitions takes place through service gateways. To ensure this a partition should ensure that all parts have
visibility 'private' and therefore no peer partition can directly access them.
|