Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Presented at SSSG
(October 21st 2004)
Architectural Refinement:
from ACME to ArchJava
Contributors:
Credits
Abstract: ACME
Concrete: ArchJava
Key Challenges
Hierarchical representation
ACME in a Nutshell
ArchJava in a Nutshell
10
Key Ideas
11
Port
Type
Instance
Component
System
ACME Construct
Required Methods
Provided Methods
Port
Component Class
Component Instance
Component Class
Component Class
ArchJava
Mapping Components
12
Role
Type
Instance
Connector
ACME Construct
Connector Class
Implicit
Explicit
Connector Class
Connector Instance
ArchJava
Mapping Connectors
13
Connector Instance
Java package
Attachment
Representation
Style
Constraint
Property
Glue
ArchJava
Binding
ACME Construct
Other Mappings
14
15
Components/Connectors/Ports explicitly
declaring types
No dangling ports or roles
For connected ports, provided and
required methods must match
Component type cannot require more
methods than parent type (substitutability)
Architectural Validation
16
ACME Limitation:
Tolerating incompleteness
ArchJava Limitation:
Open Issues
17
http://archjava.fluid.cs.cmu.edu/
ArchJava:
http://www.cs.cmu.edu/~acme
ACME:
References
19