Está en la página 1de 60

Anlisis de Puntos de Funcin Casos de Uso

Software Guru CONOCIMIENTO EN PRCTICA


Ao 01 No.04 Julio-Agosto 2005

ENTREVISTA:

Carlos Gonzlez
CASO DE ESTUDIO:

Director de Sistemas de TMM

Active Intelligence

CAMBIO,
LA NICA CONSTANTE
Preprate para BPM
Adems: Noticias Eventos Fundamentos Biblioteca Tecnologa Carrera TECNOLOGA:

WiMAX

DIRECTORIO A>
Edicin Ejecutiva Pedro Galvn Coordinacin Editorial Mara Ruvalcaba Edicin y Produccin Edgardo Domnguez Direccin de Arte Oscar Smano Ilustracin Omar Ruvalcaba Consejo Editorial Francisco Camargo, Guillermo Rodrguez, Ralf Eder y Ral Trejo, ITESM CEM; Hanna Oktaba, UNAM-AMCIS; Luis Cuellar, Softtek.; Luis Vinicio Len, e-Quallity - ITESO Colaboradores Ariel Garca, Jorge Palacios, Antonio Reyes, Paulina Olivares, Amaury Quintero, Francisco Lpez Lira, Roberto Silva, Ernesto Mndez, Rafael Muoz, Elizabeth Almeraz, Sergio Durn, Axel Nissim, Sergio Orozco, Carlos Macas, Ramn Hernndez, Luis Daniel Soto. Ventas Claudia Perea Marketing Natalia Snchez Webmaster www.aguilahosting.com Contacto info@softwareguru.com.mx +52 55 5239 5502
Software Guru es una publicacin bimestral editada por Brainworx S.A. de C.V., Malinche no. 6, Col. El Parque, C.P. 53398, Naucalpan, Mxico. Prohibida la reproduccin total o parcial del contenido sin previo aviso por escrito de los editores. Todos los artculos son responsabilidad de sus propios autores y no necesariamente reejan el punto de vista de la editorial. Reserva de Derechos al Uso Exclusivo: 042004-090212091400-102. Certicado de licitud de ttulo: 12999. Certicado de licitud de contenido:10572. ISSN: 1870-0888. Registro Postal: PP15-5106. Se imprimi en junio de 2005 en Litogrca Roma. Distribuido por Sepomex y Thunder Mail

EDITORIAL

Durante una conferencia a la que atendimos recientemente, uno de los participantes pregunt para qu se estaba hablando de procesos de negocio durante una conferencia de TI. Como se podrn imaginar, la mayora de los asistentes puso cara de cmo se le ocurre preguntar eso?. Se trata de una pregunta vlida, si es que no se tiene clara la razn. Desde hace varios aos, las reas de sistemas en las empresas han estado sufriendo un cambio muy importante; estn dejando de ser reas tcnicas, para convertirse en reas de soporte y habilitacin del negocio. Bajo el argumento de que lo nico constante es el cambio, las empresas estn siendo obligadas a ser giles y adaptarse rpidamente a los cambios en su entorno. Y lo primero de que se estn dando cuenta, es que sus sistemas de informacin actuales no promueven la agilidad, al contrario, la inhiben. Es por ello que hemos destinado este nmero a hablar sobre Business Process Management (BPM), que es probblemente la iniciativa ms importante que se ve en esta industria hacia los prximos diez aos por lo menos. Esta importancia se debe a que es una iniciativa dirigida por negocio, donde los sistemas responden a las necesidades del negocio, y no viceversa. Es una iniciativa orientada a desarrollar empresas giles, soportadas por sistemas de informacin exibles y ajustables en tiempo real, sin necesidad del personal de sistemas. Esto no signica que los de sistemas nos vayamos a quedar sin trabajo. Sin embargo, es un hecho que el trabajo que hacemos est cambiando, y debemos estar preparados para este cambio. Despus de todo, el cambio es la nica constante. Agradecemos a Carlos Gonzlez por haber compartido con nosotros su visin sobre este tema. An siendo un directivo de una importante empresa, Carlos se mantiene como una persona sencilla y con los pies en la tierra. Por ltimo y no por ello menos importante, damos las gracias a todos los colaboradores que han hecho posible este nmero de Software Guru. A todos los lectores les pedimos que por favor nos hagan llegar su retroalimentacin y comentarios a travs del sitio web, o en editorial@softwareguru.com.mx

Equipo Editorial

02

JUL-AGO 2005

www.softwareguru.com.mx

contenido jul-ago 2005

nmero 04

EN PORTADA

Business Process Management (BPM)

Ha llegado una nueva plataforma de misin crtica para los sistemas empresariales, los sistemas BPM. Conozcamos de que se trata esta tendencia y preparmonos para el cambio.

20

Productos
LO QUE VIENE Problem Resolution Toolkit, BEA Aqualogic, iBolt REPORTE DE MERCADO BPMS TUTORIAL Ingeniera en Reversa de DB2 10

Prcticas
ADMINISTRACIN DE PROYECTOS Anlisis de Puntos Funcin 34

Entrevista

18 Carlos Gonzlez, CIO de TMM

12 14

En la segunda parte de este artculo, Sergio Durn nos explica como se determina el tamao de un sistema utilizando la mtrica de los Puntos Funcin (FPs).

PROCESOS 38 BPM Aplicado al Desarrollo de SW


BPM se puede utilizar para diferentes tipos de procesos. En este artculo, Axel Nissim analiza su aplicacin en procesos de desarrollo de SW

Columnas
Tejiendo Nuestra Red por Hanna Oktaba Mejora Continua por Luis Cuellar Innovaciones en Software por Luis Daniel Soto Prueba de Software por Luis Vinicio Len Ctedra y Ms por Ral Trejo 06 08 41 44 46

UML Casos de Uso

42

Active Intelligence

Caso de Estudio

30

Una de las principales causas de fracaso en los proyectos de SW es un mal manejo de los requerimientos. Sergio Orozco nos habla sobre los fundamentos de la administracin de requerimientos basada en casos de uso.

En Cada Nmero
Noticias y Eventos Fundamentos Tecnologa Biblioteca Carrera 04 48 50 54 56

www.softwareguru.com.mx

JUL-AGO 2005

03

NOTICIAS

Noticias
IT Outsourcing Conference 2005 - IDC
El pasado jueves 26 de Mayo se llev acabo la 2da. edicin de la Conferencia IT Outsourcing 2005, realizada por IDC Mxico, en el Centro Banamex. El objetivo de dicha conferencia fue el dar respuestas clave acerca del outsourcing y el Business Process Outsourcing. De acuerdo con IDC, los servicios de outsourcing tendrn un crecimiento en Mxico, para 2005, de 13.6%, y para 2006, de 13.1%. Hay que recordar que la industria de TI, crecer 8.1% en 2005, y 6.3% en 2006. Por tanto, el outsourcing es uno de los segmentos que tendr las mayores tasas de crecimiento en dichos periodos. Alejandro Floren, Gerente del Programa de Investigacin de TI y Mercados Verticales en IDC Mxico, coment que esto no es ms que un indicio de que la madurez del mercado mexicano est comenzando. Los outsourcers no han llegado tarde a Mxico, en realidad el outsourcing es parte de la madurez de las actividades de sistemas y de la misma industria de TI

Praxis obtiene el nivel 3 del modelo Capability Maturity Model (CMM) para desarrollo de Software
Praxis, empresa de consultora, desarrollo e integracin de sistemas de informacin, aprob la evaluacin CMM nivel 3 para el desarrollo de Software que otorga el SEI (Software Engineering Institute), despus de un proceso de evaluacin que califica a su Fbrica de Software. En Praxis entregamos soluciones de TI que cumplen con las expectativas de nuestros clientes en tiempo, costo, calidad y alcance. El certificado en nivel 3 de CMM, coloca a Praxis como una empresa de competitividad internacional, consolidando nuestra capacidad para el eficiente manejo de grandes proyectos, coment Edmundo Robert, CEO de Praxis. La evaluacin fue realizada por Jos Guerrero, SEI Authorized Lead Assessor, de la empresa chilena Amrica XXI. El modelo de gestin de Praxis est basado en las metodologas y procesos de mayor aceptacin a nivel internacional. Con esta evaluacin, Praxis asegura a sus clientes el cumplimiento de sus proyectos en los trminos de costo, tiempo, calidad y alcance. Para mayor informacin visita: www.praxis.com.mx

