Presentation is loading. Please wait.

Presentation is loading. Please wait.

Using SansGUI ® in Academia Raising Software Standards in Higher Scientific & Engineering Education Copyright © 2002 ProtoDesign, Inc. All rights reserved.

Similar presentations


Presentation on theme: "Using SansGUI ® in Academia Raising Software Standards in Higher Scientific & Engineering Education Copyright © 2002 ProtoDesign, Inc. All rights reserved."— Presentation transcript:

1 Using SansGUI ® in Academia Raising Software Standards in Higher Scientific & Engineering Education Copyright © 2002 ProtoDesign, Inc. All rights reserved.

2 Overview n Academic Environment n Software Requirements n Software Tools n The SansGUI Solution n Development and Deployment n Demonstration - SansGUI in Action n Configurations and Support

3 Academic Environment n Teaching  Exposing students to emerging technologies  Providing interactive learning environments n Research  Concentrating on research subjects  Employing leading edge software tools n Educational & Industrial Affiliation  Publicizing and sharing research results

4 Current Problems n Primitive User Interfaces  Command-line driven applications  Text-base input and output files n No Interactive Schematic Editor n No Simple Mechanism to Integrate Existing Code with Modern GUI n No Standard for Project Specifications and Consolidation

5 Software Requirements … 1/6 n Graphical User Interface (GUI)  Classifying model building blocks  Configuring models with schematic diagrams  Assisting data entry and validation  Using familiar GUI operations  Unifying coding and data accessing interfaces among instructors, students, and researchers  Extending class work to future research  Performance issues: simulation code and GUI

6 Software Requirements … 2/6 n Model Semantics  Conveying the original intent of the model developer to the users  Ensuring integrity of measuring units  Encoding input data range semantics  Generating comments from qualitative descriptions  Incorporating context-sensitive documentation

7 Software Requirements … 3/6 n Data from Various Sources  Integrating data filters, pre-processors, and post-processors  Supporting column-major and row-major data storage orders of multi-dimensional arrays n Code from Various Sources  Incorporating existing code and libraries  Integrating with other software packages and environments

8 Software Requirements … 4/6 n Model Evolution & Version Control  Cumulating models and simulation results from years of research and development  Handling model specification changes  Synchronizing simulation code and user data  Sharing or merging software components, code, and data among projects  Maintaining backward and, even better, forward compatibility

9 Software Requirements … 5/6 n Development Environment  Supporting main-stream programming languages (C/C++, Fortran, Java ®, etc.)  Integrating with main-stream software packages (MATLAB ®, MS Office ®, etc.)  Providing verbose debugging facilities  Concentrating on underlying logic and mathematics, not details of syntax or usage  Supporting legacy code integration

10 Software Requirements … 6/6 n Web-Based Publishing  Constraints on web-based applications  Form based data entry  Limited interactivity and data validation  Project management issues  Publication quality of diagrams, charts, and tables  Consolidation of software documents  On-line and off-line application versions

11 Academic Software Tools n Office and Presentation Tools n Internet Browsing / Authoring Tools n Database & Data Access Tools n Mathematical Packages & Libraries n 3D Geometry & Visualization Tools n Development Environments n Domain Specific / Custom Tools

12 GUI Development … 1/3 n Low-Level API  Microsoft Windows  Win32, MFC,...  Unix  Xlib / Xt / Motif, Qt,...  Java platform  Swing, SWT, … Operating System Low-level GUI API GUI Class Library Simulation Program

13 GUI Development … 2/3 n Mid-Level API  Scripting tools  Tcl / Tk, Python,...  GUI builders with layout managers  GUI components  RAD tools  UML GUI generation  MVC, MVP,... Operating System Low-level GUI API GUI Class Library Simulation Program Scripting Tools GUI Builder RAD Tools UML Tools

14 GUI Development … 3/3 n High-Level Environment  Separation of GUI and simulator modules  Simple communication protocol  No GUI layout nor coding in development Operating System SansGUI Implementation SansGUI Modeling and Simulation Environment SansGUI Modeling and Simulation Environment Simulation Program GUI Layer

15 The SansGUI ® Solution

16 What is SansGUI... n A Software Framework  For developing and deploying simulation programs without tedious Graphical User Interface programming n An Interactive Environment  For building models, entering parameters, running simulations, monitoring progress, and viewing results

17 Who are the users... n Simulation Developer  Professors / Instructors / Research Associates Research Scientists / Research Engineers n Simulation User  Students / Data Analysts / Design Engineers Anyone who is involved in developing and using computer simulation in scientific and engineering fields.

18 SansGUI Abstraction n SansGUI Object System  Hierarchical class schema definitions  Attribute and behavior inheritance  Component and connection objects  Ports and connectivity definitions  Reference objects  Collections, Matrices, and Tables  Simulation control objects  User-extensible unit objects

19 Project Models n Class Hierarchy n Assembly Hierarchy Class Object TOP Assembly Part Object Class

20 Project Models n Class Hierarchy n Assembly Hierarchy Class Object TOP Assembly Part Object Class

21 Model Configurations TOP Assembly Part Subassembly Part

22 Model Configurations TOP Assembly Part Subassembly Part Subassembly denotes Exported Port Part

23 SansGUI Architecture n SansGUI Development Environment  Define model building blocks in classes  Specify attributes involved in simulation model  Implement simulator logic and mathematics n SansGUI Run-Time Environment  Configure model and prepare input data  Run simulation and monitor progress  Analyze simulation results to refine design

24 Development Environment SansGUI Development Environment Schema Definition.SGS File Schema Definition.SGS File Simulation Developer Object Library.SGO File Object Library.SGO File Meta- Schema Object System Source Framework Version Control Schema Compiler

