” Sikkerhet ved endring” Fra en teknologs (arkitekts) ståsted

advertisement
” Sikkerhet ved endring”
- Fra en teknologs (arkitekts) ståsted –
Arne-Jørgen Berre, SINTEF og
Institutt for informatikk, UiO
Oslo, 24. juni, 2010
ICT
1
Innhold
 Sikkerhet ved Endring
 Fra en Arkitekts ståsted (Arkitekturperspektiv)
 Arkitekturmodeller / Arkitekturrammeverk (IEEE/ 1471/ISO
42010, ADL, UML 2.x, TOGAF, UPDM (DODAF/MODAF),
SoaML (SHAPE), DSLs)
 Sikkerhet og Modeller (SecureUML, ObjectSecurity,DSMLSecurity, AOM)
 Systemer og modeller (ADM og MDA) (REMICS)
 Modeller og Endring/Evolusjon (Subclassing,
parameterisation, templates, Role models/Coll.models
(SoaML), CVL (Common Variability Language) (MoSiS),
Traceability, Service Variability, Resemblance &
Replacement)
ICT
2
IEEE 1471, ISO 42010
ICT
3
Open
Group
ADM
ICT
4
ICT
5
Building block evolution
ICT
6
UPDM - – Unified Model for DODAF
and MODAF
ICT
7
UPDM – Unified Model for DODAF and MODAF
ICT
8
SHAPE project and SoaML
SoaML
UPMS
9
ICT
2010-06-27
Goals
Business rules
Business processes
Business services
E-contracts
…
CIM
Flexible
Flexible
flexible
business
models
business
Businessmodels
Models
Transformer
(engine)
according to
transformation
engine
Business
Business
Business
metamodels
metamodels
metamodels
EPC
POP*
BPDM, BPMN
BMM
…
Transformation
rules
PIM
Executable business
processes
Service interfaces
Service contracts
Service enactment
Business rules
SLAs
Parameterized
services
…
Flexible
Business Models
Web
Services
Semantically enabled
heterogeneous
SOA model
according to
Unified and
standardised
metamodel for
SOA & SHA
Service
Variability
UPMSHA
P2P
Transformer
(engine)
transformation
engine
Grid
Agents
Semantic Web
Services
Heterogeneous
Platforms
Transformation
rules
PSM
Executable artefacts
XSD, WSDL, BPEL
Teams and plans
Resource
management
Semantic Web
Services
…
Semantically Interconnected
enabled
Interconnected
heterogeneous
heterogeneous
heterogeneous
SOA
platform
SOA
platform
SOA
platform
models
models
models
according to
Semantically enabled
Heterogeneous
Heterogeneous
heterogeneous
SOA
platforms
SOAplatform
platforms
SOA
metamodels
metamodels
metamodels
Heterogeneous
service platforms
WSA
JXTA
OGSA
JACK, JADE
WSMO, WSMX
…
ICT
Which metamodels and languages to use
What service-oriented aspects to capture in models
CIM to PIM to PSM
10
CIM – PIM - PSM
CIM
BPMN
BPDM
BMM
EPC
Business Models
…
SoaML-SHA
PIM
System Models
Core
SoaML
PIM4
WS-A
PIM4
SWS
Service Variability
PIM4
Agents
PIMs for different
Architectural Styles
P2P/Grid/
Components
PSM
WSDL, WSMO, OWL-S, JACK, JADE, JXTA, OGSA, J2EE, CORBA
J2EE, NetWeaver, .Net, …
Implementation Models
Realization Technologies
ICT
11
CIM-PIM-PSM Reference Matrix
ICT
12
SoaML Historikk
(Service oriented architecture
modeling language)






OMG RFP – September 2006
3 initial submissions – June 2007
Merge process in 2008 and 2009
SoaML 1.0 ferdigstilt desember 2009
SoaML 1.0 adopteres av OMG i mars 2010
FTF chairs: Arne J. Berre, SINTEF og Jim Amsden, IBM
 http://www.soaml.org