Secretara de Economa en conjunto con AMITI y Microsoft inician actividades del Programa Acelera.Prosoft 2005
La Secretara de Economa en conjunto con AMITI y Microsoft anuncian el inicio de actividades del programa Acelera.Prosoft 2005, que tiene como objetivo principal mejorar el desempeo de la industria nacional de desarrollo de software, fortaleciendo las capacidades tcnicas e incrementando los resultados de negocio de las empresas afiliadas mediante la estrecha colaboracin de las empresas Visionaria, Avantare e InterSoftware. Con ms de 100 empresas registradas en el programa y beneficios directos a cerca de 600 desarrolladores, Acelera.Prosoft 2005 cubre un amplio rango de empresas dedicadas al desarrollo de software, ofreciendo esquemas de capacitacin flexibles, as como asesora de negocios a empresas con iniciativas de fbricas de software entre otras. Con la reciente disponibilidad de la versin Beta de Kuali, herramienta propiedad de la Secretara de Economa, una de las herramientas de Moprosoft, disponible en el portal software.net.mx (http://foros.software.net.mx/kuali/), se busca reforzar la competitividad del ecosistema mexicano de desarrollo de aplicaciones mediante el acceso a documentos que facilitan el desarrollo, empleando mejores prcticas y acercando a las empresas a los estndares de clase mundial. Para mayor informacin visita: www.software.net.mx

Inauguran Centro de Excelencia Tecnolgica en Mexicali


El gobierno de Baja California, IBM y el Centro de Enseanza Tcnica y Superior (CETyS), crearon el primer Centro de Excelencia Tecnolgica en Estndares Abiertos del pas, que tiene el objetivo de impulsar el desarrollo de sistemas de informacin abiertos, con la finalidad de especializarse en la creacin de software. Este proyecto tendr como primera fase la capacitacin de 25 estudiantes por un periodo de nueve meses, y el siguiente paso ser la creacin de empresas que proporcionen soporte a las plataformas abiertas como Linux y Java. Baja California cuenta tambin con el proyecto de IT@Baja, grupo de 30 empresas dedicadas al desarrollo de software, y con el proyecto del parque tecnolgico Silicon Border.
www.softwareguru.com.mx

04

JUL-AGO 2005

Eventos
11-13 Agosto 2005

Julio-Agosto 2005
24-26 Agosto 2005

Top Software Show


Mayen Project Management World Trade Center Ciudad de Mxico Info: www.mayen-project.com.mx Tel: (55) 5536 4120 Email: contacto@mayen-project.com.mx

Xpo Linux 2005


Centro Banamex Ciudad de Mxico Info: www.expolinux.org Tel: (001) 210 8920930 Email: dgranados@expolinux.org

25 Agosto y 31 Agosto 2005

1er Foro Regional Innovacin y Tendencias Tecnolgicas


Grand Hotel Tijuana Tijuana y Ensenada, Baja California Info: www.tendenciastecnologicas.com Tel: (664) 686-2227 Email: registro@tendenciastecnologicas.com

11 - 13 Agosto 2005

Seminario Gratuito Administracin Integral de Tecnologas de Informacin y Que papel juega TI con el requerimiento de Ley Sarbanes Oxley?
Itera 25 Agosto - Cd. de Mxico, 31 Agosto - Monterrey, N.L. Info: www.itera.com.mx Tel. (55) 5281 7670 Email: contactsalescenter@itera.com.mx

24 Agosto 2005

Security & Business Continuity Conference 2005


IDC Centro Banamex Ciudad de Mxico Info: www.idc-eventos.com Tel: (55) 5661 3791 o 01800 504 1529 Email: idc@apsis.org.mx

VI Conferencia Anual The Future of IT: La Justificacin Econmica de la TI


Gartner Centro Banamex Ciudad de Mxico Info: www.gartner.com/mx/econit Tel: (55) 5207 2695 Email: latin.america@gartner.com

31 Agosto 2 Septiembre 2005

Datos de la Industria

Empresas mexicanas que cuentan con la evaluacin Capability Maturity Model para Software* (CMM), o con la evaluacin Capability Maturity Model Integration (CMMI), otorgada por el SEI (Software Engineering Institute)
Fuente: Recopilacin de comunicados de prensa y sitios web de cada empresa. *El modelo CMM ya no es soportado por el SEI. **Otras empresas en Mxico han obtenido estas evaluaciones, pero actualmente no operan. NOMBRE UBICACIN NO. PERSONAS NIVEL CMM o CMMI FECHA LEAD ASSESSOR

NEORIS AZERTIA EDS SOFTTEK Nearshore ULTRASIST SIGMA TAO IBM - AMS IDS ACTIVE INTELLIGENCE TELEPRO PRAXIS

MTY DF JUAREZ MTY DF QRO GDL DF AGS DF DF

600 150 200 1250 30 450 950 350 50 25 350

CMM 3 CMM 2 CMM 5 CMM 5 CMM 4 CMM 5 CMMI 5 CMM 3 CMM 3 CMM 2 CMM 3

Oct-03 Feb-04 Feb-04 Abr-04 Jul-04 Nov-04 Dic-04 Dic-04 Mar-05 Jun-05 Jun-05

Mariana Prez-Vargas, Avantare Iigo Garro, ESI No reportado Richard Storch, Dick Storch & Associates Mariana Prez-Vargas, Avantare Richard Storch, Dick Storch & Associates Luciano Guerrero Canada Cecilia Montero Meja - Empeiria Quality Services Mariana Prez-Vargas, Avantare Mariana Prez-Vargas, Avantare Jose Guerrero- America XXI

www.softwareguru.com.mx

JUL-AGO 2005

05

TEJIENDO NUESTRA RED

COLUMNA

Moda y Tendencias
Tercera Reunin del IPRC

n mayo de 2005 se reuni por tercera vez el International Process Research Consortium (IPRC). En esta ocasin nos toc sufrir los primeros calores de una de las capitales de la moda mundial, que es Miln. Para los interesados en el tema el de la moda, les puedo comentar que en las tiendas reinaban los colores puros de arco iris, pero en las calles, las mismas fachas que en el DF, con el nico detalle de lentes obscuros tipo mosca. Cambiando del tema, y regresando al objetivo de mi relato, la reunin del consorcio estaba dedicada a identicar los posibles escenarios de las tendencias mundiales polticoeconmico-tecnolgicas en los prximos diez aos. Una vez identicados los escenarios, se proceder a analizar el posible impacto que stos tendrn en la forma en que se va a desarrollar el software y, en consecuencia, en los procesos. Al inicio se nos proporcion una lista de 116 elementos de tendencias, que hemos identicado en las reuniones pasadas, y se nos pidi que escogiramos las que nos parecieran las ms inciertas. Entre ellas estuvieron: 1. El cambio demogrco de los desarrolladores (jvenes o maduros, occidentales o asiticos, etc.) 2. Legislacin y regulaciones sobre uso de software 3. Globalizacin (predominacin occidental o asitica) 4. Demanda de calidad y seguridad (incremento o resignacin) 5. Tipo de cadena de valor (centralizada o voltil) 6. Innovacin tecnolgica (incremental o perturbadora) Nos dividieron en cuatro grupos y para que cruzramos los pares de estas incertidumbres con sus extremos y tratramos de imaginarnos la vida en cada uno de los cuadrantes. Mi grupo escogi cruzar la innovacin tecnolgica con la estabilidad de la cadena de valor. El mundo ms sencillo de imaginar fue el de cadena de valor ms o menos estable, como ahora, y los cambios tecnolgicos de poquito a poquito. Lo ms retador fue imaginarse el mundo donde las cadenas de valor son voltiles y los cambios tecnolgicos totalmente inesperados,

como en su tiempo fueron la invencin de Internet o del telfono celular. Fue bastante divertido participar con mis colegas en este juego intelectual y observar cmo la imaginacin o los miedos personales salen a ote y se vuelven colectivos. La impresin general que saqu de esta sesin fue que esta gente ve una gran probabilidad de que en los prximos aos la supremaca tecnolgica pase a manos de China, India y Japn, que ya en gran medida la tienen. Y como la mayora de los participantes del consorcio proviene de occidente, esto les causa bastante preocupacin. Medio en broma, comentaban que dentro de diez aos el Software Engineering Institute va dedicarse a la promocin de modelos de procesos chinos para Amrica. Otro tema que les preocupa es la estabilidad de las grandes empresas, en particular las trasnacionales. Por ejemplo, los proyectos de cdigo abierto y los servicios en lnea son nuevas formas de organizarse que rompen los esquemas tradicionales. Estos nuevos esquemas ofrecen a los clientes mayor exibilidad, menor costo y, por lo general, buena calidad. Esto empieza a contrastar con la rigidez y relativa lentitud de grandes consorcios. En Mxico tambin estamos observando este fenmeno a travs de la creacin de las integradoras que empiezan a multiplicarse en los estados. Ser interesante observar su impacto en el mercado local y de exportacin en los prximos aos. Por ltimo, les quiero comentar sobre algo curioso en un consorcio sobre procesos. Se arm una discusin muy acalorada sobre qu es proceso?, y que conste que all participa la gente que sabe del tema. A m me dio mucho gusto que surgi esta pregunta porque, desde que empezamos a trabajar sobre MoProSoft, buscamos una denicin razonable de proceso y la mera verdad ninguna nos gustaba. Nos quedamos con una inventada por nosotros. Y aqu sali que las mismas dicultades tiene la gente para quienes esto es su mero mole. Por supuesto no se pusieron de acuerdo. Formaron un grupo que se va a encargar de presentarnos en la prxima reunin una propuesta. Lo que ya se acord es que habr que distinguir entre los procesos del lado de la demanda, los procesos de gestin y los tcnicos. En MoProSoft ya tenemos los dos ltimos, nos falta trabajar los primeros, los del lado de los compradores, para que ambas partes se entiendan mejor. Por este medio abro la convocatoria a los que quieren aportar su conocimiento y talento para denir los procesos complementarios a MoProSoft para la parte de adquisicin. Favor mandar las propuestas a Software Guru. Hasta la prxima. - Hanna Oktaba

La Dra. Hanna Oktaba es profesora en la Facultad de Ciencias de la UNAM. Es fundadora y vicepresidenta de la Asociacin Mexicana para la Calidad en la Ingeniera de Software. Actualmente dirige el proyecto para la creacin de una norma mexicana para la industria de software.

06

JUL-AGO 2005

www.softwareguru.com.mx

MEJORA CONTINUA

COLUMNA

La Calidad no Cuesta...
Pero, Cul es el Retorno de mi Inversin?
ace algunas semanas particip en una pltica con varias compaas que estn buscando su certicacin de CMMi. Todas ellas compartieron sus experiencias sobre los problemas que viven y los benecios obtenidos con el avance que se llevaba. Dentro de la conversacin se toc el tema de porqu buscar una certicacin. Las respuestas fueron varias, en el orden de: para competir en el futuro, entrar al mercado americano, o demostrar nuestro compromiso con la calidad. Al escuchar estas respuestas, me pareci preocupante lo enfocado que estn estos esfuerzos en obtener una certicacin, ms que en obtener benecios especcos a corto plazo para la organizacin. Esto es comprensible tomando en cuenta que la certicacin es una meta alcanzable (por lo menos ms de uno lo ha hecho antes), fcilmente medible y principalmente muy clara de vender y comunicar dentro y fuera de la organizacin. Desafortunadamente, manejar la certicacin como la nica meta de un esfuerzo de calidad no necesariamente es lo ms acertado, principalmente si lo que se busca es crear una cultura de eciencia, respeto por el trabajo bien hecho y mejora continua.

Certificarse es solamente un producto secundario


En 1979, Philip B. Crosby escribi un libro cuyo tema principal se resume en: el esfuerzo que se le dedica a la calidad no cuesta. Lo que Crosby quera decir en este libro es que los beneficios obtenidos por las estrategias de calidad son mayores al costo de los mismos. As las metas de la certificacin deben de estar ntimamente ligadas a los problemas ms importantes que vive la organizacin: se estn barriendo los proyectos?, generamos demasiados defectos?, somos demasiado caros? Si seguimos trabajando con nuestro nivel de costos, cunto tiempo podramos seguir compitiendo? Si resolviramos estos problemas, cunto dejaramos de perder?, cunto adicional ganaramos?, dnde se vera reflejado este beneficio?, Qu tanto lo queremos?, estamos dispuestos a sacrificar una ganancia el da de hoy para lograr un ingreso mayor el da de maana? Estas son las preguntas que necesitamos responder, estos son los beneficios que debemos de dar seguimiento y asegurar que se cumplan. Hace algunos aos particip en la planeacin de la certificacin de una compaa mexicana. Al iniciar con el plan de certificacin lo principal fue investigar las razones de la certificacin. Despus de algunas preguntas se lleg a la conclusin de que la organizacin buscaba ser 10% ms productiva el prximo ao, debido a que tena anticipado un recorte de presupuesto y se requera que los individuos siguieran con la misma carga de trabajo. De ah lo primero que se estableci en el plan fue la definicin de las mtricas de productividad, y todas las dems actividades se priorizaron de acuerdo a su impacto en productividad. Como actividad secundaria se defini el anlisis de implementacin, el cierre de la brecha y la preparacin de la certificacin. Estos objetivos no slo le dan a la organizacin un incentivo claro para seguir adelante, sino que tambin sirve como base para aclarar qu es lo que se espera de las reas de definicin de procesos. Si lo que queremos es reducir nuestros tiempos de entrega, no podemos definir demasiados documentos, si lo que queremos es mantener el cambio durante un crecimiento acelerado, necesitamos un proceso sencillo que sea fcil de entrenar. En conclusin, la certificacin no debera ser un objetivo sino una consecuencia secundaria de una mejora que queremos lograr como organizacin. Entre mejor relacin exista entre los objetivos de calidad con los objetivos de negocio, ms beneficios podemos lograr de nuestros esfuerzos de calidad a corto, mediano y largo plazo. - Luis Cuellar
www.softwareguru.com.mx

Luis R. Cuellar es Director de Calidad a nivel mundial de Softtek Information Services. Luis es reconocido por la American Society for Quality (ASQ) como Certied Quality Manager, Certied Software Engineer, y Six Sigma Black Belt. En los ltimos cinco aos ha estado a cargo de la denicin e implantacin de la estrategia para CMM5 y Six Sigma a travs de las diferentes reas del centro de desarrollo de Softtek.

El Diablo est en los detalles


OK, entonces si la certificacin no es la meta, cmo podemos expresar una meta ms adecuada? El principal elemento a tomar en cuenta es que buscar una certificacin es un proceso que genera un cambio en toda la organizacin. Normalmente requiere una reestructura de roles, actividades, forma de trabajo, y tal vez hasta una redefinicin de los servicios ofrecidos. La idea comn de pongamos a alguien que est desocupado a definir procesos para que despus le digamos a todos que los sigan, slo lleva a la frustracin y malos resultados. La organizacin va a cambiar, junto con la forma en que todos hacemos las cosas. Para lograr ese cambio se necesita una razn lo suficientemente importante, clara, y poderosa como para generar ese cambio y mantenerlo a largo plazo. El problema de basar las estrategias de calidad en obtener algo como un documento de certificacin, es la cantidad de pequeos problemas que se encuentran todos los das y que nos empujan a mantener todo como est. Imaginemos un escenario en el que tenemos que certificarnos en seis meses, pero tambin debemos entregar un proyecto para un cliente. Sucede que para entregar a tiempo el proyecto, tendramos que saltarnos las pruebas unitarias. Qu decisin tomara la direccin de la compaa? Renegociar con el cliente las fechas dicindole que nos urge certificarnos?, o entregar a tiempo pero sin las pruebas? Si la respuesta es esta ltima, el mensaje a la organizacin es claro: si te ves en problemas, entonces no sigas los procesos. En este caso, las razones para generar un cambio no son lo suficientemente fuertes para lograrlo.

08

JUL-AGO 2005

LO QUE VIENE

PRODUCTOS

Primeros frutos de cooperacion entre Rational y Tivoli


Deteccin y reparacin de errores en sistemas empresariales

Estos productos integran capacidades del suite para administracin de aplicaciones Tivoli, para mejorar la deteccin y solucin de problemas en aplicaciones J2EE, middleware de integracin y sistemas legacy. Las herramientas funcionan de la siguiente manera: el software Tivoli monitorea el rendimiento de las aplicaciones mientras estn en funcionamiento, rastreando y guardando detalles cuando identifica problemas de rendimiento. El Problem Resolution Toolkit permite acceder esta informacin, para que los desarrolladores puedan identificar rpidamente la fuente de los problemas, minimizando el tiempo de cada de los sistemas.

Durante su conferencia anual para usuarios, IBM Rational mostr dos nuevos productos para acelerar y facilitar la deteccin y reparacin de errores en aplicaciones empresariales: el Problem Resolution Toolkit para IBM Rational Application Developer y el Performance Optimization Toolkit para Rational Performance Tester.

Por su parte, el Performance Optimization Toolkit proporciona colectores de datos, tambin basados en software Tivoli, que se ejecutan durante el proceso de prueba. Al encontrar un problema, el toolkit sugiere posibles causas y resoluciones. Este es uno de los primeros frutos del esfuerzo de cmputo autonmico de IBM para crear sistemas que se reparen a s mismos. Dado que las herramientas de Rational y Tivoli estn basadas en la plataforma Eclipse, su comunicacin e integracin es transparente para el usuario.

PRODUCTOS

BEA Aqualogic
Cmputo Lquido Integracin Dirigida por Negocio

BEA Systems recientemente lanz su nueva familia de productos, AquaLogic. El propsito de estos productos es proveer lo que BEA llama una infraestructura de servicios. Esta infraestructura consiste en una especie de contenedor donde los servicios sin importar la plataforma en que fueron desarrollados , puedan ser descubiertos, ensamblados y administrados de manera fcil, rpida y segura. Los productos de esta familia que se han dado a conocer hasta el momento son: BEA AquaLogic Service Bus, para la integracin y administracin de servicios web en ambientes heterogneos. BEA AquaLogic Data Services Platform, permite acceder de manera unificada los datos de diversas fuentes disponibles en la empresa. BEA AquaLogic Enterprise Security, una infraestructura de seguridad orientada a servicios para proveer seguridad a aplicaciones distribuidas. Ademas de estos, se espera que en un futuro prximo se agreguen nuevos productos a esta familia. Al parecer, la nueva visin de BEA est completamente comprometida con AquaLogic y el concepto del cmputo lquido. Incluso ha cambiado su logo y slogan, el cual ahora es think liquid (piensa lquido).

Recientemente Magic Software liber la versin 2.5 del iBolt Business Integration Suite, una plataforma de integracin empresarial. Utilizando iBOLT, las empresas pueden alinear rpida y fcilmente sus necesidades del negocio con su infraestructura IT. iBolt tambin posee capacidades de BPM, as que las empresas pueden desarrollar nuevos procesos de negocio, crear nuevas aplicaciones compuestas e implementar de manera ms flexible las Arquitecturas Orientadas a Servicios. El suite est formado por los siguientes componentes: iBolt Studio Herramienta para modelar y desarrollar visualmente los procesos, flujos, conectores, datos, topologas, etc. iBolt Server El engine o ambiente de ejecucin para proyectos creados en iBolt Studio. iBolt Monitor Herramienta para monitorear en tiempo real la ejecucin de procesos de negocio. Adicionalmente existe la Special Edition (SE) de iBolt, que es una edicin especialmente diseada para SAP Business ONE, que integra todas las capacidades de iBolt en esta plataforma.

10

JUL-AGO 2005

www.softwareguru.com.mx

REPORTE DE MERCADO

PRODUCTOS

BPMS

Aumentando las Expectativas


l 2005 muy probablemente ser recordado como el ao en que los sistemas BPM despegaron. De acuerdo con encuestas realizadas en Estados Unidos, BPM ha tomado el primer lugar en la lista de prioridades de los directores de sistemas, por encima de iniciativas como outsourcing y seguridad en TI. En Mxico todava falta tiempo para llegar a esto, pero es de esperarse que pronto lo haremos, as que es importante que comencemos a monitorear este mercado.

Historia
El mercado de los sistemas BPM es relativamente nuevo. Los expertos del tema concuerdan en que los primeros productos que realmente pueden ser considerados como BPMS hicieron su aparicin entre 1999 y el 2000. En Mxico, los analistas de la industria apenas este ao comenzaron a monitorear el mercado de estos productos. Tal es el caso de IDC, quienes en su Mexico Semiannual Software Tracker 2004, consideraron el rubro de BPM por primera ocasin.

Cumbre de expectativas Evangelizacin y proyectos iniciales. El entusiasmo llega a su punto mayor. Valle de desilusin Escepticismo generado cuando la tecnologa no cumple con todo lo que haba anunciado, o no se logra en el tiempo que se esperaba. Pendiente de claridad Con el mayor uso y experimentacin, por fin se aclara el verdadero potencial, beneficios y riesgos. Meseta de productividad Los beneficios reales se demuestran y reciben aceptacin general. Las herramientas relacionadas con la tecnologa se estabilizan y maduran incrementalmente. En la grfica 1, mostramos los puntos donde creemos que actualmente se encuentra esta tecnologa tanto en Estados Unidos como en Mxico.

Tamao
De acuerdo con informacin reportada por IDC en el estudio previamente mencionado, el tamao de este mercado en Mxico en el 2004 fue de 3.9 millones de dls., lo cual representa tan slo 2.1% del segmento de back office (182.1 millones dls.). Sin embargo, se espera que este mercado crezca en dobles dgitos anuales durante los prximos tres o cuatro aos. Vale la pena recalcar que estas cifras se refieren exclusivamente a licencias de software.

Evolucin
Este mercado actualmente cruza un momento muy importante. Las expectativas estn en un nivel muy alto, lo cual provoca que todos los proveedores quieran subirse al barco. Una enorme cantidad de proveedores estn desarrollando capacidades BPM dentro de sus productos, y otros tantos han hecho adquisiciones de empresas especializadas en tecnologa BPM, para integrarlas dentro de su oferta. De acuerdo con Jim Sinur, analista de Gartner, existen ms de 225 proveedores cuya oferta tecnolgica abarca diferentes aspectos de BPM. Es evidente que poco a poco este mercado se ir consolidando, y la oferta quedar reducida a unos cuantos proveedores. Al igual que la mayora de las tendencias tecnolgicas, los BPMS estn sujetos a una curva de evolucin o madurez. Una manera de representar esta evolucin, es apoyndose en el modelo del Hype Cycle (ciclo de expectativas, o de exageracin), creado por Gartner. De acuerdo con este modelo, las tendencias tecnolgicas tpicamente siguen cinco etapas: Lanzamiento El disparo inicial generado por un lanzamiento, demostracin pblica, u otro evento que provoca que la industria empiece a poner atencin en la tecnologa en cuestin.

Como podemos apreciar, en Mxico todava estamos en el ascenso hacia la cumbre de expectativas. Esto significa que durante los prximos meses seguiremos escuchando mucho respecto a este tema. Mientras tanto, parece que en Estados Unidos el punto mximo de expectativas ya se alcanz, y ahora se est buscando convertir estas expectativas en realidad. Los analistas consideran que los BPMS alcanzarn la meseta de la productividad en Estados Unidos durante el 2007. Nosotros creemos que en Mxico sta se alcanzar de 18 a 24 meses despus.

Industrias
El sector donde mayor adopcin estn teniendo los sistemas BPM hasta el momento, es el financiero. De acuerdo con cifras en Estados Unidos, 46% de los proyectos de BPM son en este sector, seguido por telecomunicaciones (12%), salud (10%), y gobierno (8%). Aunque datos como estos todava no estn disponibles en Mxico, y realmente son muy pocos los proyectos de BPM hasta el momento, es de esperarse que la mayor adopcin tambin se d en el sector financiero y de aseguradoras, seguido por gobierno y grandes tiendas de autoservicio (retail).
www.softwareguru.com.mx

12

JUL-AGO 2005

Estos son algunos de los principales proveedores de tecnologa BPM con representacin en nuestro pas, listados en orden alfabtico.

Carnot (www.carnot-usa.com)
El Carnot Process Engine es uno de los productos que podemos llamar BPM puro, ya que se limita a proveer la funcionalidad exclusiva de un BPM. Esto, en conjunto con su arquitectura basada en estndares, le da gran flexibilidad. Por ejemplo, puede funcionar sobre diversos servidores de aplicacin y manejadores de base de datos. Horbis (www.horbis.com) es distribuidor de Carnot en Mxico.

Magic Software (www.magicsoftware.com)


Su producto iBolt, es una plataforma de integracin empresarial que ha evolucionado y ahora incluye capacidades BPM. Al usarlo en conjunto con eDeveloper un producto de la misma empresa para desarrollar aplicaciones visualmente sin necesidad de programar, ofrece una solucin conveniente para integrar y desarrollar aplicaciones dirigidas por negocio. Roca Sistemas (www.rocasistemas.com.mx) es el distribuidor de Magic Software en Mxico.

Fuego (www.fuego.com)
La Fuego BPM Suite puede ser calificada como una solucin de gran escala. Est orientada a grandes empresas con ambientes heterogneos y grandes volmenes de operacin. La oficina de contacto para Latinoamrica se encuentra en Miami, pero en Mxico se puede adquirir a travs de Axxis (www.axxis.com.mx).

Software AG (www.softwareag.com)
La empresa alemana creadora de productos como Natural, Adabas y Tamino XML Server, recientemente lanz un producto BPM llamado Interstage Enterprise Process Manager, el cual es resultado de una alianza entre Software AG y Fujitsu.

Handysoft (www.handysoft.com)
BizFlow es otro BPM puro y multiplataforma. Su enfoque est en la facilidad de uso y administracin. En conjunto con el SOXA Accelerator (otro producto de la misma empresa), brinda una solucin out-of-thebox para lograr cumplimiento de Sarbanes Oxley. Grupo Ecce (www.grupoecce.com) es distribuidor de Handysoft en Mxico.

Sterling Commerce (www.sterlingcommerce.com)


Como parte de su plataforma MESA (Multi Enterprise Services Architecture) para colaboracin interempresarial, Sterling Commerce ofrece el Gentran Integration Suite. La suite est orientada a automatizar procesos de negocio colaborativos a lo largo de su interaccin entre clientes, proveedores y otros socios de negocio.

IBM (www.ibm.com)
IBM acostumbra estar presente en todo lo que se refiere a TI, y esta no es la excepcin. Su suite para BPM lleva el nombre de Websphere Business Integration. Estos productos descansan sobre la capa de middleware provista por otros productos como Websphere Application Server y Websphere MQ. IBM tambin es uno de los principales impulsores de estndares para lenguajes de descripcin de procesos de negocio, como BPEL. As que este gigante est presente en todos los frentes: estndares, middleware y productos finales.

Ultimus (www.ultimus.com)
Ultimus es una de las empresas pioneras en BPM. Una de sus principales fortalezas de su Ultimus BPM Suite es su integracin avanzada con tecnologa de Microsoft. Por ejemplo, usa unos componentes llamados flobots, que son agentes que automticamente interpretan, generan y distribuyen documentos de Office.

www.softwareguru.com.mx

TUTORIAL

PRODUCTOS

Ingeniera en Reversa de DB2 iSeries


Utilizando XDE
Por Amaury Quintero

En este artculo veremos cmo utilizar Rational XDE para hacer la ingeniera inversa de una base de datos DB2 albergada en un servidor iSeries o AS/400e. XDE es un ambiente integrado para desarrollo de software (IDE), que incluye capacidades para modelado visual con UML.

ay ocasiones en las que necesitamos hacer ingeniera inversa a una base de datos existente para poder conocerla, entendarla y posiblemente modificarla. Esto suele suceder cuando heredamos una base de datos de un sistema legado. Veamos entonces cmo podemos utilizar Rational XDE para realizar la ingeniera inversa y generar el modelo correspondiente. Para realizar esta prctica vamos a necesitar el IBM Toolbox para Java. Este es un conjunto de clases Java que nos permite accesar los datos en servidores iSeries y AS/400e. En caso que el servidor no contase con el IBM Toolbox para Java es necesaria su instalacin. Para instalar este conjunto de utilidades haga lo siguiente: Desde la lnea de comandos escriba GO MENU (LICPGM) y presione [ENTER]. Selecione 11. Install licensed program. Seleccione 5722-JC1 IBM Toolbox for Java.

Para comenzar, creamos un nuevo proyecto en el XDE y seleccionamos alguno de los tipos de modelos predeterminados para realizar el modelado de datos. En nuestro caso utilizaremos el DB2 iSeries Data Model, el cual nos van a permitir albergar los elementos que esten dentro de la base de datos DB2. Para realizar la ingeniera inversa podemos partir de un script DDL que contenga las sentencias SQL de la estructura de la base de datos, o nos podemos conectar directamente a la base de datos y obtener esta informacin. El script se puede generar con el IBM iSeries Navigator, a travs del cual nos conectamos a la base de datos, seleccionamos los esquemas deseados y generamos el archivo. Para conectarnos a la base de datos desde XDE, podemos utilizar DB2 Connect. Esta es la herramienta de seleccin cuando necesitamos tener acceso a DB2 ya sea de la plataforma zSeries, iSeries y AS/400 principalmente. Sin embargo, desde XDE tambin podemos accesar una gran variedad de manejadores de bases de datos sobre diferentes plataformas. Una vez que XDE haya importado el contenido de la base de datos (ya sea a travs del DDL o por conexin directa), se procede a generar diagramas donde se puede modelar visualmente los elementos de la base de datos.

Pasos
1. En la vista del Explorador de Modelos, que se encuentra ya abierta en la perspectiva de modelado, seleccionar el modelo que recibir la ingeniera inversa. 2. Activar el asistente de ingenieria en reversa haciendo click derecho sobre el modelo de datos y seleccionando Data Modeler > Reverse Engineer (Fig. 1). Seleccionamos la opcin de DDL Script, el tipo de base de datos IBM DB2 iSeries 5.x y el archivo con las sentencias SQL que nos proporcion el iSeries Operation Navigator. 3. Luego debemos filtrar los elementos de la base de datos que necesitamos conocer (ndices, procedimientos almacenados, vistas, tablas, etc) y con esto terminamos la operacin. Siempre debemos verificar en la vista de Output de XDE que no se hayan reportado problemas a la hora de leer el script, de ser asi, debemos revisar los errores y corregirlos manualmente en el archivo con sentencias SQL. Esto evita que algn detalle de la base de datos sea omitido. Una vez que el asistente es ejecutado, XDE hace una correspondencia entre el DDL y el perfil UML, por ejemplo; cada sentencia CREATE TABLE es transformada a una tabla del modelo relacional y cada CREATE DISTINCT TYPE es convertido a una columna del dominio dentro del modelo del dominio.
www.softwareguru.com.mx

UML y el modelo Entidad-Relacin (E/R)


XDE no maneja directamente los diagramas EntidadRelacin tradicionales. Lo que hace es utilizar diagramas de clases, complementados con el perfil de UML para bases de datos. Este perfil incluye estereotipos para modelar los elementos de un diagrama entidadrelacin. Por ejemplo, las tablas se representan como clases con el estereotipo <<Table>> mientras que las relaciones se representan como asociaciones entre clases. Las columnas de las tablas se representan como si fueran atributos de clase, y los constraints como operaciones.

14

JUL-AGO 2005

Fig. 1. Invocando al asistente para ejecutar la ingeniera en reversa.

Terminado esto, pasamos a revisar el contenido del modelo generado en el Explorador de Modelos, podemos modificar el nombre de la base de datos, por uno ms representativo. El Nombre RDB (Relational Database Name) es el nombre de la base de datos en el servidor (Fig. 2) y se puede obtener con el comando de lnea WRKRDBDIRE.

Fig. 2. Representacin de la base de datos del servidor y tablas de los esquemas seleccionados.

Utilizando los diagramas de clases o de formato libre de XDE podemos crear algunos que nos den una idea de cmo estn asociadas las diferentes entidades de nuestro modelo de
www.softwareguru.com.mx

TUTORIAL

PRODUCTOS

A travs del modelado visual podemos entender mejor la estructura de una base de datos, as como sus dependencias.

datos (Fig. 3), lo cual nos brinda una forma sencilla de visualizar el modelo. Tambin podemos revisar la correspondencia que efectu XDE entre los datos de DB/2 UDB iSeries y el perfil UML para base de datos consultando la ayuda de XDE.

2. Si el servidor de aplicaciones se encuentra en otra mquina, entonces necesitamos un driver JDBC, de preferencia el que viene con el IBM Toolbox para Java. Este es un manejador tipo 4, que es un manejador de protocolo nativo que provee un mejor rendimiento que los drivers del tipo 1 y 2, ya que se comunica directamente con el host utilizando sockets sin pasar por la capa de ODBC. La clase que lo implementa es com.ibm.as400.access. AS400JDBCDriver

Conclusin
A travs del modelado visual podemos entender mejor la estructura de una base de datos, as como sus dependencias. El modelado visual es una de las mejores practicas del desarrollo de de software que contribuyen a aumentar la probabilidad de la ejecucuin exitosa de proyectos de software. Hay que recordar que la ingenieria en reversa debe ser considerada una herramienta que nos asiste en el proceso de entender y visualizar una configuracin existente, y no como una fuente de verdad irrefutable. El resultado debe ser revisado para asegurarnos que la herramienta ha capturado los detalles de manera correcta.

Fig. 3. Diagrama de clases visualizando la relacin entre los componentes del modelo de datos.

Luego de conocer nuestro dominio y ejecutar cambios sobre este, el diseador puede pasar a aplicar estos cambios a la base de datos, posicionandose sobre uno de los esquemas modificados y nuevamente haciendo click derecho Data Modeler > Forward Engineer, seleccionamos los elementos que queremos actualizar y el nuevo archivo donde se guardarn las sentencias SQL con las modificaciones a la base de datos. Para hacer los cambios efectivos, este archivo tenemos que ejecutarlo sobre el iSeries Operation Navigator como un script SQL. Asegurese que la ejecucin no le arroj mensajes de error, si es asi corrijalos y continue la ejecucin.

Drivers para produccin


Si fuese el caso que los cambios sern puestos en produccin, tenemos dos opciones para conectarnos a la base de datos desde el servidor de aplicaciones de Java, dependiendo de donde se encuentre instalado ste: 1. Si el servidor de aplicaciones se encuentra en la misma mquina que la base de datos, conviene utilizar el driver nativo, que viene dentro del AS/400 Developer Kit, que es ms rpido y est implementado con la clase com.ibm. db2.jdbc.app.DB2Driver. Este driver tambin lo podemos obtener directamente del mismo servidor AS/400, el archivo que deben buscar es /QIBM/ProdData/http/Public/jt400/lib/jt400.jar Referencias IBM Developerworks www-136.ibm.com/developerworks/ iSeries Information Center publib.boulder.ibm.com/iseries/ v5r2/ic2924/ JDBC Drivers: How Do You Know What You Need? archive.devx.com/dbzone/articles/ dd_jdbc/sosinsky-1.asp

Amaury Quintero es consultor de Itera especializado en Anlisis y Diseo, donde se encarga de la iniciativa de Nuevas Herramientas de IBM Rational. Es graduado de Ciberntica-Matemtica en la Universidad de La Habana, Cuba y actualmente cursa la Maestra en Ciencias de la Computacin en el CIC del IPN.

16

JUL-AGO 2005

www.softwareguru.com.mx

ENTREVISTA

Ing. en Computacin de la UNAM y con 38 aos de edad, Carlos Gonzlez es director de sistemas de Grupo TMM, una de las empresas ms importantes del pas. Carlos inici su carrera profesional en Oracle, como consultor. Despus lleg a TMM, donde coordin los esfuerzos de ingeniera de software durante un par de aos. En 1999 decidi dedicarse a dar cursos y consultora de manera externa, pero pronto regres a TMM para apoyar en la definicin de los procesos operativos del rea. Un par de aos despus, en el 2001, asumi la direccin de sistemas.

Carlos Gonzlez
Director de Sistemas de TMM

Qu te hizo regresar a TMM cuando ya te habas ido? Ah hay una cuestin medio filosfica. Cuando me fui de instructor esos siete meses, durante un taller hicimos un ejercicio en el que me pusieron el smil de la escalera. Se supone que tu camino en la vida es una escalera, as que si quieres llegar a algn lugar, tienes que pensar en si lo que ests haciendo hoy en da te est ayudando a subir escalones o no. Yo lo pens y me di cuenta que lo que yo quera era ser director de sistemas, as que por eso me regres. Siento que hice una buena decisin porque estoy haciendo algo que me apasiona.

18

JUL-AGO 2005

Tu camino a la direccin de sistemas fue a travs de las reas de procesos y metodologa. Crees que este es un buen camino? S, porque al trabajar en esta rea tambin conoces los procesos del negocio. Yo creo que este es el camino ms adecuado, no porque yo haya pasado por ah, sino porque me he topado con otras personas que no han tenido esa progresin, y carecen de las herramientas suficientes. Tambin es importante captar suficiente experiencia antes de llegar a un puesto directivo, ya que con esto ser ms fcil asumir una responsabilidad y lidiar con la incertidumbre. Porque estar en un puesto directivo es lidiar continuamente con la incertidumbre, la ambigedad completa. Cules son los principales proyectos que tienen en curso en TMM? Al igual que muchas otras empresas en Mxico, TMM tuvo una poca difcil en los ltimos dos o tres aos. Esto nos oblig a detener un poco ciertas iniciativas que traamos. Al da de hoy, los principales proyectos que tenemos son en trminos de actualizacin de infraestructura, seguridad, etc. El siguiente paso que queremos dar es desarrollar una arquitectura de servicios que nos permita ofrecer nuevos y mejores servicios a los clientes. Esta arquitectura tambin nos permitir ligar nuestras cadenas de suministro con nuestros clientes y proveedores para tener una interaccin mucho ms directa y eficiente. Durante 2004 TMM redujo significativamente sus costos administrativos. Fue tijeretazo o en realidad hubo mejoras en eficiencia? Qu papel jugaron las TI? Usualmente en la mayora de las empresas con una dinmica de negocio normal, donde se est ganando dinero de manera continua, se empieza a dar un desperdicio. Esto pasa siempre, y no es evidente hasta que el desperdicio es demasiado. Lo que nosotros hicimos fue analizar nuestros procesos, y entonces nos dimos cuenta que haba ineficiencias como pasos duplicados, sistemas que hacan lo mismo, reas que trabajaban con la misma informacin pero de diferente manera. As que al corregir esto mejoramos nuestra eficiencia. Lo otro que hicimos fue acercarnos a nuestros proveedores y buscar maneras creativas de resolver las cosas. Por ejemplo, que pasa si en lugar de adquirir y despreciar los activos empezamos a arrendarlos en un esquema de demanda, o si en lugar de comprar licencias rentamos servicios, o si en lugar de tener a los programadores ah sentados, nos apoyamos en proveedores externos.
www.softwareguru.com.mx

Qu criterios de evaluacin utilizas para escoger proveedores de servicios de TI? Ms que nada nos fijamos en el nivel de la gente. Normalmente cuando t encuentras un despacho que trae elementos de buen nivel, eso habla mucho de la empresa y cmo escoge a su personal. Cules consideras que son los principales retos que viven los CIOs hoy en da? Uno de los mayores retos es la alineacin de TI con el negocio, lograr tener esa visin lo suficientemente profunda para entender cmo es que la tecnologa afecta la operacin central del negocio. Hoy ya no es como antes, cuando el contador te deca necesito un sistema para llevar la contabilidad, as que era fcil definirlo y justificarlo. Hoy en da ya estamos hablando de iniciativas mucho ms complejas, como por ejemplo, Business Process Management. Entender estos conceptos requiere madurez no slo en trminos de tecnologa, sino principalmente de la operacin del negocio. Cmo ha evolucionado el rol de las reas de sistemas y hacia dnde va? En los 90s el rol del rea de sistemas era una cuestin eminentemente tcnica. Ese periodo ya pas y hoy ms que nada lo que hacen es administrar la tecnologa como un recurso. Esto significa que cada peso que la organizacin destina a los sistemas debe ser lo ms inteligentemente gastado, para que de ser posible pueda devolver dos pesos. Hacia el futuro, creo que esta rea deber estar mucho ms involucrada en el negocio, para proveer una visin tecnologizada de ste. Como parte de esta visin, su responsabilidad ser proponer iniciativas que mejoren el negocio o lo habiliten hacia nuevas oportunidades. Entonces ya no bastar con saber programar? As es. Cualquiera puede programar hoy en da. El nico diferenciador que puedes tener es el conocimiento de negocio. El saber hacer negocio con la tecnologa es muy relevante. Crees que BPM sea una moda o que sea real? BPM a fin de cuentas es un concepto, cuyos fundamentos estn en la operacin del negocio. No es algo nuevo, lo que sucede es que hace muchos aos las herramientas que haba eran poco adecuadas, y estaban completamente desligadas entre s. La orquestacin de procesos entre sistemas era imposible, ya que tenas que meterte a las tripas de cada sistema y desarrollar procedimientos y llamadas a nivel de sistema operativo, entonces esto era muy poco prctico. Hoy en da la tecnologa ya evolucion, y todo esto es mucho ms natural.

Nos puedes contar algo sobre su proyecto para cumplimiento de Sarbanes Oxley? La ley de Sarbanes Oxley es un mandato para todas las empresas pblicas que cotizan en el mercado de valores de Nueva York, como nosotros. Esto significa bsicamente tener una definicin de controles lo suficientemente robusta para permitir a los auditores hacer una atestiguacin de que ests controlando adecuadamente la empresa y no ests defraudando a los inversionistas. Crees que Sarbanes Oxley trae beneficios ms all de cumplir con el mandato? S. Cualquier empresa debe tener idea de qu hace, cmo lo hace, cundo lo hace, y qu oportunidades tiene de mejorarlo. Y la nica forma de lograr esto es teniendo clara la definicin de los procesos. No hay mejora si no hay procesos. Cules son las principales habilidades y conocimientos que necesita tener un CIO? Al igual que para cualquier profesin, el conocimiento ms importante es el de ti mismo. Hay que saber cmo es que aprendes, cmo resuelves problemas, cmo enseas. Esto te hace ver tus principales fortalezas y debilidades, y a final de cuentas te permite mostrar una imagen autntica de ti. Qu caractersticas consideras importantes en una persona que quieres reclutar? La actitud es lo ms importante. La gente debe estar dispuesta a aprender, crecer, y entrarle a la chamba difcil. El conocimiento es secundario porque se puede adquirir. Qu le pediras al gobierno, las instituciones educativas y las empresas para desarrollar la industria de software? Al gobierno, apoyo para facilitar el establecimiento de nuevas empresas. A las instituciones educativas, que generen profesionistas ms completos, que adems de habilidades tcnicas cuenten con habilidades complementarias para que puedan hacer una presentacin, administrar el tiempo, comunicarse adecuadamente, etc. A las empresas, mayor determinacin e innovacin. Frecuentemente, en Mxico, cuando hay oportunidades que involucran riesgo, simplemente no le entramos. Esperamos a que llegue alguien ms y lo haga. Creo que debemos aventarnos a vivir el sueo, en lugar de seguirlo soando. Qu mensaje le dejas a nuestros lectores? Que lean la revista, tiene cosas muy interesantes. Mucha gente est ms pegada al rollo de los lenguajes de programacin y los bits y los bytes, que en tratar de entender el proceso completo de desarrollo de software.
JUL-AGO 2005

19

EN PORTADA

BPM
Una Herramienta de Competitividad
Por Francisco Lpez Lira

Las empresas enfrentan un entorno complicado. Por un lado, la competencia es global y se hace contra pases con sueldos menores, lo que implica que las empresas deben reducir sus costos o crear mayores diferenciadores para competir. Por el otro, la situacin econmica adversa ha hecho que se disponga de menor cantidad de recursos y ahora es necesario hacer ms con menos. Adems, los clientes estn ms informados y cuentan con mayor poder de eleccin, lo cual genera ms presin para venderles y retenerlos. Por si esto no fuera poco, los mercados y las condiciones cambian continuamente, requiriendo de las empresas rapidez de adaptacin y una mayor flexibilidad para el cambio.

20

JUL-AGO 2005

Hay un mtodo en esta locura Horacio

uchas han sido las iniciativas que a lo largo de los aos se han propuesto para que las empresas puedan afrontar estos retos. Desde la Gestin de Calidad Total (TQM) hasta Six Sigma (6), pasando por Reingeniera de Procesos de Negocio (BPR), Just in Time (JIT), Costeo Basado en Actividades (ABC), Kaizen, Supply Chain Management (SCM) y Balanced Scorecard (BSC), por nombrar algunas. Por supuesto, la tecnologa de informacin ha estado presente con propuestas propias, que se remontan a la promesa de los Sistemas de Informacin Gerenciales (MIS) y la tecnologa Cliente/Servidor hasta llegar a los ERP y los CRM, sin olvidar las soluciones Business to Business (B2B). Tristemente, estas iniciativas no siempre han dado los resultados esperados. Muchas fueron las empresas que con gran ilusin se embarcaron en la ola de Reingeniera de los 90s, obteniendo resultados muy por debajo de lo esperado. Segn el propio Michael Hammer, 70% de estos proyectos resultaron en fracasos. Esto ha dado lugar a un gran escepticismo y ha creado el sndrome de cure du jour. Por el lado de los proyectos de tecnologa de informacin, los fracasos acumulados en la industria han dado lugar a que los Directores de Sistemas enfrenten ahora una creciente presin para (a) probar que la tecnologa de informacin entrega valor a la organizacin, (b) involucrar a las diferentes reas en las decisiones tecnolgicas, (c) reducir costos, y (d) mantener bajo control los riesgos, lo cual ha dado lugar al concepto de Gobernanza de TI (IT Governance). Por qu estos esfuerzos no han tenido el xito esperado? Un estudio sobre la utilizacin de 200 herramientas administrativas en 160 empresas durante un lapso de diez aos, encontr que las empresas que alcanzan un desempeo superior son las que dominan cuatro elementos fundamentales: estrategia, cultura, estructura y ejecucin, independientemente de la herramienta utilizada. Esto implica que las organizaciones, primero, deben de elaborar una estrategia adecuada, que permita aprovechar las condiciones externas y las capacidades internas. Una vez que se cuenta con sta, la cultura los supuestos compartidos debe alinearse para permitir alcanzar los objetivos, al igual que debe crearse una estructura organizacional que soporte las iniciativas dentro de la organizacin. Ahora bien, cmo pueden las organizaciones ejecutar adecuadamente? Las organizaciones slo

cuentan con dos formas de instrumentar las estrategias: los proyectos y los procesos. Recordemos que un proyecto es un esfuerzo temporal que se lleva a cabo para crear un producto o servicio nico, mientras que un proceso puede definirse como un conjunto de actividades que transforman insumos en productos de valor para un cliente. Es importante hacer notar que los proyectos, a su vez, estn formados por procesos y que 80% del fracaso o xito de los proyectos est relacionado con una buena administracin. Los elementos clave para la ejecucin son pues, los procesos y su administracin. Si repasamos las iniciativas citadas, veremos que en todas los procesos tienen un papel clave: son un rea importante dentro de un esfuerzo de TQM, son el foco central de BPR, Kaizen y 6, y son cruciales en JIT, ABC y BSC. Los procesos tambin ocupan un lugar trascendente en las iniciativas tecnolgicas. Por ejemplo, quin puede negar su importancia en un ERP o B2B? Los procesos son importantes porque es a travs de ellos que la organizacin genera valor para sus clientes, integrando la participacin de diferentes reas funcionales a travs de toda la cadena de valor. En este contexto, surge con mucha fuerza una iniciativa llamada Business Process Management (BPM) que puede ayudar a consolidar todos los esfuerzos anteriores. En el ao 2000, Gartner predijo que BPM sera el siguiente gran fenmeno, y posteriormente coment que BPM gana la triple corona por ahorrar dinero, ahorrar tiempo y aadir valor. Otro estudio realizado por el BPM Institute arroj que 96% de los encuestados indicaron que un enfoque centrado en procesos era crtico para el xito de su compaa. BPM consiste administrar el ciclo de vida de los procesos, apoyndose en herramientas de automatizacin del flujo de trabajo, conocidas como Business Process Management Systems o BPMS. Aunque algunos opinan que BPM no necesariamente involucra un BPMS, en mi opinin esto le resta potencial a la solucin y no permite distinguirla fcilmente de otras propuestas como Kaizen, por ejemplo. El ciclo de vida de un proceso cubre su conceptualizacin, representacin (grfica y/o textual), optimizacin, automatizacin, simulacin y prueba, e implantacin en la organizacin. Por otro lado, la administracin incluye la planeacin, seguimiento, monitoreo y control.
JUL-AGO 2005

Qu es BPM?

21

EN PORTADA

En su reporte Technology Focus: Business Process Management, Doculabs lista como beneficios para las organizaciones la reduccin de costos, mejor servicio al cliente, reduccin de riesgos y una rpida respuesta a las condiciones cambiantes. De acuerdo con un estudio de Gartner, 78% de los proyectos de BPM arrojaron una tasa interna de retorno mayor a 15%, y algunos llegaron a 360%, lo cual justifica el costo de la solucin. BPM es la convergencia de iniciativas administrativas anteriores: toma el concepto de enfoque de procesos y de mejora continua de Kaizen y TQM, la posibilidad de innovar radicalmente los procesos de BPR, el enfoque en la mejora con base en datos estadsticos de 6, la idea de operacin en lnea de JIT, el costeo de procesos de ABC, la integracin de procesos de SCM y la idea de un tablero de control de BSC. Los BPMS, por otro lado, aprovechan nuevas tecnologas como XML y web services, pero maravillosamente habilitando la integracin con sistemas legados, ERPs, CRMs y herramientas de BI. Todo esto sin perder de vista el proceso desde el punto de vista del negocio.

Beneficios

productos cubren prcticamente todas las necesidades de una organizacin. Sin embargo, sabemos que esto dista de ser verdad. Segn Gartner, un ERP cubre en promedio nicamente 30% de la funcionalidad requerida en las empresas. Adicionalmente, existen muchas actividades que involucran participacin y toma de decisiones por parte de las personas. Cuando estas actividades no estn incluidas en las aplicaciones, se crean actividades fuera del proceso automatizado. Si el proceso requiere la intervencin de varios sistemas, se crean islas de automatizacin que obligan a las personas a utilizar papel o paquetera de oficina para pasar de una isla a otra. Son famosas las historias de cmo las personas se ingenian para usar una hoja de clculo y darle la vuelta a un ERP An cuando a un paquete se le integre . una mquina de procesos, la solucin est centrada en los recursos o los clientes y no en los procesos de negocio. As como un manejador de bases de datos est hecho para manejar bases de datos, tablas, columnas e ndices, un BPMS est diseado para manejar procesos, instancias, versiones y variantes, componentes, reglas y participantes de procesos. Esto cambia el enfoque de centrado-en-datos a centrado-en-procesos. BPM tiene una repercusin importante para los roles relacionados con el software. Los proyectos de BPM sern parte del portafolio de proyectos de las reas de Sistemas y debern ser controlados por el Director. Los desarrollos de software a la medida incluirn cada vez ms la identificacin y modelado de los procesos de negocio. Los desarrollos de software basados en un BPMS requerirn que los desarrolladores entiendan los procesos de negocio y sepan usar la herramienta. Los analistas de sistemas debern aprender sobre anlisis de procesos, al igual que los usuarios. Los testers debern realizar pruebas con una visin del proceso completo. Los administradores de bases de datos debern incorporar bases de datos de procesos. Los administradores de redes debern incluir en su administracin servidores de procesos y considerar el ancho de banda necesario para asegurar el trfico de la informacin de los procesos, no slo a travs de la organizacin sino tambin con los socios de negocio. Los administradores de configuracin tendrn que considerar entre sus tems a los procesos y sus objetos derivados. Los administradores de proyectos debern

entender las implicaciones de la participacin de los usuarios de negocio y de los analistas de procesos. Los especialistas en seguridad debern ahora brindar seguridad a todo el proceso. Pero no todo es mayor trabajo para el personal de Sistemas. En retribucin, los sistemas desarrollados tendrn una mayor visibilidad y una mayor participacin de las reas usuarias. Ser posible reanimar sistemas muertos o poco utilizados. Los usuarios podrn contar con una interfaz comn sin importar si detrs est un ERP o un sistema legado. Quiz lo ms importante para nuestra industria es que se aprovecha y potenca la inversin existente en tecnologa de informacin. Cmo se relaciona BPM con los esfuerzos de mejora de procesos basados en modelos? No son BPM tambin? Los modelos como CMMI o MoProSoft son un gran avance ya que llevan el concepto de administracin de procesos a las organizaciones de sistemas/software. Existen otros modelos, como SCOR para cadena de suministro (Supply Chain), ITIL para servicio tecnolgico, o COBIT para el control de los objetivos. Todos ellos se basan en procesos y considera en menor o mayor grado su administracin. Las diferencias cruciales, quiz sean que BPM primero lleva estos conceptos a toda la organizacin, y adems, tomando ventaja explcita de la tecnologa para crear procesos digitalizados. Esto no significa que los esfuerzos basados en estos modelos compitan con BPM. Ms bien, son un paso importante en el sentido de lo que se buscan con BPM. Por ltimo, ms no por menos, es importante mencionar que adems del expertise tcnico en BPM, un esfuerzo exitoso de este tipo requiere incluir una administracin efectiva de los proyectos, administrar el cambio organizacional, obtener el patrocinio suficiente, y alinearse con los objetivos estratgicos del negocio. Referencias:
William Joyce, Nitin Noria, Bruce Robertson. What Really Works. Harvard Business Review. Julio 2003 Jim Sinur, Jess Thompson. The Business Process Management Scenario. Gartner Research. Junio 2003 Thompson, Michael. Requirements for effective BPM, Butler Group. Junio 2003

Para entender lo que es un BPMS, enlistemos sus componentes funcionales tpicos: Modelador de procesos.- Ayuda a descubrir y modelar los procesos. Herramientas de desarrollo.- Diseador de formas y editor de reglas. Integracin.- Habilita la integracin para interactuar con otras aplicaciones. Mquina de procesos.- El motor que habilita la ejecucin de procesos. Ejecuta instancias de procesos en base al estado de los objetos y las reglas definidas. Repositorio.- Almacena meta-definiciones de procesos, participantes e integracin. Gestin.- Provee registros de auditora. Adicionalmente habilita la intervencin manual para redirigir, abortar o modificar la instancia de un proceso en caso de emergencia. Reporte y Anlisis.- Permite visualizar y analizar la ejecucin de los procesos. Los proveedores de paquetes y aplicaciones empresariales acostumbran argumentar que sus

BPMS

Impacto al rea de TI

Contraste con Paquetes

Francisco Jos Lpez Lira e Hinojo es Director Operativo de Process & Project Health Services, firma dedicada a la consultora en BPM y mejora de proyectos, Presidente de la Asociacin Mexicana para la Calidad en Ingeniera de Software (AMCIS) y Vicepresidente de la Asociacin BPM de Mxico. Su correo es flopezlira@pp-hs.com

22

JUL-AGO 2005

www.softwareguru.com.mx

Desde hace varios aos las organizaciones (empresas privadas o instituciones pblicas) han ido incrementando el uso de procesos con el objeto de mejorar su desempeo y mantener su operacin. Podemos ver reflejada esta megatendencia en muchos contextos donde el proceso es una entidad relevante: paquetes empresariales de software basados en modelos estndar de procesos (CRM, ERP, SCM), modelos de gestin del desempeo empresarial (Balanced Scorecard), modelos de calidad (ISO 9000:2000, TQM), mtodos de mejora de procesos (Six Sigma, BPR), modelos de referencia de madurez y capacidad de procesos (CMMI, SPICE), modelos de procesos especficos (RUP, SPEM, ITIL), entre otros.

BPMS
La Nueva Plataforma de Misin Crtica
Por Roberto Silva

En la actualidad, los proveedores requieren acelerar la entrega de ms valor a sus clientes y al mismo tiempo disminuir sus costos. Sin embargo, las organizaciones no han comprendido la naturaleza bsica de los procesos y an no han encontrado una infraestructura de TI que signifique valor real para el negocio en trminos financieros (para las organizaciones no lucrativas vara la unidad pero no el concepto de valor).
www.softwareguru.com.mx JUL-AGO 2005

23

EN PORTADA

A finales de la dcada pasada aparecieron los primeros Sistemas de Administracin de Procesos de Negocio o BPMS (Business Process Management Systems) que permiten a las organizaciones mapear, integrar, liberar, medir, monitorizar, controlar, analizar y optimizar procesos de negocio de misin crtica que requieren ser integradas en una verdadera cadena de generacin de valor para un cliente final y ligada directamente al logro de objetivos estratgicos. El objetivo de este artculo es dejar claro qu es un BPMS, qu podemos hacer con l, pero sobre todo, entender porqu es la plataforma de misin crtica para toda organizacin que pretenda sustentar el logro de sus objetivos y mantener sus ventajas competitivas en un ambiente complejo de cambios constantes[1]. Considerando que los proveedores de software o sus representantes son especialistas en generar confusin alrededor de productos innovadores en el afn de venderlos, considero muy importante aclarar que la Direccin de Procesos de Negocio o BPM (Business Process Management) al igual que, por ejemplo, CRM (Customer Relationship Management), no son trminos acotados nicamente a un paquete de software especializado ni tampoco es una meta que puede ser alcanzada en un cierto plazo ejecutando una serie de proyectos, es una manera de vida. BPM es toda una filosofa de trabajo que coloca al proceso de negocio al centro de su universo, es la manera moderna de administrar un negocio, donde su propsito es asegurar la mejora continua del desempeo organizacional en un ambiente de cambios constantes. Una empresa que practica BPM entiende y vive tanto la operacin como el desarrollo organizacional en trminos de procesos de negocio integral y naturalmente. Los procesos de negocio son las unidades de sincronizacin de cambios, de generacin de valor para los clientes, y de logro de objetivos estratgicos, ms adelante ahondar al respecto en el bloque de pensamiento sistmico.

En una organizacin hay tres tipos bsicos de procesos de negocio. Los centrales son aquellos procesos cuyo cliente es el beneficiario de la oferta de valor de la organizacin: los clientes comercialmente hablando; los estratgicos son aquellos cuyo cliente es la organizacin como un todo, ya que el valor obtenido es mejor infraestructura organizacional en trminos, por ejemplo, de mejores profesionales o mejores sistemas de informacin; finalmente los procesos de soporte son aquellos cuyo cliente es otro proceso de negocio, ya que el valor que recibe es una entrada necesaria para poder lograr su objetivo particular. Sin embargo, un cuarto tipo es el ms importante en BPM. Los procesos de negocio empresariales o EBP (Enterprise Business Process) son los vitales, ya que corresponden a las grandes cadenas de generacin de valor que involucran varias entidades internas y externas a la organizacin (atraviesan varios departamentos funcionales, requieren el uso de diversos sistemas y aplicaciones de software, involucran proveedores y muchas veces aliados de negocio) cuyo alto desempeo significa el logro de objetivos estratgicos. El BPMG[3] define a un EBP como: la coordinacin de lado a lado (a travs de departamentos o inclusive fronteras organizacionales) de las actividades de trabajo que genera y entrega valor real a clientes. El gran reto es desarrollar esta nueva capacidad que requiere, como primer paso, romper el paradigma del pensamiento funcional. Desde el punto de vista BPM, un BPMS es el principal facilitador para implantar un programa permanente de mejora continua en la prctica, ya que es imposible administrar sistemas tan complejos como lo son los procesos de negocio empresariales, simplemente, cmo podramos medirlos y monitorizarlos en tiempo real? Desde el punto de vista organizacional, un BPMS es el medio de organizacin, alineacin y sincronizacin de las entidades (recursos) de negocio ms importantes en un mismo sistema integral y coordinado: personas, reglas de negocio, datos, sistemas informticos existen-

tes y aplicaciones de software (especialmente servicios) nuevas sin importar su ubicacin ni alcance, ya que las personas pueden pertenecer a diferentes departamentos u organizaciones y estar en diferente piso o pas, siempre que el BPMS est basado en estndares. Desde el punto de vista tcnico, un BPMS es una plataforma que permite integrar la infraestructura tecnolgica existente en un ambiente Web que, a su vez, permite preservar los beneficios especficos de aplicaciones legadas. Al mismo tiempo, es un bloque de construccin esencial para un nuevo tipo de arquitectura aplicativa, basada en estndares y orientada a servicios (SOA). Soporta adems procesos B2X (B2B, B2C, B2P, B2E, etc.) y permite a los diseadores de aplicaciones construir soluciones orientadas a procesos de una manera muy rentable y efectiva. Desde el punto de vista del negocio, un BPMS es el medio que finalmente permitir integrar Negocio y TI con un sentido estratgico, donde por un lado TI se enfoca al desarrollo de la infraestructura tecnolgica centrada en procesos y arquitecturas aplicativas orientadas a servicios (SOA) y por otro lado le regresa el control del negocio al negocio: extrayendo las reglas de negocio implantadas mediante mecanismos internos a los sistemas o los manejadores de datos. Segn Gartner, las tecnologas de informacin son el principal impedimento para la agilidad organizacional, ya que han sido enfocadas a la mejora de necesidades funcionales. Adems, si consideramos que 80% de los requerimientos de cambio corresponden a reglas de negocio (tambin segn Gartner), regresar el control significa manejar las reglas de negocio como parte integral de los procesos de negocio modelados y administrados dentro del BPMS de manera independiente a las aplicaciones de software.

Fundamentos

Qu es BPM?

Qu es un BPMS?

Desde hace muchos aos, W. Edward Deming, el padre del movimiento de la calidad, puntualiz que el problema es el sistema. Los procesos de negocio empresariales que atraviesan las organizaciones funcionales de
www.softwareguru.com.mx

La Importancia del Pensamiento Sistmico

24

JUL-AGO 2005

Figura 1. Infraestructura de Software de Misin de Crtica

lado a lado son sistemas dinmicos, pero desafortunadamente los profesionales que dirigen y ejecutan los procesos generalmente no estn entrenados en el pensamiento sistmico. Lo comn es que su perspectiva est restringida a prcticas de negocio de muy bajo nivel de abstraccin (procedimientos muy especficos y rgidos), realmente pocos profesionales tienen una perspectiva amplia de su contexto ms amplio dentro de la organizacin. Hoy da es evidente que conforme avanza el tiempo tanto el entorno como el interior de las empresas se van volviendo ms complejos y de hecho la tendencia es hacia ambientes cuya dinmica ser progresivamente ms compleja. Afortunadamente ya tenemos la respuesta a la interrogante: cmo hacerle? Precisamente el manejo de esta complejidad es el objetivo del pensamiento sistmico. Este se enfoca en el todo, no en las partes, de un sistema complejo. Se concentra en las interfaces y las fronteras de componentes, en sus conexiones y organizacin, hacia una bsqueda de sistemas holsticos que potencialmente generen resultados con mucho ms impacto que el de la suma de sus partes. Cuando el pensamiento sistmico es dominado, podemos afirmar que el mayor obstculo para construir organizaciones administradas por procesos ha sido sorteado, ya que cada proceso de negocio ser entendido, ejecutado y administrado como un sistema completo. Es por esto que la competencia central ms importante que debe tener una organizacin para aprovechar los beneficios de BPM es el pensamiento sistmico o process thinking. Los invito a hacer un ejercicio mental muy sencillo, dediquen unos 20 segundos a mirar con detenimiento a su alrededor y despus unos 30 segundos ms a elaborar una lista de los cinco elementos ms relevantes que se les quedaron grabados considerando que nuestro objetivo es trasladarnos de un punto A hacia un punto B, seleccionados por ustedes en el entorno visible. Ahora traten de hacer lo mismo pero enfocados en toda la colonia o entorno mayor en el que se encuentren, planteando un trayecto ms amplio. La segunda lista tiene algn elemento? Ahora repitamos el ejercicio, pero esta vez imaginen que se han
www.softwareguru.com.mx

subido a un helicptero y se han elevado unos 50 metros sobre el punto donde hace un momento se encontraban, en este caso les propongo dos preguntas: qu pueden ver si estn a 50 metros de altura a un nivel todava ms amplio, digamos a nivel de la delegacin, municipio o inclusive pas en el que se encuentran? Desde esta perspectiva, qu impacto relativo tienen en su vista los cinco elementos originales que tenamos a la mano a nivel del piso? El problema para las organizaciones tradicionales de pensamiento funcional es que el reto de acelerar la generacin de cada vez ms valor para sus clientes finales y al mismo tiempo disminuir costos est como a 1,000 metros de altura. El helicptero es el BPMS, por eso son necesarios para una organizacin que quiera sobrevivir, crecer o destacar en un entorno de cambios constantes, pero no hay que perder de vista que no es suficiente, no por subirnos al helicptero ya resolvimos el problema, simplemente estamos en condiciones de aspirar a ello con mucho mayor probabilidad, ya que en el fondo un BPMS slo es una herramienta muy poderosa que debe ser utilizada correctamente para poder obtener todos sus potenciales beneficios que a continuacin abordar. El otro elemento clave es el piloto del helicptero, es decir, el pensamiento sistmico.

de negocio, entre otras capacidades. Si sustituimos la palabra datos por procesos, estaremos hablando de un BPMS. Por cierto, el fundamento del xito de los RDBMS es ni ms ni menos que las matemticas, el lgebra relacional como la base de los motores relacionales. Para el caso de los BPMS su xito tiene el mismo nivel de sustento en la misma ciencia, slo que en este caso es teora de procesos como la base de los motores de procesos, que es el corazn de un BPMS. En el caso de la plataforma de misin crtica del pasado (para muchos todava el presente), los sistemas informticos son las entidades que llevan el control de las actividades y en general determinan el cundo, el cmo, y el quin har uso de los servicios del DBMS. En el caso de la nueva plataforma de misin crtica del presente y del futuro, los procesos de negocio en s mismos son las unidades de negocio que llevan el control de la ejecucin y en general determinan cundo, cmo, y quin har uso de los servicios del BPMS (ver Figura 1). En el fondo, lo que estamos consiguiendo es contar con una plataforma de mayor nivel de abstraccin y por lo tanto de mucho mayor impacto y visibilidad a nivel negocio. Es por esto que muchos consideran a los BPMS como una herramienta ms orientada al negocio que a TI. De hecho, Delphi Group, en sus reportes anuales acerca del estado y tendencias en el mercado de software BPM a nivel mundial, ha confirmado en ms de una ocasin, que dos de cada tres decisiones positivas para adquirir un BPMS son realizadas por algn ejecutivo de negocio ajeno al departamento de TI. Esta percepcin es muy simplista, superficial y errnea. Como ya lo he dicho, debemos romper
JUL-AGO 2005

RDBMS vs. BPMS

La plataforma de misin crtica predominante durante ya varios aos son los RDBMS, con los cuales administramos el ciclo de vida completo de datos de negocio, establecemos y mantenemos las relaciones y estructura de los datos de negocio, controlamos el acceso y modificacin de los datos de negocio en funcin a privilegios, hacemos consultas en funcin a criterios que se aplican al repositorio de datos

Plataforma de Software Centrada en Procesos

25

EN PORTADA
estndares como el Xf-XML del WFMC[4] en combinacin con el XPDL del mismo WFMC o el WS-BPEL de OASIS[5] hacen posible la colaboracin entre instancias bajo esquemas de seguridad confiables y donde inclusive cada parte podra tener un BPMS distinto (ver Figura 1).

Infraestructura de Software Empresarial Centrada en Procesos

Figura 2. Administracin de Procesos de Software Orquestados

el paradigma tradicional del pensamiento funcional que ha mantenido separados a los departamentos de las empresas, especialmente a Negocio y TI, cuando debemos entender que TI es una parte fundamental (subsistema) del negocio (sistema). De hecho, con la inclusin de un BPMS en la arquitectura de TI estamos logrando que por fin la aportacin de TI al negocio sea visible a todo lo largo de las cadenas de generacin de valor medible en trminos financieros y alineables a objetivos de negocio. Por si fuera poco, incrementa la visibilidad del valor generado por cada uno de equipos de trabajo que ejecutan procesos, fortaleciendo el entendimiento, la comunicacin y su aportacin al logro de la estrategia organizacional.

a la optimizacin del uso de recursos y generacin de resultados tangibles para un cliente final comn en el menor tiempo y costo posibles. Los elementos primarios que son coordinados son los flujos de tareas, reglas de negocio, roles de negocio (responsabilidades definidas en tiempo de diseo), y personas (usuarios en tiempo de ejecucin a travs de su mapeo a roles de negocio). La integracin tecnolgica orientada a procesos es la capacidad de integrar sistemas existentes, aplicaciones nuevas, datos de negocio, directorios y archivos al nivel de abstraccin del proceso de negocio en el que participan, es decir, al nivel de la cadena de generacin de valor a la que pertenecen. Una ventaja muy relevante es que las aplicaciones quedan desacopladas entre s, es decir, ya no se comunican directamente con el enfoque tradicional de integracin de aplicaciones punto a punto, lo que simplifica enormemente el desarrollo y mantenimiento de software con valor real para el negocio y por lo tanto sus costos asociados son minimizados, de hecho, esta es la base conceptual de SOA. La dimensin de colaboracin representa la capacidad organizacional para ser parte integral de cadenas de generacin de valor ms amplias donde nuestros procesos de negocio empresariales pasan a ser subprocesos de procesos de negocio intercompaa con un potencial mucho mayor. La disponibilidad de

El beneficio directo de un BPMS es que permite asegurar la mejora continua del desempeo del propio proceso de direccin de procesos de negocio. Es decir, un BPMS permite aterrizar la filosofa BPM como un proceso estratgico cuyo resultado de valor son procesos de negocio de alto desempeo, donde el cliente es la organizacin como un todo. Al ver BPM como un proceso podemos administrar su ciclo de vida completo con el soporte de la nueva plataforma de misin crtica (ver Figura 2). El Business Process Management Group[3] (BPMG) ha establecido que BPM es el enfoque deliberado y colaborativo para manejar sistemticamente todos los procesos de negocio de una organizacin donde sus dos facilitadores fundamentales son el pensamiento sistmico y las tecnologas de informacin centradas en procesos. Este mismo consorcio ha puntualizado los diecisis grandes retos que enfrentan las empresas en la actualidad (para sobrevivir, crecer o destacar en un mundo complejo donde lo nico constante y seguro son los cambios[1]) durante el proceso de adopcin de BPM y en trece de ellos el BPMS es la pieza fundamental para soportar el desarrollo y mejora continua de las capacidades organizacionales requeridas para afrontar estos retos con xito. Especialmente es destacada su aportacin directa para el desarrollo de las capacidades agilidad y adaptacin. Referencias
1. Roberto Silva, Negocios giles. Impulsare e-zine. www.impulsare.com 2. Howard Smith and Peter Fingar, Business Process Management: The Third Wave, MeghanKniffer Press, 1st Edition 2003. 3. The Business Process Management Group, In Search of BPM Excellence: Straight from Thought Leaders, Meghan-Kniffer Press, 2005. 4. WFMC: The Workflow Management Coalition www.wfmc.org 5. OASIS. www.oasis-open.org

Dimensiones de un BPMS

El motor de procesos (corazn de un BPMS) es representado por un cubo, donde la cara superior representa la dimensin correspondiente a la capacidad central de orquestacin de procesos de negocio, la cara izquierda representa la dimensin correspondiente a la integracin tecnolgica realizada hacia el interior de la organizacin, y la cara derecha representa la dimensin correspondiente a la colaboracin con entidades externas a la organizacin. La orquestacin de procesos de negocio es la capacidad de coordinar la ejecucin de cadenas de generacin de valor al grado de llegar a conseguir una armona sistmica orientada

Roberto Silva es Socio Fundador de Impulsare, empresa dedicada a la educacin y consultora en integracin de negocios. Es Director de Horbis, enfocada exclusivamente al diseo e implantacin de soluciones de integracin de cadenas de valor centradas en procesos. Tiene nueve aos de experiencia como empresario y catorce aos como consultor en el desarrollo e integracin de sistemas de negocio y software para diversos sectores en Mxico y Amrica Latina. Es Consultor Asociado de la Fundacin Mexicana para la Innovacin Gubernamental y Empresarial y miembro activo del Business Process Management Group.

26

JUL-AGO 2005

www.softwareguru.com.mx

BPM
Por Ernesto Mndez Sols

Por ms de 15 aos me he dedicado al desarrollo de sistemas con lenguajes de programacin estructurado, no estructurados, y orientados a objetos. Estos siempre haban sido mis herramientas de trabajo en la programacin para automatizar procesos. A continuacin les presento mi experiencia realizando este mismo trabajo bajo un nuevo paradigma.

Desde la Perspectiva de un Desarrollador

www.softwareguru.com.mx

JUL-AGO 2005

27

EN PORTADA

Como consultor en el desarrollo de software, es muy comn ser asignado a proyectos en los que participan consultores de otras empresas formando de esta manera equipos de trabajo interdisciplinarios y multiempresa; unos se encargan de la administracin y metodologa del proyecto, otros ms del anlisis, diseo, modelacin, desarrollo, documentacin y pruebas, por mencionar solo algunas de las diferentes tareas involucradas. Fue de esta manera que fui asignado a participar en un proyecto en el que haba que automatizar el flujo de un proceso administrativo de una empresa dedicada a la comercializacin, industria perteneciente al sector conocido como retail. As que me integr al equipo, que estaba conformado por tres diferentes empresas y fui asignado a la fase de desarrollo. Solo requera tener conocimientos bsicos de programacin orientada a objetos y experiencia en el anlisis, diseo y desarrollo de sistemas. La herramienta que se iba a utilizar para este desarrollo se llamaba Fuego. En mi vida haba odo hablar de esta herramienta, por supuesto que no se requera experiencia, se dedicara un periodo inicial para capacitar a los desarrolladores antes de iniciar formalmente el proyecto. As fue como conoc el concepto BPM. Fuego, es mas que una herramienta de desarrollo, es un ambiente de trabajo. Este ambiente de trabajo, se puede dividir a su vez en dos: el ambiente de produccin y el ambiente de desarrollo y configuracin. Estos estn basados en aplicaciones comunes a los ambientes de sistemas: navegadores, servidores web, servidores de bases de datos y servicios de directorio, por mencionar algunos. Algunas aplicaciones propias de Fuego complementan el ambiente de produccin y desarrollo: motor de orquestacin, portal de trabajo, administrador de componentes, administrador de la organizacin, diseador de procesos, consola de ejecucin y el analizador de procesos. Aunque pudieran parecer una gran cantidad de aplicaciones, realmente no es tan complicado preparar el ambiente de operacin y desarrollo, inclusive el de desarrollo se puede preparar en un solo equipo para poder trabajar en forma independiente y aislada para posteriormente poder desplegar el proceso en el ambiente de produccin. Recuerdo que en alguna ocasin me toc programar aplicaciones del tipo flujo de trabajo

utilizando lenguajes de programacin convencionales. Esto represent un reto algo diferente al de cualquier otro tipo de desarrollo, pero nada que impidiera alcanzar finalmente el xito y la automatizacin del proceso correspondiente. Sin embargo, los BPMS estn especficamente diseados para automatizar en forma sencilla este tipo de procesos. La clave del xito de este tipo de ambientes de desarrollo es el denominado diseador de procesos, la herramienta central del BPMS. Al mismo tiempo, representa el mayor de los retos que los programadores de lenguajes tradicionales enfrentan al pretender automatizar un proceso. En este caso, la clave es modelar el proceso tal como se desarrolla en la prctica; lo que implica primero, identificar los diferentes pasos que el proceso incluye para posteriormente, apoyado en una serie de conos para el modelado, representarlo grficamente en el diseador, considerando los participantes en el proceso y los conectores que comunican las actividades o pasos. Aunque esta representacin grfica del proceso esta diseada para que cualquier analista de negocio e inclusive ejecutivo participante del proceso lo pueda entender, la construccin o modelado del proceso requiere de un nivel de abstraccin adicional al requerido simplemente para su entendimiento. Un elemento fundamental a considerar al momento de modelar es lo que se denomina una instancia. Las instancias son las ejecuciones individuales de un proceso. Cada vez que se inicia un proceso, se crea una instancia y el sistema mantendr un estricto control de sta mientras fluye por cada una de las actividades hasta llegar al punto final. Paralelamente, el sistema almacena la informacin de la instancia en la base de datos para poder conocer el detalle particular de su flujo, en funcin de la actividad particular en la que se encuentre. Todava hay un par de factores ms a considerar en el modelado de un proceso: la transformacin o caracterstica que agrega cada una de las actividades a la instancia y la descomposicin de una instancia en dos o ms partes para poder realizar procesos paralelos que permitan posteriormente la reintegracin de la instancia en una actividad posterior. Considerar todos estos factores para poder modelar un proceso, resulta ser una tarea no muy fcil cuando no se tiene experiencia y se esta

acostumbrado al proceso tradicional de desarrollo de aplicaciones. Por instinto uno quiere aplicar sus conocimientos de programacin al modelado de procesos, lo cual solo crea gran frustracin y largas horas de reproceso. Desde mi punto de vista, esto requiere de un cambio de paradigma en el proceso de conceptualizacin y anlisis cuando se utilizan herramientas BPMS. Para contextualizar, equivale al cambio de paradigma que los programadores de la vieja guardia tuvimos que hacer cuando pasamos de la programacin estructurada a la programacin orientada a objetos. Se dice en forma muy sencilla, pero este cambio de paradigma resulta bastante difcil de realizar. Sin embargo, cuando una persona que aprende a programar, lo hace inicialmente bajo el paradigma de objetos, se le facilita ya que no est acostumbrada a un paradigma alterno. Lo mismo aplica en el caso de los BPM, los consultores que normalmente no realizan las tareas de anlisis, diseo y codificacin de sistemas, se les facilita un poco ms el entender el concepto de modelado de procesos. Una vez superada esta primera fase del proceso, la modelacin, sigue la fase con la que los programadores estamos ms familiarizados, la codificacin. Cada una de las actividades modeladas, lleva intrnsicamente una cierta funcionalidad, la cual es posible expandir utilizando un lenguaje script, fcil de usar y que permite configurar las actividades a la necesidad particular del negocio. Algunas de las caractersticas comunes de configurar en las actividades son por ejemplo: el tiempo mximo que puede permanecer una instancia en la actividad, y el manejo de excepciones y envo de notificaciones a otros integrantes del proceso entre las ms importantes. Con el lenguaje script se puede conseguir funcionalidad adicional como: presentacin de mensajes en pantalla, acceso a la base de datos, manejo de variables, expresiones condicionales, bucles y manejo de sentencias de entrada para obtener informacin de parte del operador. Cuando la funcionalidad requerida en cualquiera de las actividades va mucho mas all de lo que se puede lograr con el lenguaje script, se puede desarrollar un componente que posteriormente se puede mandar ejecutar desde cualquier actividad. Los componentes permiten realizar formatos de captura de in-

El Ing. Ernesto Mndez Sols es consultor independiente especializado en administracin y liderazgo de proyectos de desarrollo de software. Ha trabajado para varias empresas relacionadas con el desarrollo de software como: Siga Desarrollos, Arthur Andersen e Interfaces. emendezsolis@infosel.net.mx

28

JUL-AGO 2005

www.softwareguru.com.mx

formacin mucho ms complicados en forma relativamente sencilla para solicitar informacin al operador e ir automatizando el proceso segn sus requerimientos particulares. Otra caracterstica interesante que se puede obtener de los componentes es la posibilidad de interactuar con otros sistemas para intercambiar informacin o lanzar procedimientos externos para conseguir automatizar en mayor medida el proceso. Por ejemplo, se puede capturar informacin desde una de estas pantallas (incluyendo sus procesos de validacin) y posteriormente ejecutar un sistema legacy el cual requiere de la informacin recin capturada, la que le es enviada de forma transparente. Este tipo de actividades, consiguen que los operadores o participantes del proceso, interacten con un solo sistema sin necesidad de tener que usar diferentes aplicaciones e interfaces para conseguir cerrar el flujo del proceso. Esta caracterstica es una de las ms poderosas que se pueden obtener de un BPM y que precisamente cumple con el objetivo fundamental de este tipo de sistemas: la administracin de los procesos de negocio.

Antes de realizar el proceso de despliegue en produccin, la herramienta permite realizar tareas de depuracin para poder ir siguiendo el flujo de una instancia e ir evaluando las diferentes variables que intervienen en el proceso, facilitando sustancialmente la liberacin de procesos libres de errores. Cuando pudiera parecer que la automatizacin del proceso ha terminado, sta solo ha iniciado en realidad. Cuando un proceso esta en produccin, la fase ms importante es precisamente la de evaluacin para entonces detectar mejoras, cuellos de botella y la justificacin de reingenieras de proceso. El ambiente colaborativo bajo el que operan este tipo de desarrollos, intranets y/o extranets, ofrece interfaces ntidas y claras para todos los involucrados, fciles de operar y con una curva de aprendizaje muy corta que permite en muy poco tiempo poder administrar eficientemente los procesos. Desarrollar una aplicacin que permita realizar todas estas tareas y controles utilizando lenguajes de programacin tradicionales resulta en proyectos muy costosos, de muy difcil mantenimiento,

poco susceptibles de poder ser mejorados en funcin de la experiencia y que normalmente se quedan cortos en cuanto al alcance inicialmente programado. Los ambientes de desarrollo y produccin de los sistemas BPM ofrecen una extraordinaria alternativa para la automatizacin y mejora de procesos, se convierten en herramientas de vital importancia en la operacin de las empresas ya que permiten adecuar y adaptar los procesos en forma rpida a los dinmicos cambios del medio ambiente de negocios que vivimos hoy en da. El esfuerzo requerido para establecer un BPMS, la capacitacin de consultores para la automatizacin de procesos, as como el cambio de paradigma que este tipo de herramientas exige a sus diseadores y desarrolladores, bien vale la pena realizarlo ya que los resultados que se pueden obtener son sencillamente espectaculares y no se pueden obtener con ninguna otra herramienta disponible hoy en da en el mercado.

Conclusin

CASO DE ESTUDIO

El Camino a CMM nivel 3


Active Intelligence Comparte su Experiencia
Por Rafael Muoz y Elizabeth Almeraz

En tiempos donde los mrgenes canas con recursos econmicos limitados, convencimiento y entusiasmo del personal de utilidad se ven amenazados tomen la decisin de marcar una diferencia y los procesos enfocados y adaptados a la cada da mas y la competencia en la manera en como se construye software forma de trabajar de Active Intelligence. contra proveedores mundiales de en Mxico, contribuyendo a poner a todo el software se ha convertido en una pas en el mapa para los mercados globales. La historia guerra de precios interminable, Active Intelligence naci en Aguascalientes, fundada y dirigida por Humberto Snchez Active Intelligence, una compa- Cmo se logr? a con 50 integrantes y un ao Sin duda el esfuerzo bien enfocado detrs Sandoval y Abraham Ramrez Basurto; el de historia, consigue el reconoci- de cualquier iniciativa es la clave para obte- objetivo organizacional es la proveedura de miento de nivel 3 basados en el ner los resultados esperados. Este caso no servicios de exportacin de segunda capa es la excepcin, sin embargo, vale la pena en modalidad de fbrica de software y tiene modelo SW-CMM
La historia de Active Intelligence es una historia que vale la pena contar, pues muestra como al enfocar el esfuerzo en lo que es importante, los resultados que se pueden obtener son muy buenos, adems pone el dedo en el rengln para que ms compaas mexidesmenuzar un poco la estrategia y caractersticas que se juntaron para que la meta fuera posible. Especialmente es importante remarcar la importancia en tres factores crticos que permitieron que la adopcin de un modelo de procesos, se hiciera en un tiempo rcord: El apoyo de la direccin, la actitud, como principal objetivo el ofrecer desarrollo de soluciones de software a distancia. El Ing. Snchez, cofundador en 1988 de Ddemesis (que fue reconocida como nivel 3 de SW-CMM en 2001) aprovech un momento extraordinario en el mercado de exportacin de TI desde Aguascalientes. En 2003 Ddeme-

Rafael Muoz es egresado de la carrera de Matemticas Aplicadas y Computacin de la UNAM. Actualmente es lder de Active Intelligence y tiene a su cargo las iniciativas de calidad de esta empresa. l y su equipo se encuentran actualmente trabajando en la implementacin del modelo CMMi en esta compaa. Ha trabajado en el rea de TI por ms de diez aos, liderando proyectos para grandes compaas nacionales e internacionales.

30

JUL-AGO 2005

www.softwareguru.com.mx

Se busc el apoyo del Gobierno Federal mediante el programa ProSoft y se recibieron ayudas econmicas para formacin de personal.
sis fue vendida, ocasionando un movimiento importante de profesionales buscando nuevas opciones laborales, en ese momento de cambios Active Intelligence surgi como una opcin interesante para ellos. Active Intelligence tuvo la visin de buscar colaboradores con experiencia en la implementacin de procesos, Six Sigma y SW-CMM, adems de las habilidades de tecnologa que el mercado requera, como .NET, que es la principal herramienta tecnolgica utilizada. Adicionalmente pudo conformar un equipo con mucha energa a travs de una vinculacin importante y selectiva con las Universidades de Aguascalientes; de este modo se form el equipo de trabajo que actualmente figura entre las filas de la compaa. Despus del entrenamiento interno inicial, se plane la forma en que la meta se cubrira. Se iniciaron las actividades de definicin y se prepar el entrenamiento para los colaboradores. Este primer paso fue difcil, pues los procesos no fueron muy bien recibidos desde el inicio, haba muchas dudas, los proyectos que lo implantaran ya tenan otra forma de trabajo, la implantacin implicaba tareas extras en los planes de proyecto ya comprometidos, por lo que solo se vean dificultades en la implantacin, sin mucho que obtener a cambio. Estbamos atorados. La tormenta pas, sin lugar a dudas el apoyo de la direccin fue pieza clave en la resolucin de estos problemas, adems del compromiso del equipo de implantacin. Para incrementar la motivacin y remarcar la importancia en el uso de los procesos, un requerimiento clave lleg, el requerimiento solicitaba el uso y conocimiento del modelo SW-CMM y finalmente, el trabajo que ya se haba hecho en este sentido, fue un factor decisivo para ganarlo. Los procesos son un valor agregado importante. La necesidad de robustecer los procesos con la ayuda de algn externo se hizo ms palpable y entonces se busc apoyo del Gobierno Federal mediante el programa ProSoft y se recibieron ayudas econmicas para formacin de personal por el Gobierno del Estado de Aguascalientes; se trabaj duro para conseguir una oportunidad real y por supuesto, los recursos requeridos. Al ser otorgados los recursos, la visin se ampli acorde a la nueva situacin y el programa de calidad tena nuevas y ms retadoras metas. Los recursos permitieron tener acceso a la consultora externa, y adems la implantacin no se quedara solo en eso, pues se buscara el reconocimiento formal del nivel 3. La compaa estaba entusiasmada. Dada la buena experiencia en Ddemesis y su reconocida capacidad, Avantare fue elegida para
JUL-AGO 2005

formar parte del proyecto, con ellos se hicieron revisiones documentales a los procesos, verificacin de la implantacin en los proyectos, evaluaciones informales (simulando actividades de la evaluacin formal) y formacin prctica del grupo de SQA para ejecutar sus actividades (pieza clave para apoyar la implantacin de las prcticas), todo esto ayud a acelerar la adopcin completa de la iniciativa, adems que el grado de confianza en los procesos ya implantados se mejor considerablemente. Ya estbamos listos.

La evaluacin
Mariana Prez-Vargas, Directora General de Avantare, fue el Lead Assessor de la evaluacin, se trabaj con ella, un consultor ms de apoyo de Avantare y los miembros de Active Intelligence elegidos para formar parte del equipo de evaluacin. El ambiente, aunque agradable, era de nerviosismo pues finalmente haba muchas cosas que dependan de un resultado positivo en la evaluacin CBA-IPI, (CMM Based Appraisal for Internal Process Improvement) a pesar de esto, el equipo formado en su mayora por gente muy joven, respondi como se esperaba a las exigencias del mtodo de evaluacin. Se aplicaron cuestionarios, se hicieron las entrevistas y las consolidaciones necesarias, hasta que lleg el momento de la puntuacin final, una a una las fortalezas y oportunidades de mejora detectadas durante cada una de las revisiones y/o entrevistas, se fueron revisando y discutiendo entre todo el equipo, ya que las decisiones deban tomarse por consenso. Debamos analizar si las oportunidades de mejora podan afectar de manera

La visin
Los beneficios en prestigio y participacin de mercado, que traera la adopcin del modelo siempre fueron un motivador importante de la compaa, sin embargo, existe tambin en la operacin y gerencia, un compromiso pleno con la calidad y la capacidad de entregar productos que satisfagan las necesidades de los clientes, motivndolos a seguir invirtiendo en tecnologas de informacin. Esta visin de las direcciones general y de operaciones, ha sido clave en el logro de las metas trazadas, pues el compromiso no es solamente de un equipo, si no de la organizacin completa.

El desarrollo del programa de mejora


Basados en esta visin, se inici el programa de mejora como un proyecto cuyo objetivo era definir e implantar procesos basados en el modelo SW-CMM hasta el nivel 3; sin embargo, no se contaba con recursos especficos para conseguirlo y mucho menos se pensaba en considerar consultora externa para apoyar la definicin e implantacin de procesos. El equipo original asignado fue formado por dos personas, el primero con experiencia en este tipo de procesos y convencido de los beneficios que se obtendran no slo a nivel de cada proyecto sino a nivel organizacional, mientras el segundo, era una persona sin experiencia, ni entrenamiento en el modelo, mucho menos en procesos y estndares mundiales, pero eso s con muchas ganas de aprender y a mejorar el trabajo de la empresa. As, con muchas desventajas, vio la luz el programa de mejora en Active Intelligence y se bautiz como AMM (Active Maturity Model). El camino se vea complicado.
www.softwareguru.com.mx

31

CASO DE ESTUDIO

significativa a las metas relacionadas ... y as una a una, cada meta se alcanz, dando como resultado alcanzar el nivel de madurez 3 de SW CMM.Todo el esfuerzo invertido, se redujo a una alegra y satisfaccin que difcilmente se pueden describir. Hoy da la evaluacin qued atrs, y lo mas importante es que hay un cambio en la cultura organizacional. El entusiasmo en las revisiones es igual al que se notaba antes de la evaluacin, el inters de los colaboradores en los procesos y en la mejora continua de las herramientas que se han definido sigue ah y va en aumento. Despus del resultado, ms personas estn interesadas en formar parte del equipo de calidad y ms gente aprecia el trabajo que esta rea realiza. Se confirma una frase que por mritos propios se ha convertido en el lema del programa de mejora: AMM es el ADN de nuestra compaa. Las metas de este ao tienen que ver con el cambio de modelo (CMMi) y el crecimiento de nivel, el equipo est nuevamente organizado y trabajando como el ao anterior con una nueva meta en la mente, buscando nuevas formas de mejorar y aprovechar la experiencia ganada con el primer paso. El compromiso de la organizacin est no solo con sus clientes, si no tambin con todos aquellos que de alguna forma colaboraron al logro de la meta que empez como un sueo y que ahora puede servir como muestra de que cuando se rene al equipo adecuado, un asesor experimentado, una idea clara llevada a un proyecto viable, y un programa inteligente de apoyo a la industria, los resultados pueden ser de clase mundial. Active Intelligence ya exporta el 68% de sus Servicios.

otras empresas que estn poniendo la mira en el establecimiento de un programa de mejora, sea cual sea, el modelo de referencia a seguir. Sin embargo, ahora que Rafael les ha contado la historia y evolucin de la implantacin de SW CMM en Active Intelligence, a mi me gustara compartirles algunos factores, desde el punto de vista de Avantare y como consultor en programas de mejora, que me parece importante enfatizar ya que marcaron la diferencia entre un buen deseo y un realidad que da frutos y beneficios y que pueden ayudar a otras Organizaciones en el establecimiento de su programa de mejora. As pues los factores crticos de xito, en el caso de Active Intelligence, que quisiera compartirles fueron: 1. El compromiso directivo. Sin este compromiso y el convencimiento tanto del Ing. Humberto Snchez como del Ing. Abraham Ramrez (el director de operaciones), de que los procesos rendiran frutos, cualquier esfuerzo por establecer mejores formas de trabajo se quedan en el tintero. 2. Procesos adecuados a la empresa y la forma de trabajo. Es fundamental establecer procesos a la medida de las organizaciones, sobre todo cuando se trata de organizaciones pequeas, donde si bien es vital el establecimiento de procesos, tambin es vital que stos sean giles para soportar el desempeo y operacin que una PyME necesita. En Active Intelligence, el grupo de mejora busc ante todo, que los procesos fueran funcionales para el trabajo diario de los proyectos. Esto represent no slo un reto para el grupo de implantacin, sino tambin para Avantare como consultor, pues hubo que buscar soluciones innovadoras que permitieran cumplir con las exigencias del modelo, sin sobrecargar a la operacin.

3. Una cultura Organizacional de procesos. La primera vez que como Avantare realizamos revisiones presenciales en Active Intelligence, se notaba que la gente haba visto buenos resultados al aplicar los procesos, lo cual haca que fueran muy abiertos para realizar las acciones de mejora solicitadas, e incluso en proponer ellos mismos mejoras. Cuando la gente est convencida de los beneficios que los procesos le traen en su trabajo diario, aporta para que estos procesos se mejoren logrando una sinergia real entre los procesos, la gente y la productividad. Es entonces cuando vemos que la mejora continua se vive y no slo est escrita. No hay cosa mas linda que una mejora continua viva. Cuando esto se ha logrado, el consultor est mas seguro de que sus recomendaciones caern en tierra frtil y el progreso se notar a pasos agigantados. 4. La visin a largo plazo. Es de vital importancia lograr el compromiso a largo plazo, no buscar slo la obtencin de un cierto nivel de madurez, el reconocimiento pblico, o bien los ahorros inmediatos, sino estar comprometidos con la calidad de los servicios y los productos que se ofrecen. Sin duda Active Intelligence, estuvo muy consciente de que al establecer un programa de mejora, estaba invirtiendo no para las recompensas inmediatas, sino para aqullas que vendran despus, mas all de la evaluacin, mantenindose inmersos en un proceso de mejora que les exigira cada vez ms de ellos mismos. 5. El trabajo en equipo. Este fue sin duda un factor clave para el xito del programa de mejora de Active Intelligence, donde todo el personal, de alguna u otra manera particip en la definicin, revisin, asesora y evaluacin de los procesos del programa de mejora. Cada uno sabe que su participacin es importante, y que es un proyecto importante que los involucra a todos y cada uno de ellos. Realmente hubo un equipo entre Avantare y Active Intelligence.

Algunas reflexiones que vale la pena compartir


Sin lugar a dudas el caso de Active Intelligence es un ejemplo a seguir por muchas

Siempre hay nuevos retos que cumplir, siempre hay niveles, marcas y records que lograr. Cuando se conjunta el liderazgo, el equipo, la motivacin y los fondos adecuados, los resultados suelen ser increbles.

Elizabeth Almeraz es pionera en Mxico en la realizacin de actividades de Aseguramiento de Calidad del Software (SQA), participando en el primer grupo de SQA que ayud a lograr una evaluacin CMM en Mxico. Actualmente es consultor de Avantare y especialista en las reas de tcnicas de vericacin de productos de software y mejora de procesos para la industria de TI.

32

JUL-AGO 2005

www.softwareguru.com.mx

PUBLICIDAD

PRCTICAS
ADMINISTRACIN DE PROYECTOS

MTRICAS
DE TAMAO DE SW BASADAS EN FUNCIONALIDAD
Parte 2: Anlisis de Puntos Funcin
Por Sergio Durn

n el nmero anterior hablamos sobre la importancia de contar con una mtrica funcional estndar para determinar el tamao de un sistema de software. Los Puntos Funcin o Function Points (FPs) son una excelente herramienta para este propsito.

La Mtrica de Puntos Funcin


Esta mtrica se define como una mtrica funcional, dado que se enfoca a la funcionalidad que un producto de software proporciona a sus usuarios. Es una mtrica para establecer el tamao y complejidad de los sistemas informticos basada en la cantidad de funcionalidad requerida y entregada a los usuarios. Partamos de esta definicin para entender las caractersticas de la mtrica: Tamao. Es una mtrica de tamao, no de la calidad con la que se hizo ese SW, o del valor de ese producto, o del esfuerzo requerido para desarrollarlo, etc. Aplicaciones. Mide las aplicaciones de SW, no considera el HW que utilizar, ni la administracin del proyecto, ni la documentacin, etc. Funcionalidad. Se refiere a la capacidad del SW para que un usuario pueda realizar transacciones (lectura, escritura, etc.) y guardar datos. Si analizamos a detalle, con estos elementos podemos describir cualquier sistema. Usuario. Quien lo va a usar y no quien lo desarroll o quien lo dise. As como existe el metro lineal para medir longitudes, Puntos Funcin es el metro para medir tamao de una aplicacin de software.

tria, es fundamental en los planes de mejora. Es por eso que a travs de la International Organization for Standardization (ISO) se ha desarrollado un estndar internacional: ISO/IEC 14143 Information Technology Software Measurement Functional Size Measurement. Este estndar define los conceptos de una mtrica de tamao basada en la funcionalidad y las caractersticas que debe cumplir un mtodo para estar homologado al estndar y ser considerado una medida del tamao de la funcionalidad. Existen varios mtodos de conteo para establecer la cantidad de Puntos Funcin que tiene una aplicacin. En general, todos establecen un conteo basado en la identificacin del tipo de funciones que tiene la aplicacin, y a cada una le asocia un nmero de puntos tomando en cuenta su complejidad. Las variantes surgen al buscar conteos ms precisos en Puntos Funcin conforme al tipo de aplicacin. Por ejemplo, un sistema en tiempo real tiene una complejidad muy distinta a un sistema tradicional de negocio o a un sistema operativo o a una aplicacin cientfica que realiza muchos clculos pero el resultado puede ser un solo dato. Estos son algunos de los mtodos homologados con el ISO 14143: ISO/IEC 20926:2003 - Software engineering - IFPUG 4.1 Unadjusted functional size measurement method. Este mtodo ha sido definido por el International Function Point Users Group (IFPUG) y evolucionado a partir de la propuesta original de Allan Albrecht en IBM, por lo que es el ms conocido y ms

Estndar Internacional ISO


La medicin de la funcionalidad con la que cuenta un sistema informtico ha sido desde hace aos una preocupacin de la industria. No es suficiente contar con una mtrica, sino que sea estndar, para as poderla usar a nivel industria. Poder comparar la productividad (Puntos Funcin por Persona Mes) de una empresa con los datos de la indus-

Sergio Eduardo Durn Rubio se desempea como Director de Proyectos en certum. En 1996 se convirti en el primer especialista de Amrica Latina certificado por el International Function Point Users Group en Conteo de Puntos Funcin, y en miembro representante de Mxico ante la ISO/IEC JTC1/SC7. Sergio es Ingeniero en Sistemas Computacionales de la UDLA-P, Maestro en Tecnologas de Informacin y Administracin del ITAM y Mastre Spcialis en Rseaux Et Systmes D information pour Les Entreprises de la ENST de Bretagne France.

34

JUL-AGO 2005

www.softwareguru.com.mx

Puntos funcin est orientado a medir sistemas de informacin completos.


utilizado. Esto es muy importante porque se est convirtiendo en el estndar de facto en la industria. ISO/IEC 20968:2002 - Software engineering - Mk II Function Point Analysis. Este mtodo ha sido desarrollado por la United Kingdom Software Metrics Association, simplificando el mtodo y hacindolo compatible con ideas de anlisis y diseo estructurado. ISO/IEC 19761:2003 - Software engineering - COSMIC-FFP - A functional size measurement method. Este mtodo ha sido definido por el Common Software Measurement International Consortium, integrado por expertos de Australia, Canad, Finlandia, Alemania, Irlanda, Italia, Japn, Holanda y el Reino Unido. La idea principal es adecuarse mejor a la medicin de sistemas en tiempo real. Paso 1. Determinar el tipo de conteo. Este paso consiste en definir el tipo de conteo entre desarrollo, mantenimiento o de una aplicacin ya instalada. Esta es una forma de determinar el objetivo del conteo. Paso 2. Identificar los alcances de la medicin y los lmites de la aplicacin. El propsito de una medicin consiste en dar una respuesta a un problema de negocio. El alcance de la medicin define la funcionalidad que va a ser incluida en una medicin especfica y puede abarcar ms de una aplicacin.

El Mtodo de Anlisis de Puntos Funcin


La versin actual de ste metodo es la 4.1.1, cuyo manual de prcticas de conteo se puede encontrar tanto en ingls como en espaol. El mtodo de conteo se basa principalmente en la identificacin de los componentes del sistema informtico en trminos de transacciones y grupos de datos lgicos que son relevantes para el usuario en su negocio. A cada uno de estos componentes les asigna un nmero de puntos por funcin basndose en el tipo de componente y su complejidad; y la sumatoria de esto nos da los puntos de funcin sin ajustar. El ajuste es un paso final basndose en las caractersticas generales de todo el sistema informtico que se est contando. Veamos un poco ms a detalle el procedimiento, para entender mejor los conceptos mencionados y conocer su simplicidad.

Paso 3. Contar las funciones de datos. Este paso consiste en identificar y contar la capacidad de almacenamiento de los datos. Se distinguen dos tipos de funciones de datos: Archivo Lgico Interno.- Es un grupo de datos relacionados que el usuario identifica, cuyo propsito principal es almacenar datos mantenidos a travs de alguna transaccin que se est considerando en el conteo. Archivo de Interfaz Externo.- Es un grupo de datos relacionados y referenciados pero no mantenido por alguna transaccin dentro del conteo. A cada componente identificado se le asigna una complejidad (baja, media o alta) considerando principalmente el nmero de datos. Paso 4. Contar las funciones transaccionales. Este paso consiste en identificar y contar la capacidad de realizar operaciones. Se distinguen tres tipos de funciones transaccionales:

Procedimiento

www.softwareguru.com.mx

PRCTICAS
ADMINISTRACIN DE PROYECTOS

Entrada Externa. Es un proceso cuyo propsito principal es mantener uno o ms archivos lgicos internos. Salida Externa. Es un proceso cuyo propsito principal es presentar informacin al usuario mediante un proceso lgico diferente al de slo recuperar los datos. Consulta Externa. Es un proceso cuyo propsito principal es presentar informacin al usuario leda de uno o ms grupos de datos. A cada componente identificado se le asigna una complejidad (baja, media o alta) considerando el nmero de datos utilizado en el proceso y los archivos referenciados. Paso 5. Determinar los puntos de funcin no ajustados. Este paso consiste en sumar el nmero de componentes de cada tipo conforme a la complejidad asignada, y multiplicarlo por el factor indicado en la siguiente tabla para obtener el total.

En nuestro caso, Puntos Funcin est enfocado a medir sistemas informticos completos, no programas. En este sentido no tiene un nivel de precisin suficiente para medir el tamao de programas individuales. El nivel de granularidad que puede medir la mtrica no es muy pequeo. Adicionalmente el trmino programa depende de la tecnologa, y eso va en contra del criterio de que esta mtrica es independiente de la tecnologa que se use. Otro punto que se le ha criticado a las mtricas funcionales es que requieren que alguien identifique la funcionalidad y evale la complejidad basndose en los criterios y reglas establecidas; no puedo hacer un programa que cuente automticamente. Debido a esto, distintas personas podran llegar a un conteo diferente. Para resolver esto, se han venido depurando las reglas de conteo para eliminar posibles ambigedades y cada vez hay ms material de apoyo con ejemplos. Aunado a lo anterior, hay esquemas de certificacin como el del IFPUG, donde hay una evaluacin formal de la teora y casos prcticos. Estos elementos buscan reducir las posibles variaciones en un conteo hecho por diferentes personas. Si tomamos en cuenta que la mtrica est pensada para contar proyectos o aplicaciones completas, entonces las pequeas variaciones en un conteo, no van a ser significativas para los indicadores o datos relacionados que obtengamos.

y Servicios del Sector Pblico en lo que se refiere a la existencia de normas nacionales o internacionales en las adquisiciones de software. En mi opinin, el uso de mtricas en los proyectos de SW va a empezar a cambiar en la medida que los compradores lo exijan. Es por eso muy importante que los compradores analicen que slo comprar por precio sin distinguir tamao de las aplicaciones para escoger a un proveedor que tenga experiencia con esa complejidad o indicadores como productividad o calidad, nos va a seguir llevando a las historias que hemos odo de grandes proyectos que no terminan a tiempo o que exceden por mucho el presupuesto o, en el peor de los casos, nunca llegan a operacin. Se requiere un modelo que permita identificar capacidades de los proveedores, para entonces poder comparar propuestas de proveedores de capacidad similar. Los proyectos nacionales en informtica requieren de empresas con capacidades reales y funcionarios/ejecutivos competentes y exigentes. Ya empieza a haber proyectos que, como parte de sus bases para invitar a proveedores, solicitan contar con mtricas y con registros histricos que fundamenten los estimados en esfuerzo y tiempo, para tener mejor certeza en que el proyecto que estn comprando va a llegar a buen trmino, a tiempo y en presupuesto. Prximamente empezaremos a ver los primeros resultados y alguno de estos casos de xito ser motivo de un siguiente artculo.

Bajo EI EO EQ ILF EIF 3 4 3 7 5

Medio 4 5 4 10 7

Alto 6 7 6 15 10

Paso 6. Determinar el valor del factor de ajuste. El factor de ajuste se obtiene sumando 0.65 a la sumatoria de los grados de influencia de las 14 caractersticas generales del sistema, multiplicado por 0.01. Dentro de las caractersticas hay criterios como: complejidad del proceso, facilidad de instalacin, entrada de datos en lnea, etc. Paso 7. Determinar los puntos funcin ajustados. Para determinar los puntos funcin ajustados se consideran los puntos funcin no ajustados por el factor de ajuste.

Comprar SW por Puntos Funcin


Las compras de SW son en muchos casos desarrollos a la medida. Pero cmo comprar si todava no se tiene el diseo? Una opcin que habilita una mtrica como Puntos Funcin es comprar por metro de SW a una empresa que tenga una productividad mnima establecida, conforme al tamao de las aplicaciones que requiero. Ya durante el proyecto puedo ir solicitando esos Puntos Funcin que compr, en las aplicaciones que requiero. Por ejemplo, en el caso de Gobierno, la ley de adquisiciones permite hacer compras basadas en estndares internacionales, que como vimos, ya existen en este terreno. Adicionalmente, en el Programa para el Desarrollo de la Industria del Software de la Secretara de Economa (ProSoft), hay un punto especfico que ayudar en este tema: Promover que se elaboren las normas necesarias para que se cumpla el Reglamento de la Ley de Adquisiciones, Arrendamientos

Cualquier Mtrica tiene un Alcance Definido


Cualquier mtrica tiene un mbito de accin y alcance definido que hay que entender para usarla correctamente. As, por ejemplo, el metro lineal no es lo mejor para medir grandes distancias en el mar.

Referencias IFPUG. Manual para la Medicin de Puntos Funcin. Versin 4.1.1. 1999 Alberto Balderas, Arnoldo Daz. Fbrica de software. Un modelo de negocio certificable basado en Estructura y Capacidades. Soluciones Avanzadas. No. 59

36

JUL-AGO 2005

www.softwareguru.com.mx

PRCTICAS
PROCESOS

BPM
APLICADO AL DESARROLLO DE SOFTWARE
Por Axel Nissim no de los errores ms comunes dentro del entendimiento de BPM por parte de los desarrolladores de SW, es la creencia de que BPM se limita a una estrategia tecnolgica. Es cierto que plataformas como J2EE nos proporcionan herramientas para implementar estrategias BPM, y tambin es cierto que existen varios BPMS Out of the Box que nos permiten modelar procesos de negocios, y llevar su seguimiento. Sin embargo, lo que es esencial entender es que BPM es una estrategia de negocios, no tecnolgica, y que se sirve de la tecnologa para alcanzar sus metas. BPM es el resultado de una tendencia mundial hacia la claridad y transparencia dentro de los procesos, aportando flexibilidad al mismo tiempo y acabando con los rdenes monolticos dentro de los flujos de trabajo, que hacen imposible a la empresa adaptarse rpidamente a las condiciones eternamente cambiantes del mercado. En una empresa que gira en torno a la tecnologa y al desarrollo de software, tambin existen procesos de negocio, flujos de trabajo que deberan estar definidos; materia difusa e intangible para la mayora, y que slo vive en la cabeza del arquitecto o del lder de proyecto. La mayora de las personas que representan los roles en el desarrollo de SW, a pesar de su alta necesidad de conectividad, interaccin y retroalimentacin, hacen esfuerzos heroicos para adivinar exactamente cul es el tipo de informacin

que se requerir para los siguientes pasos del flujo de desarrollo, y a la vez, ruegan todos los das para que los artefactos que lleguen a sus manos, provenientes de fases anteriores, contengan toda la informacin necesaria. Claro, existen metodologas estructuradas, como RUP, que nos dicen lo que entra y lo que sale de cada una de las etapas de nuestro proyecto, pero de ninguna manera estas son soluciones definitivas a los problemas de flujo de trabajo, puesto que al final el proyecto mismo es quien decide la estrategia que se ha de tomar. A veces los artefactos escogidos no son los adecuados, los requerimientos no se estabilizan, o la gente se da cuenta de que el sistema no es la piedra angular, y que deber adaptarse al negocio, sin importar si la metodologa dice tal o cual cosa. Tambin en el desarrollo de sistemas, los procesos de negocio deben de ser medibles, colaborativos, finitos (de manera indispensable), y eficientes. La implementacin de CMM tiene como resultado la eficientizacin de los procesos, identificando las reas clave, cuellos de botella, y a la vez atajando uno a uno los riesgos y minimizndolos. Es esto una solucin total? Si esto fuera cierto, pudiramos pensar que los proyectos de TI fracasados son una historia de terror del pasado. Sin embargo, la triste y a la vez prometedora realidad, es que an tenemos mucho trabajo

que hacer, y precisamente parte de este trabajo es el empleo de metodologas BPM dentro del desarrollo de software, y a la vez, el desarrollo de herramientas que nos permitan mapear, seguir de cerca y medir los procesos de desarrollo, as como comunicar y reutilizar el conocimiento generado dentro de stos. Las metodologas actuales de flujo de trabajo para el desarrollo de software se centran en la documentacin extensa y el modelado, siendo ste una extensin misma de la documentacin. El modelo es el sistema, la documentacin es el sistema y, por supuesto, el cdigo es el sistema, en una representacin que vara en su grado de granularidad de acuerdo a la fase en que nos encontremos. En qu consiste una solucin de BPM? La tecnologa detrs de los sistemas BPM es el software que automatiza y hace ms directos y eficientes los procesos. Tpicamente, la solucin incluye una herramienta grfica de diseo y navegacin de procesos, capacidades de simulacin, software de integracin y middleware, as como capacidades de monitoreo y reporteo de cada uno de los procesos. Los procesos del desarrollo de software comnmente se definen a partir de los diferentes milestones o hitos a los que va llegando el proyecto, los cuales a su vez se definen a partir de los artefactos programados para

Axel Nissim es Director de entrempresarios.com, un portal y startup de Internet con la meta de desarrollar herramientas colaborativas basadas en el Social Networking. Axel es Licenciado en Sistemas Computacionales Administrativos por la Universidad de las Amricas, y ha laborado como consultor en algoritmos para seguridad e inteligencia articial. Actualmente trabaja de manera estratgica en la denicin de metodologas y herramientas de workow en megaproyectos basadas en redes sociales, planeando sacar al mercado el producto resultante.

38

JUL-AGO 2005

www.softwareguru.com.mx

El modelo es el sistema, la documentacin es el sistema y, por supuesto, el cdigo es el sistema.


cada fase. La realidad es que en el desarrollo de software los procesos se entrelazan de maneras inesperadas, y muy al pesar de los metodlogos, an dependen del herosmo personal de los participantes del proyecto. La visin centrada en artefactos y asociada a roles del RUP, es muy til en el sentido de la estandarizacin de procesos, y como un checklist en base a los entregables que se deben de conseguir. Lo que el RUP no toma en cuenta es la interaccin humana y el alto grado de entropa en los proyectos, donde los artefactos se transforman, cambian hasta sus races y finalmente son usados para propsitos diferentes a los de su concepcin. Los encargados de la administracin de los proyectos se basan en un enfoque jerarquizado que les permite mantener cierto control de la informacin, basado en la restriccin de los roles y artefactos, sin tomar en cuenta las oportunidades y la eficiencia. La eficiencia de los procesos en el desarrollo de software queda incompleta an implementndola dentro del marco de las mejores prcticas de desarrollo y hasta de procesos de negocio. Lo que se necesita es una solucin ms completa, y que sea capaz de armonizar los conceptos de BPM con las metodologas formales de desarrollo como XP o RUP, todo esto dentro de un marco de colaboracin en capas, indistinto de organigramas y que permita aislar y atacar las oportunidades y sinergias no slo en cuanto a los roles dentro de los procesos, sino en cuanto a las competencias de cada individuo, sus habilidades, intereses y hasta sus metas particulares. BPM es un esfuerzo encaminado a la flexibilidad y el tiempo de respuesta ante condiciones cambiantes. Las condiciones cambiantes en un megaproyecto de desarrollo son una realidad que va ms all del simple cambio de requerimientos, y que tienen que ver ms con la falta de unificacin de criterios de negocio que nos permiten conocer las necesidades reales de los clientes externos (los compradores del sistema) y nuestros clientes internos (las personas trabajando en otros mdulos o fases del desarrollo del sistema).

PRCTICAS
PROCESOS

La comunicacin es, por mucho, el activo ms valioso dentro del desarrollo de software
Qu pasa si a la mitad del anlisis nos damos cuenta que uno de los artefactos simplemente no tiene relevancia de acuerdo al problema atacado? Quin se da cuenta de esto? Obviamente no es el arquitecto, ni el lder de proyecto, ambos encerrados en sus actividades de control. Qu uso se le da a la informacin que no gener utilidad inmediata o esperada? Los verdaderos poseedores de la informacin y los que perciben de manera instantnea sus incongruencias son los que trabajan directamente con ella: analistas, programadores, testers y dems, por tanto en ellos debe de recaer de manera colectiva el mantenimiento de una base de conocimientos comn que permita el intercambio sin fronteras de la informacin hacia adentro. El mantenimiento de los vnculos para la fluidez de esta informacin, es responsabilidad de los arquitectos, administradores de la configuracin, y en ltima instancia del lder de proyecto, que adems debe facilitar estos mismos vnculos a los stakeholders, usuarios y consultores de negocio de los proyectos, para cerrar el ciclo de comunicacin. La comunicacin es, por mucho, el activo ms valioso dentro del desarrollo de software, slo comparable en importancia con nuestros recursos humanos calificados. Es por esto que toda implementacin que planee hacer uso de las herramientas de BPM en el mbito del desarrollo de sistemas, depender primordialmente del nivel de soporte a las comunicaciones inteligentes y la transferencia del conocimiento entre diversos keyplayers en diferentes reas. Lo ideal, en el sentido de la comunicacin, seran herramientas que fueran independientes del organigrama en el sentido del intercambio positivo de la informacin no clasificada, y que adems fuese sensible a estas mismas estructuras organizacionales para poder intercambiar de manera segura la informacin confidencial que no es de inters para todos los miembros del equipo. La herramienta deber ser sensible socialmente a las relaciones mantenidas por parte de los diferentes miembros de los equipos, para poder aprovechar los canales de comunicacin mas eficientes, y que no deben de fallar a causa de las altas tasas de rotacin de personal, ni a las condiciones cambiantes de movilidad organizacional. Nuestras herramientas y conocimiento deben de estar a la mano de quien lo necesita, independientemente de si el dueo de la informacin dej de trabajar en la empresa, recibi un ascenso, cambi su rol o cambi de proyecto. El manejo del conocimiento debe ser contextual e hipervinculado, as como modificable por cada uno de los miembros que posea la informacin necesaria para hacer aportaciones positivas, an y cuando aparentemente su rea de responsabilidad no sea congruente. Siempre habr posibilidad de que el administrador de la configuracin reciba un reporte de incongruencias en la edicin de un documento, y simplemente aplique un Rollback a la ltima versin estable de la documentacin. La organizacin en clulas de trabajo cohesivas internamente y modulares hacia el exterior, nos permitir hacer un intercambio dinmico de recursos, independientemente de si el proceso actual o requerimiento dicta que primero llevemos a cabo el anlisis y luego simulaciones, o viceversa. Nuestras herramientas flexibles de BPM debern permitir el acoplamiento de nuestros flujos de trabajo a situaciones variadas en las que los procesos puedan tomar formas iterativas, en cascada, aleatorias y hasta caticas, pero siempre sin perder de vista el alto grado de comunicacin necesaria y el mantenimiento de los estndares documentales que nos permitirn obtener retornos sobre cada una de las fases de nuestros proyectos. La comunicacin deber de ser sensible a las personas y sus maneras naturales de agruparse en cuanto a intereses, habilidades, conocimientos y hasta amistades, y no solamente en cuanto a clulas de trabajo bien estructuradas, dado que sabemos que el trabajo en desarrollo de sistemas no permite que estas clulas sean persistentes en el tiempo, en cambio el conocimiento permanece ah, en esa rea gris representada por los vnculos sociales entre las personas. Nuestros recursos humanos podrn aprovechar conocimientos generados en diferentes clulas y hacerlo con el menor costo posible en trminos de comunicacin organizacional, y sin tener que pasar por muchos eslabones redundantes que nicamente fiscalizan el proceso sin aportar nuevos conocimientos o valor. Los elementos necesarios mnimos que debe de incluir una solucin BPM para el desarrollo de software son los siguientes, sin un orden particular de importancia: Definicin y administracin dinmica de procesos, independiente de metodologas formales (se deber poder implementar cualquier metodologa, segn se considere conveniente). Enfoque de produccin basado en documentacin estandarizada. Formacin de equipos de trabajo cohesivos internamente y modulares hacia fuera, con un enfoque particular en sus procesos propios, pero permitiendo la participacin en los procesos ajenos. Herramientas de modelado visual y definicin de procesos. Herramientas de reporteo y seguimiento de los procesos en tiempo real. Middleware que permita conectar las diferentes partes, sistemas, y equipos de trabajo, con un enfoque orientado a procesos dinmicos. Herramientas de comunicacin colaborativa sensibles a la competencia, habilidades y relaciones sociales de los recursos humanos del proyecto. Herramientas colaborativas inteligentes de administracin del conocimiento, que permitan el flujo de informacin seguro y a la vez transparente, independiente de organigramas, y que busquen la participacin indistinta de las personas que poseen el conocimiento.
www.softwareguru.com.mx

40

JUL-AGO 2005

INNOVACIONES EN SOFTWARE

COLUMNA

La Revolucin del BPM


Pasado, Presente y Futuro

a forma de hacer negocios cambia constantemente. Los Procesos que soportan la organizacin son altamente dinmicos. Gartner piensa que el futuro de la construccin de software ser, en parte, la composicin de piezas en modeladores visuales, alterando instantneamente el comportamiento de la organizacin una labor realizada por los mismos dueos de los negocios.

humano es slo una forma de pensar en procesos. En la vida real los sistemas de flujo de trabajo limitan fuertemente los procesos de negocio que se desean modelar. Aquellos que han implantado estos sistemas conocen bien estas limitaciones.

de cualquier tipo y que no se basa en comunicaciones sino en transformaciones a s mismo. El BPMS se compone de herramientas de modelado, maquinaria de ejecucin, herramientas de agilidad para alterar procesos, herramientas para monitorear y administrar los procesos, y herramientas de anlisis que permitan medir la eficiencia de los procesos (ah la relacin con Six Sigma y procesos de mejora continua). Intalio fue el primer proveedor en implementar este modelo.

Presente
Recientemente ha aparecido una nueva categora de software, los Business Process Management Systems (BPMS), como el WFMS o Relational Database Management Systems (RDBMS). Los BPMS son la bsqueda de una maquinaria universal de procesos. Hoy por ejemplo, los WFMS no pueden sustituir el correo electrnico. Extrao porque el correo electrnico se puede considerar un proceso muy comn hoy en da: es un proceso simple de recibir y enviar con el que adquirimos la capacidad de comunicarnos con otros mediante una direccin electrnica. Es irnico que los WFMS no puedan modelar este escenario tan simple. Otro factor no considerado en los WFMS es la movilidad, como lo demostr el ganador del premio ACM Turing, Robin Milner, quin desarroll una teora formal de procesos mviles llamada Clculo Pi. El trmino movilidad se refiere a la forma en que los procesos transcurren mientras se ejecutan, mediante el intercambio de informacin entre participantes cuyas relaciones y vnculos evolucionan como resultado, determinando qu se conoce, quines se conocen y qu se ha encontrado. Una explicacin detallada de estos conceptos est fuera del alcance de esta columna, pero se puede resumir como un proceso para crear procesos

Pasado
En un principio se pens que los procesos de negocio podran ser soportados por Flujos de Trabajo, ya que era posible enviar documentos, formas en rutas establecidas de manera automtica usando reglas del negocio. Aunque muchos Workflow Management Systems (WFMS) lograron rebasar la vista centrada en documentos, el problema principal fue que codifican un metamodelo de procesos que limita la capacidad de resolver los problemas del mundo real. Hoy las aplicaciones de negocio como SAP R/3 incluyen componentes WFMS convirtiendo a los ERPS en plataformas de construccin de software. Pero aunque estas tecnologas existen, no se han utilizado ampliamente. Si todo se puede desarrollar de esta forma, por qu no dejar de usar .NET y Java? Claramente los distintos WFMS trabajan en formas diferentes, aun cuando la Workflow Management Coallition (WfMC.org) ha tratado de unificar las normas. Este hecho ha limitado fuertemente la penetracin al mercado de tecnologas de automatizacin de procesos, porque los directores de sistemas se tienen que comprometer con un proveedor. Pero hay razones adicionales de porqu los WFMS no pueden ser un modelo para ejecutar todos los procesos de software. El flujo de trabajo

Futuro
Es claro que, dada la capacidad de comunicacin que Internet ofrece, hoy es posible implementar procesos que salgan de la organizacin uniendo a proveedores, empresas pequeas y usuarios finales. El Business Process Outsourcing (BPO) consiste en delegar la propiedad, administracin y operacin de un proceso a un tercero: Quien monta una nueva empresa puede preferir enviar al exterior un proceso de recursos humanos en lugar de hacerlo ellos mismos. Ese proceso debe ser de excelencia pero no se desea realizar el esfuerzo en lograrlo. En el futuro las experiencias permitirn integrar procesos entre industrias distintas. Por ejemplo, la contratacin de un empleado en una organizacin puede provocar que al concretar la operacin en el sistema de administracin de recursos humanos se disparen procesos como compra del automvil, apertura de cuenta, contratacin del seguro, registros en el gobierno y otros procesos que hoy se realizan en forma manual, sean verdaderamente automatizados. - Luis Daniel Soto

Luis Daniel Soto Maldonado es Director de Evangelizacin en Nuevas Tecnologas en Microsoft Mxico. Entre sus funciones actuales estn la administracin de la relacin con el Gobierno Mexicano para el desarrollo de la industria de software (ProSoft). Luis Daniel es jurado del Gran Orden de Honor al Mrito Autoral en software del INDAUTOR/SEP y fundador de diversas asociaciones de Tecnologas de Informacin (TI) relacionadas a inteligencia competitiva, administracin del conocimiento y construccin de software. Luis Daniel Soto es Ingeniero en Sistemas de la Fundacin Arturo Rosenblueth y gan el primer lugar en el concurso nacional para software de exportacin en 1989. blogs.msdn. com/luisdans

www.softwareguru.com.mx

JUL-AGO 2005

41

PRCTICAS
UML

CASOS DE USO
Y EL VALOR DEL SISTEMA
Por Sergio Orozco A quin no le ha pasado que compra algo slo para terminar con ese producto en un rincn sin jams ser utilizado? Nos pudo haber pasado porque no alcanz nuestras expectativas, o porque result demasiado complicado de utilizar, o porque en realidad no era una verdadera necesidad sino simplemente un capricho. Sea cual fuera la razn, la realidad es que hicimos un gasto intil e innecesario. Con el software, y en particular con el desarrollo de software a la medida, ocurre con bastante frecuencia algo similar. No es raro encontrarse con empresas que contratan un desarrollo de software slo para darse cuenta de que desperdiciaron su dinero y su tiempo, pues no obtuvieron lo que ellos esperaban o necesitaban. En otras palabras, no obtuvieron el valor que esperaban recibir para su negocio con el software adquirido.

Consultora o Manufactura?
Si queremos realizar una verdadera consultora de software, entonces nos corresponde algo ms que escuchar la lista de funciones que el cliente cree que debera de tener su sistema (a menos que nuestro cliente tenga un rea con la capacidad de realizar una buena recopilacin y anlisis de requerimientos). Si nos limitramos a lo primero, entonces en lugar de llamarle consultora a nuestro trabajo, deberamos llamarle manufactura de software, donde uno implementa las funciones exactamente como se las solicita el cliente, cuestionando nada o muy poco, tal como se hara en una planta manufacturera donde se reciben las especificaciones del producto a construir.

pedido, Consultar comisiones, Administrar prospectos, Generar factura y Administrar clientes. Todas ellas son ejemplos de situaciones u objetivos importante que podra necesitar un vendedor para llevar a cabo su trabajo, conocidas y modeladas como casos de uso en UML, tal como se muestra en el diagrama.

El Sistema y su Misin
Si queremos desarrollar el mejor sistema posible, debemos realizar un trabajo serio para identificar, en primer lugar, cul es el valor que el sistema debe proporcionar al negocio, para lo cual habr que preguntrselo a las personas que obtendrn alguna clase de beneficio cuando se ponga en operacin. Una buena parte de estas personas probablemente vayan a ser usuarios del sistema; en UML los conocemos como Actores (ms adelante veremos otros tipos de Actores que tambin tendremos que identificar).

La Administracin de Requerimientos
Una de las razones principales por las cuales se da esta situacin, y de hecho, una de las causas principales por las cuales los proyectos de desarrollo fracasan o por lo menos no tienen el xito que deberan, se debe a una mala administracin de requerimientos. Esto generalmente se da por falta ya sea de habilidades en el personal responsable o de tcnicas apropiadas utilizadas para llevar a cabo esta labor. La administracin de requerimientos, de acuerdo a CMM, abarca actividades como la recopilacin, documentacin, validacin y control de los requerimientos y sus cambios. UML, como estndar integrador de las buenas prcticas de desarrollo nos ofrece en este sentido los casos de uso como una tcnica excelente para administrar los requerimientos de nuestros proyectos.

Buscando los Beneficios del Sistema


Una vez identificados los usuarios del sistema (actores primarios) habr que preguntarles en qu situaciones valdr la pena para ellos utilizarlo. La lista identificada de dichas situaciones no debera de tener pequeas funciones, sino flujos completos que le proporcionen suficiente valor tanto a ellos como al negocio, de manera que valga la pena usar el sistema en dichas situaciones. Ejemplo: un vendedor en cierto sistema de ventas querr Registrar venta, Registrar

Diagrama de casos de uso para el sistema de venta.

Los Requerimientos Funcionales


Normalmente los casos de uso son iniciados por algn actor, conocido como actor primario. Lo inicia con algn evento, que podra ser tan simple como elegir una opcin en el sistema, y contina como una serie de eventos o interacciones entre actores y sistema, hasta que el objetivo del caso de uso se cumple (el objetivo principal del caso de uso es lo que le da el nombre al mismo). Por lo tanto los casos de uso describen la funcionalidad del sistema para alcanzar objetivos

Sergio Orozco es director general e instructor senior en Milestone Consulting, empresa especializada en capacitacin prctica y consultora en UML, CMM y orientacin a objetos. info@milestone.com.mx.

42

JUL-AGO 2005

www.softwareguru.com.mx

importantes. Lo que estamos obteniendo as es una especificacin de requerimientos funcionales mediante un anlisis top-down (de lo general a lo particular), es decir, primero obtenemos los objetivos que hay que cumplir en el sistema descritos con el nombre del caso de uso (p. ej: Realizar una venta) y despus buscamos cules son las funciones o requerimientos funcionales precisos y ordenados para que el actor cumpla dicho objetivo al utilizar sistema. Esto nos lleva a identificar requerimientos realmente relevantes para alcanzar la misin del sistema. Pasos para recopilar los requerimientos funcionales adecuados del sistema mediante casos de uso: 1. Especificar la misin del sistema. 2. Identificar quines utilizarn el sistema (actores primarios). 3. Averiguar cules objetivos desean cumplir los actores al usar el sistema (casos de uso). 4. Identificar los pasos o eventos de cada caso de uso (especificacin del caso de uso).

Las Interfaces del Sistema


Hay otro tipo de actores que tambin hay que modelar; los actores secundarios. Suelen ser otros sistemas, componentes externos o dispositivos con los cuales interacta nuestro sistema. A diferencia de los actores primarios, stos no son los que inician o requieren del caso de uso, sino que nuestro sistema, al llevar a cabo un caso de uso requiere tener algn tipo de interaccin con l. En el diagrama de casos de uso tambin suele ser apropiado mostrar a este tipo de actores, en cuyo caso aparecern asociados a los casos de uso durante los cuales tienen que intervenir con algn tipo de interaccin con el sistema a modelar. Ejemplo de Actor Secundario Nuestro sistema de ventas podra requerir enviarle informacin al sistema de contabilidad cuando se ejecuta la funcionalidad del caso de uso Generar factura. En dicha situacin el sis-

tema de contabilidad aparecer como un actor secundario asociado a dicho caso de uso. De esta forma estamos mostrando las interfases requeridas con otros sistemas en cada momento. Por experiencia sabemos que, en los modelos de UML, el buen uso de pocos elementos da mejores resultados que el uso de muchos elementos mal aplicados. La esencia de los modelos radica en la simplicidad, ya que facilita el anlisis, entendimiento y comunicacin entre quienes solicitan el sistema y los que participan en su desarrollo. En otras oportunidades veremos elementos adicionales para modelar los casos de uso, pero podemos asegurar que la sencillez es parte importante del modelado, y esto implica que en ocasiones, y sobre todo cuando el analista no tiene tanta experiencia en UML, es mejor limitarnos a los elementos ms bsicos.

PRUEBA DE SOFTWARE

COLUMNA

Fundamentos de la Prueba de Software


Conceptos, Justicacin y Alcance

n el nmero anterior hablamos sobre el contexto de la prueba de software. En esta ocasin, nos concentraremos en definir algunas definiciones relacionadas con la prueba de software, as como su justificacin y alcance. Las descripciones de algunos conceptos que expondr en el presente, si bien son generalizables, estarn enunciados desde la perspectiva de la tcnica denominada prueba de caja negra, consistente en ejecutar el sistema a probar revisando los requerimientos, con la consigna de detectar insatisfaccin de los mismos. La razn es que facilita la exposicin sin introducir complejidad innecesaria.

4. Reproducir el contexto del SUT 5. Hacer a) Disear casos de prueba b) Aplicar casos de prueba c) Reportar mtricas y dar seguimiento d) Reportar anlisis de resultados Mientras no (criterio de terminacin) 6. Hacer el cierre del proyecto El SUT (System Under Testing) se refiere en general al elemento a probar. Por otro lado, las herramientas que utiliza el tester para llevar a cabo las actividades anteriores son cobijados bajo el acrnimo CAST (Computer Aided Software Testing). En cuanto a los casos de prueba, es deseable que presenten las siguientes caractersticas: Ortogonalidad. No tener casos que incluyan segmentos de otros Efectividad. Que detecten fallas. Ejemplaridad. Que con poco se pruebe mucho. Claridad. Que evidencien fallas de manera clara. Con calidad nos referimos a [2]: El grado en que el producto satisface los requerimientos funcionales y no-funcionales explcitamente establecidos. El nivel al que se siguieron los estndares de desarrollo explcitos y documentados. Que el producto muestre las caractersticas implcitas que se espera de todo software desarrollado profesionalmente. Una equivocacin es una accin incorrecta cometida por un humano (v.gr. no presionar [shift]), que ocasiona que se genere una falta (sin el [shift], queda < en vez de > en el cdigo fuente); al ser ejecutada, la falta se evidencia en forma de lo que llamamos una falla. El error es la magnitud de la diferencia entre el resultado esperado y el obtenido [3].

