Hola Luis,

En primer lugar, no te hagas cargo del problema, no es necesario. Esto pudo
haber sido un accidente. Veremos si pueden levantar el audio.

Con respecto a tu pregunta: no comprendo bien si la consulta es sobre el dominio
en particular o sobre posibles implementaciones de una logica como esa. Asumo
que se trata de la ultima cuestion.

Podemos seguir la idea de Sebastian si te parece y armamos un bosquejo para la
reunion del miercoles. Sin embargo, este tema me parece mas de implementacion de
que DM.

Bien, en primer lugar, no me parece que se trate de una operación masiva. No
creo que estemos hablando de 100.000 o mas mails a enviar. Seguramente se trata
de unos 1000 a 5000, de todas maneras, dejemos de lado este tema, como veras es
manejable.

Lo primero que yo haria es definir al servicio de envio masivo de mails, por
ejemplo, un servicio al cual le dejamos en una cola (o base de datos) todas las
direcciones a las cuales debe enviar el mail y el texto correspondiente y este
servicio los envia.

Por otro lado, si vos tenes dos sistemas independientes que se conectan por el
Id que mencionas, tendras el problema de relacionar los datos uses DM o no. Yo
sugiero que construyas un repositorio que consulte la base de datos de
tecnologia y realice ese query, luego que busque los objetos cliente de tu
sistema y te devuelva la colección prolijamente armada.
Esta operación NO es eficiente, pero como podes hacerlo de otra manera? Al ser
dos sistemas separados no hay manera de hacer un join. Incluso es probable que
tecnologia resuelva esto con un script Perl sobre archivos del mail server.

De todas maneras, cualquier cosa que puedas hacer de otras maneras, la podras
hacer dentro del repositorio de Tecnologia.

Fijate que casi todas las reglas que mencionaste debe responderlas Tecnologia,
si tenes otras reglas, el momento de aplicarlas es cuando estas contruyendo la
lista de clientes luego de haber traido los Ids desde Tecnologia.

Carlos


> -----Original Message-----
> From: patrones@mug.org.ar [mailto:[EMAIL PROTECTED] On Behalf Of 
> Luis Farzati
> Sent: Miércoles, 04 de Octubre de 2006 02:45 a.m.
> To: patrones List Member
> Subject: !-> [patrones] DM, video y dudas
> 
> Hola Ezequiel,
> 
> La gente (conocidos que tienen una productora) que recomendé a Carlos 
> para la grabación del video tuvieron un problema con el audio y están 
> demorando bastante en entregarnos un resultado (ya sea que se puede 
> recuperar o que no).
> 
> Pido disculpas a todos por este problema, pero sinceramente yo los 
> recomendé porque grabaron el casamiento de un amigo y otros eventos a 
> los que asistí y siempre estuve conforme.
> 
> Ahora, con respecto a DM, hay algo que me parte la cabeza, sobretodo 
> con lo que respecta a las operaciones 'masivas' (ya en la reunión algo 
> de esto te había consultado, Carlos, no sé si te acordás).
> 
> Todo lo otro me parece muy bueno y de hecho me sirvió para darle una 
> vuelta de tuerca a lo que venía diseñando (que era algo parecido sin 
> saber que estaba aplicando pseudo-DM :P).
> Pero cuando llego a este tipo de operaciones, que por ejemplo es 
> disparar una campaña de marketing o inhabilitar cuentas, empiezan a 
> aparecerme varias zonas oscuras.
> 
> Voy a tratar de no extenderme demasiado pero quisiera explicar mi 
> dilema concreto. Siguiendo el pensamiento DM
> digo: bueno, cómo se haría esto en la vida real?.
> 
> Marketing necesita enviar un mail a ciertos Clientes que matchean un 
> criterio determinado. Alguien (seguramente el gerente de Marketing 
> después de una reunión de estrategia) pide enviar un mail a aquellos 
> Clientes que cumplen con ciertos requisitos técnicos (información de 
> la que Marketing no dispone), como por ejemplo: aquellos Clientes que 
> tienen servicio de Casilla de Mail 10MB y no la hayan utilizado en los 
> últimos 60 días.
> 
> Hasta acá podría tener las clases Cliente y DeptoDeMarketing. 
> Esta última con un método "LanzarCampaña(string nombreDeCampaña)". Por 
> decir algo.
> 
> Marketing entonces le pedirá a Tecnología que le envíen por mail la 
> lista de Clientes que cumplan ese requisito.
> Tecnología revisa todas las cuentas de servicio Casilla de Mail cuya 
> capacidad sea 10MB, y le devuelve una lista con los códigos de Cliente 
> resultantes (únicamente los códigos, ya que es lo único que conoce 
> Tecnología; ellos no saben (ni tienen por qué saber) los datos de un 
> Cliente).
> 
> Podría agregar entonces la clase DeptoDeTecnología. Puedo suponer que 
> hago un método
> BuscarCódigosDeClienteConRequisitos() de la NASA al que le paso como 
> argumentos los requisitos y me devuelve una List<UInt32> de 
> identificadores.
> 
> Y ya ahi empiezo a empantanarme. Está bien así? No se vuelve demasiado 
> engorroso? Qué onda con la performance?
> LanzarCampaña() va a tener que procesar esa lista de identificadores y 
> pedir por ejemplo la dirección de mail para esos clientes.
> 
> Encima, esto empeora si el criterio de búsqueda se vuelve más complejo 
> e incluye información de otros sectores. Por ejemplo, Servicio de Mail 
> 10MB con último acceso mayor a 60 días, y además que el cliente esté 
> pagando con Tarjeta de Crédito y viva en Capital Federal. O sea que 
> debería pedirle a DeptoDeTecnología y DeptoComercial, luego buscar 
> aquellos clientes que coinciden en los dos listados y ahi procesar el 
> resultado.
> 
> Está bien encarado? Tal vez DM ya no me sirve para esto? O sirve pero 
> estoy en ese punto en el que uno tiene que decidir robustez o 
> performance? O... o...?
> 
> Muchas dudas, espero no haberlos mareado y que alguno me pueda 
> despejar la mente!!! =P
> 
> Saludos,
> Luis
> 


Responder a