Upload
amelia-gaines
View
217
Download
0
Embed Size (px)
Citation preview
Slide 1
OMG, Montreal, August 2004
OMG_SWIFTMDA_200408_v2.ppt
SWIFTStandards(UNIFI – ISO 20022)“MDA-like” approach
Frank VandammeTools, Products & MethodologySWIFTStandards
Slide 2 OMG_SWIFTMDA_200408_v2.ppt
Agenda
IntroductionIntroduction
Development methodologyDevelopment methodology
Development infrastructureDevelopment infrastructure
Implementation infrastructureImplementation infrastructure
Slide 3 OMG_SWIFTMDA_200408_v2.ppt
IntroductionWhat is SWIFT?
Society for Worldwide Interbank Financial Telecommunication Community of +7,000 financial institutions in +200 countries:
– Payments (e.g. cross-border, domestic, corporate)
– Securities (e.g. equity, fixed income, funds)
– Treasury (e.g. foreign exchange, swaptions)
– Trade Services (e.g. letters of credit) Mission: “To enable interoperability between our members, their
market infrastructures and their end-user communities” Concrete activities:
– Establish secure and reliable network application
– Standardize information flows (messages)
Slide 4 OMG_SWIFTMDA_200408_v2.ppt
IntroductionWhat is UNIFI (ISO 20022)
Standard developed under ISO/TC68 (financial arm of ISO) Modelling-based approach to develop standardised messages Used in the financial industry Described in 5 parts:
– Part 1: overview of the main components– modelling-based approach– repository
– Part 2: registration bodies
– Part 3: modelling guidelines
– Part 4: XML design rules
– Part 5: Reverse engineering approach
Slide 5 OMG_SWIFTMDA_200408_v2.ppt
IntroductionDrivers for the MDA approach
Stability
– Business-driven approach Interoperability and convergence
– End-to-end based on common semantics Neutrality
– Acceptable common description for existing standards Flexibility
– Cater more easily for market practices and market evolution Predictability, consistency and speed
– Foster reuse and automation capabilities
Note: not used by SWIFT for application generation
Slide 6 OMG_SWIFTMDA_200408_v2.ppt
Standards development methodologyOverview
Three layered approach Business-oriented Communication needs End-to-end view Formal notation (UML) Representation-neutral Implementation-neutral Foster reuse (dictionary) Involve industry experts
Business AnalysisBusiness Analysis
Requirements AnalysisRequirements Analysis
Logical AnalysisLogical Analysis
Logical DesignLogical Design
Technical DesignTechnical Design
Technical ImplementationTechnical Implementation
Understand the business
What is the communication
problem
Define the solution
Refine the solution
Physical implementation
(automated)
Slide 7 OMG_SWIFTMDA_200408_v2.ppt
Standards development methodology Business analysis Understanding the business
– Processes: what activities are happening
– Roles: who (functionally) is involved
– Data: what information is used Results of business analysis
– Business activity diagrams (roles & activities)
– Business component diagram (data)
Business AnalysisBusiness Analysis
Requirements AnalysisRequirements Analysis
Logical AnalysisLogical Analysis
Logical DesignLogical Design
Technical DesignTechnical Design
Technical ImplementationTechnical Implementation
Understand the business
What is the communication
problem
Define the solution
Refine the solution
Physical implementation
(automated)
Slide 8 OMG_SWIFTMDA_200408_v2.ppt
Standards development methodology Requirements analysis Identifying communication requirements per activity
– Who owns the information
– Who can provide the information
– What are the required information flows Identifying additional requirements and constraints
– Which types of physical actors can play which roles
– Market specific information requirements Results of requirements analysis
– Activity diagrams with required information flows
– Requirement description documents
– Business test scenarios (high level)
Business AnalysisBusiness Analysis
Requirements AnalysisRequirements Analysis
Logical AnalysisLogical Analysis
Logical DesignLogical Design
Technical DesignTechnical Design
Technical ImplementationTechnical Implementation
Understand the business
What is the communication
problem
Define the solution
Refine the solution
Physical implementation
(automated)
Slide 9 OMG_SWIFTMDA_200408_v2.ppt
Standards development methodology Logical analysis Identifying the transactions (collaborations)
– Sequence of messages
– Pre- and post-conditions, triggers, … Identifying the messages
– Message granularity guidelines
– Message content (based on business elements)
– Message usage authorisation / restrictions
– Business cases for “variants” Results of logical analysis
– Sequence diagrams
– Message scope & content
– Business test scenarios (refined)
Business AnalysisBusiness Analysis
Requirements AnalysisRequirements Analysis
Logical AnalysisLogical Analysis
Logical DesignLogical Design
Technical DesignTechnical Design
Technical ImplementationTechnical Implementation
Understand the business
What is the communication
problem
Define the solution
Refine the solution
Physical implementation
(automated)
Slide 10 OMG_SWIFTMDA_200408_v2.ppt
Standards development methodology Logical design Identifying the message structure
– Identify message components
– Include required “technical” elements
– Define structural message organisation
– Formalise required business rules Results of logical design
– Message definitions (structure)
– Message components
– Business & technical test cases (detailed)
Business AnalysisBusiness Analysis
Requirements AnalysisRequirements Analysis
Logical AnalysisLogical Analysis
Logical DesignLogical Design
Technical DesignTechnical Design
Technical ImplementationTechnical Implementation
Understand the business
What is the communication
problem
Define the solution
Refine the solution
Physical implementation
(automated)
Slide 11 OMG_SWIFTMDA_200408_v2.ppt
Standards development methodology Technical design & implementation Preparing the physical implementation
– Add syntax-specific information (e.g. tags) Applying the syntax-specific design rules
– UML-to-XML generation Results of technical design & implementation
– XML Schemas
– XPL rules
– Message samples
Business AnalysisBusiness Analysis
Requirements AnalysisRequirements Analysis
Logical AnalysisLogical Analysis
Logical DesignLogical Design
Technical DesignTechnical Design
Technical ImplementationTechnical Implementation
Understand the business
What is the communication
problem
Define the solution
Refine the solution
Physical implementation
(automated)
Slide 12 OMG_SWIFTMDA_200408_v2.ppt
ISO 20022 Standards Repository
DATA DICTIONARY BUSINESS PROCESS CATALOGUE
Standards development infrastructureStandards repository
are describedwith
use
BUSINESS AREAS
support execution of
BUSINESS TRANSACTIONS
BUSINESS CONCEPTS
MESSAGE CONCEPTS
DATA TYPES
are derived from
Slide 13 OMG_SWIFTMDA_200408_v2.ppt
DATA DICTIONARYBusiness Concepts Data Types Message Concepts
Standards development infrastructure Data Dictionary
Message Component
Message Element
Rule
Data Type
Data Type Representation
is based on
Code
is value of
Business Actor
Business Role
Business Association
Business Component
Rule
relates
plays role
Business Element
is derived from
is derived from
is of typeis of type
Slide 14 OMG_SWIFTMDA_200408_v2.ppt
Business Process CatalogueBusiness Process Catalogue
Standards development infrastructure Business Process Catalogue
Business Area
Business Process
Business Transaction
supports execution of
Business TransactionBusiness Transaction
SyntaxMessage
Scheme (s)
Message Definition
uses
SyntaxMessage
Scheme (s)
Message Definition
SyntaxMessage
Scheme (s)
Message Definition
Message FlowDiagram
uses
Message FlowDiagram
Message FlowDiagram
Slide 15 OMG_SWIFTMDA_200408_v2.ppt
Standards development infrastructureUML profile: used diagrams
Which diagrams are used (business layer)?
– Business Analysis– Use Case diagram: highest level decomposition in business
processes
– Activity diagram (swim lanes): details of business processes: activities & roles
– Class diagram: dictionary (business components, data types, actors)
– Requirements Analysis– Activity diagram (swim lanes): required information flows
– Complemented by textual information: e.g. links with business components
Slide 16 OMG_SWIFTMDA_200408_v2.ppt
Standards development infrastructureUML profile: used diagrams
Which diagrams are used (logical layer)?– Logical Analysis
– Sequence diagram: description of message flow (business transactions)
– Class diagram: messages– Logical design
– Class diagram: dictionary (message components, data types)
– Class diagram (hierarchical): message structure No additional diagrams used in technical/physical layer
Slide 17 OMG_SWIFTMDA_200408_v2.ppt
Standards development infrastructureUML profile: stereotypes identify concepts
Some examples of stereotyped concepts:– Classes
– <<BusinessComponent>>– <<MessageComponent>>– <<ChoiceComponent>>– <<DataTypeRepresentation>> (<<Text>>, <<Identifier>>, …)– <<Message>>– <<Actor>>
– Associations– <<IsVersion>>– <<IsVariant>>– <<IsAlternativeFor>>
Slide 18 OMG_SWIFTMDA_200408_v2.ppt
Standards development infrastructureUML profile: tagged values add information
Some examples of tagged values– Synonyms (business terms)
– Business components– Business elements– Messages
– Administrative information– Requestor– Registration status
– Supplementary information for data types– Code list owner– Format (facets)
– Traces between “business layer” and “message layer”– Business components to Message components
Slide 19 OMG_SWIFTMDA_200408_v2.ppt
Standards development infrastructureUML profile: platform specific information
Through stereotypes, tagged values or properties Some examples
– Operations
– “Injectable” in validation engine (via “export control property”)
– SWIFTNet error code (tagged value)
– Message elements
– XML tags (tagged value)
– Data types
– <<XMLAttirbute>> (to be included in Schema)
– <<Property>> (for documentation only)
Slide 20 OMG_SWIFTMDA_200408_v2.ppt
Standards development infrastructureTool (“Standards Workstation”)
UML modeling tool for modeling activities Add-ins to support and enforce methodology & guidelines
– Traceability between “business layer” and “logical layer”
– Formal rules
– Conformance checking
– Completeness checking Link with data dictionary Import and export of sample data
StandardsWorkstation
Slide 21 OMG_SWIFTMDA_200408_v2.ppt
Standards development infrastructureGUI for formal rules
Slide 22 OMG_SWIFTMDA_200408_v2.ppt
Standards development infrastructureGUI for formal rules
Slide 23 OMG_SWIFTMDA_200408_v2.ppt
Standards development infrastructureSupporting process
Continuous quality control– Check non-automated rules & guidelines– Check conformance with approval process– Freeze models for audit purposes– Check consistency across phases
– Are all requirements covered– Are all messages based on approved requirements– …
Mandatory review activities– By registration authority– By business experts
Change log entries for dictionary components
Slide 24 OMG_SWIFTMDA_200408_v2.ppt
More to come …
Repository instance(XML)
Message samples
SWIFTNet
Standards implementation infrastructureAutomated generation: overview
“Injection”
InternalRepository
“Publication”
Business ProcessCatalogue
Financial Dictionary
XML Schemas
Documentation
StandardsWorkstation
•XML Schemas•Validation rules•Samples
Slide 25 OMG_SWIFTMDA_200408_v2.ppt
Standards implementation infrastructureAutomated generation: documentation
HTML (available) and PDF (in development) User view and implementer view Combines model information with “auxiliary documents” (= text) “Click-able” sequence diagrams Message tree structure (expand / collapse) Dictionary information (data types, …) Delta documentation (for versions and variants) Generated sample messages
Slide 26 OMG_SWIFTMDA_200408_v2.ppt
Standards implementation infrastructureAutomated generation: XML Schema
Consistency in XML
– Business information XML element/value– Metadata information XML attribute (usually not in instance)
ComplexTypes are globally unique / elements are local Traceability from XML to repository (based on XML element name
and/or XML type name) Message identifier = aaaa.bbb.ccc.dd (business area - message
number – variant – version) Character encoding = UTF-8 Data types: Text, Code, Identifier, Amount, Rate, Quantity, Indicator,
DateTime XML facets: Pattern, Length, MinLength, MaxLength, TotalDigits,
FractionDigits, MinInclusive, MaxInclusive, MinExclusive, MaxEclusive
Slide 27 OMG_SWIFTMDA_200408_v2.ppt
Standards implementation infrastructureAutomated generation: repository
UML repository is converted to:
– Relational database
– Basis for web query tool on “www.swift.com” and on “www.iso20022.org”
– Also used for impact analysis
– XML instance
– Prototype