Luis Vinicio Len Carrillo es profesor-investigador del Departamento de Electrnica, Sistemas e Informtica del ITESO, y director general de e-Quallity S.A. de C.V., empresa especializada en prueba de software. Luis Vinicio es doctorando por la Universidad Tcnica de Clausthal, Alemania; su trabajo predoctoral gir alrededor a la aplicacin de los lenguajes formales en la Ingeniera de Software. Es coautor de un marco tecnolgico que hoy permite a e-Quallity desarrollar empresas de prueba de software. Su tesis doctoral est enfocada en la aplicacin de mtodos y lenguajes formales para hacer ms eciente y efectiva la prueba de software. Luis Vinicio es co-fundador del Captulo Guadalajara de la AMCIS y su Secretario actual.

Definiciones
Complementando nuestro primer acercamiento a una definicin, que tuvimos en el nmero anterior, podemos argir que la prueba de software: Es un proceso en el que se revisa el sistema a probar (el SUT) bajo condiciones definidas explcitamente, y se le aplica (eventualmente con apoyo de software especializado de tipo CAST) un conjunto de estmulos (los casos de prueba) diseados de manera sistemtica utilizando tcnicas apropiadas, con el objetivo de detectar niveles inadecuados de calidad. Este proceso debe llevarse a cabo disciplinadamente, y respaldarse en mtricas bien definidas. Todas estas actividades y sus resultados son documentados, en especial las fallas detectadas [1]. Precisemos cada uno de los conceptos de esta definicin. Intuitivamente, un proceso puede verse como una secuencia de actividades, cada una de las cuales genera productos, tiene insumos asociados, e involucra gente (roles) y otros recursos (v.gr. hardware y software). Un primer bosquejo del proceso de prueba de caja negra sera el siguiente, que refinaremos en nmeros subsiguientes: 1. Establecer alcances, entregables y criterios de xito 2. Estimar el esfuerzo de prueba 3. Planear el proyecto

