a logical viewpoint on architectures frank de boer, marcello bonsangue, joost jacob, andries stam,...
Post on 14-Dec-2015
217 Views
Preview:
TRANSCRIPT
A Logical Viewpoint on Architectures
A Logical Viewpoint on Architectures
Frank de Boer, Marcello Bonsangue,
Joost Jacob, Andries Stam,
Leon van der Torre
OverviewOverview
• Research questions
• ArchiMate example
• Symbolic models
• Interpretations
• Semantic models
• Summary and outlook
Research questionsResearch questions
• How to provide a general mathematical foundation for (the use of
formal methods in) enterprise architectures?
• How to incorporate business process models in enterprise
architectures to analyze and simulate their behavior?
• How to provide architectural tool support for enterprise
architectures with business process models?
IEEE 1471 (partly)IEEE 1471 (partly)
System
Stakeholder
Viewpoint
Architecture
Architecturaldescription
View
Model
has an
is addressed to 1..*
establishes methods for 1..*
selects 1..*
consists of 1..*
participates in 1..*
participates in
described by 1
has 1..*
identifies 1..*
organized by 1..*
conforms to
aggregates 1..*
IEEE 1471 extensionIEEE 1471 extension
*
abstraction
interprets 1..*
*
1
has 1
Semanticmodel
Signature
System
Stakeholder
Viewpoint
Architecture
Architecturaldescription
View
Symbolic model
has an
is addressed to 1..*
establishes methods for 1..*
selects 1..*
consists of 1..*
participates in 1..*
participates in
described by 1
has 1..*
identifies 1..*
organized by 1..*
conforms to
Running example (ArchiMate language)Running example (ArchiMate language)
Employee
Accept productRegisterproduct
acceptance
Place order forproduct
Register orderplacement
OrderRegistry
ProductRegistry
owns
Productprocess
role
object
triggering
assignment
access
product
Signature - definitionSignature - definition
A signature consists of:
• partially ordered set of primitive sorts (sort hierarchy);
• partially ordered set of relations.
Extensions:
• Product type (T1 x T2)
• Function type (T1 → T2); can also be used for attributes
• Functions F(T1): T2; possibly multi-valued
Signature - exampleSignature - example
Sorts:
• role
• object
• product
• Employee
• Product
• Order_Registry
• Product_Registry
Relations:
• Owns
• association
Employee
Accept productRegisterproduct
acceptance
Place order forproduct
Register orderplacement
OrderRegistry
ProductRegistry
owns
Product
Signature - exampleSignature - example
IS-A relations:
• Employee is-a role
• Product is-a product
• Order_Registry is-a object
• Product_Registry is-a object
• Owns is-a association
Owns relation:
• Employee Owns Product
Employee
Accept productRegisterproduct
acceptance
Place order forproduct
Register orderplacement
OrderRegistry
ProductRegistry
owns
Product
Signature - exampleSignature - example
Functions:
• Register_order_placement• domain:
• Employee• Order_Registry
• codomain:• Employee• Order_Registry
• Accept_product• domain
• Employee• Order_Registry
• codomain• Employee
• Etc.
Employee
Accept productRegisterproduct
acceptance
Place order forproduct
Register orderplacement
OrderRegistry
ProductRegistry
owns
Product
Interpretations - definitionInterpretations - definition
• An interpretation of a signature assigns to each primitive sort S a
set of individuals I(S)
• For product types T1 x T2, the interpretation is the cartesian
product I(T1) x I(T2)
• For function types T1 → T2, the interpretation is the set of all
functions for which holds that the image of I(T1) is contained in
I(T2)
Interpretations - exampleInterpretations - example
Product
• p1
• p2
Employee
• e1 order=p1 product=p1
• e2 order=p1 product=p2
• e3 order=p2 product=p1
• e4 order=p2 product=p2
Employee
Accept productRegister product
acceptance
Place order for product
Register order placement
Order Registry
Product Registry
owns
Product
Semantic model - definitionsSemantic model - definitions
• A Semantic model of a system involves its concrete components
and their concrete relationships
• It introduces names n:T that range over individuals of type T
• The semantic model assigns to each symbolic function F(T1): T2
an interpretation of T1 → T2
• A Semantic model may change in time (it describes the state of a
system)
Semantic model - dynamicsSemantic model - dynamics
In terms of transformations of semantic models
Two ways:
1. Functions as primitive actions
• n := F(m)
• introduction of Process Algebra
2. Functions as data transformers
1. Multi-valued functions with input- and output-channels
2. introduction of Data Flow Networks
Tool supportTool support
• Symbolic models represented as an XML or AML document.
• Static semantics can be represented in the same way.
• For dynamic semantics, we propose to use an XML transformation
language: the Rule Markup Language (RML)
• Set of XML constructs added to an existing vocabulary;
• For creating rules that can be executed by RML tools;
• General purpose, easy to use.
RML – exampleRML – example
Consider the following XML fragment:
<employee order=p2 product=p2/><orderregistry> <orders>
<order name=p1/> </orders></orderregistry>
In AML (ASCII Markup Language)
employee order = p2 product = p2orderregistry orders order name = p1
Employee
Accept productRegisterproduct
acceptance
Place order forproduct
Register orderplacement
OrderRegistry
ProductRegistry
owns
Product
RML – exampleRML – example
div class=rule name="Register_order_placement" div class=antecedent
rml-Employee order = rml-OrderName
product = rml-ProductName orderregistry orders rml-list name = oldOrders div class=consequence
rml-Employee order = rml-OrderName
product = rml-ProductName orderregistry orders rml-use name = oldOrders order name = rml-OrderName
employee order = p2 product = p2orderregistry orders order name = p1
employee order = p2 product = p2orderregistry orders order name = p1 order name = p2
Summary and outlookSummary and outlook
• Integration of business processes and enterprise architectures
• Distinction between signature, symbolic model and semantic model
• Formal basis for the description and analysis of architectures
• Various formal techniques (process algebras, DF networks) can be integrated
• Tool support for formal analysis with AML and RML
• Various extensions are possible
• logical languages (description logics, temporal logics)
• design actions (transformations of symbolic models)
More informationMore information
ArchiMate - http://archimate.telin.nl
RML - http://homepages.cwi.nl/~jacob/rml/index.html
top related