SE 386 Software Maintenance and Reengineering Lab 002 – Dynamic Analysis of CS 143’s Prog6.cpp Purpose: Gain initial familiarity with Dynamic Analysis of a simple program, the CS 143 Prog6.cpp. Deliverables: Due 2/15., 2:00 pm CST Using the Prog6.cpp linked to the class web page, produce the following: 1. Get Prog6.cpp running (see webpage). 2. Develop traceIn(), traceOut() and dump() functions in the spirit of the vb subroutines discussed in class. 3. Up to 2 pts extra credit if you can get these functions to selectively macro (using #define) to produce null functions at compile time. Must provide good evidence that these work and good description/documentation of how they work to get any of the 2 pts. 4. Up to 2 pts extra credit if you dynamically turn on and off tracing at runtime without restarting function. Must provide good evidence that these work and good description/documentation of how they work to get any of the 2 pts. 5. Use the Dump at strategic places to output a couple key variables (like input and output variables). 6. Run the instrumented version of your code using input files (linked to the web site): a. test1a.txt through test6a, IN ORDER 7. Describe what additional functionality is added with each successive test input file. 8. Describe what code (functions) is executed with each the additional test input file. 9. All deliverables shall be checked into your team’s shared folder in a Directory named “Lab02”. Name your project report LAB02_TEAMxx_ProjectReport.docx, where xx is your team number, 01, 02, 03, 04, 05. 10. Check the instrumented and running code into your team’s folder. (the entire project) 11. Include all trace files that your program produced. If you did the extra credit I need these trace files also. 12. Produce a Project Report – see template. 13. Each person MUST complete a paragraph in the project report. 14. Each person must contribute (and so evidence) to each of the graded tasks to earn full credit for this lab! 15. Please copy the below rubric to the top of your project report. Task Project Report Instrumentation and trace tools Documentation of trace tool How useful Description of #7 and #8 Time tracking Extra MACRO 2.0 Full documentation required Extra Dynamic on/off 2.0 Full documentation required Individual paragraph: © 2012 rowemi Possible Points 2 2 2 2 2 2 2 Points earned / Comments 2 2 Page 1 2/1/2010 SE 386 Software Maintenance and Reengineering Lab 002 – Dynamic Analysis of CS 143’s Prog6.cpp Individual paragraph: Individual paragraph: Individual paragraph: Individual paragraph: TOTAL © 2012 rowemi 2 2 2 2 14 Page 2 2/1/2010