5-6 Dec, 2006EVLA M&C Critical Design ReviewRich Moeser 1 User Interfaces Rich Moeser.

Slides:



Advertisements
Similar presentations
--- IT Acumens. COMIT Acumens. COM SNMP Project. AIM The aim of our project is to monitor and manage the performance of a network. The aim of our project.
Advertisements

Introduction to Java 2 Programming
17 Copyright © 2005, Oracle. All rights reserved. Deploying Applications by Using Java Web Start.
WEB DESIGN TABLES, PAGE LAYOUT AND FORMS. Page Layout Page Layout is an important part of web design Why do you think your page layout is important?
 Copyright 2005 Digital Enterprise Research Institute. All rights reserved. The Web Services Modeling Toolkit Mick Kerrigan.
 Copyright 2005 Digital Enterprise Research Institute. All rights reserved. The WSML Editor Plugin to the Web Services Modeling Toolkit Mick.
The Web Warrior Guide to Web Design Technologies
© 2010 Delmar, Cengage Learning Chapter 1 Getting Started with Dreamweaver.
5-6 Dec, 2006EVLA M&C Critical Design ReviewRich Moeser 1 Alerts Rich Moeser.
Bill SahrEVLA M&C Transition System Software CDR December 5-6, EVLA Monitor & Control Transition System Software Overview.
Using Visual Basic 6.0 to Create Web-Based Database Applications
1 ITC242 – Introduction to Data Communications Week 12 Topic 18 Chapter 19 Network Management.
A Guide to Oracle9i1 Introduction To Forms Builder Chapter 5.
Exploring the Basics of Windows XP. Objectives Start Windows XP and tour the desktop Explore the Start menu Run software programs, switch between them,
World Wide Web1 Applications World Wide Web. 2 Introduction What is hypertext model? Use of hypertext in World Wide Web (WWW) – HTML. WWW client-server.
A Guide to Oracle9i1 Creating an Integrated Database Application Chapter 8.
Interpret Application Specifications
Chapter 2: The Visual Studio.NET Development Environment Visual Basic.NET Programming: From Problem Analysis to Program Design.
How to Get The Most Out of Outlook 2003 Michele Schwartzman Division of Customer Support Summer 2006.
Slide 1 of 9 Presenting 24x7 Scheduler The art of computer automation Press PageDown key or click to advance.
C HAPTER 7 Microsoft Windows 7. Part1: Getting Started with Windows7 Fundamentals 7.1 What is Windows 7? It is the latest version of a series of Operating.
Exploring the Basics of Windows XP
HiVision SNMP Software.
2. Introduction to the Visual Studio.NET IDE 2. Introduction to the Visual Studio.NET IDE Ch2 – Deitel’s Book.
Presented by…. Group 2 1. Programming language 2Introduction.
Hands-On Microsoft Windows Server 2003 Networking Chapter Three TCP/IP Architecture.
ASP.NET + Ajax Jesper Tørresø ITNET2 F08. Ajax Ajax (Asynchronous JavaScript and XML) A group of interrelated web development techniques used for creating.
Overview of Previous Lesson(s) Over View  ASP.NET Pages  Modular in nature and divided into the core sections  Page directives  Code Section  Page.
Programming with Microsoft Visual Basic 2012 Chapter 12: Web Applications.
Tutorial 1 Getting Started with Adobe Dreamweaver CS3
London April 2005 London April 2005 Creating Eyeblaster Ads The Rich Media Platform The Rich Media Platform Eyeblaster.
London April 2005 London April 2005 Creating Eyeblaster Ads The Rich Media Platform The Rich Media Platform Eyeblaster.
CIS—100 Chapter 15—Windows Vista 1. Parts of a Window 2.
10 Adding Interactivity to a Web Site Section 10.1 Define scripting Summarize interactivity design guidelines Identify scripting languages Compare common.
Marcel Casado NCAR/RAP WEATHER WARNING TOOL NCAR.
Domain 3 Understanding the Adobe Dreamweaver CS5 Interface.
Chapter 8 Introduction to HTML and Applets Fundamentals of Java.
The Network Performance Advisor J. W. Ferguson NLANR/DAST & NCSA.
Tools Menu and Other Concepts Alerts Event Log SLA Management Search Address Space Search Syslog Download NetIIS Standalone Application.
Extending HTML CPSC 120 Principles of Computer Science April 9, 2012.
Computer Emergency Notification System (CENS)
WEB BASED DATA TRANSFORMATION USING XML, JAVA Group members: Darius Balarashti & Matt Smith.
Application code Registry 1 Alignment of R-GMA with developments in the Open Grid Services Architecture (OGSA) is advancing. The existing Servlets and.
Bill SahrEVLA Advisory Committee Meeting May 8-9, EVLA Monitor & Control.
Bill Sahr EVLA M&C EVLA Advisory Committee Meeting December 14-15, EVLA Monitor & Control.
Graphics and Event-Driven Programming in Java John C. Ramirez Department of Computer Science University of Pittsburgh.
DB2 Universal Database Confidential | July 2012 | India Software Lab Click to add text © 2012 IBM Corporation An End to End Windows Automation Framework.
CS 7: Introduction to Computer Programming Java and the Internet Sections ,2.1.
WEP Presentation for non-IT Steps and roles in software development 2. Skills developed in 1 st year 3. What can do a student in 1 st internship.
14 June 2004System-wide Services: User InterfaceRich Moeser 1 EVLA Overall Software Design Final Internal Review System-wide Services: User Interface.
AJAX Compiled from “AJAX Programming” [Sang Shin] (Asynchronous JavaScript and XML)
R MoeserCorrelator f2f Meeting1 MCAF (Metadata Capture and Formatting) Rich Moeser.
Oct 021 Outline What is a widget? Buttons Combo boxes Text components Message boxes.
James Robnett EVLA M&C Software PDR May EVLA Monitor & Control Software PDR Monitor & Control Network Security.
Reading Flash. Training target: Read the following reading materials and use the reading skills mentioned in the passages above. You may also choose some.
LECTURE 18 16/11/15. MAKING THE INTERFACE CONSISTENT Consistency is one way to develop and reinforce the users conceptual model of applications and give.
Module: Software Engineering of Web Applications Chapter 2: Technologies 1.
Chapter 5 Introduction To Form Builder. Lesson A Objectives  Display Forms Builder forms in a Web browser  Use a data block form to view, insert, update,
Anritsu Automation Platform (AAP) AAP PC Connects to the system via IP connection (system switch) AAP was developed to add features that were requested.
JAVA: An Introduction to Problem Solving & Programming, 6 th Ed. By Walter Savitch ISBN © 2012 Pearson Education, Inc., Upper Saddle River,
July 19, 2004Joint Techs – Columbus, OH Network Performance Advisor Tanya M. Brethour NLANR/DAST.
Bill SahrNSF Review May , EVLA Monitor & Control.
4000 Imaje 4020 – Software Imaje 4020 – Content ■ Content of Chapter Software: 1. Flash Up 2. Netcenter 3. FTP 4. Active X 5. XCL commands 6. Exercise.
© 2009 IBM Corporation ITCAM for Transactions ISM Profiles Management ITCAM for Transactions – Internet Service Monitoring – Profile Management (v7.3)
Chapter 2: The Visual Studio.NET Development Environment Visual Basic.NET Programming: From Problem Analysis to Program Design.
Windows Vista Configuration MCTS : Internet Explorer 7.0.
Progress Apama Fundamentals
Running a Forms Developer Application
Bryan Butler (for Bill Sahr)
EVLA Monitor & Control Bill Sahr NSF Review May , 2006
Presentation transcript:

