20
Nathan Conklin Spring 2002 CS 6704 Design Patterns and Component Frameworks Presentation

Design Patterns and Component Frameworks Presentation

Embed Size (px)

DESCRIPTION

Design Patterns and Component Frameworks Presentation. Nathan Conklin Spring 2002 CS 6704. Course Context. Design Patterns (Strategy, Visitor, UML) Component Frameworks (JavaBeans, COM+, .NET, CORBA) Midterm Enabling Technologies (EJB, RMI, OAA, XML, CCA, JINI, WO) - PowerPoint PPT Presentation

Citation preview

Page 1: Design Patterns and  Component Frameworks Presentation

Nathan Conklin

Spring 2002

CS 6704

Design Patterns and Component Frameworks

Presentation

Page 2: Design Patterns and  Component Frameworks Presentation

Course Context

• Design Patterns (Strategy, Visitor, UML)

• Component Frameworks (JavaBeans, COM+, .NET, CORBA)

• Midterm

• Enabling Technologies (EJB, RMI, OAA, XML, CCA, JINI, WO)

• Architectures (Web Services, 2-tier, 3-tier)

• Education & Development (Patterns in Education, XP)

• End-User Component Programming (AVS, Khoros, Visual Prog.)

• Architecture & Component Framework (P2P, STL)

• Final

Page 3: Design Patterns and  Component Frameworks Presentation

Nathan Conklin, Yonqun HeQinwei Zhu, Jiunwei Chen

Spring 2002CS 6704

End-User Component Programming

Page 4: Design Patterns and  Component Frameworks Presentation

Component Programming Tools

apE (Animation Production Environment)

Sieve

PV-Wave

(IBM’s Data Explorer)

Page 5: Design Patterns and  Component Frameworks Presentation

Data Flow Model

• Data input

• Computational Components– Filters

– Mappers

• Data output

Data Data Reader

StatisticalModule

OutputWriter

Page 6: Design Patterns and  Component Frameworks Presentation

Further Information

• AVS – http://www.avs.com/• Khoros – http://www.khoral.com/

• PV-Wave – http://www.vni.com/• IRIS Explorer – http://www.nag.co.uk/Welcome_IEC.html• OpenDX – http://www.opendx.org/• DataSplash (Tioga) – http://datasplash.cs.berkeley.edu/• apE – Dyer, D., "A dataflow toolkit for visualization," IEEE

Computer Graphics and Applications 10(4), pp. 60--69, 1990.

• Sieve – http://simon.cs.vt.edu/sieve/

Page 7: Design Patterns and  Component Frameworks Presentation

Nathan Conklin

Spring 2002

CS 6704

Page 8: Design Patterns and  Component Frameworks Presentation

Overview & History

• Application Visualization System– 1989 IEEE Computer Graphics and Applications

– Scientific Visualization

• Products– AVS/5, AVS/Express

– Gsharp, Toolmaster

– MUSE, OpenViz, VizWorks

Page 9: Design Patterns and  Component Frameworks Presentation

Data Flow Example

• AVS Network • Modules• Ports

• Image Viewer

Page 10: Design Patterns and  Component Frameworks Presentation

Modules and Ports

• Data Inputs– Some optional

– AVS data type

– Types checked as built

– Shows possible connections

• Input Parameters– How processed

– Interactively changed

• Data Outputs

Page 11: Design Patterns and  Component Frameworks Presentation

Subsystems

• Network Editor

• Control Panel

• Image Viewer

• Graph Viewer

• Geometry Viewer

Page 12: Design Patterns and  Component Frameworks Presentation

• Network Editor• CLI

• Module Library

• Workspace• Network

– Modules– Ports– Connections

Page 13: Design Patterns and  Component Frameworks Presentation

Example Network

#!/usr/bin/avs –networkversion 5.02 (50.65 sg2)module "read field.user.0" -xy 398,22 -ex $Path/avs_library/mongomodule "volume bounds.user.1" -xy 408,172 -ex $Path/avs_library/mongomodule "geometry viewer.user.3" -xy 328,262port_connect "read field.user.0":0 "volume bounds.user.1":0port_connect "volume bounds.user.1":0 "geometry viewer.user.3":0panel "read field.user.0" -w panel -p "Top Level Stack" -xy 0,108 -wh 256,324panel "volume bounds.user.1" -w panel -p "Top Level Stack" -xy 0,108 -wh 138,196panel "geometry viewer.user.3!display" -w container -p ui -xy 732,469 -wh 542,515manipulator "read field.user.0:Read Field Browser" -w browser -p "read field.user.0"

-xy 10,10 -wh 236,194manipulator "volume bounds.user.1:Colored Bounds" -w toggle -p "volume

bounds.user.1" -xy 10,164 -wh 118,22manipulator "geometry viewer.user.3":"Update Always" -w nonemanipulator "geometry viewer.user.3":"Update Image" -w none

Page 14: Design Patterns and  Component Frameworks Presentation

Control Panel

Page 15: Design Patterns and  Component Frameworks Presentation

Image Viewer

Page 16: Design Patterns and  Component Frameworks Presentation

Graph Viewer

Page 17: Design Patterns and  Component Frameworks Presentation

Geometry Viewer

Page 18: Design Patterns and  Component Frameworks Presentation

Custom Modules

• International AVS Centre– http://www.iavsc.org/– AVS Community

• Documentation

• News

– Module Repository• Source

• Documentation

Page 19: Design Patterns and  Component Frameworks Presentation

Module Generator

• Generates Skeleton Modules– Source in C or FORTRAN– User can customize the module interface– Reserved areas for user-supplied code

• Subroutine Modules– Module initialized and process sleeps– AVS Flow Executive wakes module– Module computes and returns output data

• Coroutine Modules– Active, autonomous modules– Continually processing and passing data– Typically used for simulations

Page 20: Design Patterns and  Component Frameworks Presentation

Further Information

• Center for Scientific Visualization and Animation

• Director - Ron Kriz ([email protected])

• Sun Workstations– pluto.sv.vt.edu– venus.sv.vt.edu

• ESM 4714