Sponsors PLCS Widening the take up March 2011 Contributors
Background Project Support for PLCS Challenges addressed Opportunities Project objectives Accomplishments Next steps Conclusions Contents 2
Project Background Norwegian Defence Logistics Organisation Developed Norwegian Defence DEXs, Deployed PLCS based translators, Supported development of AP239 ed2. UK Defence Equipment and Support (DE&S) Developed UK Defence DEXs, Deployed PLCS based translators, Supported development of AP239 ed2. Identified the need to: Make PLCS easier to understand, Make it easier to define PLCS based data exchange specifications, Provide easier implementation mechanism for PLCS 3
Project Project sponsors: Norwegian Defence Logistics Organisation UK Defence Equipment and Support (DE&S) Project contributors: DNV Eurostep Project objectives: Make PLCS easier to understand, Make it easier to define PLCS based data exchange specifications, Provide easier implementation mechanism for PLCS. 4
PLCS Background Business need Clear business requirement for the use of PLCS Has traction in terms of customer requests NDLO, UK MOD, NATO, USAF, US NAVSEA, US Army, FMV Implementations Some early implementation successes Some industrial deployments/pilots BAE Systems, Motorola, Volvo, Airbus, Boeing, FMV, Kongsberg, AM General, Oshkosh. Used live from the Afghanistan Some commercial tool support.. the PLCS model satisfies a business need. the implementations have delivered real business value. but requires experts and in-depth knowledge PLCS as a standard - ISO 10303-239 Has a second edition in preparation Small increase in scope Greater compatibility with Systems Engineering and PLM ISO standards 5
PLCS as OASIS standards PLCS Background Many DEXs but only one DEX as OASIS standard But standardized components e.g. templates + ref data Fragmented approach to standards development Focus on Business DEXs rather than standard DEXs Take up Built from standardized components Limited take up by COTS software providers, systems integrators, OEMS Limited number of experts Technology Does not use mainstream software technology or recognized architecture framework approaches Comprehensive but complex information model Inefficient implementations Hence.. need to remove barriers to PLCS exploitation 6
Support for PLCS Where we are now DEXs Business Deployments Coordination Interoperability PLCS Standard core model Experts Tools Education Skills & Training Where we need to go 7
Challenges addressed Business challenges To make DEXs more understandable to business & technical users To align with Enterprise Architecture approaches TOGAF versus no defined relationship Enable integration of DEXs into UPDM based architectures i.e MODAF, DODAF. To make the standard easier to understand To determine whether PLCS meets project needs/requirements To make it easier to specify standards based exchanges To make Data Exchange Specification(DEX) development easier and faster Technical challenges To move the standard to use mainstream technology UML technologies versus EXPRESS + OASIS PLCS TC e.g templates bespoke technology XML technologies used the way implementers expect To support both file based and service based exchanges To make implementation quicker To make the resulting exchange capability more efficient Project challenge Do the above without changing the standard core of PLCS because it has been demonstrated to deliver real business value 8
Experience Experience available from: Specifying data exchanges Production level implementations Opportunities New Technology Since PLCS project, newer technologies that address some of the core needs Out of the Box have matured so enables reduction in bespoke technologies OMG Model Driven Architecture / Enterprise Architecture approaches OMG UML is closer to EXPRESS in its declarative capability and is far more widely adopted OMG SysML is a UML profile that provides the full capabilities required by the DEX specification process Advantage Take advantage of experience and new technology to: Exploit mainstream technology Integrate PLCS into an Architecture Framework approach Provide higher level perspective on the information model Make the information model easier to implement and understand Make it easier to specify data exchanges Hence enables quality improvement 9
Project objectives To investigate approaches to addressing the challenges identified To share the results of the investigation with the PLCS OASIS TC and wider standards community 10
Accomplishments ISO 10303-239 ed2 IS Architecture frameworks Activity Model Concept model Implementation schema Platform Specific Model SysML as a template language PLCS Web services DEXlib2 prototype 11
Accomplishments ISO 10303-239 ed2 IS Architecture frameworks Activity Model Concept model Implementation schema Platform Specific Model SysML as a template language PLCS Web services DEXlib2 prototype 22
Progress: Activity Model Problem statement: In IDEF0 and uses that functional paradigm Activity model when most are familiar with Process models Linked to DEXs at a high level but not explicitly linked to other models Delivered: Review of activity modelling approaches Example OV-5 AP239 IDEF0 Activity model in a navigable HTML Integrated with DEXlib2 23
Accomplishments ISO 10303-239 ed2 IS Architecture frameworks Activity Model Concept model Implementation schema Platform Specific Model SysML as a template language PLCS Web services DEXlib2 prototype 24
Progress: Concept model Objective To make the PLCS model more accessible Easier to understand / Easier to communicate Provide higher level Business Objects Delivered: Concept model Started integration to DEXlib2 Integrated with activity model Future work Integrate more with Architecture framework approach Further integration with activity model Integrate with information model (map to PLCS templates) 25
New Concept Model in UML 26
New Concept Model in UML Based on Eurostep experience presenting key aspects of PLCS In UML Class diagram syntax Makes key distinctions visible 27
Accomplishments ISO 10303-239 ed2 IS Architecture frameworks Activity Model Concept model Implementation schema Platform Specific Model SysML as a template language PLCS Web services DEXlib2 prototype 28
Progress: PLCS Platform Specific Model Problem statement AP239 was published in 2005. A number of successful deployments of AP239 since. However Not hit the mainstream Strong perception that it is a complex model that is difficult to understand and implement Non standard exchanges proliferate Why Model + documentation scattered across ISO 10303 modules STEP imposes a two level model ARM - MIM Lack of clarity of definitions often generic Foundation on legacy STEP leading to unused attributes / entities Attribute versus Assignment modelling Use of EXPRESS powerful, but not mainstream modeling language Large XML file sizes Part 28 XSD Schemata are extremely complex and can result in different XML 29
Progress: PLCS Platform Specific Model Problem statement So DEXlib was developed to address some of the issues: Improve documentation Specify ARM implementations Define consistent patterns by use of templates Templates hide model quirkiness (/IGNORE) and add higher level classes Reduce file size by uniqueness constraints But Does not use mainstream software engineering technology EXPRESS based Templates use path language derived from SC4 Uses bespoke tools All relations/assignments have a template Most of the AP239 model is redone as templates! Just adds identification and classification DEXlib focus on file exchange and does not include services This message reinforced by Implementation Workshop at PDT Europe Hence AP239 Implementation model OMG Platform Specific Model 30
Published as part of AP239 ed2 Published for general use in DEXlib2 AP239ed2 based AP239 E2 EXPRESS Schema Derived from AP239 E2 as SysML AP239 PLCS models Published for general use DEXlib2 PLCS Platform Specific Model (PSM) as EXPRESS transformation PLCS Platform Specific Model (PSM) as UML Classes Derived from PLCS Platform Specific Model (PSM) as SysML blocks Applies to PLCS Platform Specific Model (PSM) using Templates in SysML Suite of implementation forms PLCS PSM as EXPRESS P21/P28 PLCS PSM as XML Schema PLCS PSM as OWL PLCS PSM as Java / C# PLCS PSM WSDL/XSD PLCS PSM templates as WSDL/XSD
PLCS Platform Specific Model: What is it? What is the purpose of implementation model? Make AP239 easier to implement Better alignment with XML Schema, UML/SysML, OWL Remove inefficient legacy STEP constructs Reduce barriers to implementation Make the model more understandable Adopt mainstream software engineering technology What is the implementation model? A refinement of the AP239ed2 EXPRESS model. 32
PLCS Platform Specific Model: What is it? How is the implementation model represented? As an EXPRESS model And as an equivalent SysML Block definition model (XMI based) Presented in DEXlib2 How is the implementation model implemented? As an XML Schema derived from the XMI Data close to ISO 10303-28 ed2 format What is different at an information level? More efficient identification and use of reference data Improved representation of properties Removal legacy STEP attributes & entities that are redundant Use of encapsulation/composition for key constructs. E.g. product/version/view definition. 33
Progress: PLCS Platform Specific Model What has been delivered? PLCS Platform Specific model an implementation schema uses UPDM technologies i.e. SysML is integrated into DEXlib2 prototype developed EXPRESS, SysML, OWL, XML Schema XML Schema for PLCS PSM Test data according to XML Schema for PLCS PSM Modified top level reference data to be PLCS PSM derived 34
Accomplishments ISO 10303-239 ed2 IS Architecture frameworks Activity Model Concept model Implementation schema Platform Specific Model SysML as a template language PLCS Web services DEXlib2 prototype 35
Progress: SysML Problem statement Purpose of the templates: Define a repeatable instantiation pattern ensuring consistent use of PLCS Define an instantiation pattern for a human Define an instantiation pattern for software translator Define building blocks that can be reused to construct higher level templates Current DEXlib template definitions use: A number of specifications Parameter specifications Uniqueness rules Template instantiation path Graphical representation A number of standards EXPRESS Path language (not specified with sufficient rigor) Varied tools DEXpro (opensource java) DEXTemplate (unmaintained Visio add-on incompatible with latest versions of Visio) GraphicalEXPRESS (Visio addon, like DEXTemplate) GraphicalInstance (partially maintained) XML editors 36
Progress: SysML Problem statement Consequence: Templates can only be written by a few people Templates can only be implemented by fewer Templates may have a number of errors undetected until implementation Templates ARE NOT using mainstream software technology 37
Progress: SysML Objective: Investigate an approach to templates using mainstream software engineering tools. Delivered: A SysML based approach to documenting templates Facilitates developing templates Enables use of mainstream software Choice of COTS SysML tools available Improves quality by providing strong type checking XMI based hence input to DEXlib2 38
39
MagicDraw SysML for Template definition 40
Accomplishments ISO 10303-239 ed2 IS Architecture frameworks Activity Model Concept model Implementation schema Platform Specific Model SysML as a template language PLCS Web services DEXlib2 prototype 41
PLCS Web services: Problem statement Complexity model with large number of classes leads to slow validation of data Chatter Fine grained data level messages lead to significant system communication or large data volumes Clarity Proposed PLCS web services require detailed knowledge of PLCS. Typical software resources: Do not understand EXPRESS Do not understand the modelling style Are not familiar with t he terminology 42
SOA Architecture Process model of Collaboration uses SysML templates map to PLCS PSM Specifies Business Object model Business services Composite services maps Reads/writes/creates aggregates PLCS based Data model SysML PLCS PSM Data services Reads/writes/creates 43
Problem: Low level data services Collaboration process Fine grained data exchange ISO 10303-233/239 PLCS PSM Business object model SysML Templates Implementation of SOA Mapping SysML templates map to ISO 10303-233/239 Data model SysML PLCS PSM information model implemented by server Data services ISO 10303-233/239 data services Web services Data ISO 10303-233/239 PLCS PSM Collaboration Hub Clients Server 44
Solution: High level data services Template Collaboration process based data exchange Implementation of SOA Mapping SysML templates map to ISO 10303-233/239 Data model SysML PLCS PSM information model implemented by server Business object model SysML Templates Data services ISO 10303-233/239 data services Business Services Web services Data Data Business Objects ISO 10303-233/239 PLCS templates defined PLCS PSM in SysML Collaboration Hub Clients Business services Composite services an aggregation of the data services Server 45
PLCS Web services: Conclusions 1. Scope for improvement in how web services based on PLCS are defined, both in effectiveness and in increased acceptance. 2. Can be addressed by defining web services at the level of DEX templates which correspond to business objects. 3. The use of standard OMG UML, while being an appropriate mainstream technology, is not sufficient. 4. OMG SysML provides the full suite of capabilities to act as the source for web service generation and should be used for defining templates within the PLCS DEXs. 5. The use of Reference data requires guidance but if used consistently can support the web service definition process and use. 6. The PLCS Activity Model is weakly linked to the rest of the standard and no process models are available. 46
ISO 10303-239 ed2 IS Accomplishments Architecture frameworks Activity Model Concept model Implementation schema Platform Specific Model SysML as a template language SysML templates business level web services DEXlib2 prototype 47
Progress: DEXlib2 development environment Problem statement: Need to document and publish DEX specification based on SysML Need DEXs to support PLCS PSM Need to provide configuration management on models Objective: Develop a DEXlib to support AP239 ed2 PLCS PSM schema SysML templates Concept model Activity model Delivered: Prototyped new DEXlib Integrated PLCS reference material New Concept Model Activity Model PLCS model in SysML Model presentation driven from XMI (XML encoded UML) Templates in SysML Model presentation driven from XMI (XML encoded UML) DEXs in SysML Restructured to promote Contexts (such as OASIS, ASD, UK Defence, NDLO etc) 48
PLCS Components Scope DEX Text text text text text. Business context Text text text text text text text text text. Description Text text text text text. Text text text text text. Definition template template Reference data class class scopes is composed of provides guidance for usage of ISO 10303-239 Template Template Definition Definition Definition PLCS PLCS entity entity PLCS PLCS PLCS entity entity entity Parameters Parameters PLCS entity Parameters Referencedata Referencedatareference to Reference class class data class class class class reference to specifies usage of references Activity model provides guidance for usage of Concept model specified in defined in OASIS RD Class (term+definition) Class (term+definition) Class (term+definition) Class (term+definition) Class (term+definition) abstracts Capability Scope Scope Text text text text Text text text text Text text. text text text text. text. Business context Business Text text context Text text text text Text text. text text text text. text. Description Description template template Text text text Text text text text. text Text text text text text. text text. template template specializes Text text text Text text text Text text text text. text text text. text text. usage guidance for PLCS Platform Specific Model (PLCS PSM) specializes ISO 10303-239 PLCS (the formal standard)
50
51
52
53
54
Development landscape Ref Data OWL Tool Ref Data Translator developer PLCS PSM SysML XMI UPDM SysML Tool DEX SysML XMI XMI2XSD PLCS PSM XML Schema Templates SysML XMI DEX developer Business analyst Templates SysML XMI XMI2WSDL WSDL SOA architect XMI2XSD Template XML Schema 55
Project achievements Rapid progress on a broad front, addressing areas in parallel Adopted mainstream software technology (SysML / UPDM) Made it easier to specify data exchange requirements Made PLCS understandable to a broader audience Simplified the process for specifying DEXs Enhanced the scope of the PLCS model Simplified and improved the PLCS model whilst maintaining the richness of the PLCS model Removed redundant and unused constructs Reduced the number of templates required Simplified the implementation of PLCS Demonstrated how PLCS PSM can support both: File exchange Web service exchange 56
Next Steps Present work to PLCS OASIS, SC4, INCOSE, LOTAR, ASD & AIA communities Solicit feedback / contributions With agreement with PLCS OASIS TC, develop DEXlib2 based on new approach Proof of concept Test & validate approach on an implementation project Develop a DEX + templates + reference data Implement translator Review and improve approach Compare with existing approach 57
Next Steps Activity model Investigate use of IDEF0 in UPDM Consider development of process models Concept Model Develop the concept model further Integrate with activity model Integrate with templates Develop high level business model PLCS PSM Review / Implement / Improve cycle 58
Next Steps DEXs Review / Implement / Improve cycle Define a DEXs Continue investigation in integrating DEX into UPDM SysML templates / DEXs Review / Implement / Improve cycle Re-establish a base set of templates in SysML Automate the generation of an XSD from the templates to support data exchange based on templates SysML Web services Develop the approach to web services based on business templates Develop automated generation of CRUD template services Develop a process model view for a DEX in OV5 basis of one in Aviation Maintenance DEX Define how to document composite services from the process model and templates services Reference Data Develop a set of reference data for PSM Investigate restriction on the permissible PLCS exchanges specified by OWL restrictions. 59
Next Steps Capabilities These need to be developed. Possibly structured around the concept model DEXlib An initial framework developed, some of the DEXlib functionality replicated Develop DEXpro tool to generate DEX templates etc Usage guidance Check lists / verification tools of DEXlib components e.g. templates Model management Documentation Document the approach Training Provide training material in SysML, templates etc. 60
Summary What has been achieved? Shown how PLCS can use mainstream software technology. Hence: Easier to understand and exploit the standard both at a business and technical level What needs to be done? Achieve buy in by PLCS community Complete the transition of PLCS to mainstream technology Expand take up by COTS vendors / System Integrators, OEMs resulting in significant benefits in terms of costs & quality 61
Points of contacts Norwegian Defence Tor Arne Irgens Chief PLCS Section tai@sfk.mil.no DNV Trine Hansen Trine.Hansen@dnv.com UK Ministry of Defence Phil Rutland DESLogNECProg-FLIS-InfoStds@mod.uk Eurostep Rob Bodington rob.bodington@eurostep.com 62