What is MultiSpeak?
The MultiSpeak Specification is a standard for the exchange of data among enterprise application software commonly applied in utilities. The foundation of the specification is an agreement on the details of the data objects that need to be exchanged to more fully integrate disparate software applications. The MultiSpeak specification is intended to assist vendors and utilities to develop interfaces that enable software products from a variety of vendors to interoperate without the need for extensive custom interface development. See What is MultiSpeak for more information.
What does MultiSpeak do?
MultiSpeak defines data objects and specifies message structures so that vendors or utilities can write a single, common interface that facilitates communication with another type of software. Since the participating vendors and end users support a variety of hardware and software platforms, database programs, and programming languages, the Initiative has developed an approach that is independent of platform or database structure; one that relies on common data definitions and agreed-upon data flows.
Is MultiSpeak a product?
MultiSpeak is a specification that defines standardized software interfaces; it is not a software product. Software vendors may use MultiSpeak to develop compatible interfaces for their existing, or planned, software products.
What is the current version of MultiSpeak?
As of March 2017, the MultiSpeak Initiative has released:
- The Version 3.0, build ac specification and supporting documents.
- The Version 4.1.6 UML model, schemas, WSDLs and a partial use case library.
- The Version 5.0.7 Release issue of the UML model, schemas and WSDLs, along with a draft Version 5.0 specification document and a comprehensive set of use case definitions.
- The MultiSpeak security standard, Security in MulitSpeak-Enabled Applications: Requirements.
These documents are available only to MultiSpeak members. Become a member today!
Specification History and Future Plans
How was MultiSpeak developed?
MultiSpeak was developed by the MultiSpeak Initiative, a collaborative effort between the National Rural Electric Cooperative Association (NRECA), software vendors serving the electric utility industry and utility advisors. Vendors, along with consultants hired by NRECA, have met continually since October 1999 to design the required software interfaces. Significant funding for MultiSpeak has been provided by the Cooperative Research Network (CRN) of NRECA and, more recently by NRECA member dues, along with dues from MultiSpeak vendor and utility members. See the history of MultiSpeak.
Is MultiSpeak still being developed?
MultiSpeak is constantly being expanded and improved. The MultiSpeak Technical Committee meets 3 to 4 times each year to consider enhancements to the Specification.
How does MultiSpeak evolve?
The MultiSpeak specification is a collaborative effort.
Representatives of NRECA, software vendors, utilities and representatives of other industry standards groups meet as required (usually about 3-4 times each year) to address extensions, corrections, or enhancements to the specification.
In addition to the scheduled topics for discussion, vendors may bring unsolicited proposals to the Initiative at any regular meeting for changes to the specification. When a consensus has been reached on the topics of discussion, the required changes are reflected in the specification.
What else can I do to further the development of MultiSpeak?
There are several things that a utility can do to further the development of the MultiSpeak specification:
- Become a member of MultiSpeak.
- Provide feedback on the specification.
- Provide case studies of your implementation experience.
- Make your interface requirements known.
- Consider the benefits of MultiSpeak compatibility when purchasing new or upgraded application software.
- Since vendors have limited development funds, and target those funds to the goals of their users, it is important that utilities communicate with vendors the importance of MultiSpeak-compatibility in vendor offerings.
Implementation and Use
What software functions does MultiSpeak cover?
MultiSpeak covers a variety of software functions including general areas of: (i) metering and service management, (ii) work management, (iii) work order accounting and inventory, (iv) customer billing and PAN management, (v) distribution engineering, planning, construction, (vi) demand response, and (vii) outage management and distribution operations.
See complete list of covered functions.
Is any special hardware required to implement MultiSpeak?
No special hardware is required to implement MultiSpeak-compatible interfaces.
Is MultiSpeak scalable? Are there MultiSpeak-imposed limitations on the usefulness of MultiSpeak for large utilities?
Scalability is an issue of implementation, not of data model. MultiSpeak makes use of web services in order to implement real time messaging. Thus it faces the issues common to all web services implementations; however solutions to these concerns are well understood. Furthermore, specific features have been built into the MultiSpeak service protocols to permit sending data in numerous, successive small packets rather than in a single large unmanageable file, thus enhancing its scalability. Hence, there are no inherent limitations on the scalability of MultiSpeak or its applicability to utilities of all sizes.
Is MultiSpeak extensible?
MultiSpeak was designed from the ground up to be extensible. It is possible to add an unlimited number of additional data objects to the data model and to extend any existing data object by the addition of an unlimited number of XML attributes and/or XML elements, all without affecting interoperation with other applications that may be unfamiliar with the thus-defined extensions. Furthermore, it is possible to easily add additional web services (to support additional types of applications that are not currently supported) and to add new methods to existing web services. All of these extensibility mechanisms make it possible for a specific utility to build on the established, well-proven foundation of the MultiSpeak data model and service definitions to create those extensions necessary to meet their specific needs.
Is MultiSpeak "plug-and-play"? Doesn't this take care of all of my integration needs?
Unfortunately, the requirements for integration of software applications in the utility industry are just too complicated and diverse for any single specification to provide a universal “plug-and-play” solution for every utility. The MultiSpeak specification has been designed from the ground up to address the majority of the common integration challenges of utilities, but it is not guaranteed to address all integration needs. You or your vendors may need to fine-tune your MultiSpeak interfaces or create special interfaces to meet the specific needs of your utility. Additional work would be most likely if you have any of the following circumstances:
- Not all of your software products support the same version of MultiSpeak.
- Your MultiSpeak-compatible software applications do not support all the defined data flows
- Your organization wants to send data items that have not been defined in MultiSpeak. (MultiSpeak defines a vast number of data classes, but there are special situations that are not addressed.)
- Your software solutions were implemented in a nonstandard way. For example, the following situations would alter the effectiveness of MultiSpeak-defined interfaces: storing critical data in nonstandard data fields, having poor quality data, or using unusually formatted data.
What can I do if the type of software product that I want to integrate is not covered by MultiSpeak?
The MultiSpeak specification is intended to be a living document that is modified as necessary to meet the most common needs of utilities. If there are common application types that are not covered by the specification – and for which interfaces with other types of software would be beneficial – utilities or vendors should suggest to the MultiSpeak User’s Group, to NRECA, or to the MultiSpeak Technical Coordinator that these applications be added to the specification in the near future.
How can I start using MultiSpeak?
There are two ways for you to get software that supports MultiSpeak functionality: (i) purchase MultiSpeak-compatible applications directly from your current software vendors, or (ii) write your own compatible interfaces.
If one of your current software vendors does not provide MultiSpeak-compatible interfaces, you may use the MultiSpeak specification to write your own compatible interface for that product or get a third party to write such an interface. There are many developer tools for web services that simplify the job of writing interfaces. In addition, the MultiSpeak Initiative offers an Integrator Training workshop that describes how MultiSpeak exchanges data and how web services are supported in MultiSpeak. Integrator training is available for utility staff, vendors and consultants. View lists of currently trained Integrators.
What testing is done on MultiSpeak "Tested Products"?
Beginning with Version 3.0, the MultiSpeak Initiative began interoperability testing. Such tests are performed between pairs of software applications to ensure that they work seamlessly together. It is possible that two software applications could both be compliant with the specification and yet not work seamlessly together without minor modifications.
In MultiSpeak interoperability testing, two products (typically from different vendors) are submitted for a joint test. The vendors develop an assertions document that states the joint MultiSpeak functionality that they wish to claim and how those capabilities may be used to support utility business processes. An independent testing agency then verifies that the two products integrate in the manners described and that the integration is achieved using MultiSpeak. The verified assertions document is then made available to interested parties by request. Tested assertions documents are available either from the vendors participating in the test or directly from the MultiSpeak Project Technical Coordinator.
This type of testing is performed by the NRECA-approved testing agent when pairs of vendors specifically request and pay for such testing. It should be noted that, in some cases, products may be interoperable, but the vendors have not chosen to pay for testing to document this fact. For some vendors, whose products are expected to integrate with a large number of software products offered by different vendors, the cost of testing all possible combinations of software can be burdensome. Alternatively, a utility may choose to require interoperability testing for a pair of products that have not yet been jointly tested as a software quality control step during software procurement. In such a case, the cost of the test may be borne by the utility or by the vendor(s) of the software in question.
Why is the assertions document important to me?
The purpose of the assertions document prepared for interoperability testing is to educate utility staff members on what level of MultiSpeak integration can be expected between two specific products that have completed interoperability testing. Assertions documents are written with the utility audience in mind. They answer the following questions:
- What can I do with the interoperable software products that would not be possible without the MultiSpeak integration?
- Why is this shared functionality important to my business processes?
- How have the vendors used MultiSpeak to accomplish the integration described?
- How much of the MultiSpeak defined interface capability does this interface support?
Note that assertions documents do not necessarily describe all of the capabilities of an interface between two products, only those that are accomplished using MultiSpeak and that were tested by the vendors. It is certainly possible for two vendors to support other integration features that are not included in MultiSpeak or that were not tested for interoperability; for a description of such features, contact the affected vendors directly.
How can I check vendors' claims of MultiSpeak compatibility or interoperability?
If a product has passed either compliance testing or interoperability testing, it may be said to be MultiSpeak compatible or interoperable, respectively. The best way to determine if a product has been tested for MultiSpeak compatibility or interoperability is to refer to the Tested Products section.
Although vendors may incorporate features of MultiSpeak compatibility or interoperability in their products without submitting their products for compliance or interoperability testing, you can be assured that if the product is listed as compliant or interoperable on this website, it has passed the necessary testing.
Will interoperability testing (or compliance testing used in prior MultiSpeak Versions) ensure that two software applications work together seamlessly at my utility?
For a number of reasons, neither interoperability nor compliance testing can provide complete assurance that two software applications will work together seamlessly when deployed in an organization.
For example, if a utility has elected to use nonstandard formatting for customer identifiers or has chosen to store customer identifiers in a nonstandard data field, the link transferring customer records between the CIS and AMR systems could fail at this utility. In this case, the standard MultiSpeak interface could easily be customized to work for this utility, or the utility could change its data structures to match the anticipated condition.
Poor data quality also can hurt the effectiveness of a MultiSpeak interface. For example, if customer telephone numbers are not accurate in the CIS, an outage management system or an interactive voice response system that relies on those telephone numbers might produce unacceptable results, even though the telephone numbers were sent accurately from the CIS to the other system.
Site conformance testing may be required for some projects. Utilities may request that an independent party perform site conformance testing on their behalf. Or utilities may find wish to require site conformance testing as an acceptance criterion for purchasing new software products.
What is the relationship Between MultiSpeak and CIM?
The International Electrotechnical Commission (IEC) Technical Committee 57 (TC57) is in the process of defining an international standard called the Common Information Model (CIM). The IEC effort and MultiSpeak have areas of overlap. CIM covers areas not addressed by MultiSpeak, such as power marketing, but MultiSpeak has more detailed coverage in other areas. The MultiSpeak Technical Coordinator also sits on TC57, Working Group 14, which addresses distribution modeling issues. We believe that there is value to sharing information between the MultiSpeak and CIM efforts and continue to investigate ways that the two standards can be harmonized. However, we also believe that the efforts offer different approaches, each of which has value in the utility industry.
What is the role of MultiSpeak in the Smart Grid?
MultiSpeak is playing a critical role in the smart grid by providing guidance about the interoperability of enterprise applications. MultiSpeak has been chosen by the national Institute of Standards and Technology as an appropriate standard for enterprise integration. The MultiSpeak Initiative and NRECA are also fully engaged at all levels of standards development pertaining to the smart grid to ensure, to the fullest extent possible that successive generations of the MultiSpeak specification provide the maximum coverage and depth of technology possible. Find out more about MultiSpeak and the Smart Grid.
Does MultiSpeak send sensitive data securely?
The issue of security is specifically outside the scope of the MultiSpeak interoperability standard. However, the MultiSpeak Initiative also provides a companion standard and an implementation guidance document that use industry standard security mechanisms, based on WS-Security and related standards.
It is critical to note that software security features are only one part of what should be a comprehensive approach to security that involves many aspects for both the utility and supplying vendors. More information about security considerations for using software written to the MultiSpeak specification is available here.
What does MultiSpeak cost?
There is no direct charge to utilities from NRECA or the MultiSpeak Initiative for MultiSpeak-compatible applications. However, users should be aware that vendors have invested significant time, energy and capital in the development of MultiSpeak-compatible interfaces and most must recover these investments in some manner. Some vendors may choose to offer MultiSpeak interfaces as part of their core software package and recover the costs from all users; others may offer MultiSpeak interfaces as an add-on component and recover the costs for such add-ons from the specific users that request them. It should be noted however, as the vendors serving the electric utility industry increasingly adopt MultiSpeak-compatible interfaces, the overall cost of interoperable software should go down for all users.