5-6 Dec, 2006EVLA M&C Critical Design ReviewRich Moeser 1 User Interfaces Rich Moeser

5-6 Dec, 2006EVLA M&C Critical Design ReviewRich Moeser 2 Place in the System

5-6 Dec, 2006EVLA M&C Critical Design ReviewRich Moeser 3 EVLA User Interfaces Two types of user interfaces for the EVLA M&C system –Java application –Web applications Java Application –EVLA Tool Suite Array Operator Screen Module Screens Device Browser Critical Functions Screen

5-6 Dec, 2006EVLA M&C Critical Design ReviewRich Moeser 4 EVLA User Interfaces Web Applications –Mostly functional prototypes –Executor interface –Monitor data archive interface –Alerts interface –More to come… This talk will focus on the EVLA Tool Suite

5-6 Dec, 2006EVLA M&C Critical Design ReviewRich Moeser 5 EVLA User Interface History Date(s) Description Requirements docs, prototyping 2003Work on communications infrastructure, examined XML-based GUI frameworks, prototyping, etc. Early work on Device Browser (Thinlet-based) 2004Device Browser field tested and put into operation. MIB to LabView software interface developed. (Using LabView’s DataSocket Server) Web-based Alerts interface 2005 Web-based Executor interface (released in May) EVLA Tool Suite (Operator Screen, Device Browser, ACU screen, etc) Released in September Oct 2005-Dec 2006EVLA Tool Suite - 13 releases. (Oct05, Nov05, Dec05, Feb06 (2), Mar06, Jun06, Jul06 (2), Aug06, Sep06, Oct06, Nov06) Current Status50 source files, ~24000 lines of Java code, 9 jar files (2 in-house, jfreechart, swinglabs, 5 JAXB)

