What do *-Int-* classes represent in today's Pega?
An *-Int-* class models a single data structure used in a single, named System of Record (or one of its APIs).
For example, MyOrg-Int-SAP-Customer, or MyOrg-Int-SAP-CustomerAPI-NewCustomerRequest. They represent a record in the System of Record's Physical Data Model, at least to the extent that this is visible to Pega (via the System of Record's API).
As Data Pages have grown as a means of abstracting the Logical Data Model from the Physical Data Model, using an *-Int-* class to model instances held in a Pega database table has also started to emerge as a technique. Examples include where data owners have considered Pega "just another System of Record" for the data needed by the Pega application layer, and seek a clear separation between classes in the Logical Data Model (visible to the application/case layer) and the classes in the Physical Data Model.
For simple data types that are not composed of other objects, and where the Physical and Logical Data Models are an exact match, it is still reasonable for the one Concrete *-Data-* class to be both the Physical and Logical Data Model. The triggers for when these classes need to be separated into distinct *-Data-* and *-Int-* classes with relevant mappings are:
When these classes of data are delegated to a different System of Record, bringing a very high likelihood of some variation of naming or structure between Logical and Physical; or
When the maintenance of these classes of data in Pega becomes unworkable in their current form.