Justificacin
Los principales objetivos que se buscan con la prueba de software suelen ser: Conocer el nivel de calidad de productos intermedios, para actuar a tiempo (v.gr. rehacer un componente); esto
www.softwareguru.com.mx

44

JUL-AGO 2005

facilita una administracin realista del time to market del producto en cuestin. No pagar por un producto de software sino hasta que alcance el nivel de calidad pactado; esto eleva el nivel de certidumbre en el comprador de software, y minimiza riesgos. Disminuir la penosa y costosa labor de soporte a usuarios insatisfechos, consecuencia de liberar un producto inmaduro. Esto puede mejorar la imagen de la organizacin desarrolladora (y la credibilidad en ella). Reducir costos de mantenimiento (la fase ms costosa del desarrollo de software), mediante el diagnstico oportuno de los componentes del sistema (v.gr. seguimiento a estndares, legibilidad del cdigo, integracin adecuada de los componentes, rendimiento apropiado, nivel y calidad del reuso, calidad de la documentacin, etc.). Obtener informacin concreta acerca de fallas, que pueda usarse como apoyo en la mejora de procesos, y en la de los desarrolladores (v.gr. capacitacin en reas de oportunidad). Entre ms pronto se apliquen mecanismos de prueba en el proceso de desarrollo, ms fcilmente podr evitarse que el proyecto se salga del tiempo y presupuesto planeado, pues se podrn detectar ms problemas originados en las fases tempranas del proceso, que son los que mayor impacto tienen.

