Upload
evette
View
38
Download
0
Tags:
Embed Size (px)
DESCRIPTION
State of the Project. GEEK. (Graphical Event Enquiry Kit). A Program for Tracking Software Events. Schroeder Bernstein Brain Landbonner Burce Snaders Bolzano Weierstrass. The GEEK Team. … Schroeder Bernstein … Burce Snaders … Bolzano Weierstraas - PowerPoint PPT Presentation
Citation preview
GEEKA Program for Tracking
Software Events
State of the Project
(Graphical Event Enquiry Kit)
Schroeder BernsteinBrain Landbonner
Burce SnadersBolzano Weierstrass
2
The GEEK Team
Brain Landbonner
… Schroeder Bernstein
… Burce Snaders
… Bolzano Weierstraas
… Brain Landbonner
3
Focus of This Presentation Project Overview User Interface Design Architecture Software Demo
Brain Landbonner
4
Focus of This Presentation Project Overview
The Class The Problem The Solution
User Interface Design Architecture Prototype
Brain Landbonner
Project Overview
5
The Class Computer Science Capstone 61 Students … 13 Teams Industry Projects
Multi-User Cell Phone Game (QUALCOMM Incorporated)
Peer Distributed Transfer Protocol (ClickCaster, Inc.)
Remote Icing Sensing System (NASA)
Brain Landbonner
Project Overview
6
Problem: Optimization Highly Competitive Market Selling Point:
Fast and Small Programs Needed:
Tool for Code Optimization
Brain Landbonner
Project Overview
7
The Solution: GEEK Uses of GEEK Major Requirements
Environmental Functional
Conceptual View of GEEK
Brain Landbonner
Project Overview
8
Solution: GEEK
Capture Software Events Display in Easy-to-Understand Manner Event Any Optimizable Feature
100
200
300
400
event1
event2
event3
event4
event5
event6
Numberof
Occurrences
Software Events
Brain Landbonner
Project Overview
9
Example: System Calls
Uncover Errors Uncover Inefficiencies
1000
2000
3000
4000
getpid read write open close getgid
Numberof
Occurrences
System Calls
Brain Landbonner
Project Overview
10
Other Optimization Uses Network Packet Transmissions X Windows Client-Server Communications Database Queries Method Calls Web Server Communication . . . and more
Brain Landbonner
Project Overview
11
Environmental Requirements Software/Development Environment
ANSI C X Window System X11R7 OpenMotif Red Hat Linux RCS
Hardware Environment 1024 x 768 24-bit Color Display Pointing Device and Keyboard Supports the Software Environment PostScript Printer
Brain Landbonner
Project Overview
12
Functional Requirements Event Configuration File Interface to Generator Screen Display Format ASCII Output File PostScript Output Screen Update Interval Software Event Collection Multiple GEEK Sessions
Brain Landbonner
Project Overview
13
GEEK Conceptual Diagram
Brain Landbonner
Project Overview
14
Focus of This Presentation Project Overview User Interface Design Architecture Software Demo
Schroeder Bernstein
15
Focus of This Presentation Project Overview User Interface Design
Command Line Interface Graphical User Interface
Architecture Software Demo
Schroeder Bernstein
User Interface Design
16
Command Line Interface Maximum Event Event Specification File Standard X Arguments Generator Command
% geek -m 1000 -l labels -display yquem:0.0 -- facmon -t3 -l -z
Schroeder Bernstein
User Interface Design
17
The GEEK Window
Schroeder Bernstein
User Interface Design
18
Current View Horizontal Histogram Scale Event Labels Scroll Bar
Schroeder Bernstein
User Interface Design
19
Global View Event Space Visualization Current View Location
Schroeder Bernstein
User Interface Design
20
Status Bar: Collection Counting
Events Counted When Received Not Counting
Events Ignored When Received
Schroeder Bernstein
User Interface Design
21
Status Bar: Update Automatic
Update at Periodic Intervals Manual
Update on Explicit User Request
Schroeder Bernstein
User Interface Design
22
Status Bar: Sort By Event
Ordered by Increasing Event ID By Count
Ordered by Decreasing Event Count
By Nothing Order Unchanged
Schroeder Bernstein
User Interface Design
23
Status Bar: Elapsed Time Time During Which Counting Occurred Displayed As …
Hours Minutes Seconds
Schroeder Bernstein
User Interface Design
24
Button Bar Start
Count Events When Received Stop
Ignore Events When Received Reset
Set Counts to Zero Update
Immediately Update Histogram
Schroeder Bernstein
User Interface Design
25
Menu Bar: File Save
Save Event Counts Save As …
Save Event Counts in Named File Preferences …
Modify User Preferences Exit …
Terminate GEEK Session
Schroeder Bernstein
User Interface Design
26
Menu Bar: Screen Sort
By Event Set Criteria “By Event” By Count Set Criteria “By Count” By Nothing Set Criteria “By Nothing”
Update Automatic Set Periodic Update Manual Set Update on
User Request
Schroeder Bernstein
User Interface Design
27
Menu Bar: Help Manuals Update Collection Sorting Time Saving Printing
Schroeder Bernstein
User Interface Design
28
An Example Help Window
Schroeder Bernstein
User Interface Design
29
Focus of This Presentation Project Overview User Interface Design Architecture Software Demo
Bolzano Weierstraas
30
Focus of This Presentation Project Overview User Interface Design Architecture
Overview GEEK Classes File Formats
Software Demo
Bolzano Weierstraas
Architecture
31
GEEK Modules
eventscommands
event counts
invocation
Bolzano Weierstraas
Architecture
32
Generator
Means to Execute Generator Program
Outputs Stream of Event IDs
events
invocation
Bolzano Weierstraas
Architecture
33
Accumulator Accepts Stream of
Event IDs Counts Events Accepts Accumulator
Commands Start Start Counting Events Stop Stop Counting Events Reset Set Event Counts to Zero Send Return Event Counts
eventscommands
event counts
Bolzano Weierstraas
Architecture
34
PostScript Converter
Translates ASCII Event Count File
to PostScript Event Count File
Bolzano Weierstraas
Architecture
35
Graphical User Interface
Provides All User Interaction
Reads Event Specification File
Writes ASCII Event Count File
commands
invocation
event counts
Bolzano Weierstraas
Architecture
36
Process Structure
Each Module a Process
Communication via Pipes
Bolzano Weierstraas
Architecture
37
Object StructureGeek
LabelsGenerator Accumulator
Application
FormSortOrder
Graph
SortOrder
Counter Clock
Counter
Bolzano Weierstraas
Architecture
38
Object Structure
LabelsGenerator Accumulator
Application
FormSortOrder
Graph
SortOrder
Counter Clock
Counter
Bolzano Weierstraas
Architecture
Geek
39
Object StructureGeek
LabelsGenerator Accumulator
Application
FormSortOrder
Graph
SortOrder
Counter Clock
Counter
Bolzano Weierstraas
Architecture
40
Object StructureGeek
LabelsGenerator Accumulator
Application
FormSortOrder
Graph
SortOrder
Counter Clock
Counter
Bolzano Weierstraas
Architecture
41
Object StructureGeek
LabelsGenerator Accumulator
Application
FormSortOrder
Graph
SortOrder
Counter Clock
Counter
Bolzano Weierstraas
Architecture
42
Focus of This Presentation Project Overview User Interface Design Architecture
Overview GEEK Classes File Formats
Software Demo
Burce Snaders
Architecture
43
GEEK ClassesGeek
LabelsGenerator Accumulator
Application
FormSortOrder
Graph
SortOrder
Counter Clock
Counter
Burce Snaders
Architecture
44
The Counter Class
Burce Snaders
CounterID Create(GeekEvent maxevent)
ErrorStatus Load(Integer fd)
EventCount EventCount(GeekEvent event)
GeekEvent MaxEvent()
Copy(CounterID destination)
Delete()
Architecture
45
The Form Class
Burce Snaders
FormID Create(LabelsID labels, Widget shell, Menus menus, Buttons buttons, Statuses statuses, Data data)
SetStatus(Integer status, String string)
StartElapsedTime()
StopElapsedTime()
ResetElapsedTime()
Time ReadElapsedTime()
Update(SortOrderID sortorder, CounterID counter) Delete()
Architecture
46
The Form Window
Burce Snaders
Architecture
47
The Accumulator Class
Burce Snaders
AccumulatorID Create(String path, Integer eventfd, GeekEvent maxevent)
ErrorStatus Send() ErrorStatus Start() ErrorStatus Stop() ErrorStatus Reset() GeekEvent MaxEvent() CounterID Counter() Delete()
Architecture
48
Application
Burce Snaders
ApplicationID Create( String genfile,
String genargs[], GeekEvent maxevent, String labelsfile,
Integer argc, String argv[], Function exitcallback)
Delete()
Architecture
49
Focus of This Presentation Project Overview User Interface Design Architecture
Overview GEEK Classes File Formats
Software Demo
Burce Snaders
Architecture
50
File Formats Event Specification File ASCII Event Count File PostScript Event Count File
Burce Snaders
Architecture
51
Event Specification File
Burce Snaders
# Event Specification File for Factory Monitor# Valve Events0 Valve Opened1 Valve Closed# Pump Events2 Pump Started3 Pump Stopped# Tank Temperature Events4 Tank 1 Exceeded Max Temperature5 Tank 2 Exceeded Max Temperature6 Tank 3 Exceeded Max Temperature# Tank Pressure Events7 Tank 1 Exceeded Max Pressure8 Tank 2 Exceeded Max Pressure9 Tank 3 Exceeded Max Pressure# Some unknown event that seems to occur periodically10 Unknown Event
Architecture
52
ASCII Event Count File
Burce Snaders
# GEEK (Graphical Event Enquiry Kit) Event Count Filegenerator /usr/local/bin/facmon -noalarms -i 5 -tank 1-2maxevent 12elapsedtime 1863# Event Count Label2 37 Pump Started3 37 Pump Stopped0 26 Valve Opened1 26 Valve Closed5 11 Tank 2 Exceeded Max Temperature8 9 Tank 2 Exceeded Max Pressure7 3 Tank 1 Exceeded Max Pressure10 2 Unknown Event11 1 Event 114 0 Tank 1 Exceeded Max Temperature6 0 Tank 3 Exceeded Max Temperature9 0 Tank 3 Exceeded Max Pressure12 0 Event 12
Architecture
53
PostScript Event Count File
Burce Snaders
Architecture
54
Focus of This Presentation Project Overview User Interface Design Architecture Software Demo
Brain Landbonner
55
Software Demo
Brain Landbonner
56
Summary Project Overview
The Class The Problem The Solution
User Interface Design Command Line Interface Graphical User Interface
Architecture Overview GEEK Classes File Formats
Software DemoBrain Landbonner
57
GEEK Helps Optimization Extremely Flexible Easy to Configure Easy to Use Easy to Interpret Results
Brain Landbonner