5-6 Dec, 2006EVLA M&C Critical Design ReviewRich Moeser 6 Technologies Java (version 1.5) –Swing (JTable, JPanel, JFrame, etc, etc, etc) –Graphics2D (custom components) –Java Web Start –JAXB (Java Architecture for XML Binding) –SwingLabs ( So far using only a few SwingLabs components. Many of these components eventually end up in swing. XML/HTTP (REST) XML/UDP JFreeChart (version 1.0.1, Abandoned technologies –Thinlet (replaced by Swing) Difficult to create custom components Could not use newer features of Java Concerned about future support –Castor (replaced by JAXB) Concerned about future support, otherwise worked as well as JAXB

5-6 Dec, 2006EVLA M&C Critical Design ReviewRich Moeser 7 EVLA System Overview eva (VLA Control Building) mchost CMP (SLC) mcmonitor alert multicast domain archive multicast domain Commands to EVLA antennas Commands and data, to and from VLA Commands and data, to and from MIBs alert server monarch AOC XML/HTTPXML/UDP VPN Non-NRAO NRAO (transition) executor VLA

5-6 Dec, 2006EVLA M&C Critical Design ReviewRich Moeser 8 SCRIPTS ARRAY TIME WEATHER ALERTS CONSOLE ANTENNAS Array Operator Screen Layout Transparency control Common frame and menu bar for all screens Function specific components “Screenlets”. Stand-alone or embedded in other screens.

5-6 Dec, 2006EVLA M&C Critical Design ReviewRich Moeser 9 Elements of a “Screenlet” Clicking anywhere on a screen will (should) not have an adverse effect. For example, it should not send a command to the array. For the most part, screenlets are self- contained. Meaning they can be launched in their own window. Modifiable update rate. Right-click to invoke popup menu and select Options and then Update Rate The title of the screen. If you put the mouse pointer over the title and right-click a popup- menu will appear. A red border indicates a possible problem. Typically it means a communication error has occurred or the data received was invalid. Don’t worry if it “flickers” occasionally, only if it’s solid red. (If you move the mouse cursor over the title, text describing the error will be displayed.)

5-6 Dec, 2006EVLA M&C Critical Design ReviewRich Moeser 10 Software: Class Diagram ETSFrameJScreenAOIBaseScreen(Module)ScreenScreenModelDefaultMIBDataModelMultipleMIBDataModelDeviceBrowserCriticalFunctionsScreen (others…)

5-6 Dec, 2006EVLA M&C Critical Design ReviewRich Moeser 11 Software: Frame class - ETSFrame ETSFrame –Common Frame All screen and/or tools have the same frame –Common Status Bar Set alpha transparency of screens Common message area –Common Menu Exit/Close windows Select screens/tools Select preferences (colors, backgrounds, etc.)

5-6 Dec, 2006EVLA M&C Critical Design ReviewRich Moeser 12 Software: Panel class - JScreen JScreen –Common panel –Common look and feel Border provides communication status Alpha transparency –Provides a common framework For data collection and display For the sending of commands

5-6 Dec, 2006EVLA M&C Critical Design ReviewRich Moeser 13 Software: Data model class - DefaultMIBDataModel DefaultMIBDataModel –Handles communication to MIBs and makes data available to the screens –Requires hostname, command and update rate Ex: “ea14-frm.evla.nrao.edu”, “get frm.*”, 5000 –Polls the MIB for data at the requested update rate –The XML from the MIB is unmarshalled into a JAXB object and the data is stored into a table accessible to the screen –The parameters in the table are of the form. For example: frm.anemom1 or frm.anemom2 –When the update has completed the model fires a notification message to the screen. MultipleMIBDataModel (a collection of DefaultMIBDataModels)

5-6 Dec, 2006EVLA M&C Critical Design ReviewRich Moeser 14 UDP request Software: How screens are updated ea13-acu MIB UDP response XML DefaultMIBDataModel Unmarshall XML into JAXB object and load table Send UDP request “get acu.*” acu.azposerrorJAXB obj acu.elposerrorJAXB obj Notify screen that new data has arrived JScreen Read JAXB object from table and get the value Tell the screen to update itself Update screen components with current value

5-6 Dec, 2006EVLA M&C Critical Design ReviewRich Moeser 15 Software: UDP Communications //Example: //sending a command to a MIB import edu.nrao.evla.commons.net.*;... EVLAClient mib = new EVLAClient(“ea14-acu”, EVLAClient.UDP); mib.connect(); mib.sendOnly(“set acu.azposcmd=250”);... //keep active until done, then close mib.close(); UDP is used to communicate with MIBs and the CMP. All MIBs and the CMP have a common UDP interface called the service port. Simple command structure using gets and sets: get *.* get acu.*.* frm.* set acu.azposcmd=30 Set acu.elposcmd=45

5-6 Dec, 2006EVLA M&C Critical Design ReviewRich Moeser 16 Software UDP Communications //Example: //receiving data from a MIB import edu.nrao.evla.commons.net.*;... EVLAClient mib = new EVLAClient(“ea14-acu”, EVLAClient.UDP); mib.connect(); String xml = mib.send(“get *.*”);... //convert to DOM or JAXB object... mib.close();......

5-6 Dec, 2006EVLA M&C Critical Design ReviewRich Moeser 17 Software HTTP Communications //Example: //requesting information from //the alert server import edu.nrao.evla.commons.net.*;... String xml = EVLAClient.GET(“ checker?operation=alertsinfo”); checker?operation=alertsinfo... //convert to DOM or JAXB object //Example: //requesting information from //the executor import edu.nrao.evla.commons.net.*;... String xml = EVLAClient.GET(“ nrao.edu:8888/executor?operation=Ex ecutorInfo”); nrao.edu:8888/executor?operation=Ex ecutorInfo... //convert to DOM or JAXB object

5-6 Dec, 2006EVLA M&C Critical Design ReviewRich Moeser 18 Deployment using Java Web Start Web Start is a mechanism for deploying Java applications over the Web. Point a browser to internal/jnlp internal/jnlp Select the link labeled “EVLA Operator Software” and the latest version of the application The browser associates the “.jnlp” file with the javaws application (jnlp = java network launching protocol) You will see the “Java Loading…” message If the software has changed the download dialog will appear “Trust this guy?” dialog Application launches

5-6 Dec, 2006EVLA M&C Critical Design ReviewRich Moeser 19 Future Work Create screens for all EVLA modules. Currently there are only 7 EVLA modules that have screens (acu, frm, f317, f320, l301, m302, and m303). Create Web apps with similar functionality – but, much less dynamic - to support remote access to the EVLA system. The only means of remote access right now is to have VPN software installed on the remote client. The first will be a web-based version of the Device Browser. Define and implement screens needed before Modcomps can be retired. Most of the AOI screens will be reproduced during this effort. And, much, much more…

5-6 Dec, 2006EVLA M&C Critical Design ReviewRich Moeser 20 Demo… Web Apps – EVLA Tool Suite –