FEAT can help user to automatically generate a concern graph which describes all the newly added elements and relations to the source code since the concern graph is loaded into FEAT.
After FEAT loads the a concern graph (can be a new concern graph), it keeps track of any new changes made to the source code and keep the query database updated with the current state of source code, and warn user for any inconsistancies in the concern if any changes lead to a discrepancy between the source code and the existing concern.
The tracked changes are remember by FEAT, and it can generate a concern automatically to describe this change (only additions made to source code though).
The reason for this function is mainly for programmer to record their new implementations or change tasks while they program, so that later other programs can easily review the feature/change by looking at this concern. So instead of querying through the code and build the concern afterwards, why shouldn't we ask FEAT to record this concern in the first place during the course of implementation?
To generate the concern graph:
Note: the generated concern explicitly lists all the new elements and relations. Their relavancy to the feature or changing task depends on whether the programmers made any irrelevant changes. If all the changes made are a part of the new feature, then the generated concern will be 100% accurate and complete. But if user also performed some other changes to the source code, the generated concern will not be as "pure" as desired. However, user can remove any elements and relations that does not have to be included in this concern.