Purpose: Gain experience using Structured Analysis techniques to

advertisement
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
Download