13
ICT
Service Architecture
Modeling with SoaML
collaboration models
ICT
Services Architecture
Ship
Status
service
Purchasing
service
Shipping
service
A ServicesArchitecture (or SOA) is a network of participant roles providing and
consuming services to fulfill a purpose. The services architecture defines the
requirements for the types of participants and service realizations that fulfill
those roles.
The services architecture puts a set of services in context and shows how
participants work together for a community or organization without required
process management.
A community ServicesArchitecture is defined using a UMLICTCollaboration.
Inside the Seller/Manufacturer
Order
Conformation
Shipped
Order Processing
Service
Accounting
Ship Req
Shipped
Delivered
ICT
ServiceContract
A ServiceContract defines the terms, conditions, interfaces and
choreography that interacting participants must agree to (directly or
indirectly) for the service to be enacted - the full specification of a
service which includes all the information, choreography and any
other “terms and conditions” of the service. A ServiceContract is
binding on both the providers and consumers of that service. The
basis of the service contract is also a UML collaboration that is
focused on the interactions involved in providing a service. A
participant plays a role in the larger scope of a ServicesArchitecture
and also plays a role as the provider or user of services specified by
ServiceContracts.
ICT
Service Contract
Service
Contract
Role
within
service
Role
within
service
Service
interface
corresponding
to role
Information
processed by order
processor
type
type
Service
interface
corresponding
to role
Information
received by
orderer
The service contract specifies the details of the service – what
information, assets and responsibilities are exchanged and
under what rules
ICT
Simple Protocol Choreography for Ordering Service Contract
Could also be specified in BPMN, in principle
ICT
Service Modelling with SoaML
Port/Connector models – extending
UML 2.0 composite structure
models
ICT
Service ports and Service Participants
A Service port s the offer of a service by one participant to others using well defined
terms, conditions and interfaces. A Service port defines the connection point through
which a Participant offers its capabilities and provides a service to clients.
A Service port is a mechanism by which a provider Participant makes available
services that meet the needs of consumer requests as defined by ServiceInterfaces,
Interfaces and ServiceContracts. A Service port is represented by a UML Port on a
Participant stereotyped as a «Service, .
ICT
ServiceInterface
a ServiceInterface can be
the type of a service port. The
service interface has the
additional feature that it can
specify a bi-directional service –
where both the provider and
consumer have responsibilities
to send and receive messages
and events. The service
interface is defined from the
perspective of the service
provider using three primary
sections: the provided and
required Interfaces, the
ServiceInterface class and the
protocol Behavior.
ICT
Participant with Service and Request ports
The type of a Request port is also a ServiceInterface, or UML
Interface, as it is with a Service port The Request port is the
conjugate of a Service port in that it defines the use of a service rather
than its provision. This will allow us to connect service providers and
consumers in a Participant.
- Can be transformed to appropriate interface/implementation
code.
ICT
Phases
Roles
SHAPE Service Variability Process
Overview
Provider
Design, Development,
Publication
Artefacts
Service Metamodel
extends
Variability Modelling &
Pre-Configuration
Service Variability Metamodel
extends
1:n
Variability Variability Service Variability Specification
Specification
Model
described by
Service Interface
© SAP 2009 / Page 27
Customization
& Personalization
according to
according to
according to
Service Model
Consumer
Domain Expert
resolves
1:n
Service Variant Model
described by
consistent & valid subset
Service Variant Interface
ICT
© SAP 2009 /
REuse and Migration of legacy
applications to Interoperable Cloud
Services
ICT
REMICS Overall process – The ADM, (Architecture
Driven Modernisation), “SEI” Horse shoe
ICT
REMICS Metamodel extensions
ICT
Model Evolution and Variability
ICT
31
Architecture model of a simple
database server
From article: Evolving Architectural Descriptions of
Critical Systems, Mens/Magee/Rumpe,
IEEE Computer, May 2010
ICT
32
Resemblance: Architecture
description of managed database
server
ICT
33
Replacement: Replacing the
Database component
ICT
34
CVL overview and terms
ICT
35
Applying CVL
ICT
36
ICT
37
SINTEF Variability modeling tool
ICT
38
DIVA Adaptation model
ICT
39
CVL RFP Timetable
ICT
40
Download