Buenas,
El propio Swing ya proporciona y fomenta una arquitecura MVC por lo que tienes poco que hacer.
Pedidos.java seria la vista en la que declares los componentes y aniades los listener
ControladorPedidos.java sera una clase que implemente ActionListener y que procese los eventos recibidos desde la vista. Se podra apoyar en una clase de ayuda llamada
ValidadorPedido.java (SI, es tarea del controlador validar los datos de entrada, no del modelo).
Para comunicar el controlador con el modelo deberias utilizar un bean
Pedido.java que contenga todos los datos de un pedido con sus getter y setters correspondientes.
Este bean servira para transmitir la informacion entre el controlador y la base de datos.
En el modelo podras tener tu acceso a base de datos. En tu caso, has llamado a la clase DAOPedido del mismo modo que la podias haber llamado EspinetePedido, ya que el patron DAO no lo estas aplicando por ninguna parte (
http://www.tutorialspoint.com/design...ct_pattern.htm).
La opcion 2 que comentas no tiene ningun sentido.
No te preocupes si quieres utilizar el patron Observer. En realidad lo estaras utilizando todo el tiempo, ya que el modelo de eventos/listeners de swing se basan precisamente en dicho patron.
Un saludo