mencionbamos anteriormente, la prueba s es automatizable en muchos aspectos. Desde el punto de vista prctico, la cantidad de posibilidades para probar exhaustivamente un sistema es sencillamente inmanejable; es necesario entonces utilizar tcnicas adecuadas para maximizar la cantidad de fallas importantes encontradas con los recursos asignados. Cada mtodo que se utilice para detectar defectos deja un residuo de defectos ms sutiles contra los cuales ese mtodo es ineficaz (la llamada Paradoja del Pesticida). La prueba de software implica pues, la aplicacin de tcnicas y herramientas apropiadas en el marco de un proceso bien definido, determinado por el tipo de proyectos de desarrollo de software que se abordan. En el siguiente nmero veremos con mayor detalle las principales tcnicas de prueba de software. - Luis Vinicio Len

Alcance
La prueba de software tiene limitantes, tanto tericos como prcticos. Desde el punto de vista terico, la prueba es un problema que llamamos no-decidible; esto implica, grosso modo, que no podemos escribir un programa que pruebe los programas sin intervencin humana. Sin embargo, como
www.softwareguru.com.mx

Referencias 1. www.e-quallity.net pestaa Definiciones - Conceptos 2. Pressman, R.: Ingeniera de Software. Un Enfoque prctico. McGraw-Hill; 1993 3. Kit, E.: Software Testing in the Real World. ACM Press, 1995

