Work On Workflows Dharmen Mehta Project Manager Nimai
- Slides: 24
Work On Workflows Dharmen Mehta (Project Manager) Nimai Buch (Language Guru) Yash Parikh (System Architect) Amol Joshi (System Integrator) Chaitanya Korgaonkar (Verifier and Validator)
Why Wo. W? (Our Motivation) �Need to simulate workflows of complex processes This stuff can get complex !! No kidding !
Why Wo. W? (Our Motivation) �Need to simulate workflows of complex processes �Need to KISS !! (Keep It Simple Silly) �A means to analyze and produce statistical results
Introduction �A language designed to handle workflows in industries �Java-like syntax �Aimed at easier design, simulation and analysis of workflows
Imper Com p D ec la ra tiv e ative iled e l p m i S Statically Typed DAG e l b a Port Intuitive y s Ea
Sample Code • Resource • Final • Times (x) • Nodes • Input • output Resources Block Nodes Block Connections Block • Connections • Computations • End Block Compute Block
Syntactic Constructs The Old Timers �The New Guys int �Wo. WNode String �Wo. WNodes double �x boolean �convert, combine if, foreach, while… �Wo. W Library
Samples
Architecture Source Program Lexer Parser *. Wo. W. jflex Wo. W. y top_include_targ et. txt Target Program AST Traversal Symbol Wo. W. y Table Main. Class. java end_include_targ et. txt Node. Thread. java Library Functions Package Hash Tables Connection. Checks. java
Runtime Environment �Use JVM on user’s environment �Makefile! � translate � wowcompile � wowrun �Runtime script executes the Parser on the Wo. W program �. /wow Wo. WPrograms/Audi. Wo. W
Software Development Environment
Test Plan �Testing of the Wo. W compiler is done by comparing the translated Java code of a Wo. W program with the expected Java code. �Ideally translation should fail if there are compilation errors in Wo. W program. �If mismatch between translated java and expected java then test case fails.
Test Scripts �test_script. sh Tests all the test programs in a loop. Outputs the number of test cases run and the result of the testing. �compare_java. sh Helper script called by test_script. sh which does actual part of comparing the two java programs using the diff command.
test_script. sh #!/bin/bash java_count=0 total_java=0 for D in `find Test -type d` do if [ "${D}" != "Test" ] then name=$(basename ${D}) java_test=$(. /compare_java. sh $name) if [[ "$java_test" == *passed* ]] then java_count=`expr $java_count + 1` fi echo $java_test total_java=`expr $total_java + 1` fi done echo "$java_count of $total_java Java tests passed”
compare_java. sh #!/bin/sh if diff -w -E -b -B "Test/$1/Translated. java" "Test/$1/Expected. Java. java" >/dev/null ; then echo $1 Java test passed! else echo $1 Java test failed! fi
Test Wo. W Programs � Hello. World. wow � One. Node. Only. Combine. wow � Two. Nodes. Multiple. Output. wow � Three. Nodes. Linear. wow � Three. Nodes. End. Block. wow � Four. Nodes. Complex. wow
Test Result
Test Failures �The test results shown in the previous slides where obtained at 100% pass rate after multiple testing iterations. �There were few bugs in parsing and translating which where caught during testing.
Project Management
Git Commits White Paper Take-off LRM AST & Translator Ready Target Code Design Ready Assignment Overload Library Functions Added
Repository �https: //github. com/amoljoshi/PLTWOW
Precious Learnings � “ IBM project management better, but not applicable” - Amol Joshi (System Integrator) � “The time spent upfront to make regression tests is worth the effort” – Chaitanya Korgaonkar (Verifier and Validator) � “Collaborative programming is not difficult if every member of the team is informed about the architecture” – Dharmen Mehta(Program Manager) � “Done is better than perfect! Do not waste excess time on finer details” – Nimai Buch(Language Guru) � “Take your time to build a good architecture, but make sure it is close to perfect when you’re done. ” – Yash Parikh (System Architect)
Thank You
- Nimai mehta
- Modern process transitions in spm
- Disease-specific workflows
- Jira workflow diagram
- The unified software development process
- Goanywhere advanced workflows
- Sirsi workflows
- Project indicator enables a software project manager to
- Senior manager vs general manager
- Portfolio manager synergy manager parental developer
- Mehta casting
- Gvk rao committee
- Dr anurag mehta
- Nigel price md
- Manoj mehta ficci
- Principles of electrical machines vk mehta
- Minesh mehta md
- Tanya singh husband
- Mehta hydraulics
- Amari mehta
- Amita mehta nasa
- Suri auto pvt ltd
- Rakesh mehta nsdl
- Chet mehta
- Web path