Академический Документы
Профессиональный Документы
Культура Документы
Concept Location
If the change is not localized,
Impact Analysis
the programmer determines
Prefactoring which other modules are
Verification
Postfactoring
Conclusion
From concept location to impact analysis
Impact analysis (IA):
Initiation Determines the strategy and
Concept Location impact of the change
Changed set
To implement promotions,
Prices have a new date
parameter.
Example: point-of-sale application
To implement promotions,
Prices have a new date
parameter.
Example: point-of-sale application
To implement promotions,
Prices have a new date
parameter.
Concept location vs impact analysis
A B
However, indirect interactions are possible
(ex: mailman)
Global variables
Shared assumptions
(blue is 1)
Classes composing functionality
However, indirect interactions are possible
(ex: mailman)
class A {
int getUserColor();
}
(blue is 1) class C {
A a;
B b;
Classes composing functionality
void askThenPaint()
{
b.paintScreen(a.getUserColor());
}
}
Neighborhood of a class
To implement promotions,
Prices have a new date
parameter.
The impact analysis process
Marking classes
Mark Meaning
Does not belong to the impact set, but neighbors may still
PROPAGATING
change. All BLANK neighbors become NEXT
Impact analysis process
[no]
Mark all BLANK neighbors as NEXT
[yes]
Mark as UNCHANGED
[no]
Mark all BLANK neighbors as NEXT
[yes]
Mark as UNCHANGED
Computer Programmer
Further tool support permit the ranking of
the NEXT classes