CTEDRA Y MS

COLUMNA

BPM
El Impacto en el Desarrollo de Software Aplicativo

os negocios o empresas hoy en da estn preocupados por lograr la eficiencia organizacional al estandarizar los procesos de negocios en forma consistente en toda la compaa. La Administracin de Procesos de Negocios (BPM) se enfoca en las prcticas inconsistentes de negocios. Cada quin realiza las actividades de forma diferente, con resultados poco homogneos.

El Dr. Ralf Eder Lange es Profesor ConsultorExtensionista del Departamento de Sistemas de Informacin en el Tec de Monterrey, Campus Estado de Mxico, donde ha sido Director de los Programas de Graduados en Ciencias Computacionales y Sistemas de Informacin, y Director del Centro de Investigacin en Informtica. Sus reas de especialidad incluyen Reingeniera de Procesos y Administracin de la Innovacin Tecnolgica. Ralf es miembro fundador de la Asociacin Latinoamericana y del Caribe de Sistemas de Informacin (LACAIS).

Muchas empresas proveedoras de software se encuentran evaluando el replanteo de sus productos, usando, por ejemplo, soluciones CRM, cuando este acrnimo apareci en la escena. Lo mismo ha ocurrido con BPM, sin embargo, los productos que ofrecen los proveedores varan dramticamente en capacidad y funcionalidad. BPM brinda la posibilidad de definir los procesos de negocio a nivel estratgico, para posteriormente automatizar dichos procesos en una aplicacin computacional y finalmente proveer a los gerentes del negocio con la posibilidad de monitorear y analizar la operacin de dichos procesos. Esto permite resolver problemas en el momento en que ocurren. Resulta muy importante que una plataforma de BPM permita especificar procesos que abarquen mltiples compaas, usando varios sistemas aplicativos en forma rpida, para luego implantarla en seguida. De lo contrario, dicha plataforma ofrece muy poco valor, al referirse a la automatizacin de procesos. Los negocios estn inmersos cotidianamente en cambios constantes, tanto por actividades internas como externas, por lo que una plataforma de administracin de procesos de negocios debe ser capaz de responder a estos cambios. La administracin de procesos de negocio es llevada a cabo con diferentes herramientas utilizadas para capturar, modelar, disear, integrar, probar,

