Workstation Software Framework WSF ESO L Andolfato ESO
- Slides: 16
Workstation Software Framework (WSF) ESO - L. Andolfato ESO Instrumentation Software Workshop 2008 - 1
Workstation Software Framework Models are solution to problems at a higher level of abstraction (contain less details than code). • Models are easier to read analyze than production code • Models provide good documentation • Models can be reused (and they are easier to reuse than code) • Some models can be executed ESO - L. Andolfato ESO Instrumentation Software Workshop 2008 - 2
Workstation Software Framework State Machine Models Event driven application are usually designed using State Machine models because: • They allow to define rigorously the complex behavior of sequential systems • They are mathematical objects and therefore can be analyzed with mathematical tools (formal methods) • State models provide simultaneously a source of documentation and a source of information for generating code • State models can be reused (Catalog of State Patterns) ESO - L. Andolfato ESO Instrumentation Software Workshop 2008 - 3
Workstation Software Framework The Framework WSF is a framework that from a state machine model generates the code to: • Handle events • State transitions The developer has to write the code to implement: • Actions • Data handling/processing ESO - L. Andolfato ESO Instrumentation Software Workshop 2008 - 4
Workstation Software Framework Supported State Machines ESO - L. Andolfato ESO Instrumentation Software Workshop 2008 - 5
Workstation Software Framework Composite States ESO - L. Andolfato ESO Instrumentation Software Workshop 2008 - 6
Workstation Software Framework Supported Platform and Modeling Tools Supported platform: • Scientific Linux • C++ GNU compiler, libraries and development tools • VLT Software Supported modeling tools: • Rational ROSE • Magic. Draw • Enterprise. Architect ESO - L. Andolfato ESO Instrumentation Software Workshop 2008 - 7
Workstation Software Framework Development Process Model Design • wsf. Create (first time only) • Modeling tool or Text editor Code Generation • export model • wsf. Config Code Refinement • implementation of the action • implementation of the data classes • update CDT and database classes • implementation TAT tests ESO - L. Andolfato ESO Instrumentation Software Workshop 2008 - 8
Workstation Software Framework Code Generation From the model it is possible to generate: • The code implementing the states • The code implementing the state transitions • The code for the invocation of the actions • The code implementing internal and EVH events (input commands, replies, timers, DB events, etc. ) • The skeletons of actions and data classes What is NOT possible to generate: • The implementation of the actions • The handling/processing of data ESO - L. Andolfato ESO Instrumentation Software Workshop 2008 - 9
Workstation Software Framework Action Classes • Action classes encapsulate action methods, events used by the action methods, and local data shared among action methods • Action methods are the executable unit of the state machine • Action method names are predefined: • Init • Execute • Complete • Abort • Reject • Supersede ESO - L. Andolfato ESO Instrumentation Software Workshop 2008 - 10
Workstation Software Framework Data Classes Run-time data class • Containing data generated at run-time by the application • Mirrored by a database class Configuration data class • Containing configuration data used by the application • Mirrored by a database class ESO - L. Andolfato ESO Instrumentation Software Workshop 2008 - 11
Workstation Software Framework Scalability Model Size • The size of the model (number of states, transitions, actions, events) is related with the number of generated classes. • The architecture of the application is based on design patterns which guarantee scalability • Large models need a modeling tool • Large models will generate a large number of classes (and files). IDE like Eclipse allows to easily navigate the code Performances • Access to action methods via map container takes O(log n) where n is number of action classes • Polymorphism overhead depends on the compiler ESO - L. Andolfato ESO Instrumentation Software Workshop 2008 - 12
Workstation Software Framework Reusability I Reusability on different platforms can be achieved: • by porting WSF • generating the code • porting the implementation of action and data classes. Catalog of State Patterns Similarly to the Design Patterns, State Patterns are “ready-to-use” solutions of software design problems using state machines. ESO - L. Andolfato ESO Instrumentation Software Workshop 2008 - 13
Workstation Software Framework Reusability II ESO - L. Andolfato ESO Instrumentation Software Workshop 2008 - 14
Workstation Software Framework Results ESO - L. Andolfato ESO Instrumentation Software Workshop 2008 - 15
Workstation Software Framework More info on WSF Documentation: • Design doc. : VLT-SPE-ESO-17210 -3389 • User Manual: VLT-MAN-ESO-17210 -3872 • SPIE 2008: Workstation Software Framework Web and Contact: websqa. hq. eso. org/tecsw/bin/view/VLTSW/Wsf landolfa@eso. org ESO - L. Andolfato ESO Instrumentation Software Workshop 2008 - 16
- Wsf uni rostock
- Ndt workstation
- Arm based workstation
- Sap treasury workstation
- Privileged access workstation azure
- Vmware player nat port forwarding
- Pacs modality workstation
- Graphics monitors in computer graphics
- Dicom workstation
- Ca workload automation esp edition
- Arcinfo workstation
- Workstation design definition
- Vmware workstation 10
- Mac secure browser nbme
- Tw-network
- Chapter 1 it sim what is a computer
- Why are distributed computing systems gaining popularity