El tema esta interesante
Si no me falla la memoria, en este caso la jerarquia la podes resolver de 3 maneras distintas:
1) Se eliminan las entidades derivadas del modelo (ChequesClientes, ChequesProveedores) y se colocan todos sus atributos en el ancestro, dichos atributos deberan ser todos no obligatorios
2) Se elimina el ancestro del modelo (Cheques) y se colocan todos los atributos de cheques en cada una de las entidades derivadas (teniendo en cuenta que Cheques tiene los atributos en comun)
3) Se dejan las 3 entidades en el modelo. Para conocer los datos de un Cheque, hará falta hacer un JOIN con la entidad especializada. Este JOIN te daria como resultado una tabla temporal igual a las que se definen en el punto 2
Como yo veo las cosas, la opcion del punto 1 es la que menor claridad aporta al modelo, pero a pesar de eso es la mas rapida para trabajar, ya que no requiere JOINS. Por ejemplo si tenes que listar todos los cheques en un determinado rango de tiempo sin importar su tipo, basta con un SELECT en la tabla Cheques
La opcion del punto 2, organiza un poco mas las cosas separando en dos tablas distintas segun el tipo de cheque (Cliente o Proveedor). El problema en este caso es la clave primaria. Si cada tabla mantiene su propia clave, implica tener una relacion en la que tenes que agregar un atributo extra, el tipo de cheque. En el caso anterior, cada cheque tendria su propio Id (asumiento que usaras clave primaria artificial, que obtendrias a traves de un generador)
La opcion del punto 3, es la mas clara de todas, ya que cumple con la filosofia del modeo ER y representa de manera mas comprensible y abstracta la base de datos, solucionando ademas el problema de la opcion 2, ya que la tabla que se va a encargar de generar el Id para el cheque es justamente la tabla Cheques. Las tablas especializadas lo unico que hacen es agregar mas informacion a la que tenes en la tabla padre. Esta opcion tiene el inconveniente de que es la mas compleja de manejar, las operaciones CRUD (inserciones, eliminaciones, seleccion y actualizacion) son mas dificiles de implementar y tambien mas costosas en terminos de performance
Saludos