An Introduction To Evaluator: Vijaya Kotikalapudi Eddie Jesinsky NASA/WVU ATL Intern [email_address] PathMATE Model Automa...
Overview <ul><li>Applied Technology Lab </li></ul><ul><li>Pathfinder Solutions </li></ul><ul><li>What is it? </li></ul><ul...
Applied Technology Lab <ul><li>Established: 2007 </li></ul><ul><li>Partnership between WVU and NASA's Independent Verifica...
Pathfinder Solutions <ul><li>Pathfinder Solutions started in 1995 as a privately held partnership of experienced and succe...
What is it? <ul><li>Transforms platform-independent models (PIMs) defined in UML to efficient, high-performance code. </li...
What is it? <ul><li>Transformation Engine </li></ul><ul><ul><li>Rapidly transforms PIMs into high-performance embedded sys...
What is it? PathMATE Model Automation and Transformation Environment IV&V ATL
Benefits <ul><li>Higher Developer Productivity </li></ul><ul><ul><li>Shifts development from being code-centric to archite...
Overview <ul><li>Applied Technology Lab </li></ul><ul><li>Pathfinder Solutions </li></ul><ul><li>What is it? </li></ul><ul...
Features <ul><li>Easily control resource utilization and architecture of generated software </li></ul><ul><li>Integrates w...
Features - Detailed <ul><li>Open Integration </li></ul><ul><ul><li>Plugs into popular UML editors such as IBM/Rational Ros...
Features - Detailed <ul><li>Rich UML Modeling Support </li></ul><ul><ul><li>Architectural-level Domain packages and their ...
Features - Detailed <ul><li>Model Checking and Static Analysis </li></ul><ul><ul><li>Built-in model syntax, completeness a...
Features - Detailed <ul><li>Document and Report Generation </li></ul><ul><ul><li>Generates formatted Word documents </li><...
Maturity <ul><li>Portable Scalable (Radar) Signal Processor </li></ul><ul><ul><li>A cross-program common architecture (fra...
Support <ul><li>PathTECH online tech resource site </li></ul><ul><li>MDA Mentor Training & Consulting </li></ul><ul><li>Fu...
Requirements/Cost <ul><li>Engine runs on Windows Development platforms. </li></ul><ul><li>Floating/Node Locked License: $2...
Tutorial: Create a New Project PathMATE Model Automation and Transformation Environment IV&V ATL
Create a Quickstart System Model PathMATE Model Automation and Transformation Environment IV&V ATL
Rename it to “SimpleOven” PathMATE Model Automation and Transformation Environment IV&V ATL
Create a domain model for the systems application domain, MicrowaveCooking PathMATE Model Automation and Transformation En...
Add Operation “ ReportDoorStatus” to the MicrowaveCooking Domain PathMATE Model Automation and Transformation Environment ...
Add parameters for the operation PathMATE Model Automation and Transformation Environment IV&V ATL
Add action language to the operation PathMATE Model Automation and Transformation Environment IV&V ATL
Create a realized domain PathMATE Model Automation and Transformation Environment IV&V ATL
Add a UML enumeration to a Domain's Public Types PathMATE Model Automation and Transformation Environment IV&V ATL
Add UML operations “ActivateDevice” and “DeactivateDevice” PathMATE Model Automation and Transformation Environment IV&V ATL
Add a parameter to an operation PathMATE Model Automation and Transformation Environment IV&V ATL
Complete the System Domain Chart: Specify Dependencies Between Domains PathMATE Model Automation and Transformation Enviro...
Specify System Package Imports PathMATE Model Automation and Transformation Environment IV&V ATL
Complete the Class Diagram for the MicrowaveCooking Domain PathMATE Model Automation and Transformation Environment IV&V ATL
Add attributes to the Oven class and set their values PathMATE Model Automation and Transformation Environment IV&V ATL
Associate classes PathMATE Model Automation and Transformation Environment IV&V ATL
Add MicrowaveCooking Initialization Action PathMATE Model Automation and Transformation Environment IV&V ATL
Create and name the Door state machine diagram PathMATE Model Automation and Transformation Environment IV&V ATL
Create signals for the Door state machine PathMATE Model Automation and Transformation Environment IV&V ATL
Create and Name the Light state machine diagram PathMATE Model Automation and Transformation Environment IV&V ATL
Add Entry Actions <ul><li>Entry Actions </li></ul><ul><ul><li>Establish a relationship between the Door state and the Ligh...
Ex: Add Entry Action for Door Closed PathMATE Model Automation and Transformation Environment IV&V ATL
Add Entry Actions <ul><li>Similarly, for the open state of the door, the following action code is added </li></ul>PathMATE...
Transformation <ul><li>SimpleOven exists as a sample model in the PathMATE examples library – part of the PathMATE profile...
To Instantiate a Reference Project for SimpleOven PathMATE Model Automation and Transformation Environment IV&V ATL
Create a new Project ReferenceSimpleOven PathMATE Model Automation and Transformation Environment IV&V ATL
In the ReferenceSimpleOven project, select the .cpp and copy/paste it in the QuickStart project PathMATE Model Automation ...
Create a new PathMATE model PathMATE Model Automation and Transformation Environment IV&V ATL
Select the QuickStart System Model.emx PathMATE Model Automation and Transformation Environment IV&V ATL
In the Deployment dropdown, select “All Reports” and click Transform PathMATE Model Automation and Transformation Environm...
Transforming... PathMATE Model Automation and Transformation Environment IV&V ATL
Reports generated PathMATE Model Automation and Transformation Environment IV&V ATL
Generate C++ code and Visual Studio Project files: Open QuickStart System Model.pathmate in the Editor pane and in the Dep...
In the Transformation Maps window ensure the PathMATE C++ and Build file generation Maps appear in order PathMATE Model Au...
Transforming... PathMATE Model Automation and Transformation Environment IV&V ATL
Building SimpleOven.exe: Right-click SimpleOven.vcproj in the Project Explorer and select Open With > System Editor Build ...
Run SimpleOven with Spotlight to visualize system execution at the model level: Launch from within Visual Studio- usually ...
Once Spotlight starts,  click the Connect button at the left end of the Spotlight toolbar to connect to the target applica...
Press the Go button to start SimpleOven execution.  PathMATE Model Automation and Transformation Environment IV&V ATL
The system is now running. PathMATE Model Automation and Transformation Environment IV&V ATL
In the Rational Software Modeler, in the Light state machine diagram the current state is highlighted. As expected, this i...
PathMATE Model Automation and Transformation Environment QUESTIONS? Thank You Eddie Jesinsky, Aaron Higgins – Interns Dr. ...
Upcoming SlideShare
Loading in …5
×

PathMATE

6,982 views
6,792 views

Published on

Evaluation of PathMATE software by ATL Intern Eddie Jesinsky

Published in: Economy & Finance, Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
6,982
On SlideShare
0
From Embeds
0
Number of Embeds
14
Actions
Shares
0
Downloads
11
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

PathMATE

  1. 1. An Introduction To Evaluator: Vijaya Kotikalapudi Eddie Jesinsky NASA/WVU ATL Intern [email_address] PathMATE Model Automation and Transformation Environment IV&V ATL
  2. 2. Overview <ul><li>Applied Technology Lab </li></ul><ul><li>Pathfinder Solutions </li></ul><ul><li>What is it? </li></ul><ul><li>Benefits </li></ul><ul><li>Features </li></ul><ul><li>Maturity </li></ul><ul><li>Support </li></ul><ul><li>Requirements & Cost </li></ul><ul><li>Tutorial </li></ul>PathMATE Model Automation and Transformation Environment IV&V ATL
  3. 3. Applied Technology Lab <ul><li>Established: 2007 </li></ul><ul><li>Partnership between WVU and NASA's Independent Verification and Validation (IV&V) facility in Fairmont, WV. </li></ul><ul><li>Goal: To research software engineering techniques that improve and enhance the way NASA produces safe and reliable system software. </li></ul><ul><li>Director: Dr. Tim Menzies </li></ul><ul><li>http://atl.wvu.edu </li></ul>PathMATE Model Automation and Transformation Environment IV&V ATL
  4. 4. Pathfinder Solutions <ul><li>Pathfinder Solutions started in 1995 as a privately held partnership of experienced and successful MDA practitioners. </li></ul><ul><li>Pathfinder's Model Automation and Transformation Environment - PathMATE - was first released in 1996. </li></ul><ul><li>In 2005, PathMATE integrated with Rational Software Modeler, IBM Rational's next generation UML editor. </li></ul><ul><li>http://pathfindermda.com </li></ul>PathMATE Model Automation and Transformation Environment IV&V ATL
  5. 5. What is it? <ul><li>Transforms platform-independent models (PIMs) defined in UML to efficient, high-performance code. </li></ul><ul><li>Support for embedded C, C++, and Java code generation as well as others user-defined through Transformation Maps </li></ul>PathMATE Model Automation and Transformation Environment IV&V ATL
  6. 6. What is it? <ul><li>Transformation Engine </li></ul><ul><ul><li>Rapidly transforms PIMs into high-performance embedded systems </li></ul></ul><ul><li>Transformation Maps </li></ul><ul><ul><li>Code templates which drive engine's transformation of PIMS into range of outputs and documentation </li></ul></ul><ul><li>Spotlight </li></ul><ul><ul><li>Verify and debug applications at the model level during design phase, enabling faster development, improved quality and reduced int. testing resources </li></ul></ul>PathMATE Model Automation and Transformation Environment IV&V ATL
  7. 7. What is it? PathMATE Model Automation and Transformation Environment IV&V ATL
  8. 8. Benefits <ul><li>Higher Developer Productivity </li></ul><ul><ul><li>Shifts development from being code-centric to architecture-centric. </li></ul></ul><ul><ul><li>Claims development productivity gains of up to 40% within first year </li></ul></ul><ul><li>Implementation Consistency </li></ul><ul><ul><li>Automation makes the production of tight, readable code a highly repeatable process </li></ul></ul><ul><li>Architectural and Platform Flexibility </li></ul><ul><ul><li>Engine allows you to change implementation language, platform, and architecture with the flip of the switch </li></ul></ul><ul><li>Large-Scale Software Reuse </li></ul><ul><ul><li>Define component functionality once- Can be regenerated for different deployment languages, platforms, and contexts </li></ul></ul>PathMATE Model Automation and Transformation Environment IV&V ATL
  9. 9. Overview <ul><li>Applied Technology Lab </li></ul><ul><li>Pathfinder Solutions </li></ul><ul><li>What is it? </li></ul><ul><li>Benefits </li></ul><ul><li>Features </li></ul><ul><li>Maturity </li></ul><ul><li>Support </li></ul><ul><li>Requirements & Cost </li></ul><ul><li>Tutorial </li></ul>PathMATE Model Automation and Transformation Environment IV&V ATL
  10. 10. Features <ul><li>Easily control resource utilization and architecture of generated software </li></ul><ul><li>Integrates with major UML editors & offers open access to transformation logic: IBM's Rational Rose and Rational Software Modeler </li></ul><ul><li>Enables highly iterative model development transformation and testing </li></ul>PathMATE Model Automation and Transformation Environment IV&V ATL
  11. 11. Features - Detailed <ul><li>Open Integration </li></ul><ul><ul><li>Plugs into popular UML editors such as IBM/Rational Rose </li></ul></ul><ul><ul><li>Model versioning & archival via change management systems </li></ul></ul><ul><ul><li>Supports popular requirements management systems </li></ul></ul><ul><ul><li>Command-line interface for software build integration </li></ul></ul><ul><li>Standards Based </li></ul><ul><ul><li>Reference technology for OMG’s MDA Model-to-Code standard </li></ul></ul><ul><ul><li>Supports MDA Model Marking </li></ul></ul><ul><ul><li>XMI data import </li></ul></ul><ul><ul><li>Tracks emerging MDA “Executable UML” standard </li></ul></ul>PathMATE Model Automation and Transformation Environment IV&V ATL
  12. 12. Features - Detailed <ul><li>Rich UML Modeling Support </li></ul><ul><ul><li>Architectural-level Domain packages and their interfaces </li></ul></ul><ul><ul><li>Classes, attributes, class operations </li></ul></ul><ul><ul><li>Associations and generalization including polymorphism support </li></ul></ul><ul><ul><li>Harel State Charts including state entry actions, state exit actions, transition actions, guards, composite states, and history </li></ul></ul><ul><ul><li>OMG Standard Action Semantics </li></ul></ul><ul><ul><li>Supports all UML diagram types: Class Diagrams, State Diagrams, Use Case Diagrams , Sequence Charts, Interfaces, Subsystems, Collaboration Diagrams, Deployment Diagrams </li></ul></ul><ul><ul><li>Model “diffing” </li></ul></ul><ul><ul><li>Flexible model storage for component-level management and reuse </li></ul></ul><ul><ul><li>Robust Repository </li></ul></ul>PathMATE Model Automation and Transformation Environment IV&V ATL
  13. 13. Features - Detailed <ul><li>Model Checking and Static Analysis </li></ul><ul><ul><li>Built-in model syntax, completeness and consistency checks </li></ul></ul><ul><ul><li>Run-time performance, safety-critical, high-availability, and modeling consistency analysis </li></ul></ul><ul><li>Transformation Performance </li></ul><ul><ul><li>Generates > 50K lines of code/minute </li></ul></ul><ul><ul><li>Fastest edit-transform-debug cycle for iterative development and testing </li></ul></ul><ul><li>Architectural Configurability </li></ul><ul><ul><li>Reconfigure across thread & processor topologies for performance prototyping, varying product configurations, etc </li></ul></ul>PathMATE Model Automation and Transformation Environment IV&V ATL
  14. 14. Features - Detailed <ul><li>Document and Report Generation </li></ul><ul><ul><li>Generates formatted Word documents </li></ul></ul><ul><ul><li>Injects diagrams into target reports </li></ul></ul><ul><ul><li>Generates HTML for web-based collaboration and reference lookup </li></ul></ul><ul><ul><li>XML output for open data interchange </li></ul></ul><ul><ul><li>Document template library provides a starting point for custom reports </li></ul></ul>PathMATE Model Automation and Transformation Environment IV&V ATL
  15. 15. Maturity <ul><li>Portable Scalable (Radar) Signal Processor </li></ul><ul><ul><li>A cross-program common architecture (fractional) and infrastructure project to build a radar signal processing approach and components that far exceeded the run-time performance of existing hand-coded alternatives. </li></ul></ul><ul><li>Nuclear Plant Control System – Embedded Central Controller </li></ul><ul><ul><li>Project-specific model-checking was developed with PathMATE rules technology to automatically verify that all model constructs met a range of safety-critical checks. </li></ul></ul><ul><li>More information at http://www.nasa.gov/centers/ivv/doc/207832main_PMTE-PathMateTransformationEngine-WebEval.doc </li></ul>PathMATE Model Automation and Transformation Environment IV&V ATL
  16. 16. Support <ul><li>PathTECH online tech resource site </li></ul><ul><li>MDA Mentor Training & Consulting </li></ul><ul><li>Fully Executable Sample Systems </li></ul><ul><li>Whitepapers </li></ul><ul><ul><li>http://pathfindermda.com/resources/whitepapers.php </li></ul></ul><ul><li>Email: [email_address] </li></ul><ul><li>Phone: 888-662-PATH (888-662-7284)‏ </li></ul><ul><li>Fax: 888-662-7284 </li></ul>PathMATE Model Automation and Transformation Environment IV&V ATL
  17. 17. Requirements/Cost <ul><li>Engine runs on Windows Development platforms. </li></ul><ul><li>Floating/Node Locked License: $2200.00 </li></ul><ul><ul><li>Includes yearly support subscription: toll-free telephone and e-mail support, critical bug patches </li></ul></ul><ul><li>Product versions released during support subscription are $440.00 per license </li></ul>PathMATE Model Automation and Transformation Environment IV&V ATL
  18. 18. Tutorial: Create a New Project PathMATE Model Automation and Transformation Environment IV&V ATL
  19. 19. Create a Quickstart System Model PathMATE Model Automation and Transformation Environment IV&V ATL
  20. 20. Rename it to “SimpleOven” PathMATE Model Automation and Transformation Environment IV&V ATL
  21. 21. Create a domain model for the systems application domain, MicrowaveCooking PathMATE Model Automation and Transformation Environment IV&V ATL
  22. 22. Add Operation “ ReportDoorStatus” to the MicrowaveCooking Domain PathMATE Model Automation and Transformation Environment IV&V ATL
  23. 23. Add parameters for the operation PathMATE Model Automation and Transformation Environment IV&V ATL
  24. 24. Add action language to the operation PathMATE Model Automation and Transformation Environment IV&V ATL
  25. 25. Create a realized domain PathMATE Model Automation and Transformation Environment IV&V ATL
  26. 26. Add a UML enumeration to a Domain's Public Types PathMATE Model Automation and Transformation Environment IV&V ATL
  27. 27. Add UML operations “ActivateDevice” and “DeactivateDevice” PathMATE Model Automation and Transformation Environment IV&V ATL
  28. 28. Add a parameter to an operation PathMATE Model Automation and Transformation Environment IV&V ATL
  29. 29. Complete the System Domain Chart: Specify Dependencies Between Domains PathMATE Model Automation and Transformation Environment IV&V ATL
  30. 30. Specify System Package Imports PathMATE Model Automation and Transformation Environment IV&V ATL
  31. 31. Complete the Class Diagram for the MicrowaveCooking Domain PathMATE Model Automation and Transformation Environment IV&V ATL
  32. 32. Add attributes to the Oven class and set their values PathMATE Model Automation and Transformation Environment IV&V ATL
  33. 33. Associate classes PathMATE Model Automation and Transformation Environment IV&V ATL
  34. 34. Add MicrowaveCooking Initialization Action PathMATE Model Automation and Transformation Environment IV&V ATL
  35. 35. Create and name the Door state machine diagram PathMATE Model Automation and Transformation Environment IV&V ATL
  36. 36. Create signals for the Door state machine PathMATE Model Automation and Transformation Environment IV&V ATL
  37. 37. Create and Name the Light state machine diagram PathMATE Model Automation and Transformation Environment IV&V ATL
  38. 38. Add Entry Actions <ul><li>Entry Actions </li></ul><ul><ul><li>Establish a relationship between the Door state and the Light state. Door closed -> Light off, Door open -> Light on </li></ul></ul><ul><li>The following code snippet is added to the action language as an entry action for the door's closed state </li></ul>PathMATE Model Automation and Transformation Environment Ref<Light> interior_light = FIND this->A1->A2; GENERATE Light:TurnOff() TO (interior_light); IV&V ATL
  39. 39. Ex: Add Entry Action for Door Closed PathMATE Model Automation and Transformation Environment IV&V ATL
  40. 40. Add Entry Actions <ul><li>Similarly, for the open state of the door, the following action code is added </li></ul>PathMATE Model Automation and Transformation Environment Ref<Light> interior_light = FIND this->A1->A2; GENERATE Light:TurnOn() TO (interior_light); <ul><li>Likewise, for the Light state machine, in the action language view of the Light state machine's Off State of the diagram, the following code is pasted: </li></ul>ExternalDeviceControl:DeactivateDevice(SYS_DEVICE_LIGHT); <ul><li>For the On State of the Light state machine diagram: </li></ul>ExternalDeviceControl:ActivateDevice(SYS_DEVICE_LIGHT); <ul><li>This completes the PathMATE-ready MDA model, which is now ready for being transformed into an executable system. </li></ul>IV&V ATL
  41. 41. Transformation <ul><li>SimpleOven exists as a sample model in the PathMATE examples library – part of the PathMATE profile data in the Rational Software Modeler. </li></ul><ul><li>The instantiation of SimpleOven as a reference project is done in order to copy the realized ExternalDeviceControl implementation and properties that guide the automatic generation of a Visual C++ project </li></ul>PathMATE Model Automation and Transformation Environment IV&V ATL
  42. 42. To Instantiate a Reference Project for SimpleOven PathMATE Model Automation and Transformation Environment IV&V ATL
  43. 43. Create a new Project ReferenceSimpleOven PathMATE Model Automation and Transformation Environment IV&V ATL
  44. 44. In the ReferenceSimpleOven project, select the .cpp and copy/paste it in the QuickStart project PathMATE Model Automation and Transformation Environment IV&V ATL
  45. 45. Create a new PathMATE model PathMATE Model Automation and Transformation Environment IV&V ATL
  46. 46. Select the QuickStart System Model.emx PathMATE Model Automation and Transformation Environment IV&V ATL
  47. 47. In the Deployment dropdown, select “All Reports” and click Transform PathMATE Model Automation and Transformation Environment IV&V ATL
  48. 48. Transforming... PathMATE Model Automation and Transformation Environment IV&V ATL
  49. 49. Reports generated PathMATE Model Automation and Transformation Environment IV&V ATL
  50. 50. Generate C++ code and Visual Studio Project files: Open QuickStart System Model.pathmate in the Editor pane and in the Deployment select Single Process C++ PathMATE Model Automation and Transformation Environment IV&V ATL
  51. 51. In the Transformation Maps window ensure the PathMATE C++ and Build file generation Maps appear in order PathMATE Model Automation and Transformation Environment IV&V ATL
  52. 52. Transforming... PathMATE Model Automation and Transformation Environment IV&V ATL
  53. 53. Building SimpleOven.exe: Right-click SimpleOven.vcproj in the Project Explorer and select Open With > System Editor Build the SimpleOven system in Visual Studio 7 PathMATE Model Automation and Transformation Environment IV&V ATL
  54. 54. Run SimpleOven with Spotlight to visualize system execution at the model level: Launch from within Visual Studio- usually Debug > Start Debugging or the F5 key PathMATE Model Automation and Transformation Environment IV&V ATL
  55. 55. Once Spotlight starts, click the Connect button at the left end of the Spotlight toolbar to connect to the target application PathMATE Model Automation and Transformation Environment IV&V ATL
  56. 56. Press the Go button to start SimpleOven execution. PathMATE Model Automation and Transformation Environment IV&V ATL
  57. 57. The system is now running. PathMATE Model Automation and Transformation Environment IV&V ATL
  58. 58. In the Rational Software Modeler, in the Light state machine diagram the current state is highlighted. As expected, this is the On state because of the DoorIsOpen Signal generated in the MicrowaveCooking Domain PathMATE Model Automation and Transformation Environment IV&V ATL
  59. 59. PathMATE Model Automation and Transformation Environment QUESTIONS? Thank You Eddie Jesinsky, Aaron Higgins – Interns Dr. Tim Menzies, Ph.D. - Director Pier Luigi Long – NASA IV&V IV&V ATL

×