Bueno, al final, cada quien diseña sus clases lo mejor que puede.
Yo uso un diseño más parecido a lo que comenta
roman, los formulario de edición solo saben mostrar los datos, guardar o cancelar la edición del objeto que se le envía y el que los manda a llamar (mayormente un explorador de objetos) es el que decide si es un objeto nuevo o la edición de alguno existente.
Saludos...