Application Development Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 

ATC Checks and Baseline

manish_gupta32
Participant
0 Kudos

Hi,

We have enabled ATC checks in our organisation and activated the baseline functionality as well to make sure only the new code changes are scanned going forward.

But we are facing a challenge, if we make any minor change in already baselined code, ATC starts scanning the old baselined code as well.

Anyway we can avoid it?

9 REPLIES 9

gabmarian
Active Contributor
0 Kudos

I've faced this issue and I doubt there is a standard way to overcome that.

ATC findings are assigned with a hash generated by the context of the finding (e.g.scope of a method or function module). The finding is only hidden via the baseline as long as the hash is unchanged.

As far as I understand the baseline it is for the purpose to ignore (untouched) legacy code in a system which is continuously being monitored by ATC, but as soon as you modify something you have to clean-up the "surroundings" of the spot you altered. The effort required heavily depends on how the existing source code is structured.

FredericGirod
Active Contributor
0 Kudos

We have made a custom change in a previous company on ATC.

We used the version history of the code to filter the issus find by ATC.

I have no the source code, but it worked.

0 Kudos

Thanks for a prompt reply, could you provide more details, may be I can try implementing the same.

0 Kudos

0 Kudos

I remember checking the implicit enhancement spot suggested by the blog, but found out that it had gone due to refactoring of internal ATC code.

The solution I used to to detect new finding only is to execute ATC simultaneously in DEV and Q&A for the same objects, and determine the difference between the two result set (comparing object, test class, and test code). I did it from Solution Manager, but I guess it can be integrated into the development system itself. ATC has a public API available in package SATC_CI_API.

UweFetzer_se38
Active Contributor
0 Kudos

It depends as always...

In most of the cases the baseline works as designed: only new or changed lines are checked. But if you change for example a function mudule interface or data definitions with ":" in it, the whole definition will be checked, because ATC sees this as a changed statement.

0 Kudos

... and before I forget: baselines have an End date (default only 21 days). This was previously also my fault and I thought that the baseline didn't work.
Since than I'm creating baselines with 180 or even 365 days lifespan.

amitpdutta
Participant
0 Kudos

To start with we are Baselining the entire transport layer Before roll out ATC to developer. Just a question, do we need to Baseline SAP transport layer as well.

Regards

Kavita

yasz
Explorer
0 Kudos

Hello

we have implemented the ATC in the project from 6 months, on each satellite server. It is working fine.

Currently we are implementing the ATC server to centralize the ATC checks.

Managing the baseline is interesting but I would like to propose an idea in order to improve the current working way.

Please say me if it is possible, not already existing (:))

- baseline is managed centrally

- all updates in the baseline may come from the jobs or the exemptions validated

BUT

if we want to force the system to remove the exemptions given on a specific package, we cannot do it from a job.

if I have a package called ZOBSOLETE, I would like to remove anytime the exemptions than could be given to the objects contained by the package. Approvers can do some errors.

Must I create a specific check in my ATC variant? is it better to use a job to do it?

there is no checks between jobs when they are added in the baseline, if I am thinking correctly.