Abstract | During system evolution, trace links among requirements and source code could get distorted due to vocabulary mismatch problem. Nevertheless, researchers have shown that those links can be recovered by code refactoring. Moreover, it is shown that refactoring methods like rename identifier has positive impact in supporting traceability. This leads to the question that will other refactoring methods will have same impact on traceability? If yes, then which refactoring technique should be applied first? For this investigation, we used four refactoring techniques - introducing parameter object, pull up field, inline class and decompose conditional. The methods were applied on two different code bases namely iTrust and eTour. The traceability links were generated by an automated tool named TraceME. From the experiment, we observed that introducing parameter object improves requirements to code traceability. Inline class and decompose conditional show a little but positive influence. Pull up method shows no improvements in traceability. We conclude that introducing parameter object should have high priority to achieve better traceability. |
---|