Continuando con hacer las cosas bien

 


Lo único que no se puede decir sobre Microsoft es que nos aburrimos trabajando con sus productos.


En el marco del comienzo de un nuevo proyecto en la compañía para la que trabajo, en estos últimos días he estado instalando y jugando un poquito con el Enterprise Project Server (EPM, oficialmente llamado Microsoft Office Project Server) 2007 de Microsoft. Hace algunos años, por otro proyecto en el que estábamos integrando CRM, SharePoint, BizTalk y EPM 2003, me pusieron en el problema de “conversar” programáticamente con la antigua versión de EPM (por eso de que todos los compañeros en el proyecto estaban metidos en líos innumerables con sus propios servidores, y como yo había solucionado más o menos los problemas míos con SharePoint, me colgaron el san Benito de hacer la parte de EPM).


EPM 2003 es un verdadero drama. Programado en asp (si, en asp, no en aspx, es decir, en el lenguaje que usaban los dinosaurios para programar sus sitios de Internet), con el habían tratado de hacer algo parecido a capas de programación por objetos que solamente entendía el que lo programó. Y sin un Modelo de Objetos, sino con un número de Web Services, totalmente incapaces de trabajar con todas las posibilidades del sistema, por lo que al final terminabas sacando la información directamente desde la Base de Datos, que, como de costumbre, no estaba documentada.


Así que cuando me dijeron que tenía que empezar de nuevo con EPM, puse la cara más fea que pude. Pero como donde manda capitán no manda marinero, me tocó decir muy respetuosamente: “si señor” y empezar a trabajar sin fruncir el seño. Pero la sorpresa ha sido mayor, mayúscula, inesperada… EPM 2007 funciona completamente dentro de SharePoint, o, mejor dicho, EPM ES SharePoint. El Enterprise Project Manager Server 2007 no es más un servidor autónomo, sino una aplicación que ejecuta utilizando toda la infraestructura de SharePoint (autorización, maquina de Flujos de Trabajo, interface web, manejadores de eventos), y que utiliza un numero de Bases de Datos propias para guardar sus datos. Después de instalarlo (sin ningún trabajo: tres o cuatro clics y todo queda arreglado), en la Administración Central de SharePoint hay una nueva entrada desde donde se puede configurar el servidor, y luego de asignarle una Colección de Sitios propia (dentro de una Aplicación Web existente o una nueva), toda la configuración se puede encontrar dentro del sitio que EPM crea en WSS (usando su propia plantilla, instalada por defecto).


De la misma forma, un usuario puede utilizar la interface de SharePoint para usar su EPM personal (registro de tiempo, reportes, proyectos, etc). Esto abre posibilidades infinitas de personalización: como es un sitio de SharePoint, se pueden usar páginas maestras y hojas de estilo propias, utilizar alguna de las 25 WebPartes instaladas por defecto por EPM, o crear otras para hacer trabajo especializado, en fin, aplicar toda la caja de trucos de que disponemos en SharePoint. La programabilidad también ha sido mejorada radicalmente, y dispone ahora de 300 métodos públicos (en lugar de los 67 que tenía la versión 2003) que utilizan objetos (typed)DataSet, por lo que el IntelliSense de Visual Studio los reconoce inmediatamente para facilitar la programación (en lugar de engorroso XML como en los WebServices del 2003).


En resumen, ha sido amor a primera vista. Aunque, como todo amor a primera vista, después de la primera cita viene la primera desilusión: hay una cosa que no se puede hacer por medio de la web interface: crear un nuevo proyecto… incomprensible, pero así funciona Microsoft. El objetivo del Enterprise Project Manager, como su nombre lo dice, es manejar proyectos; y para manejar proyectos, primero tienes que crearlos. Y para crear proyectos, tienes que usar la versión cliente, el Project Professional 2007, para el que tienes que pagar licencias separadas… incomprensible, pero supongo que el primer trabajo de personalización de EPM será una WebPart para crear proyectos.


En fin, lo dicho, Microsoft no deja de sorprendernos por el trabajo brillante que hace a veces, y que deja de hacer otras veces.


PS: Como tema para filosofar, la misma estrategia de utilizar a SharePoint como servidor de base se puede usar con muchos otros productos de Microsoft. Por ejemplo, CRM no es precisamente el servidor más amistoso para programar, y cambiar su interface es lo más cercano a imposible (aunque estoy muy lejos de ser un conocedor de CRM): un candidato para meterlo como una aplicación que funcione dentro de SharePoint? Fíjense que ya nos tragamos a dos servidores: el viejo CMS (Content Management Server) y el viejo EPM (para no hablar del Class Server, que ahora es el SLK, SharePoint Learning Kit), así que cual es el siguiente? Axapta? Navision? Toda la suite de Dynamics? Tenemos para divertirnos un buen rato con SharePoint…


Gustavo – http://www.gavd.net/servers/
Escriba un Comentario que me haga reir…

2 comentarios en “Continuando con hacer las cosas bien”

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *