Innovatec Utility Software System Organization and Requirements Compuware Corp. 08/09/99 11:13 AM06/16/99 2:46 PM Version 0.
Table of Contents 1 OPEN ISSUES...............................................................................................................................4 2 INTRODUCTION.........................................................................................................................4 3 PRIMARY REQUIREMENTS....................................................................................................5 3.1 SUPPORTED DATABASES ...................................................................
4.7.8.2 Tabbed Panes .........................................................................................................2726 5 CHANGE LOG ...........................................................................................................................
1 Open Issues • • What type of location information will we use (e.g., lat, long, elevation, pole #) for gateways, relays and meters? What tool will we adopt for network RF planning, and how will we interface the rest of the system to it? 2 Introduction The Enterprise Network and Internet Communications (ENICS) system is a set of software applications that allow either utilities or Innovatec acting as a service bureau to manage and operate an Innovatec communications network.
Alarm Configuration Manager (Interactive) Field Service Application (Interactive) Meter Reader (Interactive) Network Exerciser (Autonomous) Network Health Monitor (Autonomous) Network Configuration Manager (Interactive) Alarm Receiver (Autonomous) Physical Assets Tracking (Legacy) Field Service Laptop or Handheld Field Service Database IP or TCP/ irect via d l up PPP d ia Billing Application (Legacy) Network Configuration Database Utility Physical Assets Database (Legacy) Billing Database (Legacy)
1.13.1 Supported Databases For the purposes of this specification, the databases in the system are classified into internal and external databases. Internal databases are those that will be built into a stand alone Innovatec system. External (or legacy) databases are those that are supplied by a particular Innovatec customer or a particular 3rd party application.
utility server software shall support multiple sets of independent databases, one for each utility Innovatec supports. It shall be the responsibility of the Innovatec Utility Server to distinguish between sets of databases for different utilities, given an appropriate utility specification from the various applications. 3.3 Logging It shall be possible to log events of interest into an internal database. These events shall include, but are not limited to, message transmissions and receptions.
It shall be possible to configure access permission for an external utility on a meter by meter basis. It shall be possible to configure which alarms may be distributed to or configured by an external utility on an alarm by alarm and meter by meter basis. If an external utility has been granted configuration permission for a particular alarm on a particular meter, then the utility that grants that permission will no longer be able to configure or receive that alarm for that meter.
user attempting to log in using a valid password from a host that is not in the designated set of hosts would be denied access to the system (with an appropriate reason given). There shall be a means to indicate that access from any host are allowed. Authorization shall be supported by access control lists. It shall be possible to assign permissions on a user by user, utility by utility (for external data distribution) and application by application basis.
• • • • • • Monitoring can be defeated through encryption of the data stream, including any interactions in which passwords are passed. Password guessing, dictionary or exhaustive scan (particularly if driven by a computer program). Password choice rules plus the use of a reasonably large salt (to complicate reverse dictionary construction by an insider) should make this very difficult. Note some part of the enforcement of good password choices (e.g.
• alarm configuration is necessary. There is currently no effective answer in these specifications for this form of attack. There is no potential for harm to the source utility databases or the Innovatec communications network, however meter data that was set up for external data distribution could be monitored. A computer cracker runs a program that bombards the ENICS system with random packets or bogus login attempts.
IMUs, relays and gateways are forwarded to a utility depot. At this point they must be associated with a certain customer (for IMUs) or a certain location and set of IMUs (for relays and gateways), the association loaded into the network configuration database and work orders generated and IMUs registered with their respective gateways. These functions are preformed (directly or indirectly) using the Depot Commissioning tool.
implies that a unit must have already been added into the system by the network configuration manager before the depot commissioning tool can be used to modify its data, and that a null entry for certain fields must be allowed in the network configuration database for IMUs, relays and gateways that are marked as not installed. 4 Derived Requirements Derived requirements are those that are driven by the primary requirements, but are imposed on ourselves. 1.14.
• Field Monitors RF traffic. • Monitoring and Performs diagnostic Diagnosis Tool tests of meters, relays and gateways. • • • • • • Factory Commissioning & Test tool Depot Commissioning tool Interactive Meter Reader Checks IMUs and relays to make sure they’re properly programmed with the correct Utility Serial Number, produces factory log, performs noninvasive gateway testing. • • • • Connects specific IMU, relay and gateway ids to customer accounts and locations.
utility customer service • people. • Network configuration manager Alarm configuration manager Network Emulator System administration tool Configure Innovatec communications network, perform network diagnostics, manage hardware and software versions, support field service operations. The primary users are network maintainers at the utility. Configure which alarms should be recognized for specific IMUs. • • Emulates an Innovatec communications network.
Network Planning and Layout tool Network Planning Database converter Allows archived event log data to be viewed. Contains RF • propagation models that allow an Innovatec communications network to be laid out (e.g., site gateways and relays given meter locations, taking into account RF propagation characteristics). Primary users are network planners. This tool will be bought rather than built.
• ENICS Health Monitor Periodically scans the event log looking for suspicious patterns of activity, such as multiple blocked login attempts. Monitors the internal health of ENICS processes/threads to determine if a malfunction has occurred. Message Monitor Moves journaled sent/received messages from the gateway server into the logging database for subsequent use by other applications. Logged Event Pruner Deletes data from the logging database that is older than some configurable maximum age.
1.24.2 Supported Databases While the general set of data present in the internal databases is derived from the primary requirements, its partition into specific databases is a high level architecture decision. 1.1.14.2.1 Internal databases The utility server software shall support access to and maintenance of the following internal databases, independently for each utility supported.
association information • • Software/Hardware version compatibility Use to keep track of which gateways, relays and meter versions are compatible with other versions. • Alarm configuration Alarm activity information • • • • Logging Alarm notification information • • • Notification type record. Typically there’ll be one of these for every notification destination/des tination type. E.g., one for each pager that could be notified that an alarm has arrived.
Authorized users Authorized external data distribution targets. Extern data distribution meter configuration table External data distribution target transaction log Field Service Application Database events that happen in the system. This includes but is not restricted to message transmissions and receptions. • Keeps track of authorized user names, passwords and authorized hosts. Keeps track of other ENICS servers to which data may be distributed.
(possibly on a per user basis, where that makes sense). on the server. However the interface the applets and applications see should be through a servant. 4.3 Permissions Access control permissions (or just permissions) in the ENICS system apply to all applications (including both Java applications and applets) that may be initiated outside of the server environment.
access may invoke an operation that will cause the ENICS server to access the network. 1.34.4 COM Access In order to support miscellaneous analysis and data gathering capabilities, a COM interface to the ENICS business objects shall be implemented. This will allow programs to be written in Visual Basic that can retrieve information from the ENICS system.
1.1.24.6.2 Colors 4.5.2.14.6.2.1 Foreground/Text Foreground colors should contrast extremely with the background. Since most of our background colors are very light, labels, and text areas will have black foreground colors. Buttons on the other hand have very dark backgrounds, so their text will normally be white. 1.1.1.24.6.2.2 Background Backgrounds for panels should be light and change in color and or image with different concept area.
2. If the first letter of the menu item conflicts with those of other menus, choose a prominent consonant. For instance, the letter S has already been designated as the mnemonic for the Style command. Therefore, choose the letter Z as the mnemonic for the Size command. 3. If the first letter of the menu item and the prominent consonant conflict with those of other menu items, choose a prominent vowel. Mnemonics can be set by AbstractButton.setMnemonic. Mnemonics can also be added to any item with a label.
Titlebar giving the name of the application, frame, and what is being done. 1.1.24.8.2 Secondary Windows 4.7.2.14.8.2.1 Dialogs Dialogs are small windows used to concisely communicate with the user. 1.1.1.24.8.2.2 Login Dialog Prompt the user for login name and password. Use com.innovatec.ui.LoginDialog. 1.1.34.8.3 Plain Windows 4.7.3.14.8.3.
1.1.44.8.4 A splash screen should be implemented using com.innovatec.ui.Jsplash. The application name, version and copyright information should appear on all splash screens.Applets Applets can be broken down into two types, simple and complex. How an applet is displayed depends on what type of applet it is. A simple applet would consist of one screen, no menus, no toolbars, no status bar.
messages should be in Red. Successful completion should be indicated with black. For implementation use com.innovatec.ui.StatusBar. 1.1.84.8.8 Organizing 4.7.8.14.8.8.1 Group Boxes Used to group like concepts. Group boxes should used sparingly and group boxes within group boxes should be avoided, they can become confusing very fast and add very little to the organization of the screen. Instead of Group boxes consider having titles for areas, labels that extend slightly more left than the rest. 1.1.1.24.8.
5/17/99, Revision 0.2 5/17/99, Revision 0.2 5/18/99, Revision 0.2 5/18/99, Revision 0.2 5/18/99, Revision 0.2 5/18/99, Revision 0.2 5/18/99, Revision 0.2 5/18/99, Revision 0.2 6/4/99, 0.2 Revision 6/4/99, Revision 0.2 6/4/99, Revision 0.2 6/15/99 Revision 0.2 that host identification and the risks it presents were tolerable and the way to go. Added meter model to physical assets database.