Upload
josephine-jones
View
218
Download
2
Tags:
Embed Size (px)
Citation preview
SC32/WG2 meeting. London, 18 Nov. 2009 1
Open Distributed Processing Open Distributed Processing in SC7in SC7
Peter Linington and Antonio VallecilloPeter Linington and Antonio VallecilloJTC1/SC7/WG19 JTC1/SC7/WG19
“Techniques for the specification of IT Systems”“Techniques for the specification of IT Systems”
[email protected] [email protected]@kent.ac.uk [email protected]
AgendaAgenda
• Intro to WG19Intro to WG19
• ODP* system specificationsODP* system specifications
• Use of UML for ODP system specificationsUse of UML for ODP system specifications
• Revision of the RM-ODPRevision of the RM-ODP
SC32/WG2 meeting. London, 18 Nov. 2009 2
*ODP *ODP Open Distributed Processing Open Distributed Processing
WG19 MissionWG19 Mission
• The development of standards to enable the integration of The development of standards to enable the integration of business and IT system specifications, and to facilitate the business and IT system specifications, and to facilitate the provision of software and system engineering tools and provision of software and system engineering tools and techniques to implement information systems.techniques to implement information systems.
• Fundamental to this objective is the recognition that Fundamental to this objective is the recognition that information systems must be realized in an environment where information systems must be realized in an environment where data and processing are distributed across heterogeneous IT data and processing are distributed across heterogeneous IT resources and multiple organizational domains.resources and multiple organizational domains.
SC32/WG2 meeting. London, 18 Nov. 2009 3
WG19 Terms of ReferenceWG19 Terms of Reference
• WG19 is responsible for standards for rigorously specifying WG19 is responsible for standards for rigorously specifying information systems covering:information systems covering:– architectural frameworks architectural frameworks for distributed processing systems, for distributed processing systems,
defining the structure of system specifications for both complete defining the structure of system specifications for both complete systems and for specific areas such as naming, security and systems and for specific areas such as naming, security and conformance assessment; conformance assessment;
– metadata and representations of data metadata and representations of data for communication by both for communication by both humans and machines, and the definition of the corresponding humans and machines, and the definition of the corresponding interfaces, such as interfaces, such as data interchange formatsdata interchange formats; ;
– modeling languages modeling languages for expressing specifications of systems and for expressing specifications of systems and their integration and distribution, and rules for relating different their integration and distribution, and rules for relating different specifications; specifications;
– functionsfunctions to support distributed system operation; to support distributed system operation;
SC32/WG2 meeting. London, 18 Nov. 2009 4
WG19 Terms of Reference (2)WG19 Terms of Reference (2)
• WG19 ensures the evolution of the standards portfolio by:WG19 ensures the evolution of the standards portfolio by:– developing standards and technical reports;developing standards and technical reports;
– facilitating the processing of PAS and Fast-Track documents in facilitating the processing of PAS and Fast-Track documents in its areas of work;its areas of work;
– providing the focal point for collaborative work with OMG and providing the focal point for collaborative work with OMG and ITU-T on its areas of work, and with other organizations if ITU-T on its areas of work, and with other organizations if required (e.g. IEEE).required (e.g. IEEE).
SC32/WG2 meeting. London, 18 Nov. 2009 5
WG19 project list (active)WG19 project list (active)
SC32/WG2 meeting. London, 18 Nov. 2009 7
Product Title Category Status Editor
ISO/IEC FCD 15909-2Software and system engineering --
High-level Petri nets -- Part 2: Transfer Format
Metadata Interchange
FDIS BallotEkkart Kindler,
Germany
ISO/IEC 15909-1:2004/FPDAmd 1
Software and system engineering -- High-level Petri nets -- Part 1: Concepts,
definitions and graphical notation
Modelling and Specification
FPDAM Ballot Editing Meeting
Jonathan Billington,
Australia
ISO/IEC 24744:2007/CD Amd
1
Information Technology -- Software Engineering -- Metamodel for
Development Methodologies Amd 1 Graphical Notation
SE Method Metamodel
FPDAM BallotCesar Gonzales-
Perez,
Spain
ISO/IEC FPDAM 10746-2
Information technology -- Open Distributed Processing -- Reference Model: Foundations - Amendment 1
IT/SE Frameworks FPDAM BallotAntonio Vallecillo,
Spain
ISO/IEC FPDAM 10746-3
Information technology -- Open Distributed Processing -- Reference Model: Architecture - Amendment 1
IT/SE Frameworks FPDAM BallotBryan Wood,
UK
ISO/IEC DCOR 19793
Defect Report for Enterprise LanguageModelling and Specification
DCOR Ballot Jean Bérubé, Canada
ISO/IEC 19793 Study Period on the expression of
policies and obligationsModelling and Specification
Study period -> NWi Peter Linington, UK
ISO/IEC 15909-3 Study Period on High-level Petri Nets -
Part 3: ExtensionsModelling and Specification
Study Period -> NWILaure Petrucci,
France
ISO/IEC 15909-1Study Period on the revision of High-
level Petri Nets Modelling and Specification
Study Period -> NWI Jonathan Billington, Australia
WG19 project list (active PAS)WG19 project list (active PAS)
SC32/WG2 meeting. London, 18 Nov. 2009 8
Product Title Category Status Editor
ISO/IEC DIS 19500-3 Information technology -- Architecture-
Driven Modernization -- Knowledge Discovery Meta-model (KDM), v1.1
SE Data Metamodel DIS Ballot OMG
ISO/IEC DIS 19505-1 OMG Unified Modeling Language (UML2.1.2) - Part 1 Infrastructure
Modelling and Specification DIS Ballot OMG
ISO/IEC DIS 19505-2OMG Unified Modeling Language (UML2.1.2) - Part 2 Superstructure
Modelling and Specification DIS Ballot OMG
ISO/IEC DIS 19500-1
Information technology -- Open Distributed Processing -- Common Object Request Broker Architecture
(CORBA) specification -- Part 1: CORBA interfaces
ODP Services DIS Ballot OMG
ISO/IEC DIS 19500-2
Information technology -- Open Distributed Processing -- Common Object Request Broker Architecture
(CORBA) specification -- Part 2: Interoperability
ODP ServicesDIS Ballot OMG
ISO/IEC DIS 19500-3
Information technology -- Open Distributed Processing -- Common Object Request Broker Architecture
(CORBA) specification -- Part 3: Components
ODP ServicesDIS Ballot OMG
WG19 products WG19 products (completed 04-09)(completed 04-09)
SC32/WG2 meeting. London, 18 Nov. 2009 9
Product Title Category Pub.Y
ISO/IEC 19793:2008Information technology -- Open Distributed Processing -- Use of
UML for ODP system specificationsModelling and Specification
2008
ISO/IEC 24744:2007 Information Technology -- Software Engineering -- Metamodel for Development Methodologies
SE Method Metamodel 2007
ISO/IEC 15476-6:2006Information technology -- CDIF semantic metamodel -- Part 6:
State/event modelsSE Data Metamodel 2006
ISO/IEC 15476-3:2006 Information technology -- CDIF semantic metamodel -- Part 3: Data definitions
SE Data Metamodel2006
ISO/IEC 13235-3:1998/Cor 1:2006
Information technology -- Open Distributed Processing -- Trading Function -- Part 3: Provision of Trading Function using OSI Directory
service ODP Services 2006
ISO/IEC 15414:2006 Information technology -- Open distributed processing -- Reference model -- Enterprise language
Modelling and Specification
2006
ISO/IEC 15476-4:2005 Information technology -- CDIF semantic metamodel -- Part 4: Data models
SE Data Metamodel 2005
ISO/IEC DTR 15476-5Information technology -- CDIF semantic metamodels -- Part 5: Data
flow modelsSE Data Metamodel Not Pub
ISO/IEC 19501:2005Information technology -- Open Distributed Processing -- Unified
Modeling Language (UML) Version 1.4.2Modelling and Specification
2005
ISO/IEC 15909-1:2004Software and system engineering -- High-level Petri nets -- Part 1:
Concepts, definitions and graphical notationModelling and Specification
2004
WG19 products (completed 00-03)WG19 products (completed 00-03)
SC32/WG2 meeting. London, 18 Nov. 2009 10
Product Title Category Pub.Y
ISO/IEC 19500-2:2003Information technology -- Open Distributed Processing -- Part 2:
General Inter-ORB Protocol (GIOP)/Internet Inter-ORB Protocol (IIOP)ODP Services
2003
ISO/IEC 15474-1:2002 Information technology -- CDIF framework -- Part 1: Overview IT/SE Frameworks 2002
ISO/IEC 15474-2:2002Information technology -- CDIF framework -- Part 2: Modelling and
extensibilityModelling and Specification
2002
ISO/IEC 15475-1:2002Information technology -- CDIF transfer format -- Part 1: General rules
for syntaxes and encodingsMetadata Interchange 2002
ISO/IEC 15475-2:2002Information technology -- CDIF transfer format -- Part 2: Syntax
SYNTAX.1Metadata Interchange 2002
ISO/IEC 15475-3:2002Information technology -- CDIF transfer format -- Part 3: Encoding
ENCODING.1Metadata Interchange 2002
ISO/IEC 15476-1:2002Information technology -- CDIF semantic metamodel -- Part 1:
FoundationSE Data Metamodel 2002
ISO/IEC 15476-2:2002Information technology -- CDIF semantic metamodel -- Part 2:
CommonSE Data Metamodel 2002
ISO/IEC 14769:2001Information technology -- Open Distributed Processing -- Type
Repository FunctionODP Services 2001
ISO/IEC 15437:2001 Information technology -- Enhancements to LOTOS (E-LOTOS)Modelling and Specification
2001
O/IEC 10746-4:1998/Amd 1:2001
Computational formalizationModelling and Specification
2001
ISO/IEC 14752:2000Information technology -- Open Distributed Processing -- Protocol
support for computational interactionsODP Services 2000
WG19 products (completed 95-00)WG19 products (completed 95-00)
Product Title Category Pub. Y
ISO/IEC 14750:1999Information technology -- Open Distributed Processing -- Interface
references and bindingODP Services 1999
ISO/IEC 14753:1999Information technology -- Open Distributed Processing -- Naming
frameworkODP Services 1999
ISO/IEC 14771:1999Information technology -- Open Distributed Processing -- Trading
Function -- Part 3: Provision of Trading Function using OSI Directory service
ODP Services 1998
ISO/IEC 10746-1:1998Information technology -- Open Distributed Processing -- Reference
model: OverviewIT/SE Frameworks
1998
ISO/IEC 10746-4:1998Information technology -- Open Distributed Processing -- Reference
Model: Architectural semanticsIT/SE Frameworks 1998
ISO/IEC 13235-1:1998Information technology -- Open Distributed Processing -- Trading
function: SpecificationODP Services 1998
ISO/IEC 13235-3:1998Information technology -- Open Distributed Processing -- Trading
Function -- Part 3: Provision of Trading Function using OSI Directory service
ODP Services 1998
ISO/IEC 14568:1997Information technology -- DXL: Diagram eXchange Language for tree-
structured chartsMetadata
Interchange1997
ISO/IEC 10746-2:1996Information technology -- Open Distributed Processing -- Reference
Model: FoundationsIT/SE Frameworks 1996
ISO/IEC 14750:2000Information technology -- Open Distributed Processing -- Reference
Model: ArchitectureIT/SE Frameworks 1996
ISO/IEC 14753:2000Information technology -- Representation for human communication
of state transition of softwareModelling &
Specification1995
SC32/WG2 meeting. London, 18 Nov. 2009 11
WG19 products (completed -95)WG19 products (completed -95)
SC32/WG2 meeting. London, 18 Nov. 2009 12
Product Title Category Pub. Y
ISO/IEC 8631:1989 Information technology -- Program constructs and conventions for
their representationModelling and Specification
1989
ISO 8807:1989 Information processing systems -- Open Systems Interconnection --
LOTOS -- A formal description technique based on the temporal ordering of observational behavior
Modelling and Specification
1989
ISO 8790:1987 Information processing systems -- Computer system configuration
diagram symbols and conventionsModelling and Specification
1987
ISO 5807:1985 Information processing -- Documentation symbols and conventions for
data, program and system flowcharts, program network charts and system resources charts
Modelling and Specification
1985
ISO 5806:1984 Information processing -- Specification of single-hit decision tablesModelling and Specification
1984
ISO 3535:1977 Forms design sheet and layout chartModelling and Specification
1977
SC32/WG2 meeting. London, 18 Nov. 2009 13
The Reference Model of The Reference Model of Open Distributed ProcessingOpen Distributed Processing
(RM-ODP)(RM-ODP)
ISO/IEC 10746, ITU-T X.901-4ISO/IEC 10746, ITU-T X.901-4
www.rm-odp.netwww.rm-odp.net
ODP system specificationsODP system specifications
• The Reference Model of ODP (ITU-T Rec The Reference Model of ODP (ITU-T Rec X.901-904 | ISO/IEC 10746) defines a X.901-904 | ISO/IEC 10746) defines a framework for system specification framework for system specification
• It covers all aspects of a distributed system - It covers all aspects of a distributed system - “enterprise”, information, functionality, “enterprise”, information, functionality, infrastructure, technologyinfrastructure, technology
SC32/WG2 meeting. London, 18 Nov. 2009 14
The RM-ODPThe RM-ODP
• Family of ISO/IEC Standards & ITU-T Family of ISO/IEC Standards & ITU-T RecommendationsRecommendations
• Developed initially as reference standards for Developed initially as reference standards for developing standards for open distributed systemsdeveloping standards for open distributed systems
• Better to consider now as vendor neutral distributed Better to consider now as vendor neutral distributed system description frameworksystem description framework
• Object OrientedObject Oriented• Distinguishing feature: Five Standard Viewpoints Distinguishing feature: Five Standard Viewpoints
defined for any system descriptiondefined for any system description
SC32/WG2 meeting. London, 18 Nov. 2009 15
RM-ODP providesRM-ODP provides
• a structure for system specifications in terms of a structure for system specifications in terms of viewpointsviewpoints on a system on a system
• a a languagelanguage (concepts and rules) for expressing each (concepts and rules) for expressing each viewpoint specificationviewpoint specification
• a set of object-oriented a set of object-oriented foundationfoundation modelling modelling conceptsconcepts common to all viewpoint languages common to all viewpoint languages
• A set of A set of correspondencescorrespondences between the viewpoints between the viewpoints• Sets of Sets of commoncommon functionsfunctions, , transparenciestransparencies and and
conformance pointsconformance points• A A frameworkframework for ODP standards for ODP standards
SC32/WG2 meeting. London, 18 Nov. 2009 16
SC32/WG2 meeting. London, 18 Nov. 2009 17
ODP viewpointsODP viewpoints
• Different abstractions of the same systemDifferent abstractions of the same system– each abstraction focuses on different concerns each abstraction focuses on different concerns – each abstraction achieved using a set of each abstraction achieved using a set of
viewpoint concepts and rules viewpoint concepts and rules
• A mechanism for dealing with the complexity A mechanism for dealing with the complexity of distributed systemsof distributed systems
SC32/WG2 meeting. London, 18 Nov. 2009 18
ODP viewpoint specificationODP viewpoint specification
• Specification of a system from a specific Specification of a system from a specific viewpointviewpoint
• Expressed in terms of the viewpoint Expressed in terms of the viewpoint concepts and rules (the viewpoint concepts and rules (the viewpoint language)language)
• Includes defined correspondences with Includes defined correspondences with other ODP viewpoint specificationsother ODP viewpoint specifications
SC32/WG2 meeting. London, 18 Nov. 2009 20
The Enterprise specificationThe Enterprise specification
• Specifies the roles played by a system in its Specifies the roles played by a system in its organisational environmentorganisational environment
• An object model of, for example, part of some An object model of, for example, part of some social/commercial organisation in terms of:social/commercial organisation in terms of:– enterprise objectsenterprise objects– communities communities (of (of enterprise objectsenterprise objects))
• objectivesobjectives• behaviourbehaviour
– roles (roles (of of enterprise objects enterprise objects in ain a community) community) – processesprocesses
• policiespolicies• ……
Example: Bank information systemExample: Bank information system
• A bank is composed of branches, spread all over the countryA bank is composed of branches, spread all over the country
• The bank’s central office manages and coordinates the The bank’s central office manages and coordinates the branches’ activitiesbranches’ activities
• Each branch has a manager and is responsible to provide Each branch has a manager and is responsible to provide banking services to its customersbanking services to its customers
• Branches may interact with each other and with the bank Branches may interact with each other and with the bank central officecentral office
• Each branch will have an ATM and a main server, and each Each branch will have an ATM and a main server, and each branch’s employee will have a computer and a printerbranch’s employee will have a computer and a printer
• The Bank information system (BIS) will manage all IS-related The Bank information system (BIS) will manage all IS-related issuesissues
SC32/WG2 meeting. London, 18 Nov. 2009 21
BIS – Enterprise Specification (1)BIS – Enterprise Specification (1)
• Each branch, and will be specified by a Each branch, and will be specified by a communitycommunity– Its Its goalgoal is to “provide banking services to its customers” is to “provide banking services to its customers”– Its Its objectsobjects model the branch entities: people (“Joe Smith”, “Lucy Brown”), model the branch entities: people (“Joe Smith”, “Lucy Brown”),
computers (PC #123-45, printer #xyz), bank accounts, etc.computers (PC #123-45, printer #xyz), bank accounts, etc.– Its Its rolesroles are: branch manager, controller, customer (active),…, or bank account, are: branch manager, controller, customer (active),…, or bank account,
money, etc. (passive)money, etc. (passive)– AssignmentAssignment policiespolicies (e.g., the requirements of a person to become a customer)(e.g., the requirements of a person to become a customer)– PoliciesPolicies::
•PermissionsPermissions: what can be done, e.g. money can be deposited into an open account: what can be done, e.g. money can be deposited into an open account•ProhibitionProhibition: what must not be done, e.g. customers must not withdraw more than 600 : what must not be done, e.g. customers must not withdraw more than 600
Euros per dayEuros per day•ObligationsObligations: what must be done, e.g. the bank manager must advise customers when : what must be done, e.g. the bank manager must advise customers when
the interest rate changes, customers must present some ID for withdrawing money.the interest rate changes, customers must present some ID for withdrawing money.•AuthorizationsAuthorizations: accounts of some VIP customers are allowed to have overdrawn.: accounts of some VIP customers are allowed to have overdrawn.
SC32/WG2 meeting. London, 18 Nov. 2009 22
BIS – Enterprise Specification (2)BIS – Enterprise Specification (2)
– EnvironmentEnvironment contracts contracts: e.g., transactions performed using other banks’ ATMs : e.g., transactions performed using other banks’ ATMs should have effect within at most 24 hours; information about a branch’s should have effect within at most 24 hours; information about a branch’s customers cannot be disclosed to other branchescustomers cannot be disclosed to other branches
– AccountabilityAccountability: e.g., the branch manager is responsible for authorizing an : e.g., the branch manager is responsible for authorizing an overdrawn, but can delegate to the branch’s controller officeroverdrawn, but can delegate to the branch’s controller officer
• The bank’s central office will be specified by another The bank’s central office will be specified by another communitycommunity– It’s It’s goalgoal is to “manage and coordinate the branches’ activities” is to “manage and coordinate the branches’ activities”– It’s It’s objectsobjects are… are…– It’s It’s rolesroles are … are …– It’s It’s assignmentassignment policiespolicies are… are…– It’s It’s policiespolicies are… are…– EnvironmentEnvironment contractscontracts……– AccountabilityAccountability….….
• Branches interact with each other and with the central office…Branches interact with each other and with the central office…
SC32/WG2 meeting. London, 18 Nov. 2009 23
SC32/WG2 meeting. London, 18 Nov. 2009 24
The Information specificationThe Information specification• Specifies system behaviour to fulfil its enterprise Specifies system behaviour to fulfil its enterprise
roles, abstracted from implementation roles, abstracted from implementation • An object model of the An object model of the systemsystem describing the describing the
semantics of information and of information semantics of information and of information processing in the processing in the systemsystem in terms of: in terms of:– information objectsinformation objects– invariant schemainvariant schema - predicates on - predicates on information information
objectsobjects that must always be true that must always be true – static schemastatic schema - state of - state of information objectsinformation objects at at
some some location in timelocation in time– dynamic schemadynamic schema - allowable state changes of - allowable state changes of
information objectsinformation objects
BIS – Information specificationBIS – Information specification• Describes a model with the information types, their relationships, and Describes a model with the information types, their relationships, and
constraints on these types and relationshipsconstraints on these types and relationships– e.g., a bank account consists a balance and the “e.g., a bank account consists a balance and the “amount-withdrawn-todayamount-withdrawn-today”.”.
• A A Static schema Static schema captures the state and structure of a object at some captures the state and structure of a object at some particular instanceparticular instance– e.g., at midnight, the e.g., at midnight, the amount-withdrawn-todayamount-withdrawn-today is 0. is 0.
• An An invariant schema invariant schema restricts the state and structure of an object at all times restricts the state and structure of an object at all times – e.g., the e.g., the amount-withdrawn-todayamount-withdrawn-today is less than or equal to 600. is less than or equal to 600.
• A A dynamic schema dynamic schema defines a permitted change in the state and structure of defines a permitted change in the state and structure of an object an object – e.g. a withdrawal of $X from an account decreases the balance by $X and e.g. a withdrawal of $X from an account decreases the balance by $X and
increases the increases the amount-withdrawn-todayamount-withdrawn-today by $X. by $X. • Static and dynamic schema are always constrained by invariant schemataStatic and dynamic schema are always constrained by invariant schemata
– $400 could be withdrawn in the morning but additional $200 cannot be $400 could be withdrawn in the morning but additional $200 cannot be withdrawn in the afternoon as the withdrawn in the afternoon as the amount-withdrawn-todayamount-withdrawn-today cannot exceed $500 cannot exceed $500
• Schemas can also be used to describe relationships or associations between Schemas can also be used to describe relationships or associations between objects objects – e.g., static schema e.g., static schema ownsAccountownsAccount could associate each account with a customer. could associate each account with a customer.
SC32/WG2 meeting. London, 18 Nov. 2009 25
SC32/WG2 meeting. London, 18 Nov. 2009 26
The computational specificationThe computational specification• Specifies computational structure of the system in terms of Specifies computational structure of the system in terms of
units of distribution and portability and the interactions units of distribution and portability and the interactions between thembetween them
• An object model of the An object model of the systemsystem describing the structure of describing the structure of processing in terms of:processing in terms of:– computational objectscomputational objects– Interfaces Interfaces (of (of computational objectscomputational objects): identifying ): identifying
functions supportedfunctions supported– Invocations Invocations (by (by computational objectscomputational objects): identifying ): identifying
functions invokedfunctions invoked– activitiesactivities: sequences of invocations: sequences of invocations– computational bindingscomputational bindings: : QoS QoS constraints on constraints on
invocationsinvocations
BIS – Computational spec (1)BIS – Computational spec (1)
• Objects in a computational specification can be application Objects in a computational specification can be application objects (e.g. a bank branch) or ODP infrastructure objects (e.g. objects (e.g. a bank branch) or ODP infrastructure objects (e.g. a type repository or a trader)a type repository or a trader)
• Objects interact at well defined interfaces, using signals, Objects interact at well defined interfaces, using signals, operations or flows. operations or flows.
BankTeller = Interface Type {BankTeller = Interface Type {
operation Deposit (c: Customer, a: Account, d: Dollars)operation Deposit (c: Customer, a: Account, d: Dollars)
returns OK (new_balance: Dollars)returns OK (new_balance: Dollars)
returns Error (reason: Text);returns Error (reason: Text);
operation Withdraw (c: Customer, a: Account, d: Dollars)operation Withdraw (c: Customer, a: Account, d: Dollars)
returns OK (new_balance: Dollars)returns OK (new_balance: Dollars)
returns NotToday (today: Dollars, daily_limit: Dollars)returns NotToday (today: Dollars, daily_limit: Dollars)
returns Error (reason: Text);returns Error (reason: Text);
}}
SC32/WG2 meeting. London, 18 Nov. 2009 27
BIS – Computational spec (2)BIS – Computational spec (2)
• Interfaces allow subtypingInterfaces allow subtyping
• Environment contracts capture non functional Environment contracts capture non functional requirementsrequirements– Security, Security, – performance, performance, – availability, availability, – etc.etc.
SC32/WG2 meeting. London, 18 Nov. 2009 28
SC32/WG2 meeting. London, 18 Nov. 2009 29
The engineering specificationThe engineering specification• Specifies the mechanisms and services that provide Specifies the mechanisms and services that provide
the distribution transparencies and QoS constraints the distribution transparencies and QoS constraints required by the system independent of platform required by the system independent of platform
• An object model of the system describing the An object model of the system describing the infrastructure supporting the computational structureinfrastructure supporting the computational structure– basic engineering objectsbasic engineering objects– (infrastructure) engineering objects(infrastructure) engineering objects – clusters, capsules, nodesclusters, capsules, nodes – channelschannels– functionsfunctions
BIS – Engineering specification (1)BIS – Engineering specification (1)
SC32/WG2 meeting. London, 18 Nov. 2009 30
BIS – Engineering specification (2)BIS – Engineering specification (2)
SC32/WG2 meeting. London, 18 Nov. 2009 31
SC32/WG2 meeting. London, 18 Nov. 2009 32
The technology specificationThe technology specification
• Specifies the H/W and S/W pieces from which the Specifies the H/W and S/W pieces from which the system is built. system is built.
• An object model of the systemAn object model of the system– defining the configuration of defining the configuration of technology objectstechnology objects that that
comprise the ODP system, and the comprise the ODP system, and the interfacesinterfaces between between them them
– identifyingidentifying conformance points conformance points
BIS – Technology specificationBIS – Technology specification
• Technology object typesTechnology object types– Types of PCs, servers, ATMs, printersTypes of PCs, servers, ATMs, printers
– Types of Operating Systems and Applications (text editors, etc)Types of Operating Systems and Applications (text editors, etc)
– Types of connections (LANs, WANs, Intranets, etc.)Types of connections (LANs, WANs, Intranets, etc.)
• Technology selection processTechnology selection process– Providers’ selection and contractsProviders’ selection and contracts
– Conformance pointsConformance points
– Compliance testsCompliance tests
• Implementation, deployment, maintenance, evolutionImplementation, deployment, maintenance, evolution– Deployment plansDeployment plans
– Configuration guidesConfiguration guides
– Evolution plansEvolution plans
SC32/WG2 meeting. London, 18 Nov. 2009 33
Correspondences, Common Correspondences, Common Functions and Transparencies Functions and Transparencies
• CorrespondencesCorrespondences– An ODP specification of a system is composed of five views and a set An ODP specification of a system is composed of five views and a set
of correspondences between themof correspondences between them– Correspondences do not belong to any viewCorrespondences do not belong to any view– ODP distinguishes two kinds of correspondencesODP distinguishes two kinds of correspondences
•Required correspondencesRequired correspondences•Correspondence statementsCorrespondence statements
• Common functionsCommon functions– An ODP specification can make use of some of the common functions An ODP specification can make use of some of the common functions
defined by the RM-ODP. They are “standard”defined by the RM-ODP. They are “standard”
• TransparenciesTransparencies– An ODP specification can implement some of the transparencies An ODP specification can implement some of the transparencies
defined by the RM-ODPdefined by the RM-ODP– The specification should state which ones are used, and how they are The specification should state which ones are used, and how they are
implementedimplementedSC32/WG2 meeting. London, 18 Nov. 2009 34
SC32/WG2 meeting. London, 18 Nov. 2009 35
(Some) Sources(Some) Sources• COMBINE and Synapses EU-funded projectsCOMBINE and Synapses EU-funded projects• Reference Architecture for Space Data Systems (RASDS), Reference Architecture for Space Data Systems (RASDS),
NASA/JPL, USNASA/JPL, US• Interoperability Technology Association for Information Interoperability Technology Association for Information
Processing (INTAP), JapanProcessing (INTAP), Japan• Japanese Association of Healthcare Information System Japanese Association of Healthcare Information System
Industry (JAHSI) - Hospital Information Reference Industry (JAHSI) - Hospital Information Reference Enterprise Model projectEnterprise Model project , Japan , Japan
• NEHTA Interoperability Framework (National E-Health NEHTA Interoperability Framework (National E-Health Transition Authority), AustraliaTransition Authority), Australia
• DASIBAO reference architecture, EDF, FranceDASIBAO reference architecture, EDF, France
ODP standards from SC7ODP standards from SC7
Notation and Architectural Frameworks:Notation and Architectural Frameworks:– ISO/IEC 14750 ODP – Interface Definition Language ISO/IEC 14750 ODP – Interface Definition Language
– ISO/IEC 14771 ODP – Naming framework ISO/IEC 14771 ODP – Naming framework
– ISO/IEC 14753 ODP – Interface references and binding ISO/IEC 14753 ODP – Interface references and binding
– ISO/IEC 14752 ODP – Protocol support for comp. interactionsISO/IEC 14752 ODP – Protocol support for comp. interactions
– ISO/IEC 15414 ODP – Enterprise LanguageISO/IEC 15414 ODP – Enterprise Language
– ISO/IEC 19793 ODP – Use of UML for ODP system specsISO/IEC 19793 ODP – Use of UML for ODP system specs
Components:Components:– ISO/IEC 13235 ODP – Trading FunctionISO/IEC 13235 ODP – Trading Function
– ISO/IEC 14769 ODP – Type repositoryISO/IEC 14769 ODP – Type repository
SC32/WG2 meeting. London, 18 Nov. 2009 36
ODP standards from SC7ODP standards from SC7
SC32/WG2 meeting. London, 18 Nov. 2009 37
Notation and Architectural Frameworks:Notation and Architectural Frameworks:
• ISO/IEC 14750 ODPISO/IEC 14750 ODP – – Interface Definition Language Interface Definition Language
• ISO/IEC 14771 ODP – Naming framework ISO/IEC 14771 ODP – Naming framework
• ISO/IEC 14753 ODP – Interface references and binding ISO/IEC 14753 ODP – Interface references and binding
• ISO/IEC 14752 ODP – Protocol support for comp. interactionsISO/IEC 14752 ODP – Protocol support for comp. interactions
• ISO/IEC 15414 ODP – Enterprise LanguageISO/IEC 15414 ODP – Enterprise Language
• ISO/IEC 19793 ODP – Use of UML for ODP system specsISO/IEC 19793 ODP – Use of UML for ODP system specs
Components:Components:
• ISO/IEC 13235 ODP – Trading FunctionISO/IEC 13235 ODP – Trading Function
• ISO/IEC 14769 ODP – Type repositoryISO/IEC 14769 ODP – Type repository
OMG PAS submissionsOMG PAS submissions
• ISO/IEC 19500-2 ODP – Open Distributed Processing - ISO/IEC 19500-2 ODP – Open Distributed Processing - General Inter-ORB Protocol (GIOP)/ Internet Inter-ORB General Inter-ORB Protocol (GIOP)/ Internet Inter-ORB Protocol (IIOP)Protocol (IIOP)– providing basic ODP protocol support for computational interactionsproviding basic ODP protocol support for computational interactions
• ISO/IEC 19501 Information technology – Unified Modeling ISO/IEC 19501 Information technology – Unified Modeling Language (UML)Language (UML)– providing notation for ODP specificationsproviding notation for ODP specifications
• CORBA (Common Object Request Broker Architecture) CORBA (Common Object Request Broker Architecture) ServicesServices– providing basic ODP functionsproviding basic ODP functions
• ADM – Knowledge Discovery MetamodelADM – Knowledge Discovery Metamodel
• ……
SC32/WG2 meeting. London, 18 Nov. 2009 38
What is defined (and not defined) What is defined (and not defined) in the RM-ODP in the RM-ODP
• DefinedDefined– Vocabulary to define viewpoint specificationsVocabulary to define viewpoint specifications– Structuring rulesStructuring rules– Set of viewpoints, correspondences, transparenciesSet of viewpoints, correspondences, transparencies
• NOT definedNOT defined– Notation (i.e., concrete syntax) for viewpoint Notation (i.e., concrete syntax) for viewpoint
languages: Could be text or any language or languages: Could be text or any language or technique like FDT, UML, etc.technique like FDT, UML, etc.
– Process or methodology for developing the Process or methodology for developing the specifications.specifications.
SC32/WG2 meeting. London, 18 Nov. 2009 39
SC32/WG2 meeting. London, 18 Nov. 2009 40
Use of UML for ODP system Use of UML for ODP system specificationsspecifications
(UML4ODP)(UML4ODP)
ISO/IEC 19793, ITU-T X.906ISO/IEC 19793, ITU-T X.906
www.rm-odp.netwww.rm-odp.net
SC32/WG2 meeting. London, 18 Nov. 2009 41
Use of UML* for ODP system Use of UML* for ODP system specifications - X.906 | ISO/IEC 19793specifications - X.906 | ISO/IEC 19793• A A standardstandard definingdefining::
• a set of UML profiles for ea set of UML profiles for exxpressingpressing a system a system specification in terms of specification in terms of ODP viewpoint ODP viewpoint specificationsspecifications
• possible relationships between the resultant ODP possible relationships between the resultant ODP viewpoint specifications and how they are represented viewpoint specifications and how they are represented
• the structure of a system specification expressed as a set the structure of a system specification expressed as a set of UML models using ODP viewpoint profilesof UML models using ODP viewpoint profiles
• A standard that enables the use of MDA tools in A standard that enables the use of MDA tools in developing and maintaining ODP system developing and maintaining ODP system specificationsspecifications
*currently Version 2.1.1*currently Version 2.1.1
UML4ODPUML4ODP
• Why?Why?– RM-ODP is notation- and methodology- RM-ODP is notation- and methodology-
independentindependent– This is an advantage (a-priori) ...This is an advantage (a-priori) ...– ...but in fact it hampers the widespread adoption ...but in fact it hampers the widespread adoption
and use of ODPand use of ODP– No notation…No notation…
– No tool support…No tool support…
– No ODP-based methodologies…No ODP-based methodologies…
SC32/WG2 meeting. London, 18 Nov. 2009 42
Target audiencesTarget audiences
• UML Modelers UML Modelers – who need to structure (somehow) their LARGE who need to structure (somehow) their LARGE
system specificationssystem specifications
• ODP ModelersODP Modelers– who need some (graphical) notation for expressing who need some (graphical) notation for expressing
their ODP specifications and tool supporttheir ODP specifications and tool support
• Modeling tool suppliers Modeling tool suppliers – who wish to develop UML-based tools capable of who wish to develop UML-based tools capable of
expressing RM-ODP viewpoint specifications.expressing RM-ODP viewpoint specifications.
SC32/WG2 meeting. London, 18 Nov. 2009 43
UML4ODP definesUML4ODP defines
• a UML based notation for the expression of a UML based notation for the expression of ODP specificationsODP specifications
• an approach for structuring of them using the an approach for structuring of them using the notation, thus providing the basis for model notation, thus providing the basis for model development methodsdevelopment methods
SC32/WG2 meeting. London, 18 Nov. 2009 44
UML4ODP providesUML4ODP provides
• The expression of a system specification in terms of RM-ODP The expression of a system specification in terms of RM-ODP viewpoint specifications, using defined UML concepts and viewpoint specifications, using defined UML concepts and extensionsextensions– A set of A set of UML 2 profiles UML 2 profiles (one for each viewpoint)(one for each viewpoint)
– A way of using these profiles (A way of using these profiles (structuring rulesstructuring rules))
• Relationships between the resultant RM-ODP viewpoint Relationships between the resultant RM-ODP viewpoint specifications specifications – A way of modelling ODP correspondencesA way of modelling ODP correspondences
– A A UML profile for correspondencesUML profile for correspondences
• A way for modelling conformance of implementations to A way for modelling conformance of implementations to specifications specifications – A A profile for conformance profile for conformance (reference points, conformance statements,(reference points, conformance statements,
…)…)SC32/WG2 meeting. London, 18 Nov. 2009 45
Viewpoint languages in UMLViewpoint languages in UML
• The DSLs used to represent the viewpoint languages are The DSLs used to represent the viewpoint languages are defined using the UML defined using the UML lightweightlightweight extension mechanism extension mechanism ((UML ProfilesUML Profiles))
• Stereotypes are used to represent domain specific Stereotypes are used to represent domain specific specializations of UML metaclasses in order to express the specializations of UML metaclasses in order to express the semantics of the RM-ODP viewpoint language concernedsemantics of the RM-ODP viewpoint language concerned
• Each viewpoint specification uses the appropriate UML profile Each viewpoint specification uses the appropriate UML profile for that language, as described in Clauses 7 to 11 for that language, as described in Clauses 7 to 11
SC32/WG2 meeting. London, 18 Nov. 2009 47
UML4ODP specification structureUML4ODP specification structure
SC32/WG2 meeting. London, 18 Nov. 2009 48
UML4ODP document structureUML4ODP document structure1 1 Scope Scope
2 2 Normative references Normative references
3 3 Definitions Definitions
4 4 Abbreviations Abbreviations
5 5 Conventions Conventions
6 6 Overview of modelling and system specification approachOverview of modelling and system specification approach
77 Enterprise SpecificationEnterprise Specification
88 Information SpecificationInformation Specification
99 Computational SpecificationComputational Specification
10 10 Engineering SpecificationEngineering Specification
11 11 Technology SpecificationTechnology Specification
12 12 Correspondence SpecificationCorrespondence Specification
13 13 Modelling conformance in ODP system specificationModelling conformance in ODP system specification
14 14 Conformance and compliance to this document Conformance and compliance to this document
Annex A Annex A An example of ODP specifications using UMLAn example of ODP specifications using UML
• Description of the correspondences to other viewpointsDescription of the correspondences to other viewpointsSC32/WG2 meeting. London, 18 Nov. 2009 62
Document structure (clauses 7-11)Document structure (clauses 7-11)
XX <Viewpoint> Specification <Viewpoint> SpecificationX.1 Modelling conceptsX.1 Modelling concepts
• A brief description of the <viewpoint> languageA brief description of the <viewpoint> language
• Summary of the <viewpoint> MOF-metamodelSummary of the <viewpoint> MOF-metamodel
X.2 UML ProfileX.2 UML Profile
• Description on how the language concepts are mapped to UML, by Description on how the language concepts are mapped to UML, by extending the appropriate metaclassesextending the appropriate metaclasses
• UML specification of the profileUML specification of the profile
X.3 <Viewpoint> specification structure (in UML terms)X.3 <Viewpoint> specification structure (in UML terms)
• UML packages and grouping rulesUML packages and grouping rules
X.4 Viewpoint correspondences for the <Viewpoint> languageX.4 Viewpoint correspondences for the <Viewpoint> language
• Description of the correspondences to other viewpointsDescription of the correspondences to other viewpoints
SC32/WG2 meeting. London, 18 Nov. 2009 63
More on UML4ODPMore on UML4ODP
• IS already publishedIS already published
• Tool support currently availableTool support currently available– Profiles for several UML modeling toolsProfiles for several UML modeling tools– A plugin for MagicDrawA plugin for MagicDraw
•Writting ODP specifications using UML4ODPWritting ODP specifications using UML4ODP
•Validation and conformance cababilitiesValidation and conformance cababilities
• Visit www.rm-odp.net Visit www.rm-odp.net
SC32/WG2 meeting. London, 18 Nov. 2009 64
SC32/WG2 meeting. London, 18 Nov. 2009 65
Revision of the RM-ODPRevision of the RM-ODP
Amendments to Amendments to
ISO/IEC 10476-2 | ITU-T X.902 (Foundations)ISO/IEC 10476-2 | ITU-T X.902 (Foundations)
ISO/IEC 10476-3 | ITU-T X.903 (Architecture)ISO/IEC 10476-3 | ITU-T X.903 (Architecture)
www.rm-odp.netwww.rm-odp.net
Revision of RM-ODPRevision of RM-ODP
• Improvement/Explicit definition of some existing conceptsImprovement/Explicit definition of some existing concepts– RoleRole
– Specification, Notation, Model, …Specification, Notation, Model, …
– Viewpoint correspondenceViewpoint correspondence
– Policy concepts (rule, policy, policy envelope, ...)Policy concepts (rule, policy, policy envelope, ...)
• Introduction of new conceptsIntroduction of new concepts– Service concepts (service, interoperability)Service concepts (service, interoperability)
– Component concepts (component, event, factory, …)Component concepts (component, event, factory, …)
– Relationship/RelationRelationship/Relation
– PatternsPatterns
• Improvement of aligments between Parts, and with other ODP Improvement of aligments between Parts, and with other ODP standardsstandards
SC32/WG2 meeting. London, 18 Nov. 2009 66
Service Service (Part 2-13.3.1)(Part 2-13.3.1)
ServiceService: a behaviour, triggered by an interaction, that adds value : a behaviour, triggered by an interaction, that adds value for the service users by creating, modifying, or consuming for the service users by creating, modifying, or consuming information; the changes become visible in the service information; the changes become visible in the service provider’s environment. provider’s environment.
NOTES NOTES 1.1. Services are associated with interfaces and defined by the structural, behavioural and Services are associated with interfaces and defined by the structural, behavioural and
semantic rules of the interaction types involved. semantic rules of the interaction types involved.
2.2. A service can be characterized by a service type. A service is identifiable. A service may A service can be characterized by a service type. A service is identifiable. A service may be composed of other services. be composed of other services.
3.3. A service is in general invoked from within a liaison. Rules can be associated with the A service is in general invoked from within a liaison. Rules can be associated with the liaison, which refine the service for the duration of the liaison. liaison, which refine the service for the duration of the liaison.
4.4. The service may be a complex behaviour, including both interactions and internal The service may be a complex behaviour, including both interactions and internal actions. actions.
5.5. The provision of a service involves a collaboration between its provider and user. This The provision of a service involves a collaboration between its provider and user. This collaboration may involve a complex series of interactions.. collaboration may involve a complex series of interactions..
SC32/WG2 meeting. London, 18 Nov. 2009 68
19793/19763 – Issues to consider19793/19763 – Issues to consider
• Overlaps of concepts (e.g., “service”)Overlaps of concepts (e.g., “service”)– In ODP, In ODP, basic concepts basic concepts span across viewpointsspan across viewpoints
•Object, service, …Object, service, …
•They are interpreted in each viewpointThey are interpreted in each viewpoint
– Some ODP concepts are particular to individual viewpointsSome ODP concepts are particular to individual viewpoints•Binding object, Cluster, IXIT (Implementation eXtra Information Binding object, Cluster, IXIT (Implementation eXtra Information
for Testing), …for Testing), …
• Metamodels mergingMetamodels merging– Does it make sense?Does it make sense?
• ……
SC32/WG2 meeting. London, 18 Nov. 2009 69
(to be completed)
SC32/WG2 meeting. London, 18 Nov. 2009 71
Supporting MaterialSupporting Material
(Slides that could be of interest during the (Slides that could be of interest during the discussions)discussions)
• Maybe we can pass some of the previous slides to this Maybe we can pass some of the previous slides to this part, in order to reduce the number of slides of the part, in order to reduce the number of slides of the main presentation. main presentation.
• The slides here can be shown if they are needed The slides here can be shown if they are needed during the discussionsduring the discussions
• E.g.,E.g.,– Some of the viewpoint metamodels and profiles (NV, TV)?Some of the viewpoint metamodels and profiles (NV, TV)?
– The bank information system example?The bank information system example?
– The lists of projects and products on SC7The lists of projects and products on SC7
SC32/WG2 meeting. London, 18 Nov. 2009 72