Comments on doing a CIM Project jay.britton@areva-td.com CIM Design Center A rule I learned about applying technology: Understand the design center of the technology. Use extreme caution if trying to apply the technology outside its design center. CIM Design Center CIM standards aim to simplify integration of components and expand options for supply of components by standardizing information exchanges. Reduce complexity with clear consistent semantic modeling across the enterprise. Data sources: achieve a clear picture of data mastership in the enterprise. Data consumers: make ‘data of record’ available on demand to qualified users. CIM employs a canonical data model (CDM) strategy for standardizing interfaces in the power system operations and planning domain. 2 2 What is a Canonical Data Model? 3 3 CIM Design Center (cont’d) The CIM CDM is partitioned into sub-domains by IEC WGs. These groups work hard to maintain a unified semantic model over the whole domain. The interfaces defined under CIM are organized into profiles. A profile specifies the information structure of exchanged information by creating contextual semantic models. - Contextual semantic models are a subset of the CIM CDM. i.e. They inherit their structure from the CIM CDM. - Contextual semantic models could contain information not modeled in the CIM CDM. • This is not current CIM practice for standard interfaces. There is typically a family of related interfaces defined within a profile. Products implement support for profiles. Testing occurs against profiles. CIM compliance is defined against profiles. - There is no such thing as just ‘CIM compliant’. You have to specify the profile. Do not expect CIM to make sense outside its design center. If its not needed in a CIM interface, don’t expect it to be in the model. Don’t expect that CIM is a good database schema. Don’t expect CIM to make a good class design for your application. 4 4 Overview of CIM Standards Methodology Canonical Data Model 5 5 WG13 CIM Standards CIM CDM CDM Semantic Model Equipment Model Measurement Specification State Variables Topology Analog Meas Set Status Meas Set Contextual Semantic Model Instance Data Analog Set scada Status Set state estimation State Var Meas Spec modeler Equip model topology & scheduling 6 State Var Topology State Var contingency analysis State Var State Var 6 CIM Evolution CIM is designed to achieve consistent, high quality models across a large domain. This mission requires that CIM is able to change as new interfaces are added. Typically it is not possible to preserve semantic quality if changes are restricted to additions. At the global CDM level, change is embraced as long as it makes a significant contribution to semantic quality. Stability may be addressed as appropriate at profile levels. Profiles are where the investment is made. Contextual model is derived from a version of the CIM CDM. Subsequent changes to CIM do not require that the contextual model be updated. At the profile level, the participants in the profile can determine how often to update their profile. About Versioning… CIM CDM and contextual models will change. Contextual models do not need to be updated simply because CIM CDM changes. 7 7 How to Cope with Versions An enterprise integration strategy based on CDM(s) is a good idea. Multiple CDMs are likely, but keep the number small. Extensions will be necessary when starting from core standards like CIM. An enterprise application of CIM will typically consist of information exchanges based on more than one version of the CDM. Critical decision: CIM CDM may be adopted just as a starting point, or the plan will be to keep current as CIM and contextual models evolve. Use of evolving Smart Grid standards will probably demand staying with CIM. A successful evolution strategy requires discipline in implementation to reduce the cost of subsequent updates. There will be lots of reasons raised as to why CIM should just be used as a starting point. To enable evolution… Implementation must minimize direct connection between exchanged data and internal data. i.e. Do not hardwire CIM to application internals – it makes changes too costly. 8 8 Transformations are Key Compatible version exchange. Producer App Semantic Mdl Transform Spec CIM Contextual Model Transform Spec Consumer App Semantic Mdl Transform issues Clarity Simple, low cost implementation Producer App Instance Data Transform Exchanged CIM Standard Data Consumer App Instance Data Transform Maintainability Performance! Incompatible version exchange. 9 Producer App Semantic Mdl Transform Spec Producer App Instance Data Transform X CIM Version CIM ContextMdl Transform ContextMdl Version x Spec Version y Transform Spec Consumer App Semantic Mdl X-Y Transform Transform Y Consumer App Instance Data CIM X Data CIM Y Data 9 You may think that CIM is complex. From the standpoint of one information exchange implementation, it is. If you compare life cycle of 100 exchanges, each implemented in CIM, against other alternatives, CIM is much simpler. CIM isn’t the easiest way to do anything – but it is the easiest way to do everything. 10 10