implantar, medir y mantener diversos procesos de negocio en una empresa. Los procesos de negocio centrales definen el negocio y proporcionan la posibilidad de satisfacer y retener a los clientes, de maximizar las alianzas con otras empresas y de obtener resultados extraordinarios con respecto a la competencia. Al administrar los procesos de negocio se evitan prcticas inconsistentes de peticiones de cambio en aplicaciones computacionales, se asignan roles que ayudan a los clientes a definir los permisos de uso y acceso a la informacin, junto con las aprobaciones a los cambios en cada proyecto. BPM permite definir colectivamente los procesos de negocios, implantarlos en forma de aplicaciones computacionales, de tal forma que los administradores puedan monitorear, analizar, controlar o mejorar la ejecucin de dichos procesos en tiempo real. Para implantar BPM se requiere entender en forma detallada la interaccin de los diversos procesos de negocio existentes, as como poseer el conocimiento acerca de cmo fueron desarrolladas las aplicaciones computacionales correspondientes. Esto resulta ser un gran reto para todas las empresas, ya que al especificar la solucin y disear el proyecto de BPM debe haber representantes de los procesos de negocios y de las aplicaciones computacionales, y esta interaccin contina an despus de la implantacin, ya que debe proveerse mantenimiento a dichas aplicaciones. Por ejemplo, aquellas personas que realizan diagramas de flujo con herramientas como Visio o PowerPoint, tambin deben ser capaces de modelar procesos de negocio usando un BPMS. Luego se debe de poder comentar el proceso de negocio y pasarlo a los tcnicos para su implantacin. La habilidad de definir procesos con sus reglas de negocio, integrar aplicaciones computacionales e implantarlas, es necesaria para

mejorar la productividad del negocio, pero por s sola no es suficiente. Por esto la importancia de la habilidad de monitorear la ejecucin de procesos en tiempo real, conociendo su impacto de ejecucin y controlarlos en virtud de los cambios en las condiciones de negocio. A las personas con habilidades de negocio se les dificulta la comprensin de los detalles o la perspectiva de la tecnologas de la informacin potencial de uso y funcionalidad, y a los tcnicos se les dificulta el apreciar los requerimientos legales, econmicos, organizacionales, tal como se plasman en los procesos de negocio. Bajo estos puntos de vista divergentes, resulta difcil lograr la optimizacin del diseo propuesto, as como la implantacin y la solucin de problemas. El punto crucial, desde mi punto de vista como administrador de un proyecto de BPM, es la asignacin de personal para que haya representatividad en el equipo formado con tal fin, que garantice el desarrollo de una aplicacin computacional que efectivamente apoye objetivos de negocio, que estn sustentados en procesos de negocios autnticos, y que ayuden en el monitoreo. Dicho personal debe demostrar tener experiencia de campo, con usuarios por un lado y con las aplicaciones computacionales por otro. -Dr. Ralf Eder L.

Referencias Learn Data Modeling www.learndatamodeling.com/b_ manage.htm Serena Software - BPM www.serena.com/business_process_management.html Savvion - BPM www.savvion.com/business_process_management.php

46

JUL-AGO 2005

www.softwareguru.com.mx

FUNDAMENTOS

PMBOK Guide
Por Ramn Hernndez

Gua de los Fundamentos de la Direccin de Proyectos

Como su nombre lo indca, el PMBOK (Project Management Body of Knowledge) Guide es un documento que rene el conocimiento relacionado con la Direccin de Proyectos. La versin en espaol lleva el ttulo Gua de los Fundamentos de la Direccin de Proyectos (Gua del PMBOK), y se encuentra actualmente en su tercera edicin, liberada a finales del 2004.

La primera versin del PMBOK se public como un artculo especial en el ao de 1983 en una revista especializada del PMI (Project Management Institute). Algunos aos despus, en 1986, se public como un libro que contena la estructura general que conocemos hasta el da de hoy (nueve reas del conocimiento y cinco grupos de procesos). En el ao 2000 se public una actualizacin, as como la primera traduccin oficial al espaol. Finalmente en el 2004 se public la tercera edicin de este libro. Prueba de la difusin de este documento como un estndar mundial, fue el hecho de que se public de manera simultnea en once idiomas: ingls, rabe, chino simplificado, francs, alemn, italiano, japons, coreano, portugus, ruso y espaol. La finalidad principal de la Gua del PMBOK es identificar el subconjunto de Fundamentos de la Direccin de Proyectos generalmente reconocido como buenas prcticas. PMBOK pg. 3

Ejecucin.- En este grupo de procesos se integra a personas y otros recursos para llevar a cabo el plan de proyecto, as como realizar los cambios aprobados para el proyecto. Seguimiento y Control.- Mide y supervisa regularmente el avance, a fin de identificar desviaciones respecto al plan de proyecto, de tal forma que se tomen medidas correctivas o preventivas cuando sea necesario para cumplir con los objetivos del proyecto. Aqu se lleva el control de los cambios al proyecto que asegura que los mismos son benficos para el proyecto, el control de calidad del proyecto y la recopilacin y distribucin acerca del rendimiento del proyecto. Cierre.- Formaliza la aceptacin del producto, servicio o resultado, y termina de manera ordenada el proyecto o una fase del mismo, o cierra un proyecto cancelado. Los cinco grupos de procesos agrupan a 44 procesos de direccin de proyectos que estn clasificados por rea de Conocimiento.

Iniciacin

Grupos de Procesos
Los Grupos de Procesos son guas para aplicar los conocimientos y habilidades relativas a la Direccin de Proyectos. Los Grupos de Procesos tienen dependencias claras y se realizan siguiendo la misma secuencia para cada proyecto, son independientes de la industria o aplicacin. El PMBOK define cinco grupos de procesos: Iniciacin.- Aqu se define y autoriza el proyecto o una fase del mismo. La repeticin de estos procesos permite que el proyecto sea detenido si deja de existir la necesidad de negocio o si se considera que el proyecto no puede satisfacer esa necesidad. Planificacin.- Define y refina los objetivos, y planifica el curso de accin requerido para lograr los objetivos y el alcance pretendido del proyecto. Aqu se define el alcance y costo del proyecto o fase del mismo.

reas de Conocimiento
Para poder estudiar todos los procesos de la Direccin de Proyectos, se agruparon en reas de Conocimiento, ya que en la vida real, estas reas de Conocimiento se pueden sobreponer una sobre la otra o interactuar entre s de maneras muy diversas. Las reas de Conocimiento definidas en el PMBOK son: Gestin de la Integracin del Proyecto.- Incluye los procesos y actividades necesarios para identificar, definir, combinar, unificar y coordinar los distintos procesos y actividades de direccin de proyectos dentro de los Grupos de Procesos de Direccin de Proyectos. La necesidad de integracin se hace evidente en situaciones donde procesos individuales interactan. Gestin del Alcance del Proyecto.- Incluye los procesos necesarios para asegurarse que el proyecto incluya todo el trabajo requeri-

Planificacin

Control

Ejecucin

Cierre
Grupos de Procesos

Ramn Hernndez es Gerente de proyecto con ms de diez aos de experiencia en Tecnologa de Informacin concentrado en proyectos para el sistema nanciero. Ramn es PMP certicado desde 1999 y colabora en el captulo del PMI en la Ciudad de Mxico.

48

JUL-AGO 2005

www.softwareguru.com.mx

do, y slo el trabajo requerido, para terminar un proyecto de manera satisfactoria, bsicamente es controlar lo que est incluido en el proyecto y lo que quedar fuera del mismo. Aqu se desarrolla la especificacin del trabajo, o Statement of Work (SOW). Gestin del Tiempo del Proyecto.- Tiene todos los procesos necesarios para lograr terminar el proyecto en tiempo, como son la definicin y secuencia de las actividades, as como los recursos necesarios para cada actividad y la duracin de las mismas. El producto principal es el Cronograma del proyecto. Gestin de los Costos del Proyecto.- Aqu se tienen todos los procesos que permiten que el proyecto termine dentro del presupuesto aprobado. Se menciona que no slo se debe poner nfasis en los costos del proyecto, sino en la repercusin que stos pueden tener en el cliente, por ejemplo, disminuir el nmero de revisiones de aseguramiento de calidad al proyecto puede reducir el costo del proyecto, pero puede incrementar los costos que tendr que pagar el cliente por tener un producto que no cumpla sus necesidades de acuerdo a lo pactado en el proyecto. Gestin de la Calidad del Proyecto.- Esta rea de conocimiento incluye todas las actividades que determinan las polticas, objetivos y responsabilidades relacionadas con la calidad del proyecto que satisfaga las necesidades por las cuales se origin. Gestin de los Recursos Humanos del Proyecto.- Incluye todos los procesos que coordinan los trabajos de un equipo de proyecto en el cual se han definido roles y responsabilidades. Gestin de las Comunicaciones del Proyecto.- Es el rea de conocimiento que incluye los procesos necesarios para asegurar que la informacin del proyecto sea entregada en tiempo y forma a todos los involucrados en el proyecto, algunos sealan que es en esta rea donde el Gerente de Proyecto debe destinar la mayor parte de su tiempo. Se debe definir para cada involucrado en el proyecto el tipo y la frecuencia con que debe recibir informacin del proyecto, se debe informar a todos los niveles, hacia arriba, hacia abajo y hacia los lados.
www.softwareguru.com.mx

Gestin de los Riesgos del Proyecto.- Aqu se realiza la planificacin de la gestin de riegos, la identificacin y anlisis de riegos, las respuestas a los riegos, y el seguimiento y control de los riesgos de un proyecto, se pretende con esto aumentar la probabilidad e impacto de los eventos positivos, y disminuir la probabilidad e impacto de los eventos contrarios al xito del proyecto. Los riesgos son eventos o condiciones inciertos que, en caso de ocurrir, tienen un efecto positivo o negativo sobre alguno de los objetivos del proyecto, ya sean tiempo, costo, alcance o calidad. Gestin de las Adquisiciones del Proyectos.- En esta ltima rea de Conocimiento se incluyen todos los procesos de comprar o adquirir productos o servicios externos al equipo de proyecto necesarios para realizar el trabajo. Se incluye la administracin de cualquier contrato, que es un documento legal entre un comprador y un proveedor, asumiendo que el comprador forma parte del equipo del proyecto y el proveedor no.

