MSc Software Maintenance

advertisement
HBV601G Hugbúnaðarverkefni 2 - Static Analysis Verkefni - Gildi 10%
Clean Baseline/Hrein Grunnlína
HBV601G Hugbúnaðarverkefni 2 - Static Analysis Verkefni - Gildi 10%
Deadline: 10.00 a.m. on April 17th. April 21st.
Aim
The aim is to create a clean version of the code i.e. fix all the warnings from a set of
static analysis tools applied to your code. During this work, code may be may
refactored using the refactoring capabilities of the tools. Make use of two use cases
to check that your code continues to function normally after making changes.
Java groups should apply Findbugs, Checkstyle, and RefactorIT metrics.
Python groups should apply Pydev, Pydev Extensions and PyMetrics.
PHP groups should apply PHPLint, Spike PHPCheckstyle, and PHP Depend.
Assessment
Assessment is by presentation and demonstration. Groups will give a 25 minute
Powerpoint presentation. Presentations and “before and after” demonstrations are
provisionally scheduled for April 21st. April 24th.
Presentation materials
The first slide, in addition to a title, must contain the names of all the group members
and the name of the module. The Notes for the first slide should be about introducing
the group to your audience. The first slide must also contain the following statement.
By including this statement, you are agreeing with it. If you plagiarize material your
degree will be at risk.
“This project is all our own work. We have not knowingly allowed others to
copy our work. We have not submitted this work in any other context.”
Each slide of the presentation should include some “Notes”1. These “Notes” should
represent what you would say to explain the contents of the slide. Keep each note to
120 words or less. Each slide should be numbered, dated, and have your group
identification. Slides should not be overloaded with material. Marks will be lost if the
font size is so small it would be impossible for the slide to be read by someone in a
lecture theatre.
You must include the following slide topics. Do not use more than one slide on each
topic. Each slide & notes is worth 1% except where indicated.
1.
2.
3.
4.
5.
Title slide. (First slide)
Screenshot(s) explaining first use case. (0,5%)
Screenshot(s) explaining second use case. (0,5%)
Tools used and justifications of tool settings used.
A table showing before and after warning counts regarding coding style and
other bug detections. Provide a module or method level view as appropriate.
6. A table showing before and after values for selected metrics. Provide a
module or method level view as appropriate.
7. Most serious warnings: explain the three most serious warnings that were fixed.
1
This is a built-in feature of PowerPoint.
1
HBV601G Hugbúnaðarverkefni 2 - Static Analysis Verkefni - Gildi 10%
8. Most serious refactorings: explain the three most serious refactorings that
were performed.
9. PotLuck: choose one topic to investigate in detail. (2%)
a. Pareto chart for warning types.
http://en.wikipedia.org/wiki/Pareto_chart
b. Deeply unfamiliar Java, Python or PHP (where an understanding was
required to perform refactoring and/or interpret warnings)
c. Results of applying an additional static analysis tool.
10. Conclusions. (Last slide)
Submission Instructions
Each group, in a single e-mail, should e-mail a copy of the Powerpoint presentation
GroupX.ppt), to the teacher (andy@hi.is) by 10.00 a.m. on April 17th April 21st. The
e-mail Subject header should be: GroupX Assignment. The body of the e-mail
message should include the names of the group members. Late submissions will not
be accepted. At the presentations, each group should prepare 2 printed copies of
presentation materials (slides and notes) to distribute to teaching staff.
Notes and Advice
Marking will be to 0.5%.
If the PotLuck section is particularly well done, a 1% bonus mark may be awarded,
but the maximum project mark remains at 10%.
A student failing to attend their own group presentation scores 0%.
There is a 2% deduction for (i) 5 missing notes in presentation materials, or (ii) failing
to attend a presentation by other another group.
Marks will be lost in presentations for (i) failing to keep to slide order and content, or
(ii) failing to keep to time.
Failure to provide a “before and after” demonstration has a penalty of -3%.
Failure to provide an “after” demonstration results in a mark of 0%.
Failure to provide a demonstration of any static analysis tool used has a penalty of -3%.
Do not rely on network access to give your presentation, burn a CD or memory stick
with all relevant materials.
You are permitted one e-mail or phone consultation with the teacher.
Do not leave working with PowerPoint until the last minute.
As a general rule, expect to work 90 minutes for every 1% value of an assignment.
Dr Andy Brooks (andy@hi.is, GSM 869 3974)
þriðjudagur, 24. mars 2009
http://staff.unak.is/not/andy/StaticAnalysis0809/static_analysis.htm
2
Download