25 In-Process Source Files C/C++ or Fortran In-Process Source Files C/C++ or Fortran Development Environment SansGUI Development Environment Schema Definition.SGS File Schema Definition.SGS File Simulation Developer Object Library.SGO File Object Library.SGO File Meta- Schema Object System Source Framework Version Control External Process Source Files In-Process.DLL File In-Process.DLL File External Process.EXE File External Process.EXE File Other Programming Libraries Programming Language - IDE Schema Compiler Text Editor

26 In-Process Source Files C/C++ or Fortran In-Process Source Files C/C++ or Fortran Files for Distribution Development Environment SansGUI Development Environment Schema Definition.SGS File Schema Definition.SGS File Simulation Developer Object Library.SGO File Object Library.SGO File Meta- Schema Object System Source Framework Version Control External Process Source Files In-Process.DLL File In-Process.DLL File External Process.EXE File External Process.EXE File Other Programming Libraries Text Editor Help Authoring Tool Invocation Script.BAT File (optional) Invocation Script.BAT File (optional) On-Line Help.HTM,.HLP, etc. On-Line Help.HTM,.HLP, etc. Programming Language - IDE Schema Compiler

27 Development Features n Simulation Program Definition n Class Schema Creation and Maintenance n Class Persistence and Evolution n Unit Object Creation & Maintenance n SansGUI Source Code Framework n Interactive Tracing and Debugging

28 Run-Time Environment SansGUI Run-Time Environment Simulation User Object Library.SGO File Object Library.SGO File On-Line Help.HTM,.HLP, etc. On-Line Help.HTM,.HLP, etc. SansGUI Object System Model & Schematic Editor Execution Control Version Control Result Logger & Viewer Project Model.SGP File Project Model.SGP File Model File.TXT or.XML Model File.TXT or.XML

29 Run-Time Environment SansGUI Run-Time Environment Software Implementation Simulation User Object Library.SGO File Object Library.SGO File In-Process.DLL File In-Process.DLL File External Process Local or Remote External Process Local or Remote User Override Routines Invocation Script.BAT File Invocation Script.BAT File On-Line Help.HTM,.HLP, etc. On-Line Help.HTM,.HLP, etc. SansGUI Object System Model & Schematic Editor Execution Control Version Control Result Logger & Viewer Project Model.SGP File Project Model.SGP File Core Simulator Editing Execution Evaluation Model File.TXT or.XML Model File.TXT or.XML

30 SansGUI Run-Time Environment Software Implementation Run-Time Environment Simulation User Object Library.SGO File Object Library.SGO File In-Process.DLL File In-Process.DLL File External Process Local or Remote External Process Local or Remote User Override Routines Database Access Data Acquisition Invocation Script.BAT File Invocation Script.BAT File On-Line Help.HTM,.HLP, etc. On-Line Help.HTM,.HLP, etc. Hardware-in-the-loop SansGUI Object System Model & Schematic Editor Execution Control Version Control Result Logger & Viewer Project Model.SGP File Project Model.SGP File Custom Pre-Processor Device Control Custom Post Processor Core Simulator Other Programs IPC or RPC Editing Execution Evaluation Model File.TXT or.XML Model File.TXT or.XML

31 Run-Time Features n Object Creation and Maintenance n Data Entry Assistance and Validation n Interactive Model Building Features n Model Data Persistence and Evolution n Parameter Resolution n Simulation Control n Dynamic Charting

32 Deployment n Object Library  Default or customized with convenient objects n Executable Code in.DLL or.EXE n Invocation Script (Optional) n On-Line Documentation n Example Project Models n Examples on ProtoDesign Web Site

33 SansGUI ® in Action

34 Supported Languages n Microsoft Visual C (SP3) +  Earlier versions may still work n Compaq Visual Fortran 6.1a + n DLL Project Creation n Interactive Code Debugging n XML Model Data Support n Class Schema Version Control

35 Other Language Support / PC n In-Process Simulation  Can create Win32 DLLs  Can be called from Microsoft Visual C++  Function names (length and case sensitivity)  Compatible function argument list  Can access C data structures with pointers n External Process Simulation  Can create stand-alone programs  Batch command / Shell script invocation

36 Licensing SansGUI n SGpro - Professional Edition  Full featured Development Environment n SGstu - Student Edition  Development Environment with 10 classes and 20 attributes per class limitation n SGrun - Run-time Edition  No Schema Definition access n SGdemo - Run-time Demo, No Save

37 Configurations for Teaching n Classes Requiring Programming  Instructor: Professional Edition  Students create new classes: Student Edition  Students use predefined classes: Run-Time n Classes without Programming  Instructor: Professional Edition  Students: Run-Time Edition n Playback Only: Free Demo Edition

38 Configurations for Research n Group Research  Laboratory computers: Professional Edition  Group leaders: Professional Edition  Research users: Run-Time Edition n Individual Research  Professional Edition n Colleagues and Interested Parties  Run-Time Edition or free Demo Edition

39 Educational Grants* n Course Adoptions  Verifiable course information  School, Department, Professor(s)  Course Number, Title, Description, Term, Web Link  One Professional Edition to instructor  Free Evaluation Licenses to students n Special Projects  Specially arranged with ProtoDesign, Inc. *Grant terms subject to change without notice.

40 Thank You ! n Visit Our Web Site   n  Information:  Sales:  Support:  Beta Testing:


Download ppt "Using SansGUI ® in Academia Raising Software Standards in Higher Scientific & Engineering Education Copyright © 2002 ProtoDesign, Inc. All rights reserved."

Similar presentations


Ads by Google