Understanding and Using The IEC 61850 A Case For Meta-Modelling
Understanding and Using The IEC 61850 A Case For Meta-Modelling
www.elsevier.com/locate/csi
Abstract
This paper argues for means to rigorously specify data models and communications services of industrial data
communications standards. It uses the example of the recently published IEC 61850 standard bCommunications networks
and systems in substationsQ. The latter applies mainly to electrical supply systems such as substations and decentralised power
resources (based on wind, photovoltaic, fuel cells, hydropower). However, the concepts of the IEC 61850 could be used in other
industrial areas, as well.
The paper shows how the complex standard can be modelled elegantly and precisely with a meta-modelling approach, in
which we utilise the UML for the model representation. The conceptual approach presented makes the inherent complexity of
the standard’s data model manageable for both humans and machines. That is, it facilitates human comprehension and machine
processability and thereby contributes to a better understanding of the standard as well as to a better utilisation of the standard
through functionality provided in today’s CASE tools. One important aspect is that it allows one to establish and maintain
consistency across the standard’s data and communications models.
D 2004 Elsevier B.V. All rights reserved.
Keywords: UML; Meta-modelling; Modelling tools; Formal model; IEC 61850; Communication networks and systems; Specification
consistency
close to what software programmers would call interpretation space. After all, we should not forget
primitive data types. The mapping of the application that it is the software engineers who are to
data items to underlying communications stacks was understand the standard so as to develop standard’s
also rather straightforward, not at last because the compliant software.
standards usually defined all or the required layers1 of The IEC 61850 standard [1], which deals with
a communications stack on their own. different aspects of communications in substations of
This simplicity, however, has turned into com- electrical power networks, is not an exception to the
plexity. The complexity has a number of reasons. (a) picture painted in the previous paragraph. Content-
Structurally much more complex pieces of informa- wise and related to the topic of a communications
tion shall be exchanged. (b) More elaborate com- protocol, the standard specifies three aspects, which
munications services are realised through the are relevant for the software to be developed by
adoption of communications techniques and service vendors of substation automation equipment: (1) a
models that were introduced in standard information comprehensive data model (the bwhatQ); (2) the
technology (IT). For example, this includes commu- communication services to access and exchange data
nications techniques based on confirmed and uncon- (the bhowQ); and (3) the substation configuration
firmed services, elaborate event models, security language (SCL), a formal way to describe how
services, transaction support, remote procedure calls, individual devices are configured; that is, what data
etc. (c) It is desirable that the communications and services they are supposed to be supporting. The
standards can make use of existing communications goal of the standard is to facilitate integration and
layers or profiles (such as Ethernet for physical and inter-operability of different devices when building
link layer, IP and TCP for network and transport new or refurbishing old substations with automation
layer, etc.). equipment.
However, these more complex pieces of infor- Albeit hugely complex, a notable contribution of
mation and more complex types of services are still the standard is its elaborate compilation of data items
constrained by the soft real-time nature of the that can be transferred among communicating sub-
industrial control applications. Thus, the mix of station equipment. We call this compilation the bdata
domain-specific requirements with the reuse of modelQ. It reflects the semantics of the application
standard IT approaches and technologies leads to domain (substation automation), as opposed to a
big, complex standards with many implicit and simple syntax. However, apart from the SCL, which
explicit dependencies among parts of such a stand- is specified as a W3C XML Schema, all the normative
ard. It is typically the case that such domain- specifications are natural language texts largely
specific protocol standards are defined by domain structured by means of tables. Some tables and
experts who, while experts in their domain, have elements of tables may have explicit references to
limited knowledge about IT-related methods and other tables and elements (see left side of Fig. 12), but
practices to rigorously specify data and other quite often there are no explicit links. In the latter
models. Consequently, the standards contain a lot case, the reader is assumed to understand the
of implicit domain knowledge, which is hardly substation automation domain, which would help
accessible to software engineers. This is for two him to consider implicit relationships when appro-
reasons: first, the domain-specific concepts and priate. One really has to be domain expert to under-
connotations of the vocabulary are not known and stand what was meant with, for instance, the attribute
leave a lot of room for interpretation and therefore A in the table T1 in one part of the standard, and what
also for the conceptual mapping to software con- is its relationship to the (same or not?) attribute A in
cepts; second, the lack of preciseness in the (natural the table T23 in another part of the standard. This
language) representation does not constrain the
2
Note that the figure has mnemonic value only; that is, the reader
1
Layers in the sense of the seven-layer model of the ISO/IEC is not assumed to read the figure contents in detail but understand
7498 [9]. our high level objective: tables vs. UML.
T. Kostic et al. / Computer Standards & Interfaces 27 (2005) 679–695 681
Fig. 1. Objective: Make the references defined in IEC 61850 tables (left) explicit and rigorous (right).
situation is problematic because we are talking about To circumvent the first point above, we propose an
more than 150 tables distributed over more than 600 original, formal data type model using four levels and
pages in five different documents. being expressed in UML [2]. This is the main topic of
In our opinion, there are three main categories of this paper. Our meta-model cannot eliminate the
problems within the standard, as it is defined now: coupling of data and communications (cf. point 2),
but it can at least localise it precisely. While we have
(1) During its definition, we suspect the lack of an addressed the third deficiency in our work, it is out of
explicit bdesignQ phase, which would have scope for this writing (and would deserve a paper on
introduced a solid conceptual foundation (pre- its own).
cisely defined concepts and concept relation- We have developed a formal UML model [3] in
ships, modelling terminology) on which the Rational Rose, which contains the full specification of
remaining parts of the standards could have both the data and the communications models. In the
built their precise models. rest of this paper, we will refer to this model as bthe
(2) Although it would be highly favourable and UML ModelQ. We believe that such a formal model
natural to clearly separate the application data already contributes to some of our goals:
model and communications concerns (e.g.,
related to efficiency), it is not fully achieved in ! It makes the standard accessible to software
the standard. Hence, the application data model is engineers, who are literate in UML. They need
bclutteredQ with concepts that relate to commu- not know much about the application domain.
nications—rather than application data issues. ! It allows for the leverage that CASE tool support
(3) While SCL is the only part of the standard can provide, not only in the support of consistency
normatively defined in a machine processable checking or for controlled extensions, but also in
way (W3C XML Schema), it does introduce its automatic natural language documentation or even
own concepts, which are partly inconsistent or code generation.
redundant to concepts specified in the other
normative parts of the standard. Consequently, a The rest of the paper is structured as follows. In
mapping is needed within the standard itself in Sections 2 and 3, we introduce the application domain
order to maintain consistency between the con- and the basic concepts of the standard, respectively.
figuration language concepts and concepts of the This should be enough to follow and appreciate the
data or service models of the core standard. main discussion and contribution of this paper—the
682 T. Kostic et al. / Computer Standards & Interfaces 27 (2005) 679–695
data type model—being presented in detail in Section ever, it implicitly documents the authors’ thinking,
4. Section 5 summarises the benefits of the more i.e., their conceptualisation of the relevant aspects
rigorous approach before Section 6 concludes the of the SA domain.
paper. ! Data modelling: a data model for SAS is defined. It
defines the syntax (naming scheme) and semantics
of the application level data that can be exchanged
2. The application domain in SA systems (Parts 7-2, 7-3 and 7-4).
! Communication service modelling: a communica-
Electric power networks (power grids) are respon- tions service model defines the different ways of
sible to transport energy from generation sites to accessing data of IEDs (Part 7-2).
end-consumers, such as individual households or ! Communications protocol stacks: the communica-
larger organisations. The nodes in such a network are tion services and data models are mapped to
called substations and take over the voltage trans- concrete data communications protocol stacks
formation and/or the routing of energy flow by (Parts 8 and 9).
means of the installed switchgear (e.g., transformers, ! SAS engineering and testing: a W3C XML based
circuit breakers). Substations are controlled by Substation Configuration Language (SCL, Part 6)
Substation Automation Systems (SAS), which are is defined to describe the substation and the
composed of all the electronic equipment that automation system topology, as well as the
continuously control, monitor, and protect the net- communications-relevant configuration data of
work and its high voltage equipment, so as to avoid IEDs. Part 10 describes the recommended con-
unplanned network outages. formance testing for IEC 61850 compliance.
An SAS can be classified as a distributed soft real-
time system and represents one possible type of data The most important contents of the standard, which
acquisition and process control system. It is usually is applicable to this paper, are found in its Parts 7-x.
composed of 20–100 Intelligent Electronic Devices However, we need to introduce some few basic
(IED) which are connected by a high-speed commu- concepts found in other parts of the standard.
nications network with possibly routers and gateways.
Any device that can run executable code and provides 3.1. The basic IEC 61850 concepts
a data communications interface would classify as an
IED (e.g., an intelligent sensor, an embedded device, a The standard implicitly introduced a terminology
programmable controller, a workstation PC, etc.). that we conceptualised and explain with the help of
While some real-time critical functions are executed Figs. 2 and 3. We will only briefly visit those
more or less autonomously on a single IED, other concepts that are relevant to the discussion in this
functions are realised in distributed manner over many paper. More details on the standard can be found in
IEDs. the standard’s documentation set, as well as in the
UML Model itself.
The functionality of a substation automation
3. The IEC 61850 standard system is described by a blogical systemQ that is
comprised of the set of functions that operate in the
The IEC 61850 set of documents [1] is divided into substation environment. This is seen on the left
10 parts (Parts 1–10), but content-wise, circles around branch of the conceptual model in Fig. 23. Functions
five major topics, where all but the functional model can be thought of as high-level system operations,
have a normative character: e.g., bopen a high voltage switch (called breaker) to
Fig. 2. Conceptual model of the key terms used in the IEC 61850.
The application data, which is exchanged over LCs ! LLN0, Logical Node Zero, for accessing data that
through the defined types of communications serv- is relevant for any Logical Device, as discussed
ices, is modeled and described by the concept of a later in Section 3.3.
Data Object (DO). Hence, it is the LNs that have
abstract communications services specified and that All other defined LNs are relevant to the SA
contain Data Objects, which they can make available application domain and its functionality. They are
as part of a data exchange. A Data Object defines the called Domain Logical Nodes and are divided into 12
structure and the semantics of the exchanged data groups. However, with the exception of the defined
items in the form of a well-specified, domain specific, LN naming scheme (i.e., the first letter in the four-
abstract data types. The standard defines about 30 letter LN acronym indicates the LN’s group, such as P
specific types of DOs. These predefined types are for Protection LNs), the LN grouping is used
generally called Common Data Classes (CDC) and informally only. In other words, it is a semantically
are described in Part 7-3. useful grouping, but there are no distinct properties
For easier understanding, Fig. 3 depicts an instance for the specific groups that would distinguish LN
diagram with a fictitious usage of the concepts as members as belonging to this or the other group.
shown in Fig. 2. Theoretically, the components of the
logical system have no predefined allocation to the 3.2.1. A concrete example
components of the physical system; that is, LNs may Almost all functions are realised by at least three
be distributed in any way and thus are not bound to LNs: one LN for the core functionality (bthe business
certain types of IEDs. Practically however, the logicQ), one for the process interface (i.e., the interface
performance-related requirements together with the to the substation high voltage equipment), and one for
limited physical resources (network band width, the HMI-related part. We show in Fig. 4 an example
processing power) constrain the number of feasible taken from Ref. [5], which realises three use cases.
mapping scenarios. The schematically depicted high voltage equipment
In summary, the IEC 61850 models described
above result in (a) a logical network, composed of
logically connected functional units and (b) a physical
network, composed of physically connected devices.
(circuit breaker Q0, current and voltage measurement operator on request. The use case is realised by
transformers T1 and T2) is the relevant part of a the collaboration of TCTR-MMTR-IARC-IHMI.
substation to energise the overhead line to city X. The
SAS equipment consists of two physical devices: 3.3. Communications service model
IED1 and IED2. IED1 is a device similar to a
programmable logic controller. It is connected to Fundamentally, the data communications model of
IED2, a PC, via a LAN-type physical connection. the IEC 61850 assumes a domain data type model
IED1 and IED2 host seven and two instances of (discussed in Chapter 4 and illustrated by LNs in the
Logical Nodes, respectively. The LNs XCBR, TCTR, above discussion), and a relatively independent
and TVTR realise proxies of the physical equipment communications service model that we briefly intro-
(thus, their dependency association to the respective duce here. While the data model defines the semantics
switchgear), the LN IHMI realises the visualisation, and syntax of all the data that can possibly be
and the other LNs realise the specific business logic. communicated within an SAS, the communication
The example use cases are as follows: services define how to obtain such defined data from
IEDs.
(1) Display of operational measurements: The Part 7-2 of the standard details the Abstract
operational values of the overhead line, actual Communications Service Interface (ACSI), which
current in Ampere and actual voltage in Volt, models a set of communications services that an
must be displayed for operators. This use case is IEC 61850 compliant IED has to support. In general,
realised through LN instances TCTR-MMXU- Part 7 (7-1. . .7-4) assumes client–server architecture
IHMI (for current), and TVTR-MMXU-IHMI for the SA communications infrastructure, where an
(for voltage). IED provides one or more (ACSI) servers (see Fig. 5).
(2) Over-current protection for the overhead line: If A client will therefore gain access to the defined data
the measured current exceeds an adjustable limit of LNs through the ACSI services supported by the
the corresponding circuit breaker (Q0) needs to ACSI server. Conceptually, an IED contains one or
be opened. This is realised by the collaboration more ACSI servers, each of which contains a number
of TCTR-PIOC-CSWI-XCBR, whereby POIC of Logical Devices, each of which contains a number
encapsulates the measurement detection logic of Logical Nodes, which themselves finally contain
and CSWI the control logic for the circuit the Data.
breaker activation. If the ACSI server were seen as a black-box
(3) Revenue metering: The line measurements must component, one could represent an IED with its ACSI
be used for metering purpose (e.g., to do billing servers and the supported services as in Fig. 6. Every
for city X). Metered values shall continuously be defined service group would map to a service inter-
stored in 1-min intervals, but displayed to the face with its defined set of services.
Fig. 10. The Meta Model of the data model of IEC 61850.
4.2. The Meta Model In this section, we address a solution to the first
two points above, by proposing a Meta Model that
The complexity of the data type model of IEC (we believe) facilitates the understanding of the
61850 and, consequently, a difficulty in understanding overall data type system of the standard. The
it, stem from three sources: separation of communications and data models (point
3) cannot be eliminated, because this is normatively
(1) A meta-modelling approach was not introduced defined. We do, however, reflect this fact with the
in the IEC 61850 data model from the very corresponding constructs in the Meta Model.
beginning. Therefore, helper constructs such as The construction of the Meta Model relies on a
the CommonXXX types were created over time repeated application (or instantiation) of the Meta-
to provide a path to the domain types while still Meta Model. It introduces essentially three levels of
trying to keep the conceptual idea (Logical data refinement as depicted in Fig. 10.4
Nodes, Data, etc.) intact.
(2) Although the standard’s explanations of the – A Logical Node contains one or more Data. Each
data model (and the standard in general) Data is one of the defined Common Data Classes
employ the notion of object orientation and (CDC). The latter is the lead over to the Domain
particularly inheritance in several places, what
usually is meant is either a composite type or
subtype construct. 4
We have defined the Meta Model in the same UML model file,
(3) A separation of communications and data which contains the bnon-metaQ concepts with the same name. To
model concerns was not fully achieved (see avoid naming clashes, the meta-types have a name with the prefix
Section 4.3.2). bmQ.
T. Kostic et al. / Computer Standards & Interfaces 27 (2005) 679–695 689
Fig. 11. A selection of the standardised domain-specific Logical Nodes shown as an excerpt of the UML model.
Type Model in that the CDCs stand for the set of In summary however, every Data of a Logical Node
normatively defined and commonly reused Data in is finally a composite of Basic Types (which, without
the Domain Type Model. doubt, follows tricky rules for its composition).
– A Data is composed of individual Data Attributes.
Each Data Attribute is unfortunately not just one of 4.3. The domain type model
any of the defined DATypes (standing for Data
Attribute Type), but one of the many FCDATypes The SA domain semantics is captured through (a)
(standing for Functionally Constrained Data the predefined set of Logical Nodes and their Data, (b)
Attribute Types5). They reflect the non-separation the set of predefined Common Data Classes and their
of communications and data model concerns, construction in terms of (c) the set of defined
introduced by definition of optionally up to two DATypes (which in our case subsumes all construc-
Trigger Options (TrgOp) and a mandatory Func- tions of FCDATypes). All this is covered in Parts 7-4,
tional Constraint (FC). 7-3, and 7-2 of the standard.
– The basic types to create FCDATypes are the
selected (primitive) Basic Types and complex 4.3.1. Logical nodes and common data classes
types created from them. They are all referred to The domain type model defines 89 types of
as DATypes6. The complex data types are either Logical Nodes (plus LLN0 and LPHD), which belong
those defined in Part 7-3 as Common Data to one of the 12 defined LN groups (LLN0 and LPHD
Attribute Types or those defined in Part 7-2 as belong to a 13th group). Fig. 11 shows some LN
Common ACSI Types. groups and the concrete Logical Nodes they contain.
In addition, dependencies on the functional require-
ments for Logical Nodes (Part 5 of the standard) are
explicitly shown.
5
This is one more example of an unfortunate naming: with Fig. 12 gives an example of the small LN GroupX
respect to what this type is used for, it should have been with one of its two LNs: XCBR. An LN is depicted
Functionally Constrained Data Attribute, or FCDataAttribute (i.e., with its named attributes such as, for instance,
without bTypeQ suffix).
6
With respect to what this type is used for, a more appropriate
MaxOpCap. These attributes are either optional
name would have been simply DataAttribute, instead of DAType (cardinality 0..1), or mandatory attributes (those found
(i.e., without the bTypeQ suffix). in the attribute compartments of the class boxes). The
690 T. Kostic et al. / Computer Standards & Interfaces 27 (2005) 679–695
Fig. 12. Domain LN GroupX with one of its LNs and their data.
named attributes of an LN, in other words its Data, are Data. Fig. 13 depicts some out of the 29 Common
the named instances of CDCs (see the meta-model in Data Classes defined explicitly in the standard, as well
Fig. 10 and some defined types of CDCs in the as (again) 29 specialisations, which are only implicit
domain type model of Fig. 13). For every concrete LN in the standard, but explicitly specified in the UML
of the domain type model, the standard defines up to Model. Those specialisations are due to enumerations
41 Data instances, of which some are mandatory and (26) and to the btransientQ property for three CDCs.
some are optional. All together, there are about 500 The specialised CDCs are easy to recognise, since
defined Data. Note that it is only the name of a Data their names are longer than three characters.
and perhaps the context, i.e., the type of LN that Although the CDCs are divided into categories
determines its domain specific semantics. (StatusCtl, AnalogueInfo, etc.), it needs to be noted
In general, the defined CDCs and their construction that the relation of a specific Data name to CDC type
can be viewed as the underlying standardised generic is not unique! For instance, depending on the
type system. The type system is generic in the sense invocation context (i.e., the communication service
that it would not only be applicable to many power invoked on an instance name), the named Data bAmpQ
system applications, but also in the sense that it (current) could be an instance of CDC type Measured
provides the basic types for defining domain specific Value (bMVQ) or type Sampled Value (bSAVQ).
Fig. 13. A model excerpt with a selection of standardised domain-specific Common Data Classes.
T. Kostic et al. / Computer Standards & Interfaces 27 (2005) 679–695 691
In general, a Data is composed of bData FCDATypes that are based on Common Data Attribute
AttributesQ (see again the meta-model in Fig. 10). Types. The UML Model contains more such diagrams,
However, these data attributes are complexly con- which define FCDATypes based on all the other
structed data types (the aforementioned FCDATypes, DATypes, namely, Common ACSI Types and Basic
that are discussed in Section 4.3.2 below). Fig. 14 Types (including enumerations). Note that the FCDA-
shows the specification of the Common Data Class Types are not explicitly (normatively) defined in the
SPS (single point status) in terms of its constituent, standard. The type naming convention that we used is
optional (like subEna, etc.) or mandatory data as follows: DAType_FC[_TrgOp1[_TrgOp2]]. A con-
attributes (such as stVal, q, t). The permissible types crete example from Fig. 15 is Vector_MX_dchg_dupd,
for these data attributes are the defined FCDATypes where DAType=Vector, FC=MX, TrgOp1=dchg and
(e.g., BOOLEAN_SV for subEna). TrgOp2=dupd.
The definition of FCDATypes in terms of TrgOp
4.3.2. FCDATypes and FC, in addition to DATypes, causes a tight
FCDATypes are based on the three DATypes (see coupling between communications and data type
again the meta-model in Fig. 10): Common Data models. Both TrgOp and FC represent a semantic hint
Attribute Type, Common ACSI Type and Basic Type. for some services (mentioned in Section 3.3). FC, in
Conceptually, an FDCAType could be seen as an addition, restricts DATypes with respect to services that
extension (or subtype) of one of the DATypes. The are applicable to it. In a general case, according to the
extension would then consist of defining a mandatory current specifications in the standard, it is impossible to
Functional Constraint (FC) and up to two optional use any of services directly, i.e., to say, for example,
Triggering Options (TrgOp). However, some FCs that all the services of Data apply to an FCDAType with
really constrain the bnormalQ functionality of a given FC. In other words, a FC must bcarryQ
DATypes, such as bdisablingQ some DATypes services. somewhat strange combinations of methods from
This prevents one from concretely defining FCDA- different services. This is the reason for representing
Types as extensions (subtypes) of DATypes—they each FC as an interface with appropriate combination
must be defined as composition. In OO terms, this of services, according to the specification in Part 7-3.
corresponds to the idiom busing delegation instead of The above discussion should be a sufficient
inheritanceQ. Fig. 15 gives a selection of those illustration on how awkward the FDCAType concept
Fig. 15. A selection of FCDATypes based on Common Data Attribute Types (excerpt of the UML model).
is, and how tight is the coupling with communications the standard at the place of their definition (Part 7-2 or
services on the level of domain data types. 7-3), to be able to bformally nameQ an additional set of
types. In our opinion, it would be sufficient to
4.3.3. DATypes distinguish between Basic Types, which are primitive
An FCDAType is based on DATypes, Data Attribute (e.g., BOOLEAN, INT8, FLOAT32, ENUMER-
Types (see again the meta-model in Fig. 10). A DAType ATED), and the complex DATypes (see Fig. 16), along
may be one of the defined (primitive) Basic Types, or a the line of the Meta-Meta Model in Fig. 7.
complex type that is composed of Basic Types. Such The standard introduces ENUMERATED as an
complex types are defined as Common Data Attribute abstract type for enumerations, but it does not
Types in Part 7-3 or as Common ACSI Types in Part 7- normatively define concrete ENUMERATED types.
2. Basic Types are also defined in Part 7-2. These This results in ambiguous informal definitions (e.g.,
different sub-types of DAType have been introduced in enumerations that have no type names, or that have no
attribute values) throughout all the Parts 7-2, 7-3 and 7- stration of what can be done with a formal model and
4. As an attempt to reinforce the formality in type appropriate tools. By this, we hope to stir discussions
definitions, the UML Model defines the enumerations that would consider making the UML Model an
explicitly. For example, bUnitQ in Fig. 16 has the integral part of the standard or one of its next releases.
mandatory attribute bSIUnitQ and the optional attribute We think that further benefits arise in the development
bmultiplierQ. Their types are bSIUnitsQ and bMultiplierQ, and the maintenance of the standard as well as in the
respectively, and both are typed enumerations. use of it. In particular, we would like to stress the
following points, taken from Ref. [8]:
The deduction of the Meta Model (level 2) from The rigorous UML model, maintained with a CASE
the specifications in Parts 7-4, 7-3 and 7-2 of the IEC tool, inherently provides consistency with respect to
61850, and then the definition of the Domain Type the defined bvocabularyQ (concepts and concept
Model (level 3) in the UML Model revealed a number relationships). Based on this, tools may then provide
of inconsistencies in the current standard’s documen- a wealth of features such as pop-up menus to select
tation set. For instance, since 2002, when we started to available types, support propagation of changes, etc. It
model early drafts the IEC 61850 standard, we were is also easy to display for a specific type all the
able to identify many inconsistencies and problems. attributes (inherited or not), operations, associations
Over a hundred comments were sent to the IEC 61850 and their cardinalities. This facilitates checking of the
authors. Some of them were incorporated bas isQ in the logical correctness of the type definition. The possi-
standard, while others triggered discussions and bility to selectively display the model elements of
clarifications, and again others were not considered interest on a class diagram allows one to create
at all. complex diagrams, such as the full version of what is
We have used some parts of the UML Model to depicted in Fig. 14, while keeping their partial display
implement a prototype tool [6], which converts some manageable. CASE tools can usually provide comple-
parts of the IEC 61850 model into another electrical mentary views of the model on the same screen. For
utility related data model: CIM, standing for Common instance, UML diagrams, the model browser, and the
Information Model. CIM has recently been published model element documentation may appear simulta-
as one part of the IEC standard 61970 [7]. The neously. Consequently, it is easy to navigate between a
prototype tool development was realised by computer UML model element in the browser and its representa-
scientists, which had no previous domain knowledge, tion in a class diagram, while still having informal,
neither on substations, their devices and communica- textual annotations of the selected element. Providing
tions, nor about electrical networks in general the same level of checking and comfort for the informal
(covered by CIM). In that context, the Meta Model definitions based on text documents, even with an
and the Domain Type Model, both realised in the elaborate hyperlinking scheme, is almost impossible.
UML Model, proved extremely useful.
Another use of the UML Model has been to 5.2. Model maintenance and extensions
automatically generate text documentation of Part 7-4
of the IEC 61850, which is almost identical to the The formal model makes the model maintenance
format of the original MS Word documents. The big easier. It allows for consistent modifications from one
difference is, however, that in the automatically version of the standard to another. For instance, if a
generated version the table entries are absolutely type name is to be changed, it is done and potentially
consistent. For this purpose, we have used another documented at one place within the model. This
Rational tool, SoDA, to develop a highly customised supports impact analysis and regression testing of
template and to autogenerate the Part 7-4 bcloneQ planned modifications. Contrast this to the changes
directly from the UML Model. We have submitted the necessary at several places in at least three documents
resulting document to the IEC editors, as a demon- in the standard and the subsequent activities to assess
694 T. Kostic et al. / Computer Standards & Interfaces 27 (2005) 679–695
further implications. A further argument for the UML 6. Conclusions and outlook
model is the ease for programmers to extend the
model with potential private, vendor specific exten- All of the abovementioned points show potential
sions while preserving the compliance with the benefits of having the IEC 61850 standard itself
standard and its base model. specified formally: (1) with a tool, (2) in a standard
modelling language, and (3) in an electronically
5.3. Code and documentation generation processable format. We have presented how an
informal btext-and-tableQ definition of the IEC 61850
UML models can be used for code generation, data communications standard can be formally mod-
which includes the direct use of inheritance relation- elled using meta-modelling approach and the UML.
ships defined in the model. CASE tools also usually Besides facilitating human comprehension, the bene-
support roundtrip engineering. Both features facilitate fits of such a formalisation are numerous and take
the developers’ tasks. Finally, the model documenta- advantage of the power of CASE tools. Such tools
tion and, if needed, the code documentation can be support easy navigation in the model, validation
automatically generated from the same model. For (typically, unknown classes will be identified imme-
instance, with the use of advanced documentation diately), and consistent maintenance (which is prob-
plug-ins, we were able to reproduce the text and table ably the hardest to meet with standards provided in
look of the standard from the UML model. Moreover, text-and-table form). Moreover, software code (at least
other representations can be produced automatically, the skeleton, including the profile of the methods) can
such as W3C XML (with some limitations obviously) be generated automatically, thereby reducing the effort
or RDF schemas for data serialisation. of developers and avoiding mistakes. Additionally, for
those not familiar with UML CASE tools, text
5.4. Formal data mappings or conversions to other documentation can be generated automatically too,
standards and be it in a stylish text-and-table format, if so
expected by domain experts.
The devices and applications, which implement the Our hope is that, similar to what has been done
IEC 61850 specification, are not restricted to the with CIM and its UML model, some of the future
substation automation domain. They have to inter- revisions of IEC 61850 will adopt this kind of
operate with systems and applications in the entire approach, i.e., to have a formal model included at
electric utility environment. In that sense, they do not least for the data specification part. This would
only communicate with each other within a substa- certainly facilitate the acceptance and speed up the
tion, but also with network control centres or even market penetration of compliant devices.
back-office applications. The UML model allows one
to specify mappings to other existing UML models in
a formal way. An example of such a mapping of the Acknowledgements
proposed UML Model for the IEC 61850 was our
mapping to CIM (Common Information Model). The authors would like to express their gratitude to
Details can be found in Ref. [6]. CIM specifies a the anonymous reviewers of this paper. Their feedback
data model as part of an IEC standard [7] for electrical was well to the point and improved the final result.
network control centres. Another mapping of the data
model is that to lower communication layers. For
instance, the UML model of the IEC 61850 should References
also facilitate a formal mapping to the Manufacturing
Messaging Specification (MMS [9]). MMS is indeed [1] IEC-TC57-WG10/11/12, Communications Networks and Sys-
one of defined application layer protocols defined in tems in Substations, International Electrotechnical Commission,
Geneva, International Standard IEC 61850-1..10, 2003.
the IEC 61850. Hence, the standard defines appro- [2] G. Booch, I. Jacobson, J. Rumbaugh, OMG Unified Modeling
priate communications mappings in Part 8-1, but Language Specification, Version 2.0, Object Management
again in text-and-table fashion. Group, Specification, 2003.
T. Kostic et al. / Computer Standards & Interfaces 27 (2005) 679–695 695
[3] T. Kostic, O. Preiss, IEC 61850 UML Model, Rational Rose Otto Preiss holds a B.Sc. in Electrical
model file, IEC61850_May2004.mdl, v.6, ed. Daettwil: ABB Engineering (FH Aargau, Switzerland), an
Switzerland Corporate Research, May 2004 (contact the MSc in Computer Science (University of
authors). Colorado at Boulder), and the Dr. ès
[4] M. Shaw, R. DeLine, G. Zelesnik, Abstractions and Imple- Sciences degree from the Swiss Federal
mentations for Architectural Connections, Proceedings of the Institute of Technology in Lausanne
Third International Conference on Configurable Distributed (EPFL), Switzerland. He has worked for
Systems, 1996. more than 10 years in the area of distributed
[5] O. Preiss, A. Wegmann, Towards a composition model problem systems, mainly in the application domains
based on IEC61850, in: The Journal of Systems and Software, of data acquisition and process control for
vol. 65/3, Elsevier Science, 2003, pp. 227 – 236. power systems. Otto held different posi-
[6] T. Kostic, O. Preiss, C. Frei, Towards the formal integration tions in development, engineering, commissioning, and product
of two upcoming standards: IEC 61970 and IEC 61850, Proc. management. Before he joined ABB Corporate Research in May
of 2003 LESCOPE Conference, Montreal, May 7–9, 2003, 1998 he was heading ABB Power Automation’s R&D department
pp. 24 – 29. for product and system development of substation automation and
[7] IEC-TC57-WG13, Energy management system application protection systems. He is currently program manager of the Power
programming interface (EMS API)—Part 301: Common T&D Applications research program within ABB group.
Information Model (CIM) Base, International Electrotechnical
Commission, Geneva, International Standard IEC 61970-301, Christian Frei holds a diploma in Com-
2003. puter Science and the Dr. ès Sciences
[8] O. Preiss, T. Kostic, C. Frei, Data communications standards: a degree from the Swiss Federal Institute of
case for the UML, To be Presented at UML 2004 Conference, Technology in Lausanne (EPFL), Switzer-
Lisbon, Portugal, October 11–15, 2004. land. He received the 2000 ECCAI Artifi-
[9] ISO 9506-1 and ISO 9506-2: Industrial automation systems— cial Intelligence Dissertation Award for his
Manufacturing Message Specification; first edition, 2000-08-15. PhD. He then joined the start-up he
cofounded, Iconomic Systems S.A., where
Tatjana (Tanja) Kostic holds a diploma he was CTO and system architect. Late
and an MSc in Electrical Engineering from 2001, he joined ABB Corporate Research,
the University of Belgrade, Yugoslavia, and where he is currently working as a research
the Dr. ès Sc. Techn. degree from the Swiss scientist in the Software Solutions and Processes group. His
Federal Institute of Technology (EPFL), research interests include constraint satisfaction, abstraction and
Lausanne, Switzerland. After her post doc problem reformulation techniques, web services, peer-to-peer
year with Mitsubishi Electric, Amagasaki, computing, ontology languages, graph theory, and resource alloca-
Japan, she joined ABB Corporate Research tion problems in general. He is a member of the IEEE Computer
in Switzerland in June 1999, where she is Society, and the ACM.
currently working as a principal scientist in
the Utility Solutions group. Her research
interests include IT applications for power system operation and for
utility asset management, standardised utility domain models,
object-oriented analysis and design, and artificial intelligence. She
is a member of the IEEE PES and Computer societies, of the ACM,
a working member of the Cigré WG C2.01, and an IEC expert in
TC57 WG14.