Conclusin
De una manera breve se muestra cmo est estructurado el PMBOK; para aquellos relacionados con la Ingeniera de Software puede ser un complemento interesante y un libro de consulta por excelencia que permita desarrollar proyectos de software cumpliendo con las necesidades de los clientes. Si mezclamos el SWEBOK (ver seccin Fundamentos de SG Ao 01 No.01) con el PMBOK, tendremos dos excelentes documentos que nos permitirn establecer el marco de referencia para desarrollar software de calidad.

Referencias Gua de los Fundamentos de la Direccin de Proyectos. Project Management Institute. 3era Edicin, 2004. Fundamentos: Ingeniera de Software. Revista SG Ao 01 No.01
JUL-AGO 2005

49

TECNOLOGA

WiMAX
Por Ariel Garca

El siguiente paso en redes inalmbricas


WiMAX, del ingls Worldwide Interoperability for Microwave Access, es un estndar para transmisin inalmbrica de datos en redes de rea metropolitana (MAN). Es una certificacin para productos que cumplen con las pruebas de interoperabilidad de los estndares de IEEE 802.16, que tienen su rea de especialidad en conexiones inalmbricas punto multipunto.
Qu esperar de una red WiMAX
WiMAX es una nueva alternativa para la construccin de redes inalmbricas, pero con mayores beneficios. Algunas ventajas son el manejo de velocidades de hasta 70Mbps y coberturas de hasta 50km. Esto no significa que WiMAX venga a sustituir la tecnologa Wi-Fi, al contrario, est diseada para complementar e interoperar con esta solucin, al igual que con otras como Ethernet, Token Ring, FDDI, Cable MODEM, etc. En su primera etapa de implantacin, WiMAX slo estar disponible para los carriers, (compaas que ofrecen servicios de telecomunicaciones como telefnicas e ISPs) y grandes corporativos, para que puedan mejorar el servicio que ofrecen a sus clientes. La cobertura de la tecnologa WiMAX se medir en kilmetros cuadrados (Wi-Fi lo hace en metros cuadrados). Esto implica que en el rea de cobertura de una estacin base de WiMAX, se podran habilitar soluciones de acceso a Internet de alta velocidad para hogares y oficinas en un radio de hasta 50km. Estas estaciones base eventualmente podran cubrir toda una zona metropolitana, habilitando un acceso inalmbrico ininterrumpido en toda una ciudad. El estndar de WiMAX trabaja en el espectro entre 2 y 11GHz y supera las limitaciones de Wi-Fi al proveer anchos de banda de mayor velocidad y una encripcin ms robusta. Otra caracterstica importante de WiMAX es su capacidad de proveer acceso al medio sin necesidad de lnea de vista directa a la estacin base. Obviamente esto disminuye el
Bandas (Mhz) Actuales y Autorizaciones Vigentes* Nuevas Aplicaciones (Diseadas para convivir con atribuciones previas) 802.11b/11Mbps, 802.11g/54Mbps, 802.20/1 Mbps/movilidad, Bluetooth, Home RF ps/movilidad, 802.16/70 Mbps/movilidad. 802.11/54Mbps, 802.11i, 802.16/70 Mbps/ movilidad, 802.20/1 Mbps/movilidad.

2400-2483.5

ICM (aplicaciones industriales, cientficas y mdicas), telfonos inalmbricos, enlaces p-p y p-mp (espectro disperso), telemetra, sistemas multiacceso telefona rural, tx de datos, hornos y enlaces de microondas. Enlaces p-p y p-mp (espectro disperso y modulacin digital), MOVIL

5150-5350

5470-5725

Radio Navegacin martima, Radiolocalizacin movil, radioaficionados.

802.16/70 Mbps/movilidad, 802.20/1 Mbps/movilidad 802.11/54Mbps 802.16/70 Mbps/Movilidad, 802.20/1 Mbps/movilidad.

5725-5850

ICM (aplicaciones industriales, cientficas y mdicas), Deteccin, identificadores, telemetra, telecomando y enlaces p-p y p-mp (espectro disperso)

* Incluye permisos, concesiones, autorizaciones y registros.

alcance, pero an as WiMAX hace un muy buen trabajo en este tipo de situaciones.

Las ventajas de WiMAX


La tecnologa podra proveer accesos compartidos de hasta 70Mbit/s. Esta capacidad es suficiente para soportar ms de 60 enlaces tipo T1, o varios cientos de hogares con accesos DSL de 1Mbit/s. WiMAX tiene un manejo optimizado y de mayor eficiencia del

ancho de banda, en base a sus algoritmos de control de acceso al medio. Estos algoritmos permiten a la estacin base controlar la calidad de servicio al balancear la asignacin de ancho de banda en base a las necesidades de cada subscriptor de la estacin; por ejemplo, si algn suscriptor est realizando una descarga de archivos que tiene una velocidad promedio de 80Kb/s y tiene contratado un enlace de 256Kb/s, la estacin base slo

50

JUL-AGO 2005

www.softwareguru.com.mx

asignar los 80Kb/s que est demandando y pueda aprovechar el resto del ancho para otros suscriptores que lo necesiten.

Dnde adquirir una solucin WiMAX


Actualmente en ciudades como Los Angeles, Nueva York, y Seattle en EUA; y Dalian, Chengdu en China, ya hay implementaciones de redes que funcionan con esta tecnologa, pero no estn certificadas por el WiMAX Forum (ver recuadro), es por esto que se les conoce como pre-WiMAX. Actualmente el WiMAX Forum tiene su programa de certificacin en curso, y se espera que las primeras soluciones WiMax certificadas aparezcan a principios del 2006. Una vez liberada la certificacin podremos obtener productos que nos permitan construir soluciones que puedan trabajar con cualquier equipo WiMAX certified sin importar la marca o el fabricante del chipset. Se espera que para finales del 2007 aparezcan los primeros dispositivos WiMAX para usuarios finales, con los que una persona se podr conectar a Internet por WiMAX a velocidades de 4Mbps. Posteriormente, a finales del 2008, apareceran las primeras laptops WiMAX-ready.

vicios, las administraciones consideren diferentes e innovadoras formas de utilizar el espectro radioelctrico en vez de asignarlo a un nico dueo, lo que limita la cobertura y desarrollo de infraestructura, dando paso a un cambio de paradigma, en que el espectro puede ser compartido y donde bajo un marco mnimo de criterios operativos, se puede dar oportunidad a la sociedad e industria de acceder al beneficio que ofrecen estas tecnologas. Hoy en da estas bandas de frecuencias presentan una problemtica en Mxico, ya que su utilizacin libre para acceder Internet esta sujeta a autorizacin. En tal contexto, es necesario que el Estado mexicano en conjunto con la industria, determinen la mejor manera de aprovechar las modernas tecnologas en uso en las bandas de 2.4 y 5 GHz, a fin de promover el acceso de la mayor parte de la poblacin. La SCT tiene hoy ante s la decisin de masificar el acceso a Internet y sus servicios, las tecnologas ya estn disponibles y las economas de escala permiten tener dispositivos de muy bajo costo, desaprovechar o demorar esta magnifica oportunidad, significara perder la oportunidad que brindan las TIC para aportar al crecimiento y desarrollo sustentable del pas.

etc. Al contrario, nos ayuda a complementar cada una de estas soluciones. Ejemplos: Para aquellas compaas que cuentan con enlaces de fibra ptica y buscaba soluciones para un enlace de respaldo a bajo costo, WiMAX es una buena opcin. Aquellos proveedores que se encuentran dando servicios de acceso Internet inalmbrico pueden expandir sus reas de cobertura o iniciar nuevas implementaciones en otras ciudades con esta tecnologa. Tomemos el caso de la Sierra Tarahumara. No existen soluciones de conectividad por cableado de ningn tipo. Mediante un enlace satelital podramos colocar una antena donde se provee la conectividad a la Internet. En ese punto colocamos nuestra estacin base WiMAX de donde tendremos un radio de cobertura de hasta 50 kilmetros para habilitar servicios de telefona IP. Podemos colocar hotspots Wi-Fi para poder brindar servicios de Internet o educacin a distancia, etc. WiMAX iniciar su crecimiento dentro de los grandes corporativos y empresas de comunicaciones consolidadas. Una vez que este mercado sea cubierto, los costos habrn bajado y seremos nosotros, los usuarios finales, quienes comenzaremos a poder tener accesos directo a esta tecnologa con sus respectivos beneficios. *Agradecemos a Pedro Cerecer de Intel por la informacin provista para la generacin de este artculo.

Existen otras tecnologas tipo WiMax?


El competidor equivalente de WiMAX en Europa es HIPERMAN. Actualmente el WiMAX Forum est trabajando en mtodos para que WiMax y HIPERMAN pueden interoperar de forma transparente. La industria de telecomunicaciones de Corea tambin ha desarrollado su propio estndar: WiBro. El ao pasado Intel y LG acordaron una interoperabilidad entre WiBro y WiMAX.

Conclusiones
La tecnologa WiMAX es una nueva solucin para implementacin de redes de acceso inalmbrico dentro de un rea metropolitana. Esto no viene a competir con soluciones existentes como fibra ptica, satlite, Wi-Fi,

Qu es el WiMAX Forum?
El WiMAX Forum es un consorcio de empresas (inicialmente 67 y actualmente ms de 100), dedicadas a disear los parmetros y estndares de esta tecnologa, y a estudiar, analizar y probar los desarrollos implementados. En principio se podra pensar que esta tecnologa supone una grave amenaza para el negocio de tecnologas inalmbricas de acceso de corto alcance en que se basan muchas empresas, pero hay compaas muy importantes detrs del proyecto. Las principales firmas de telefona mvil tambin estn desarrollando terminales capaces de conectarse a estas nuevas redes. Mayor informacin sobre el WiMAX Forum en www.wimaxforum.org

Regulacin del Espectro


Los usos de tecnologas como WiMax o WiFi permiten compartir el espectro, haciendo un uso ms eficiente. Es fundamental que para promover estos ser-

www.softwareguru.com.mx

JUL-AGO 2005

51

TECNOLOGA

Sony

Vaio Notebook Serie F


Con un diseo ms delgado y ligero, la recientemente presentada Serie F de Vaio combina rendimiento y comodidad. En tan slo 2.5cm de ancho, y 2.8kg, la Serie F integra procesador Pentium M a 1.60GHz, 512MB (escalables a 1GB) de memoria RAM, disco duro de hasta 60GB, pantalla de 15.4 pulgadas visibles, unidad DVD+RW/-RW/CD-RW y Windows XP Home. Lo mejor del software propietario de multimedia de Sony, Vaio Zone, es la capacidad de manipular el contenido de varias computadoras enlazadas en una red local, lo que convierte a la Serie F en un centro de control de entretenimiento ideal. Con un precio bastante accesible y todas las caractersticas enlistadas, la Serie F es una excelente opcin en computadoras porttiles de alta capacidad y tamao reducido.

GeForce 7800

nVIDIA

PalmOne

Tungsten E2
Orientada a los nuevos usuarios, la E2 incorpora toda la utilidad de una PDA con la ms reciente versin de PalmOS, el Garnet v5.4, de interfaz sencilla y familiar. Todas las aplicaciones de organizacin (contactos, calendario, administrador de citas y correo electrnico), y el fabuloso Documents To Go, con el que se pueden leer y modificar documentos de Excel, PowerPoint y Word, garantizan la productividad en cualquier lugar. La pantalla a color de 320x320 pixeles de resolucin, ranuras de expansin para tarjetas MultimediaCard, SD y SDIO, el software palmOne media, y RealPlayer, hacen de esta Tungsten la compaera perfecta para un viajero, convirtindose en un centro multimedia, reproductor de MP3, fotografas y video. Puertos Bluetooth, infrarrojo y USB permiten sincronizar la informacin e intercambiar contactos con otros dispositivos sin complicaciones. Los accesorios disponibles incluyen un teclado y el GPS Navigator, actualizable para contar con la ltima informacin en mapas para trazado de rutas.
www.softwareguru.com.mx

La nueva tarjeta aceleradora de video de nVIDIA presenta la arquitectura de siguiente generacin, con una unidad de vrtices de sombreado independiente que recorta dramticamente el tiempo de rendereado de geometra compleja. El motor grfico CineFX 4.0 procesa el doble de operaciones de punto flotante que las tarjetas de la generacin anterior, obteniendo las mejores texturas y efectos de iluminacin en tiempo real, concretando el motor cinematogrfico prometido desde hace ms de cuatro aos. 256MB de memoria y un procesador central de 128 bits, brindan la gama ms amplia de profundidad de color en 32 bits, as como un radio de actualizacin de 85Hz en monitores de hasta 2048x1536 pixeles de resolucin. La tecnologa Digital Vibrance Control 3.0 permite al usuario manipular fcilmente la calibracin de color de sus monitores, para ofrecer igualacin precisa en el rea de trabajo, ya sea en medios digitales o impresos. La GeForce 7800 es para edicin de video, rendereo de imgenes en 3D y juegos, por supuesto, permitiendo correr ttulos como Doom 3 en todo su potencial.

52

JUL-AGO 2005

BIBLIOTECA

01

As the Future Catches You: How Genomics & Other Forces Are Changing Your Life, Work, Health & Wealth Juan Enrquez Cabot Crown Business, 2001

Alvin Tofer escribi en 1970 un inquietante libro titulado El shock del futuro, en el cual relata un futuro por llegar, y que cuando lleg a muchos nos tom desprevenidos. En el ao 2000, Juan Enrquez Cabot public el libro As the future catches you (tambin disponible en espaol con el nombre Mientras el futuro te alcanza). Tofer y Cabot hablan de la tecnologa que se fraguaba en su momento y sobre los impactos que tendra en nuestra sociedad. Cabot establece y explica premisas como las siguientes: Roger Bacon predijo hace 4 siglos: El conocimiento es poder. Las fronteras se derrumban a gran velocidad, porque pocos entienden el impacto de la tecnologa y el conocimiento. Cuando Mxico contaba con bibliotecas e imprentas, en EU los inmigrantes talaban rboles para construir sus cabaas. Sin embargo, EU apost por la educacin de su pueblo y por la tecnologa. En 1960, Hecho en Japn, era sinnimo de mala calidad, y en el 2005 es todo lo contrario. Adivinen qu hizo Japn. En enero de 2000, Microsoft estaba valuada en 592 mil millones de dlares. Diez veces lo que Brasil exportaba en 1998, o cinco veces lo que Mxico exportaba. Pero, ojo!, Brasil tena 171 millones de habitantes, Mxico 100 y Microsoft empleaba a slo 32,000 personas! Cabot pone todos estos ejemplos para llegar al tema central del libro: la nueva revolucin impulsada por la nanotecnologa. Esta ya no estar dominada por los 0s y 1s (digital), sino por lo que pueda escribirse con las letras ATCG (Adenina, Tiamina, Citosina y Guanina). El futuro nos depara un mercado en el cual podrs adquirir una manzana para controlar la diabetes, una pera contra la gripe, mosquitos que te inyectarn vitaminas, y as sucesivamente. Sorprendente?, bueno si realmente te quieres sorprender, no dejes de leer este impactante libro, escrito con un formato que ha sido aclamado a nivel mundial. Resea proporcionada por Armando Snchez Rodrguez (a_sanrod@yahoo.com).

In Search BPM 02the ThoughtofLeaders Excellence: Straight from


Business Process Management Group (BPMG) Meghan Kiffer Press, 2005 Existen muchos libros de BPM. Sin embargo, la mayora solamente habla sobre lo grandioso que es BPM y los beneficios que traer a las empresas, pero muy pocos realmente hablan acerca de cmo hacerlo una realidad y mucho menos sobre lecciones aprendidas. Es por ello que en este nmero les recomendamos In Search of BPM Excellence, ya que es uno de los pocos libros de BPM que no slo hablan del qu, sino tambin del cmo. Este libro fue creado por el Business Process Management Group (BPMG) y rene el pensamiento de algunos de los personajes ms importantes de este movimiento. Es un compendio de artculos que tratan

temas como el pasado, presente y futuro de BPM, frameworks de implantacin (8 Omega Framework), y criterios para seleccionar un BPMS. Tambin hay artculos muy interesantes que abordan temas de negocio tales como estrategia, ventaja competitiva y cambio organizacional, desde la perspectiva de BPM. Dado su reciente publicacin (mayo de 2005), es muy probable que todava no hayan escuchado mucho sobre este libro. Sin embargo, confiamos en que pronto se convierta en una de las lecturas obligadas sobre el tema.

Recomienda un libro para esta seccin, escribe a: biblioteca@softwareguru.com.mx

54

JUL-AGO 2005

www.softwareguru.com.mx

INDEX

DIRECTORIO

Anunciante
Alpha Consultora AMCIS Avantare certum e-Quallity Gopac Grupo STI Horbis IBM Itera MGE Microsoft Milestone Oracle Roca Sistemas SafeNet Ssistemas Software AG Top SW Show XpoLinux

Pginas
49 55 45 35 43 29 13 39 F4 53 37 F2-1 11 07 47 17 15 33 09 F3

Sitio
www.alpha-hardin.com www.amcis.org.mx www.avantare.com www.certum.com www.e-quallity.net www.gopac.com.mx www.gsti.com.mx www.horbis.com www.ibm.com/mx www.itera.com.mx www.mgeups.com www.microsoft.com/mexico www.milestone.com.mx www.oracle.com/global/mx www.rocasistemas.com.mx www.la.safenet-inc.com www.ssistemas.com www.softwareag.com www.mayen-project.com.mx www.expolinux.com
JUL-AGO 2005

TENEMOS UN ESPACIO RESERVADO PARA TI


Si deseas anunciarte contctanos en el (55) 5239 5502 o en ventas@softwareguru.com.mx

www.softwareguru.com.mx

55

CARRERA

El Arquitecto de Software
Habilidades Necesarias
Por Sergio Orozco y Carlos Macas l trmino arquitectura de software y el rol de arquitecto de software parecen estar cada da ms de moda en nuestra industria. Slo basta asomarnos a la trama de pelculas de ciencia ficcin como The Matrix: Revolutions donde el arquitecto aparece como un Dios Todopoderoso, responsable de la creacin de ese mundo virtual. De igual manera, existe una caricatura donde se hace la analoga entre un programador representando a un padawan (aprendiz de Jedi en la saga Star Wars) y un arquitecto de software representando a un maestro Jedi. El aprendiz no poda creer la cantidad de habilidades y conocimiento que requera para convertirse en un Jedi (o arquitecto segn esta analoga), por lo que comenzaba a dudar si sera mejor irse por el lado oscuro de la fuerza.

Qu es la Arquitectura de Software? La arquitectura es el conjunto de decisiones relevantes acerca de la organizacin de un sistema de software, la seleccin de los elementos estructurales y las interfases que lo componen, junto con el comportamiento segn se especifica en la colaboracin entre sus elementos, la composicin de dichos elementos estructurales y de comportamiento en subsistemas cada vez mayores, as como el estilo arquitectnico que dirige su organizacin. La Gua de Usuario de UML, Booch-Jacobson-Rumbaugh, 1999.

Si el analista de sistemas es el responsable de identificar y especificar las necesidades y requerimientos del usuario, entonces el arquitecto es el responsable de tomar las decisiones ms relevantes en cuanto a la forma ms ptima en que se explotar la tecnologa para implementar dichos requerimientos. Qu es lo que se necesita para dominar los principios que pueden transformar a un desarrollador comn en un arquitecto de software? Influencia en los Proyectos.- Es conveniente que domine la mayor cantidad de tecnologas de software para ser capaz de ofrecer las mejores recomendaciones tecnolgicas en beneficio del proyecto. Sus decisiones tienen un impacto al corto, mediano y largo plazo. Caractersticas importantes que definen la calidad de la aplicacin, como son el desempeo, reuso, robustez, portabilidad, flexibilidad, escalabilidad y mantenibilidad dependen en gran medida de las decisiones que tome. Incluso generan un impacto directo sobre la economa del proyecto, pues debera de ser capaz de sacarle el mximo provecho a la tecnologa

existente, en especial cuando sta representa una restriccin del proyecto, como ocurre cuando el cliente no se puede dar el lujo de invertir en nuevo equipo o tecnologa adicional al que ya tiene. Dominio.- Sus decisiones sobre la estructura y dinmica de la aplicacin son plasmadas en notacin formal. Para hacer esto los arquitectos modernos requieren dominar UML, sobre todo si piensan usar nuevas tecnologas y en especial aquellas orientadas a objetos. A pesar de esto, no creeran la cantidad de alumnos que han llegado a nuestros cursos a aprender UML, creyendo ser arquitectos de software, cuando les falta algo tan bsico como el dominio de dicha nomenclatura. Claro que no hay que culparlos, ya que existe un desconocimiento generalizado acerca del perfil de dicho rol. El conocimiento y experiencia del arquitecto moderno pueden resumirse en los siguientes puntos: 1. UML y el uso de por lo menos una herramienta de modelado. 2. Anlisis, Diseo y Programacin Orientada a Objetos.

3. Ventajas, desventajas y particularidades entre los principales lenguajes y tecnologas disponibles: Java, C#, .Net, J2EE, etc. 4. Bases de datos. 5. Desarrollo basado en componentes. 6. Patrones de diseo. 7. Patrones de arquitectura. 8. Estilos de arquitectura. 9. Frameworks. 10. Nuevas tecnologas y plataformas, incluyendo open source. 11. Conocimientos del hardware y sus capacidades. 12. Procesos de desarrollo de software modernos, como el Proceso Unificado. Es importante notar que los arquitectos no construyen sus planos desde cero, sino que aprovechan el conocimiento y experiencia de otros, plasmado en patrones y frameworks. Habilidades.- Adems de este conocimiento, requiere contar con habilidades como las siguientes: Capacidad de abstraccin, creatividad, liderazgo, comunicacin oral y escrita; negociacin, disciplina y ser autodidacta. Si usted cumple con todos estos requisitos, probablemente ya es, o est muy cerca de convertirse en un arquitecto de software. Despus de ver todo lo que se requiere, podemos entender porqu el programador se puede ver tentado a seguir el lado oscuro de la fuerza en lugar de seguir esta carrera.

Sergio Orozco es director general, consultor e instructor senior de Milestone Consulting, certicado en UML por la OMG. Carlos Macas es arquitecto en jefe, consultor e instructor senior de la misma empresa. Milestone Consulting es la primer empresa mexicana miembro de la OMG, especializada en servicios relacionados con UML: capacitacin, consultora y distribucin de herramientas de modelado con dicho estndar. info@milestone.com.mx / www.milestone.com.mx

56

JUL-AGO 2005

www.softwareguru.com.mx

Ao 01 No. 04

www.softwareguru.com.mx

SOFTWARE GURU CONOCIMIENTO EN PRCTICA

Julio-Agosto 2005

También podría gustarte