The Common.Change_control package contains a number of minor problems or inconsistencies, as follows:
the attribute 'node' in the class AUDIT_DETAILS is poorly named
the 'description' attribute the CONTRIBUTION class should be in the AUDIT_DETAILS class, since any kind of audit record might include a description. For example, BitKeeper has description for both change-set and for every file changed in a change set.
rather than inheriting from AUDIT_DETAILS, the CONTRIBUTION class should have an association relation with it, because CONTRIBUTIONS are not as such, audit objects.
it would be simpler if the 'change_type' attribute of the class VERSION_AUDIT were moved to AUDIT_DETAILS, since this attribute could be used for audits pertaining to CONTRIBUTIONs as well.
following the above changes, the class VERSION_AUDIT can be removed, and the class AUDIT_DETAILS made concrete.
The Common.Change_control package contains a number of
minor problems or inconsistencies, as follows:
the attribute 'node' in the class AUDIT_DETAILS is poorly named
the 'description' attribute the CONTRIBUTION class should be in
the AUDIT_DETAILS class, since any kind of audit record might
include a description. For example, BitKeeper has description
for both change-set and for every file changed in a change set.
rather than inheriting from AUDIT_DETAILS, the CONTRIBUTION
class should have an association relation with it, because
CONTRIBUTIONS are not as such, audit objects.
it would be simpler if the 'change_type' attribute of the class
VERSION_AUDIT were moved to AUDIT_DETAILS, since this attribute
could be used for audits pertaining to CONTRIBUTIONs as well.
following the above changes, the class VERSION_AUDIT can be
removed, and the class AUDIT_DETAILS made concrete.