Entradas populares

viernes, 29 de junio de 2012

Los clientes del departamento de pipeline

A raiz de unas preguntas en una entrevista de trabajo y de unas ideas que tenia desde hace tiempo voy a exponeros unas ideas generales sobre pipelines

Creo que cuando tenemos que diseñar una herramienta tenemos que tener en cuenta los posibles clientes o mejor dicho grupos de clientes, y estos pueden ser 3, artistas, departamento de produccion y pipeline, dependiendo de si incluye a 1, 2 o incluso a los 3 clientes las herramientas pueden ser diseñadas o incluso implementadas por distintos departamentos

Una herramienta para un solo departamento podria ser una herramienta por ejemplo de limpieza de poligonos, o una de limpieza de directorios, estas solo incumben a un departamento por lo que podrian ser facilmente desarrolladas por un TD de ese departamento

Luego la mayoria de las herramientas tienen como clientes a 2 departamentos son las mas usuales, ya que la mayoria deben de dar un aviso a produccion ya sea mandando mails, dando de alta en la base de datos o actualizando estados, por ejemplo una herramienta de publicaccion de assets, o de creacion de projectos seria de este tipo

Tambien puede haber herramientas que sean los 3 los clientes,como puede ser una herramienta para que el artista cree una textura nueva, que puede crear la estructura de archivos para contenerla, da aviso a produccion y se la abre en el programa de edicion

Teniendo esto en cuenta, a veces podemos structurar un script o una clase de modo que los metodos solo interactuen con uno de esos clientes, si por ejemplo tenemos que hacer un script para publicar un asset, podemos crear una clase asset, esa clase asset tendra un metodo publicar, pero en vez de que sea un metodo muy complejo podemos construirlo como llamadas a los distintos clientes, por ejemplo puede contener 3 metodos, un sanity check, un export y un notify, en el sanity check nuestro cliente seria el artista, serian script para ver si su trabajo esta bien y notificarselo a el, en el export nuestro cliente seria pipeline, creariamos carpetas, copiariamos archivos ... y en el notify lo que hariamos seria mandar los mails, dar de alta en la base de datos, actualizar flags y requires..

Bueno, esto son unas pocas ideas no muy elaboradas que me vinieron, que os parecen