You are on page 1of 60

• Manejo de

concurrencia en Java
• Service Level
Agreements
• Diagramas de
Interacción

Software Guru CONOCIMIENTO EN PRÁCTICA


Año 02 No.01 • Enero-Febrero 2006 • www.softwareguru.com.mx ESPECIAL
Factura Electrónica

[ ENTREVISTAS ]
Desde SEPG LA 2005
Paul Nielsen
Richard Turner
Suz García

Todas las Caras de la


INFORMACIÓN
Tendencias en Business Intelligence

Noticias • Eventos • Fundamentos • Columnas • Tecnología • Carrera [ TENDENCIAS ]


AJAX
DIRECTORIO

Edición Ejecutiva
A>
Pedro Galván
EDITORIAL Coordinación Editorial
Mara Ruvalcaba

Edición y Producción
Edgardo Domínguez

Dirección de Arte
Oscar Sámano

Ilustración de Portada
Conforme escribimos estas líneas, nos encontramos muy cerca del fin de año. Es Tozani
en esta época que acostumbramos escuchar el típico “se me fue el año”, que lleva
Consejo Editorial
implícito un silencioso “y no hice nada de lo que quería, lo único que conseguí fue
Francisco Camargo, Guillermo Rodríguez,
hacerme más viejo”. Ralf Eder y Raúl Trejo, ITESM CEM;
Hanna Oktaba, UNAM-AMCIS;
En el caso de la industria de software local, no podemos decir que el 2005 “se nos Luis Cuellar, Softtek.;
haya ido”. Nosotros, que percibimos de primera mano la dinámica y resultados de la Luis Vinicio León, e-Quallity - ITESO
industria, consideramos que fue un año bastante bueno. Estos son algunos de los
puntos que matizan nuestra opinión: Colaboradores
• La gran convocatoria y dinámica que percibimos durante el evento ProSoft 2005. Ariel García, Jorge Palacios, Paulina Olivares,
Pero no solo es el interés, sino también los resultados que se están logrando. Por Gustavo Muñoz, Gerardo Rubio, Miguel Cruz,
primera vez (al menos en el caso de los miembros de SG), hemos conocido gente Carlos García, Manuel Ruelas, Axel Nissim,
que nos da gusto que esté en el gobierno. Felicitaciones y gracias al personal de la Amaury Quintero, Luis Daniel Soto,
Secretaría de Economía involucrado en este esfuerzo. Sergio Orozco, Carlos Macías, Carlos Sánchez .
• El programa TechBA va viento en popa. En 2005 se agregaron nuevas empresas
Ventas
y se abrió una nueva incubadora en San Antonio, además de la que ya había en
Claudia Perea
Silicon Valley. Cada vez oímos sobre más y más nuevas empresas mexicanas que
tienen éxito en el extranjero con una oferta diferenciada y de alta tecnología. Nos Marketing
vienen a la mente los casos de JackBe, Medida, e Ingressio, entre otros. Natalia Sánchez
• El aumento en madurez de procesos de las empresas en la industria. Ya no sólo
estamos hablando de los monstruos como IBM o EDS, que obtienen acreditacio- Distribución
nes en normas internacionales, sino también de PyMEs como QuarkSoft, Innevo, Daniel Velázquez
SSite, Active Intelligence entre otros.
• El reconocimiento nacional e internacional que está teniendo MoProSoft. Contacto
• La dinámica y fortaleza de los clusters en algunos estados. En este número publi- info@softwareguru.com.mx
camos un artículo sobre Jalisco, y es impresionante lo que se está haciendo. Espe- +52 55 5239 5502
ramos en próximos números poder publicar información sobre otros clusters.

Estas y otras cosas nos hacen pensar que el 2005 fue un buen año para la industria,
pero sobre todo que el 2006 también lo será. Sin embargo, las cosas no se van a dar SG Software Guru es una publicación bimestral editada
por sí solas. Debemos trabajar TODOS en conjunto para lograrlas. por Brainworx S.A. de C.V., Malinche no. 6, Col. El
Parque, C.P. 53398, Naucalpan, México. Prohibida la
reproducción total o parcial del contenido sin previo
En el caso de SG, 2005 fue nuestro primer año y estamos muy contentos con el aviso por escrito de los editores. Todos los artículos
avance logrado. Agradecemos a todos ustedes, que son quienes la hacen posible, y son responsabilidad de sus propios autores y no
esperamos vernos por aquí durante muchos años más. necesariamente reflejan el punto de vista de la
editorial. Reserva de Derechos al Uso Exclusivo: 04-
2004-090212091400-102. Certificado de licitud de tí-
Equipo Editorial tulo: 12999. Certificado de licitud de contenido:10572.
ISSN: 1870-0888. Registro Postal: PP15-5106. Se
imprimió en enero de 2006 en PrePrensa Digital (PPD).
Distribuido por Sepomex.

02 ENE-FEB 2006 www.softwareguru.com.mx


contenido ene-feb 2006
año 2 No. 1

EN PORTADA
Business Intelligence 22
Los diferentes estilos, dimensiones y tendencias en la inteligencia de nego-
cios habilitada por tecnología de información. Factura Electrónica 16
Base Tecnológica de las Empresas

Productos Prácticas
LO QUE VIENE 12 PROGRAMACIÓN 34
Enterprise Architect, Sentinel Manejo de concurrencia en Java 5
Hardware Keys, Java Enterprise 5 Amaury Quintero comparte con
nosotros los secretos sobre las nuevas
TENDENCIAS 14 capacidades para el manejo
Ajax de concurrencia en Java 5

ADMÓN DE PROVEEDORES 40
SLAs Orientados a Requerimientos,
Parte 1
Los Service Level Agreements, o SLAs,
Columnas son herramientas muy útiles en la
administración de proveedores. Axel
Tejiendo Nuestra Red 08 Nissim nos explica en qué consisten
por Hanna Oktaba así como las mejores prácticas para su Desde SEPG LA 18
definición. Paul Nielsen, Richard Turner,
Mejora Continua 10 Suz García
por Luis Cuellar UML 44
Diagramas de Interacción
Cátedra y Más 32 Los diagramas de interacción son la En Cada Número
por Raúl Trejo herramienta clave para ayudarnos a
pasar del análisis hacia el diseño de Noticias y Eventos 04
Tendencias en Software 43 software. Sergio Orozco nos enseña Clusters 06
por Luis Daniel Soto como utilizarlos de manera adecuada. Fundamentos 48
Tecnología 50
Prueba de Software 46 Gadgets 52
por Luis Vinicio León Carrera 54

www.softwareguru.com.mx ENE-FEB 2006 03


NOTICIAS

Noticias
Encuentro ProSoft 2005
El pasado 23 de noviembre se llevó
a cabo el Encuentro Nacional ProSoft
2005: Por una Industria de TI de Clase
Mundial, organizado por la Secretaría de
Economía. Durante el evento se reunie-
ron más de mil profesionistas de soft-
ware, provenientes de toda la República,
y representando a los diferentes secto-
res de la industria, academia y gobierno.
La serie de conferencias contó con la
participación de reconocidos ponentes
y presentó una combinación interesan-
te de diversos temas, como: talleres
técnicos, calidad de software, marke-
ting, casos de éxito y marcos legales. El
Encuentro ProSoft logró ser uno de los
eventos más representativos, y punto de
reunión de la industria y gobierno.

Para mayor información, visita:


www.software.net.mx

Software Site Innevo: Primer PyME


se acredita en SW-CMM de Occidente en Obtener
Nivel 3 CMMI Nivel 2
Tras una visión de mantenerse siempre vigente y en crecimiento, Como un claro caso de éxito en la estrategia por posicionar
el pasado mes de diciembre la empresa Software Site se evaluó a Jalisco como líder en el mercado mundial del software,
en el modelo de madurez de procesos SW-CMM nivel 3. El pro- el pasado mes de noviembre, Innevo obtuvo la evaluación
yecto de mejora inició en mayo del 2003, contando con la aseso- de calidad internacional CMMI nivel 2. El proceso implicó
ría y evaluación de la empresa Avantare, y logrando un esfuerzo una inversión aproximada de 1 millón de pesos, para lo cual
total de 7,500 horas hombre. Del monto total de la inversión, se contó con el apoyo del COECYTJAL y del fondo ProSoft.
recibió un apoyo de 35% por parte de ProSoft y del Gobierno del
Estado de Sonora a través del programa Impulsor, y el resto fue Innevo es una empresa jalisciense enfocada en desarrollo
financiado con recursos propios. de aplicaciones a la medida y consultoría en calidad de soft-
ware, donde actualmente apoya a 54 empresas de todo el
Después de haber logrado esta acreditación, Software Site país a implementar los modelos CMMI y MoProSoft. Además,
se ha percatado de que los beneficios reales radican en Innevo es socio de dos empresas integradoras: Aportia en
que la organización realmente está trabajando en alcanzar Jalisco y Qataria en D.F.
las metas de negocio planteadas, realizar los proyectos de
acuerdo a lo estimado, reducir los costos y mejorar la com- Para Innevo esta acreditación es la evidencia de su compro-
petitividad. Esta acreditación le permite mostrar a los clien- miso con la calidad y el primer milestone en su camino hacia
tes su evolución y mejora. CMMI 5, afirmó Leonardo N‘haux, Director General. Entre los
futuros planes está abrir una oficina en San Diego, Califor-
Software Site está trabajando en la implantación del modelo nia, y crear más de 150 empleos en los próximos dos años.
CMMI nivel 3, y se espera evaluar durante el 2006.
Para leer la nota completa, visita:
Para leer la nota completa, visita: www.softwareguru.com.mx www.softwareguru.com.mx

04 ENE-FEB 2006 www.softwareguru.com.mx


Quarksoft: Eventos
Primer Empresa
100% Mexicana en 26 Enero 2006
Inauguración Microsoft Project Association
Capítulo México

Obtener CMMI Nivel 3 Microsoft, Cd. de México


Tel: (55) 5523 8488
e-mail: isabel.garcia@advisicon.com
Quarksoft es la primer empresa 100% mexicana en obtener la
evaluación oficial en CMMI nivel 3 “staged representation”.
La observación fue conducida por el primer candidato mexi- 14 Febrero 2006
cano a Lead Appraisar, Miguel A. Serrano, y por uno de los Tendencias 2006 - Select
observadores más experimentados a nivel mundial, Charles Centro Banamex, Cd. de México
Ryan. Los motivos principales que los llevaron a realizar esta www.select.com.mx
evaluación fueron mejorar la rentabilidad de la empresa y la Tel: (55) 5256-1426
calidad de los productos, abrir nuevos mercados, y mejorar e-mail: delmy.parra@select.com.mx
la calidad de vida de los ingenieros de software.

Quarksoft es una de las primeras empresas que logra esta 14 al 17 Febrero 2006
evaluación en un tiempo récord de once meses, gracias al Expo Comm México 2006
uso del PSPsm (Personal Software Process) y el TSPsm (Team Linux World México 2006
Software Process), prácticas en las que la empresa es líder VON México 2006
en el mercado mexicano. A partir de este logro, Quarksoft Centro Banamex, Cd. de México
planea elevar a un nivel de clase mundial la fábrica de soft- www.expocomm.com.mx
ware localizada en Zacatecas, incrementar sus proyectos en www.linuxworldexpo.com.mx
el Silicon Valley, y en un futuro evaluarse en CMMI 5. Tel: (55) 1087-1650 ext. 1160
e-mail: marcela@ejkrause.com
Para mayor información, visita: www.quarksoft.net

La conferencia se concentró en las


lecciones obtenidas en el campo de
la mejora de procesos de software en
América Latina, teniendo como objeti-
vo principal crear una mayor concien-
cia de las ventajas de las tecnologías
de mejora de procesos. El programa
de conferencias contó con destaca-
dos ponentes líderes en el campo de
la mejora de procesos, presentacio-
nes centradas en la situación de La-
tinoamérica, así como seminarios y
paneles de discusión.

Entre los principales temas tratados


podemos mencionar: gestión de pro-
yectos, mejora de procesos en entornos pequeños, e imple-
Conferencia SEPG LA 2005 mentación de procesos específicos.

Del 9 al 11 de Noviembre en la Ciudad de Guadalajara, México, se Durante la conferencia se observó una audiencia representativa
llevó a cabo la segunda edición de la conferencia latinoamerica- de toda Latinoamérica, lo que demostró el interés y avance de la
na del Software Engineering Process Group, llamada La Mejora de región en este campo.
Procesos: Clave del Éxito Empresarial, organizada por el European
Software Institute, y por el TEC de Monterrey como anfitrión local. Para mayor información, visita: www.esi.es/SEPGLA

www.softwareguru.com.mx ENE-FEB 2006 05


CLUSTERS

mundial en diseño de semiconductores y

Jalisco
software embebido.
• Se desarrollaron cuatro programas para
apoyar a la formación de recursos, enfoca-

El Silicon Valley Mexicano


dos en semiconductores, pruebas, ingenie-
ría de software, y multimedia.
• Se creó una unidad del CINVESTAV, y se tie-
A tres años del surgimiento de ProSoft, ya son 20 las entidades federativas que se ne planeado crear un parque de software.
encuentran participando activamente en el programa. Tal es el caso de Jalisco, cluster
ejemplar e innovador, creado en el 2001 (aún antes de que surgiera ProSoft), y que Aportia, la Primer Integradora
actualmente está cosechando grandes logros. La intención de este reportaje es dar a Aportia fue la primer integradora de em-
conocer la historia del cluster, compartir lecciones aprendidas, y otorgar un recono- presas de software en el país. Actualmen-
cimiento a sus logros. te está conformada por 20 PyMEs, con
cerca de 500 profesionistas. Aportia plan-
tea una visión alterna a lo que tradicio-
Creación de una Nueva Economía manejar una cobertura de todas sus estra- nalmente se entiende como integradora.
Previendo la migración de la industria ma- tegias (excepto la estrategia 3, relacionada “El espíritu y la visión se sustentan en el
nufacturera de bajo valor agregado hacia al marco normativo). El primer apoyo recibi- crecimiento individual de sus integradas.
países de menor costo, el gobierno de Jalis- do en el 2004 fue de 100 millones de pesos, La integradora es una promotora de sus
co decidió reconvertir la industria. Se optó y fue este apoyo lo que abrió las puertas a integradas, hacia fuera, a nivel de los
por pasar de un modelo de altos volúmenes las inversiones. “El ProSoft fue la palanca servicios de cada una, y hacia adentro, al
y baja complejidad hacia uno de volúmenes que me permitió mover al mundo, gracias al instrumentar acciones para que éstas me-
menores pero mayor complejidad. Esto per- ProSoft pude atraer inversiones.”, comenta joren sus capacidades”, comentó Eduardo
mitió explotar ventajas competitivas natura- Francisco. Ramírez, presidente del consejo en turno.
les del estado, como aspectos de logística, Un ejemplo de esta visión es el Diploma-
calidad y flexibilidad. En el 2004 se logró atraer una inversión do en Alta Dirección e Innovación en Tec-
de 25 millones de dólares, y el 2005 reba- nología del IPADE, al que asistieron nueve
Después de realizar un diagnóstico, no sólo só los 30 millones de dólares. En el 2004 líderes de empresas, el cual ha mostrado
de su situación, sino de las capacidades rea- cada peso que puso el ProSoft multiplicó un resultado sorprendente en cuanto al
les de la industria, se decidió aprovechar el por 55 la atracción de inversión, en el 2005 cambio en la cultura empresarial.
esfuerzo iniciado por IBM en relación con el la multiplicación es por 30. “Por primera
diseño de semiconductores y sistemas em- vez en la historia del país, hay un instru- En 2004 el crecimiento promedio de las em-
bebidos. Posteriormente se decidió crear mento que le da certidumbre a inversiones presas de Aportia fue de 40% en volumen de
un modelo propio, y fue así que se desa- en investigación, desarrollo, e innovación. negocios. Actualmente las empresas socias
rrolló la “Política Jalisciense de Tecnologías Además da la oportunidad a los estados se encuentran en proceso de acreditación en
de Información, Electrónica y Multimedia”. de planear, dirigir, y disponer de los recur- CMMI y MoProSoft.
Entonces nació un nuevo sector de la eco- sos”, agregó Francisco Medina.
nomía llamado Servicios de Alto Valor Agre- Lecciones Aprendidas
gado, teniendo como meta generar 5% del Jalisco también obtiene aportaciones del Uno de los problemas que se presentó fue la
PIB estatal para el 2007. Fondo PyME de la Secretaría de Economía, y falta de recursos del estado y sector privado,
Fondos Mixtos del CONACYT. Además parti- así como presupuesto limitado de ProSoft.
Se definieron seis nichos de mercado en los cipa en la Unión Europea como región socia Sin embargo, lo que se ha podido lograr con
cuales se enfoca este cluster: del Comité Europeo de las Regiones, donde tan pocos recursos ha sido muy bueno.
1. Diseño de semiconductores. obtiene apoyos internacionales.
2. Firmware o sistemas embebidos. En cuanto a ProSoft, el reto es sobrevivir
3. Sistemas de administración de bases Principales Logros y Caracte- al esperado cambio de administración
de datos. rísticas federal y estatal, y aunque se cuenta con
4. Pruebas de software, hardware y firmware. • El Sector de TI, Microelectrónica y Multime- el apoyo de la industria, y asociaciones
5. Aplicaciones en Internet – cadena de pro- dia representa hoy 1.4% del PIB estatal. En como CANIETI y AMITI, actualmente se
veedores. el 2004 se facturaron casi 500 millones de está trabajando para institucionalizar el
6. Multimedia – animación y contenidos digitales. dólares. programa.
• Existen 27 casas de diseño de microelec-
El Rol de ProSoft trónica, 19 de ellas PyMEs jaliscienses, con Para cerrar este punto, Francisco Medina nos
Desde el surgimiento de ProSoft, Francis- más de 500 ingenieros. comenta: “La clave es la planeación. Yo le re-
co Medina, Director General del COECYTJAL • Se cuenta con 3,000 desarrolladores de comiendo a los estados ubicarse, hacer un
(Consejo Estatal de Ciencia y Tecnología software en 72 empresas. diagnóstico, decidir hacia dónde quieren ir,
de Jalisco), participó en la planeación del • Jalisco utiliza el poder de compra guberna- y si se equivocan, pues corregir, y siempre
programa. Fue entonces cuando se decidió mental para impulsar la industria de software. mantener consistencia en la aplicación de
alinear la Política Jalisciense al ProSoft, y • Jalisco aporta 20% de la capacidad a nivel los instrumentos de política.”.

06 ENE-FEB 2006 www.softwareguru.com.mx


COLUMNA TEJIENDO NUESTRA RED

Eventos y Negocios
Entre Pittsburgh, Australia y México

A
finales de octubre de 2005, como ha sucedido cada El último comentario sobre el taller de Pittsburgh está li-
2 años desde 1999, la AMCIS cambió su Consejo Di- gado a la presencia de hispano-parlantes. Me dio mucho
rectivo. Después de cuatro años de ausencia, regre- gusto encontrar a Miguel Serrano del CIMAT y conocer a
só al cargo de President@ Gloria Quintanilla, y a mí me tocó Oscar Mondragón del ESI Guadalajara, con quienes inter-
ser Secretaria. Mis colegas de la AMCIS se están burlando cambié varios “chismes” y hasta les saqué una prome-
cariñosamente que más bien soy Secretaria de Relaciones sa de hacer algo juntos. La hago pública para que no se
Exteriores. Y como últimamente hay algo de verdad en eso, quede sólo en promesa. Por otro lado estuvieron también
les sigo contando lo que ha pasado en mis últimos viajes. presentes una chilena y un grupo de seis españoles. Ya se
imaginarán la “chorcha” latina en los descansos y en las
Del 19 al 20 de octubre, el SEI convocó el primer International cenas que compartimos.
Research Workshop for Process Improvement in Small Set-
tings en su edificio sede en Pittsburgh. Nos reunimos alrede- Dos semanas después, el 7 de noviembre, aterricé en la
dor de 40 personas de muchas regiones del mundo. Me llamó Costa Dorada de Australia para asistir al V Workshop del
La Dra. Hanna
Oktaba es profesora la atención que este tema está causando interés no solamen- Consorcio IPRC. Esta fue la penúltima reunión de las pla-
en la Facultad de te en los países que no tienen mucho reconocimiento en el neadas para generar el reporte final. Faltaron algunos gu-
Ciencias de la UNAM. mercado internacional de desarrollo de software, como son rús como Barry Boehm y Vic Basili, sin embargo, los que
Es fundadora y secre-
taria de la Asociación
Malasia, Hong Kong, Australia o México, sino que también asistieron hicieron un importante esfuerzo para llegar a
Mexicana para la EEUU, la India, China o Canadá tienen los mismos problemas. los acuerdos sobre la estructura de los resultados finales
Calidad en la Ingeniería En lo que discrepamos fue en la definición de “small setting”. de nuestro trabajo. El punto más importante fue el acuer-
de Software (AMCIS).
Actualmente dirige el
Para los países en desarrollo son grupos de 5 a 20 personas, do sobre los grandes temas emergentes de investigación
proyecto con el cual se para los estadounidenses son entre 50 y 100, pero para los en procesos que quedaron como sigue:
creó la norma mexicana chinos son de alrededor de 350. A pesar de esta divergencia, • Relación entre el proceso y la calidad del producto.
para la industria de
el clamor popular fue que los modelos disponibles en su ver- • Relación entre las estructuras organizacionales y los pro-
software.
sión actual (léase CMMI o ISO/IEC12207) no son adecuados yectos/procesos.
para este tipo de organizaciones, principalmente porque el • Ingeniería de procesos.
costo-beneficio de su implementación no es evidente. • Integración de procesos de desarrollo de sistemas con
procesos del dominio específico.
Presentar MoProSoft en este contexto fue muy oportuno. • Procesos para las arquitecturas y tecnologías emergentes.
No solamente es un marco de procesos casi listo para • Despliegue (deployment) de procesos.
usarse en pequeñas organizaciones sino, gracias a prue-
bas controladas, tenemos evidencia que con el costo re- Durante el segundo día del taller tuve mis 5 minutos de fama
lativamente bajo, de alrededor de 22 horas por persona gracias a ¿qué creen? —a diagramas de UML. Cuando todos
durante 8 meses, las organizaciones pudieron elevar en los asistentes “se hacían bolas” tratando de imaginarse la
uno el nivel de capacidad de todos sus procesos. interdependencia entre los temas de investigación identi-
ficados, yo les dibujé un pequeño diagrama de clases, que
En este evento contamos con la presencia de Claude Laporte anexo. Después de explicarlo brevemente, se acabó la discu-
de Canadá, quien confirmó la noticia que compartí con us- sión y el diagrama fue aceptado para ilustrar la introducción
tedes hace unos meses. ISO reconoció que sus estándares a estos temas. Por supuesto va a requerir de una refinación
no fueron creados para los proyectos y organizaciones pe- pero las dependencias gruesas quedaron aclaradas.
queñas y decidió hacer un estándar nuevo para la industria
de software dirigido a Very Small Enterprises (VSE). Para el
ISO, una VSE puede ser un proyecto, organización de desa-
rrollo o compañía que tiene entre 1 y 25 empleados (¡Hurra!
Por fin tenemos una definición de “peque”). Claude vino a
Pittsburgh para escuchar las inquietudes y las propuestas
expresadas en el taller con el fin de llevarlas a la reunión
del ISO. Me sentí muy orgullosa cuando me pidió que les
enviáramos una versión en inglés de MoProSoft para que
lo tomen en cuenta como antecedente para los trabajos de
este nuevo estándar. También ya empezamos los trámites
para que México cuente con un representante ante el ISO
para este proyecto en particular.

08 ENE-FEB 2006 www.softwareguru.com.mx


Para satisfacer su curiosidad sobre mis este esfuerzo por ser un grupo de jóve-
impresiones de Australia, les puedo co- nes entusiastas que lograron mucho en
mentar brevemente que es una mezcla de tan poco tiempo.
EEUU con Inglaterra: se paga en dólares,
se maneja por la izquierda, la temperatu- El otro fue el evento de ProSoft, organi-
ra se mide en Celsius, la distancia en kiló- zado a finales de noviembre por tercera
metros, la limpieza es hasta aburrida y los ocasión, en el cual encontré mucho en-
servicios sirven. Los koalas son preciosos tusiasmo y bastante sinergia entre el go-
y duermen 21 horas por día y que los can- bierno federal, los gobiernos estatales
guros son una verdadera plaga. También y la industria. Falta que la academia se
hice un tour para probar vinos australia- una más activamente a este movimiento
nos y que esta experiencia fue equipara- para completar el cuadro. La bolita de
ble con la del Valle de Guadalupe. nieve ya empezó a correr, creo que ya
nadie la para.
De regreso a México, asistí a dos eventos
memorables. El primero fue el aniversa- - Hanna Oktaba
rio número 1 de Software Guru. Felicito
Miguel, Hanna y Oscar frente al edificio del SEI sinceramente a los que están detrás de
COLUMNA MEJORA CONTINUA

Software: ¿Producto o Servicio?


Calidad en la Industria de Servicio

E
n los últimos años la industria en general está pa- El Desarrollo de Software como Servicio
sando por una total reestructuración. La revolución Estas definiciones aplican perfectamente a la indus-
de la información y del conocimiento la han sacu- tria de software. Entre más competencia existe, más
dido en una forma que no se había visto desde la revolu- difícil es diferenciar a una compañía de desarrollo de
ción industrial. Cada día surge nueva competencia y cada software de otra. Adicionalmente, existe una constan-
vez es más difícil lograr una diferenciación que represente te presión por parte del mercado de reducir el costo
una ventaja competitiva. La mayoría de las grandes em- mejorando la calidad. Esta tendencia ya tiene alrede-
presas han migrado paulatinamente de estar enfocadas dor de diez años gestándose en los Estados Unidos y
únicamente a desarrollar productos, a integrar una amplia cada vez más rápido se está moviendo hacia el resto
gama de productos y servicios. Desde cadenas de super- del mundo.
mercados que entregan a domicilio hasta compañías que
generan turbinas para aviones a los cuales se les monito- Implicaciones
Luis R. Cuellar es rea y se les da mantenimiento desde un punto central a Debemos entender que el desarrollo de software es tanto
Director de Calidad a través de software. La tecnología, la globalización y la alta un producto como un servicio. Esto quiere decir que tener
nivel mundial de Softtek
Information Services.
competencia han cambiado el foco de las empresas, que un grupo de excelentes ingenieros de software que ase-
Luis es reconocido por se distinguen no sólo por sus productos, sino también por gure la integridad y calidad del producto, no es suficiente.
la American Society el servicio que los rodea. Además, se requiere de:
for Quality (ASQ) como • Un excelente administrador de proyectos que asegure
Certified Quality Mana-
ger, Certified Software La Calidad en una Industria de Servicio que se entrega bajo presupuesto y a tiempo.
Engineer, y Six Sigma Existen cinco parámetros para medir la calidad en cual- • Una excelente infraestructura de medición para poder
Black Belt. En los quier industria de servicio. Todos ellos son desde la pers- dar seguimiento a lo que se está haciendo y utilizar esto
últimos cinco años ha
estado a cargo de la pectiva del cliente: para poder mejorar el cómo percibe el cliente nuestro tra-
definición e implanta- 1. En forma consistente, se me entrega lo que pedí (o algo bajo y qué hacemos para mejorar esta percepción.
ción de la estrategia mejor). Si yo reservo un cuarto de hotel, estoy esperando • Un excelente administrador de procesos que ayude a
para CMM5 y Six
Sigma a través de las
un cuarto de hotel. Si es una suite presidencial por el mis- generar una cultura en la organización que asegure la con-
diferentes áreas de los mo costo, qué mejor. sistencia del trabajo que estamos ejecutando.
centros de desarrollo 2. En forma consistente, se me entrega en base al costo • Una excelente planeación estratégica. Hacer un estu-
de Softtek.
estipulado (o menor). Si reservo un cuarto con un precio dio de conciencia que defina qué vamos a vender este
de 200 dls, espero pagar 200 dls. Si puedo pagar menos, nuevo año que inicia, cómo empaquetamos estos servi-
qué mejor. cios en una oferta consistente, y cómo generamos los
3. En forma consistente, se me entrega en base al tiempo procesos y el entrenamiento de nuestra organización
acordado. En este caso no necesariamente es mejor que para asegurarnos de poder operar con el nivel de cali-
esté antes: si pido un cuarto para el martes y está listo el dad que se nos va a exigir.
lunes, no necesariamente me sirve.
4. En forma consistente, no existen defectos que reduzcan Toda estrategia de calidad inicia con nuestra clara visión
el valor de lo que recibo. Si renté un cuarto espero que no de dónde nos encontramos y cómo vamos a penetrar el
tenga goteras, que el aire acondicionado funcione, etc. mercado. Los procesos y estrategias deben de soportar
5. En forma consistente, el servicio es cada vez mejor. Lo que sea los planes de crecimiento de la compañía, y mientras no
que haya recibido hoy, espero que la próxima vez sea mejor. logremos alinear los dos, todo el esfuerzo que se lleve a
cabo tiende al fracaso.
Cabe notar las veces que se repitió la palabra “consisten-
te” en las descripciones anteriores. En un servicio de cual-
quier tipo, ya sea de lavado de coches o de desarrollo de —Luis Cuellar
software, se considera que se tiene calidad no si a veces se
entrega bien, sino que siempre debe de entregarse bien.
Quiero aprovechar este espacio para desearles un pros-
Piensen en cualquier relación que han tenido con alguna pero 2006 y pedirles que si tienen cualquier comen-
compañía de servicios. Lo más seguro es que esta relación tario sobre este artículo o si tienen ideas de que les
terminó hasta el momento en que otra compañía trae un gustaría leer en esta columna, me lo hagan llegar a
servicio que valoren más o que uno de los cinco puntos su- lcuellar@agentesdecambio.org, o en el foro de discusión
periores no se ha cumplido a su satisfacción. en www.agentesdecambio.org. Hasta la próxima.

10 ENE-FEB 2006 www.softwareguru.com.mx


LO QUE VIENE

Sentinel Hardware Keys


PRODUCTOS

Protección Mejorada Contra la Piratería

Recientemente SafeNet liberó una nueva


Enterprise Architect 6.0 versión de sus candados para protección de
Modelado para Todo el Equipo software contra piratería. Ya en una edición
anterior de SG hablamos sobre este tipo de
candados (“Candados de Hardware”, SG
Año 1 No. 2), los cuales se conectan a una
Sparx Systems liberó la versión 6.0 Otra ventaja de Enterprise Architect 6.0 computadora a través de algún puerto como
de su herramienta de modelado, En- es su extensibilidad y soporte para agre- USB o paralelo, para habilitar el uso y ad-
terprise Architect. Además de brindar gar nuevos perfiles y extensiones UML. ministración de licencias de las aplicaciones
un soporte completo a UML 2.0, esta Gracias a esto, pronto podremos ver protegidas bajo este esquema.
nueva versión ha ampliado su alcance add-ins para Business Process Modeling
y busca convertirse en una plataforma Notation (BPMN), Systems Modeling Estas nuevas llaves incorporan criptografía
para manejar el ciclo completo de de- Language (SysML), y otras notaciones. de llave pública y encripción AES de 128 bits
sarrollo de software. Es por ello que para asegurar la comunicación entre la llave
ahora provee capacidades para dar se- Para mayor información, visitar el sitio y las aplicaciones. Cada sesión de comunica-
guimiento a proyectos, administrar re- de Sparx (www.sparxsystems.com) ción entre la llave y la aplicación usa una llave
querimientos, modelar datos, diseñar o contactar a Milestone Consulting de encripción única, con lo cual los ataques
y ejecutar pruebas (a través de jUnit y (www.milestone.com.mx), que distri- por fuerza bruta se hacen prácticamente im-
nUnit), controlar versiones, y manejar buye este producto en México. posibles. Adicionalmente, las llaves cuentan
documentación, entre otras. con una autenticación interna, con lo cual se
previene la clonación de éstas.
www.safenet-inc.com

PRODUCTOS
GeneXus 9.0
Ya se Encuentra Disponible Java Enterprise Edition 5
A la Vuelta de la Esquina

En el número anterior de SG evaluamos GeneXus 9.0 en su versión


de Release Candidate. En diciembre se anunció la conclusión exitosa La especificación de Java Enterprise Edition 5 (J2EE 1.5) ya se
del periodo de pruebas beta, y se liberó la versión para disponibili- encuentra en la etapa final del Java Community Process, y se
dad general. Si quieren conocer más sobre las capacidades de esta espera que esté disponible en el primer trimestre del 2006.
herramienta para generar aplicaciones, los invitamos a que vean el
artículo “A Fondo” de SG Año 1, No. 6. El propósito principal de esta versión es facilitar el desarrollo
de aplicaciones en esta plataforma. Un punto clave para lo-
Por cierto, en dicho artículo mencionamos que el componente para grar esto es la incorporación de “anotaciones”, que habilitan
ingeniería en reversa de bases de datos requiere ejecutarse como la programación declarativa, con lo cual se podrán crear APIs
una aplicación separada. Esto no es cierto ya que también se puede para tiempo de ejecución, además de que las herramientas y
ejecutar dentro del mismo GeneXus. Agradecemos al personal de librerías podrán acceder a los metadatos en los programas.
ARTech por hacernos esta aclaración.
www.genexus.com Otros JSRs (Java Specification Requests) importantes que se
incluirán en Java EE 5 son EJB 3.0, JAXB 2.0, JAX-WS 2.0 y Java
Server Faces (JSF) 1.0. Se espera que la especificación de JSPs
también sea revisada para mejorar la integración con JSF.
java.sun.com

12 ENE-FEB 2006 www.softwareguru.com.mx


PRODUCTOS TENDENCIAS

AJAX
¿Qué es y Para que Sirve?
Por Gustavo Muñoz

E
Si algún acrónimo ha dominado en los últimos meses a la
industria del software, es AJAX. Según Gartner, el mercado
de este tipo de tecnologías tendrá un crecimiento superior a
los 250 millones de dólares para el 2009. AJAX nació el 18 de febrero
de este año gracias a un pequeño artículo, en principio inofensivo,
de Jesse James Garrett, de la empresa Adaptive Path.
www.adaptivepath.com/publications/essays/archives/000385.php

En este artículo nos enfocaremos en entender en qué consiste AJAX,


cuáles son sus orígenes, así como los beneficios que puede brindar.
En artículos próximos hablaremos con mayor profundidad sobre
cómo se desarrollan aplicaciones AJAX.

Elementos de AJAX
AJAX es una abreviación de Asynchronous JavaScript and XML, y no
se trata de una tecnología, sino un grupo de ellas que usadas en con-
junto dan un nuevo sabor al Web. En particular, AJAX incorpora:
• Presentación basada en estándares usando XHTML y CSS.
• Despliegue e interacción dinámica usando el DOM.
• Intercambio y manipulación de datos usando XML y XSLT.
• Acceso asíncrono a datos usando XMLHTTPRequest.
• JavaScript haciendo que todo funcione de manera conjunta.
Figura 1. Disponibilidad de tecnologías en que se basa AJAX.
La forma como algunos sitios muy populares (entre ellos GMail, Google
Suggest y Google Maps) utilizaban todos estos elementos, estaba to- Como vemos, los ladrillos estaban ahí desde hacía mucho tiempo. Sin
mando cada vez una forma más distintiva y, de alguna manera, unifor- embargo, haber acuñado un acrónimo para todas esas tecnologías y
me. Pero, sobre todo, los usuarios estaban muy contentos de ver, por técnicas de programación juntas, fue un gran acierto. De pronto, esta-
vez primera, a las páginas web como algo más que piezas estáticas de ba disponible una manera para nombrar a todo eso de forma unificada,
contenido colorido. El abismo de usabilidad entre las aplicaciones de clara y veloz. La comunicación fue mucho más eficiente. Esto es un fenó-
escritorio y las aplicaciones Web comenzaba a reducirse. meno común que sucede cuando le asignamos nombres a las cosas. Ya
hemos tenido algunos ejemplos de ello, así pues, cuando un equipo de
Todo estaba ahí para que el nuevo acrónimo fuera un éxito: una desarrolladores utiliza patrones de diseño, una de las ventajas más evi-
masa crítica de usuarios que amaban ese tipo de aplicaciones, un dentes es que el grupo comparte un vocabulario común para nombrar
sinnúmero de desarrolladores que deseaban generar aplicaciones “a estructuras e interacciones complejas de forma eficiente.
la Google”, y algunas empresas pioneras que ya habían comenzado
a avanzar algunos años antes en perfeccionar estas técnicas. ¿Por qué Hasta Ahora?
Si las herramientas ya estaban hace tanto tiempo disponibles, ¿por
Ciertamente, ninguna de las tecnologías que conforman AJAX es nue- qué hasta el día de hoy se le prestó tanta atención? Adam Bosworth,
va. La siguiente gráfica muestra la disponibilidad de las tecnologías testigo de la creación del objeto XMLHTTPRequest y creador del tér-
involucradas como recomendación del W3C o su equivalente, así mino DHTML (HTML dinámico a través de CSS + JavaScript), mencio-
como algunas aplicaciones importantes para el desarrollo de AJAX. na las siguientes tres razones:

Gustavo Muñoz es Vicepresidente de Ingeniería en JackBe, una empresa mexicana líder y pionera a nivel mundial que provee tanto un framework y herramientas de desa-
rrollo, como soluciones corporativas basadas en AJAX. Durante toda su trayectoria ha liderado proyectos con clientes del Fortune 500, y diseñado e implementado diversos
productos y bibliotecas. Gustavo es miembro del Consejo de la Comunidad Java México (www.comunidadjava.org) y es egresado de Matemáticas Aplicadas en el ITAM.

14 ENE-FEB 2006 www.softwareguru.com.mx


• Mayor confianza en el web. Los administradores ahora entienden bien qué significa tanto • El llenado de formas es más ágil, por me-
mantener una aplicación compleja en web, como las ventajas que esto conlleva en términos dio de validaciones al servidor asíncronas y
de costos. El web ya no es visto como una navaja de doble filo. completación automática (autocomplete).
• Evolución del hardware e infraestructura. Las máquinas son mucho más potentes el día de • La navegación en menúes de árboles que
hoy que cuando todo el movimiento DHTML entró en escena. Asimismo, el ancho de banda pueden ser poblados dinámicamente brinda
es mucho más barato y accesible, de modo que hacer viajar al browser y ejecutar un script de una agilidad, que es vital en una aplicación
20,000 líneas hoy sencillamente es cotidiano, mientras que antes era imposible. de uso masivo.
• Los browsers han mejorado sus implementaciones de los estándares. Por lo menos a un • La posibilidad de filtrar, ordenar y manipular
nivel en el cual, después de algunas consideraciones, se logran efectos muy similares en datos en el browser nos brinda la oportunidad
distintos browsers. de manejar tablas con mucha información de
manera eficiente y permitirle al usuario la
A esto, yo agregaría: toma de decisiones en menos tiempo.
• Existían serios bugs en las implementaciones de DOM y JavaScript en los browsers. Los • El manejo de estilos y contenido dinámico,
más graves eran aquellos que generaban memory leaks, que podían tirar el browser cuando donde una misma interfaz gráfica, sin nece-
se intentaba correr una aplicación de este estilo. Al día de hoy, la mayoría de ellos han sido sidad de refrescar toda la página, cambia
eliminados, y los que todavía quedan se pueden evitar con buenas prácticas o con productos conforme interactuamos con ella, ha gene-
que aíslan este tipo de problemas. rado un nuevo horizonte para la creatividad,
• En aquel tiempo, la fiebre de la tecnología en el servidor dinámico de aplicaciones opacó pensando siempre en facilidad de uso y pro-
cualquier intento de llevar al cliente alguna porción del sistema. Debemos tomar en cuenta ductividad del usuario final.
que en ese momento se quería evitar cualquier similitud con el mundo cliente-servidor, ya
que justo se trataba del paradigma que el mundo web venía desplazando. Otra posibilidad que abre AJAX es la de migrar
• La documentación de todas estas técnicas fue realizada azarosamente y su dispersión fue muy aplicaciones de escritorio hacia el web de ma-
discreta. Naturalmente, esto provocó una desinformación generalizada durante mucho tiempo. nera transparente en términos de la usabilidad
• Las implementaciones de XMLHTTPRequest no manejaban el cache de forma estándar y trans- de la aplicación. Gracias a esto, los usuarios
parente. Todavía un bug al respecto fue resuelto recientemente con la liberación de Firefox 1.5. pueden continuar usando las aplicaciones de
la misma manera que antes, sin necesidad de
Por otro lado, si bien Garrett es un agudo observador, él no es un desarrollador, es un exper- entrenamiento. Lo cual no solo brinda una ma-
to en usabilidad. Así pues, no tardaron algunas voces de la comunidad de programadores en yor satisfacción, sino un ahorro importante.
alzar observaciones y críticas. En particular, se corrigió que XML no era un elemento 100%
necesario para generar los beneficios tanto tecnológicos como de usabilidad: podía usarse
JavaScript (JSON, por ejemplo) y HTML. También se vio que para tener comunicación asíncro- Consideraciones
na con el servidor, se había podido prescindir del objeto XMLHTTPRequest y usar iframes y Es importante subrayar que para
un sistema de peticiones encoladas, obteniendo así mayor cobertura de browsers y políticas lograr una implementación AJAX exi-
de seguridad (XMLHTTPRequest se implementó como un ActiveX en el IE). tosa no basta resolver el problema
meramente tecnológico. Dado que
Beneficios uno de los objetivos fundamentales
El beneficio principal de AJAX está en proveer funcionalidad rica (similar a la de aplicaciones es mejorar significativamente la ex-
de escritorio) en aplicaciones web, sin necesidad de instalar plug-ins ni otro tipo de compo- periencia del usuario, se requiere de
nentes externos. Adicionalmente, AJAX se basa en estándares, por lo que no depende de los una seria reflexión en términos de
productos de uno u otro proveedor. Por otro lado, AJAX es agnóstico a la tecnología usada usabilidad alineada a las reglas del
como middleware de web. Puede ser usado con cualquier motor de páginas dinámicas, des- negocio. AJAX sólo provee los meca-
de PHP, Java, Ruby hasta ASP y Cold Fusion. Gracias a esto, los desarrolladores cuentan con nismos técnicos para que esto sea
una plataforma uniforme para generar la interfaz gráfica, sin importar qué se utilice en la posible. Como desarrolladores de
capa de en medio. AJAX, debemos tener siempre pre-
sente este factor como parte integral
Las capacidades de AJAX proveen mejoras sustanciales en términos de la usabilidad de las de nuestro trabajo. ¿No es verdad
aplicaciones. Esto a su vez contribuye a mejorar la experiencia y productividad del usuario que gracias a ello, entre otras cosas,
final. Algunos ejemplos específicos de mejoras en usabilidad que tenemos con AJAX son: amamos a GMail, Kiko y Writely?

www.softwareguru.com.mx ENE-FEB 2006 15


ESPECIAL

A diferencia de lo que comúnmente se cree,


la factura electrónica no es un archivo es-
caneado que se pueda publicar vía Internet o
sacción comercial entre un comprador y un
vendedor, compromete a entregar el bien o
servicio, y obliga a realizar el pago de acuerdo
Las facturas electrónicas pueden ser en-
viadas y guardadas utilizando medios elec-
trónicos. También pueden imprimirse, bajo
una imagen digital publicada en un sistema a lo que establece el documento. Ambas par- las definiciones del SAT, en caso de que el
ERP; se trata de un producto real que existe tes utilizan la factura para comprobar la tran- solicitante así lo requiera. De esta forma te-
bajo la infraestructura soportada por el SAT sacción ante las autoridades y las revisiones nemos la flexibilidad de seguir operando con
y que hoy en día es funcional para muchas de auditoria interna. En el marco fiscal, el SAT nuestros clientes sin necesidad de que ellos
compañías, sin importar su tamaño o giro. contempla a la factura electrónica como uno tengan que adoptar la factura electrónica.
de los diversos documentos electrónicos de-
Es importante conocer esta forma de factu- nominados Comprobantes Fiscales Digitales Requisitos para Generar
ración, pues aunque por el momento es una (CFD). Un CFD es un documento digital que se Facturas Electrónicas
solución opcional, los beneficios que conlle- recibe al adquirir un bien, un servicio, o usar 1. Contar con un Certificado de Firma Electró-
va implementarla son sustentables, e incluso, temporalmente bienes inmuebles. nica Avanzada vigente, el cual identifica a la
podrían resultar un diferenciador con nuestra persona física o moral y da poder para obte-
competencia debido a la optimización que ori- Visto desde una perspectiva más simple, una ner Certificados de Sello Digital, Solicitud de
gina en nuestros recursos humanos e informá- factura electrónica es un documento con la folios y para firmar el Reporte Mensual, entre
ticos. Es correcto enfatizar que esta solución misma validez que su contraparte en papel, otros servicios. Para obtener este Certificado
es un producto para cualquier empresa que pero con una serie de beneficios extras que se requiere realizar un trámite presencial en
mantenga su contabilidad de forma electróni- provienen de su naturaleza digital. Al igual el SAT. La firma electrónica avanzada no sólo
ca, y el trabajo de implementación dependerá que en el proceso tradicional, la ley obliga es útil para facturas electrónicas, sino que
de la misma complejidad de la compañía. a todos los contribuyentes a conservar las tiene una mayor cobertura de usos.
facturas electrónicas por un periodo mínimo
La información presentada en este artícu- de cinco años en su formato original (XML), 2. Contar con uno o más certificados de se-
lo ha sido proporcionada por la Asociación o impresas en el caso de los receptores que llo digital, expedidos por el SAT para uso
Mexicana de Estándares para el Comercio reciban el comprobante de esta manera. exclusivo de Comprobantes Fiscales Digi-
Electrónico (AMECE), una organización que tales. Por medio de ellos la persona podrá
promueve y valida los estándares globales Cada factura que se emite cuenta con un firmar la Factura Electrónica. Una empresa
para la productividad de las empresas de sello digital que permite corroborar el ori- puede tener varios Certificados de Sello Di-
manera neutral, y es el principal promotor gen de la factura y le da validez ante las gital con el fin de llevar un sistema de factu-
para la adopción de la factura electrónica. autoridades fiscales, una cadena original ración descentralizada.
Bajo este contexto, iniciemos con los con- que funciona como un resumen de la factu-
ceptos más importantes que debemos tener ra, así como un folio que indica el número 3. Contar con un determinado rango de fo-
claros para emprender nuestro camino a una de la transacción. Esto nos trae beneficios lios asignados por el SAT y una contabilidad
facturación electrónica. inmediatos, por ejemplo: nos permite revi- simultánea. Estos folios ya no son proporcio-
sar al momento de recibir una factura si la nados por un tercero, ahora son solicitados
¿Qué es una Factura Electrónica? compañía que nos la entrega está avalada de forma electrónica al SAT. La contabilidad
La factura por definición es un documento ante el SAT, si el sello digital es vigente o simultánea sugiere que al asignarse el folio,
que comprueba la realización de una tran- si la factura ha sido alterada. y en su caso serie, el sistema electrónico en

FACTURA ELECTRÓNICA
Una Opción Real
Por Ariel García

16 ENE-FEB 2006 www.softwareguru.com.mx


que se lleve la contabilidad, efectúe simultá- mejora en los procesos y definir qué clientes puesta es: el que mejor nos acomode. Si
neamente el registro contable en cuentas y o proveedores son candidatos para el esque- contamos con un ERP, existen soluciones
subcuentas afectadas por cada operación. ma de facturación electrónica. que se adaptan a los sistemas actuales; tam-
bién existen soluciones que cuentan con la
4. Envío de reporte mensual. Se requiere Diseño y desarrollo.- Deberá realizarse un funcionalidad completa del ERP, incluyendo
reportar al SAT los folios que se han utiliza- modelo de cómo se procesará la información la facturación electrónica, o podemos optar
do durante el mes. Cabe resaltar que ahora en electrónico, poniendo especial atención por el desarrollo interno de la solución. El
se requiere anexar la hora exacta en que se al mejoramiento de los flujos de informa- camino que se elija depende de la adminis-
efectuó la expedición de la factura. ción, al rediseño de los procesos existentes tración de TI de nuestra compañía, si es que
que influyen en la facturación, reducción al existe, y las prioridades que tenga en cuanto
5. Conocer el modelo de negocio. Los re- mínimo de capturas manuales y a la estima- la implementación o el tamaño del proyecto.
quisitos y trámites ante el SAT son relati- ción de los costos respectivos.
vamente sencillos, la complejidad reside No importando cuál sea el tipo de solu-
en el impacto interno a nuestra empresa, Pruebas.- Una vez que todo ha sido apro- ción que se implemente, es imperativo
obviamente es necesario cambiar la for- bado y desarrollado, el proyecto puede cumplir con toda la normatividad del SAT
ma en que trabajamos y es ahí donde se comenzar con la prueba piloto. Estas con- para que sea valida nuestra facturación y
encuentra el reto de una buena imple- sisten en manejar paralelamente la factu- podamos explotar todos lo beneficios que
mentación. Hacerlo de tal forma que lo- ración tradicional (en papel) y la factura en hemos planteado.
gremos los mayores beneficios requiere electrónico observando: tiempos, activida-
de un conocimiento a fondo del proceso des y responsabilidades. Recomendamos verificar en el sitio web
de facturación y los procesos alternos re- de la AMECE (www.amece.org.mx) los
lacionados con la factura. Implantación.- Una vez realizados los estándares a cumplir para la facturación
ajustes, y si estos son satisfactorios para electrónica y las soluciones que han sido
Para la Implementación ambos socios comerciales, se podrá eli- revisadas por ellos y cumplen los requisi-
Para iniciar la implementación de la factura minar la emisión en paralelo (emisión de tos del SAT.
electrónica, se recomienda llevar a cabo los facturas en papel). Se debe contemplar
siguientes pasos: planes de contingencia y actualización de
regulaciones fiscales.
Estudio de factibilidad.- Se deberá eva-
luar los posibles impactos y los direcciona- Masificación.- Realizar y promover el mode- Conclusión
mientos potenciales. ¿Qué proveedores y lo de negocio para factura electrónica. En resumen, la implementación de la fac-
clientes piensan implantar la factura elec- tura electrónica es para cualquier com-
trónica? ¿Por qué y cómo lo están hacien- Beneficios de la pañía, sin importar su tamaño, que lleve
do? ¿Cuál es el impacto interno que tiene Factura Electrónica su contabilidad en electrónico. Entre los
su implantación? Se tendrá que documen- Además de que la factura electrónica tiene beneficios que brinda son mejoras en el
tar de manera detallada una estrategia la misma validez que las facturas en papel, desempeño y administración de nues-
para la implantación, alcance, incluyendo entre sus beneficios están: tros recursos humanos e informáticos, y
proyecciones de ahorro y costos, así como • Mayor seguridad (integridad, autentica- procesos internos. El éxito o fracaso de
el tiempo que se le invertirá. ción, no repudiación) nuestra implementación dependerá del
• Se puede determinar su veracidad rápida- compromiso de las áreas que interactúan
Compromiso de la alta dirección.- Sin un mente utilizando los servicios en línea del SAT. en este proceso. El tipo de solución que
apoyo de la Alta dirección será muy difícil • Agiliza la interacción entre clientes se implemente, ya sea de un tercero o de-
vencer la resistencia al cambio que conlleva y proveedores. sarrollo interno, obedecerá a las necesi-
una solución de este tipo. Es necesario que • Incremento en productividad: dades del negocio y la administración de
el principal promotor de esta iniciativa sea la Reducción de tiempos en procesos TI de cada compañía.
dirección general, para garantizar su correc- administrativos.
ta implantación. Mejor servicio al cliente.
Mejora la precisión de la información.
Equipo interdisciplinario.- Identificar los • Ahorro en costos administrativos y
responsables de las áreas o procesos involu- de oficina:
crados con la facturación: ventas, almacén, Reducción en papeleo, fax, mensajería.
recibo, cuentas por pagar, mercaderías, acla- Mejor utilización de espacios físicos.
raciones, archivo, compras, sistemas, etc., y Reducción de tiempos de edición y remi-
designar un líder de proyecto por área. sión.
Ciclo de resurtido y facturación.
Análisis.- Documentar el flujo de operación;
desde que se recibe y procesa un pedido, Seleccionando una Solución Agradecemos a la Lic. Isis Yueh, Gerente de
hasta la generación y pago de la factura, con La pregunta obvia es: ¿con qué aplicación Factura Electrónica en AMECE, por su apoyo
la finalidad de determinar oportunidades de implemento la factura electrónica? La res- para la generación de este artículo.

www.softwareguru.com.mx ENE-FEB 2006 17


ENTREVISTA

Desde SEPG LA

PAUL NIELSEN
Director del Software Engineering Institute
Paul D. Nielsen es director del Software Engineering Institute (SEI) de la Universidad Carnegie Mellon
desde Agosto del 2004. Anteriormente, sirvió en la Fuerza Aérea durante 32 años, donde se desempe-
ñó como Director de Tecnología, y dirigió el laboratorio de investigación en la base Wright-Patterson
de Ohio, para posteriormente retirarse como General Mayor.
¿Cómo son los proyectos de desarrollo de soft-
ware en la industria militar? ¿Cómo describirías el
Así como hemos visto tecnologías de informa- momento actual de la
ción comerciales, como Microsoft Windows, industria de software
muchos de los programas militares son pro- en USA, comparada
yectos intensivos de software debido a que con otras regiones?
ellos deben realizar muchísimas funciones si- En regiones como
milares a las de los programas comerciales o USA, Europa Oc-
del mundo civil. Estos sistemas necesitan ser cidental y ciertas
capaces de comunicarse con toda la organiza- partes de Asia, la
ción, necesitan tomar información de diferen- industria del soft-
tes lugares y obtener conocimiento de ello, ware se encuentra
hacer algo que sea entendible y desplegar la relativamente avan-
información de una manera en que los altos zada. Esto se apre-
mandos puedan tomar decisiones apropia- cia por la cantidad
das. Así que es muy similar a lo que sucede de empresas desa-
en el mundo comercial. Es común tratar de es- rrollando productos
tablecer diferencias entre los sistemas milita- de alta ingeniería en
res y comerciales, ya que obviamente tienen estas regiones.
propósitos diferentes, pero en realidad en su
arquitectura, y forma en que se desarrollan, Por otro lado, en algunos lugares del mun- También debo mencionar el proyecto del
son muy similares. do vemos un crecimiento acelerado, como International Process Research Consortium,
en el caso de México. Estoy muy entusias- que busca definir el camino para la mejora
¿Qué tan madura es la industria de software a mado de formar parte de esta industria en de procesos hacia los próximos 15 años. La
nivel mundial? este momento. contribución de la Dra. Hanna Oktaba para
Bueno, a nivel mundial hay mucha dispa- este esfuerzo es muy importante. Realmente
ridad. Sin embargo, existen compañías de ¿Cuáles son las iniciativas actuales del SEI, y valoramos su esfuerzo, y ella esta ahí porque
alcance mundial que están alcanzando bue- qué se vislumbra en el futuro? es una de las mejores del mundo.
nos niveles de madurez, y están haciendo las Seguimos trabajando en mejorar el CMMI y
cosas de manera correcta. Cuando las cosas otros modelos. Cerca de una tercera parte de ¿Qué planes hay para la nueva versión de
se hacen de manera correcta, típicamente se nuestra gente está trabajando en seguridad CMMI?
requiere una inversión inicial fuerte, pero los de redes, porque cada día más gente utiliza Tenemos muchos planes para las nuevas versio-
beneficios también son mayores y se obtie- las redes para hacer negocios, pagos banca- nes de CMMI. La versión 1.2 del CMMI saldrá en
nen más rápido. Al ser una industria basada rios, registros médicos, etc., y se necesitará la primavera. Esta versión está muy concentrada
en la mente, la industria del software no tie- que dicha información sea segura. Otra área en brindar las características IPPD del modelo
ne grandes barreras de entrada en términos importante de trabajo, y donde creo que de ingeniería de software. Adicionalmente esta-
de infraestructura. Continuamente entran pronto haremos contribuciones importantes mos trabajando en lo que llamamos el Modelo
muchas organizaciones a esta industria, sin a la industria, es la de Arquitectura de Soft- de Adquisición, para trabajar con aquellos gran-
embargo, no todas cuentan con los niveles ware. Por otro lado, un sector que casi no ha des sistemas que compra el gobierno y conocer
de madurez adecuados. Casi cualquiera pue- sido afectado por la ingeniería de software, y el proceso que envuelve dichos desarrollos.
de decir que se dedica al software, pero eso donde estamos iniciando esfuerzos, es el de
no implica que tengan la madurez del resto los sistemas de alto desempeño masivamen- ¿Cuál es tu mensaje para las organizaciones
de la industria. Por otro lado, a nivel mundial te paralelos, tales como los que se utilizan que se dedican al software?
vemos una fuerte tendencia en las empresas para simular el comportamiento del clima. Todo proceso de mejora es un viaje conti-
pequeñas y medianas de software para me- Adicionalmente, hay áreas nuevas donde es- nuo. Continuamente busquen mejorar, nun-
jorar. Y eso es muy bueno, ya que el software tamos empezando a trabajar, que no necesa- ca queden satisfechos. Trabajen de manera
es clave para mejorar la calidad de vida de riamente estén limitadas al software, como, conjunta con otros miembros de la comuni-
todos los seres humanos. por ejemplo, el Manejo de Riesgos. dad, para mejorar a la industria en general.

18 ENE-FEB 2006 www.softwareguru.com.mx


Desde SEPG LA
El Dr. Richard Turner es Director del Systems and Software Consortium en Herndon, Virginia, una organiza-
ción dedicada a asistir a sus miembros en esfuerzos de mejora de procesos de TI, así como adaptar proce-
sos existentes a necesidades nuevas. Richard es miembro del equipo de autores originales del CMMI, y
co-autor de los libros “Balancing Agility and Discipline: A Guide for the Perplexed”, y “CMMI Distilled”.

RICHARD TURNER
Director del Systems and Software Consortium
¿Sobre qué trato tu presentación en el de los clientes, o conocer el valor (prioridad) ¿Quiénes son los que ponen mayor resis-
SEPG LA? de los diferentes requerimientos —ya que tencia a implantar métodos ágiles?
El punto principal que intento comunicar es acostumbramos tener sistemas con cientos En mi experiencia, han sido los dueños de los
que el ambiente bajo el que ejecutamos los de requerimientos, en algunos casos que procesos existentes. Estamos hablando de los
procesos está en cambio constante, así que chocan entre sí, y todos son tratados igual. gerentes medios, y desafortunadamente los
debemos ser capaces de responder a estos SEPG. En general, los directivos no están tan
cambios, de adaptarnos. Los procesos de- ¿Qué factores hay que considerar para deci- conectados como para que esto les importe,
ben facilitar esta adaptación, en lugar de ser dir qué tipo de proceso utilizar? simplemente dicen “estos son los objetivos, y
un limitante. Los procesos se han convertido Tal vez el aspecto más importante es cuán vo- hay que lograrlos”. Sin embargo, pudiera ser
más en un mecanismo para controlar, que látiles o dinámicos son los requerimientos del que les preocupe perder algún estatus que
para habilitar el trabajo. sistema. Otro factor es la mezcla de gente. ¿La les sirva de marketing, como lo es una acre-
mayoría del equipo puede manipular procesos ditación CMMI, o algo por el estilo. Algo más
¿Cuál es tu opinión sobre las evaluaciones/ sin romperlos, o son “talacheros” que requieren que sucede, es que los métodos ágiles tien-
certificaciones de procesos? un proceso disciplinado y estructurado? Ante- den a descubrir los errores más rápidamente.
En un inicio, los niveles de madurez simplemen- riormente el tamaño del proyecto también era Y desafortunadamente, en algunos casos el
te eran para que las organizaciones pudieran de- un factor a considerar, ya que los métodos ágiles equipo de desarrollo no quiere esto.
cir “me encuentro en tal punto del camino, y sé están originalmente diseñados para trabajar con
qué debo hacer para seguir adelante”. Desafor- equipos pequeños. Sin embargo, estos métodos ¿Alguna recomendación para los lectores
tunadamente, en algún momento a alguien se ya se han escalado hacia equipos grandes, así de SG?
le ocurrió decir cosas como que para participar que ya no lo veo como un factor tan importante. Aprovechen sus habilidades naturales, cuales-
en ciertos proyectos se requería ser por lo me- quiera que sean, y no sigan ciegamente el ca-
nos nivel 3. Esto acarrea el siguiente problema: Has mencionado que un buen desarrollador mino que han tomado otros. Hagan su propio
muchas veces, por el afán de lograr la meta del de software debe ser capaz de hacer inge- camino, donde aprovechen sus habilidades.
nivel 3, las organizaciones “sobredefinen” sus niería de procesos. ¿En las escuelas se en-
procesos, haciéndolos demasiado pesados. Es seña esto?
hasta los niveles 4 y 5 donde se eliminan esos Desafortunadamente no. Conozco una maes-
excesos. Así que si una organización se queda tra que enseña a sus alumnos a comparar
en el nivel 3, se ha quedado en el nivel más inefi- procesos y decidir cuál es más adecuado para
ciente de mejora de procesos. Esta es una con- cierto proyecto, pero desafortunadamente es
secuencia negativa de que la certificación sea la mucho material que cubrir, y muy poco tiempo,
meta, y no la mejora de procesos. especialmente en cursos a nivel licenciatura.

¿Nos puedes comentar sobre el libro “Ba- Hay lugares que aplican algo llamado “just
lancing Agility and Discipline”, que escri- too late training”, donde se ayuda a la gente
biste con Barry Boehm? a aprender de sus errores. Por ejemplo, los
Como saben, existe cierto desacuerdo entre ponen en proyectos y hacen algunas de las co-
las metodologías estructuradas/disciplina- sas que pasan en la vida real, como de pronto
das y las metodologías ágiles. Básicamente quitar a tres miembros de un equipo. Así que
lo que hicimos fue analizar los riesgos y bene- las personas llegan a conclusiones como “ah,
ficios de cada acercamiento, y estudiar cómo si hubiera priorizado los requerimientos, al
se podrían combinar o configurar para apli- menos podría realizar alguna negociación in-
carlos en proyectos específicos, dependiendo teligente y cumplir con el proyecto de la mejor
de sus características. De tal forma que para manera posible dadas las limitaciones”.
cada proyecto se pueda balancear la cantidad
adecuada de disciplina y de agilidad. Además, Así que hay formas de enseñar este tipo de
durante el libro estudiamos algunos aspectos cosas. Sin embargo, requieren mucho tiem-
vitales para el éxito de los proyectos de soft- po, y se necesitaría al menos un curso de un
ware, tales como entender el criterio de éxito semestre completamente dedicado a esto.

www.softwareguru.com.mx ENE-FEB 2006 19


ENTREVISTA

Desde SEPG LA

SUZ GARCÍA
Investigador senior en el SEI
Suzanne García es miembro senior del staff técnico del SEI, donde ha laborado por más de nueve
años. Anteriormente, colaboró con la empresa irlandesa de software Aimware, Inc. y estuvo doce años
en Lockheed Martin Aero and Space. Suz formó parte del equipo de autores de SW-CMM 1.1.
como el GPS? No tienes conocimiento de to- También veo que América Latina tiene un mer-
dos los lugares donde se utilizará, o todos los cado interno suficientemente grande como
elementos con quienes interactúa, así que no para que genere modelos de negocio propios
es posible probarlo de forma tradicional. Por y diferentes. Tal es el caso de lo que se está
lo tanto es necesario encontrar alguna mane- haciendo con el concepto de Nearshore.
ra alterna de asegurarse que funcione bien.
¿Has visto alguna evolución en la industria
Creo que el escenario a veinte años es mucho en los últimos años?
más interesante que a diez, porque espero Noto una mayor confianza en su oferta. En
que en algún momento en los próximos vein- mi primera visita en 1998, percibí una sen-
te años haya descubrimientos científicos de sación de “sabemos lo que podemos hacer,
gran importancia, como es el caso del cóm- pero no sabemos cómo hacer que la gente
puto celular. Una vez que logremos entender crea en ello”. Creo que eso ha cambiado bas-
cómo utilizar los modelos biológicos para tante. Ahora se tiene la certeza de que pue-
codificar, transmitir y manipular información, den competir, y saben cómo hacerlo.
las reglas de todo van a cambiar.
¿Cuál es tu opinión sobre MoProSoft?
¿Cuál es la perspectiva del SEI respecto a Creo que el contenido de MoProSoft es muy
América Latina? bueno para ayudar a las pequeñas organi-
¿Qué estás haciendo actualmente en el SEI? Creo que en algunos años comenzaremos zaciones de software. Creo que estas orga-
Actualmente formo parte de una nueva ini- a ver centros de ingeniería de software en nizaciones podrían prescindir de MoProSoft
ciativa llamada ISIS (Integrating Software diferentes países como México, Brasil, Ar- si tuvieran mejor acceso y experiencia con
Intensive Systems), cuyo objetivo es lidiar gentina y Chile. Me gustaría que hubiera un ciertos estándares internacionales. Sin em-
con cuestiones de interoperabilidad en los centro para América Latina, así como el ESI bargo, la mayoría prefiere algo en español,
grandes “sistemas de sistemas”, como por (European Software Institute), que está basa- y que fue especialmente diseñado para sus
ejemplo, la red GPS, los sistemas de clima o do en España, pero realmente es de la Union características y necesidades.
los registros electrónicos de salud, donde los Europea, y participan en él miembros de los
elementos son sistemas completos y autóno- diferentes países. Sin embargo, en el caso de Mi principal preocupación con MoProSoft es
mos con su propia comunidad de usuarios. Latinoamérica me temo que no he visto una que al ser una norma separada de los están-
visión latinoamericana unificada y que de- dares internacionales, existe el riesgo de que
¿Cuál sería el proyecto que más te muestre que están dispuestos a trabajar en no sea reconocida fuera de México como una
gustaría dirigir? conjunto en este aspecto. demostración válida de madurez de procesos.
Mi sueño sería crear un modelo de procesos Para maximizar el beneficio de las empresas
que pudiera usarse para mejorar, pero no En Latinoamérica se dan esfuerzos que depen- que lo adopten, MoProSoft debe ayudarlas a
para evaluar. Sé que esto no es posible, o al den enteramente del trabajo voluntario de al- ser reconocidas no sólo en el mercado nacio-
menos no sé como, pero se vale soñar. gunas personas apasionadas. Tal es el caso de nal, sino también internacional. Creo que este
lo que está haciendo la AMCIS para traducir el es el principal reto que MoProSoft enfrenta y
¿Cómo visualizas al SEI hacia los próximos CMMI. Este tipo de esfuerzos son muy buenos, espero que pueda superarlo.
cinco y diez años? pero para que sean sostenibles a largo plazo
Durante los próximos años, gran parte de requieren de mayor infraestructura y patroci- ¿Cuál sería la propuesta de valor que le
nuestro trabajo estará enfocado en los extre- nio, que debería ser provisto por el gobierno. plantearías a un gobierno para conven-
mos del mercado de producción de software. cerlo a patrocinar un centro local de inge-
Por un lado, se continuará el enfoque en las Regresando a lo que comentaba sobre el interés niería de software?
iniciativas de procesos para organizaciones del SEI en procesos para pequeñas organizacio- Cualquier cosa que se haga para acelerar la
pequeñas, mientras que en el otro lado apo- nes, América Latina es un gran laboratorio de adopción de mejores prácticas, va a mejorar
yaremos los esfuerzos para los grandes siste- investigación y pruebas, ya que el grueso de su el desempeño de la industria de software. Y
mas de sistemas. Esto, que es en lo que estoy industria de software está formada por organi- en un ambiente global donde la TI es clave
trabajando, provee retos interesantes. Por zaciones de este tipo. Creo que esto contribuirá para el éxito económico, impulsar a esta in-
ejemplo, ¿cómo puedes probar un sistema a aumentar el interés del SEI en esta región. dustria siempre traerá beneficios.

20 ENE-FEB 2006 www.softwareguru.com.mx


EN PORTADA

22 ENE-FEB 2006 www.softwareguru.com.mx


Business
Intelligence
LA RESPUESTA ESTÁ EN EL ANÁLISIS
La inteligencia de negocios es uno de los temas relacionados con Tecnología de Informa-
ción que ha recibido mayor interés desde su surgimiento en la década de los 90s. Sin
embargo, el BI que conocimos hace 10 años dista mucho de lo que conocemos ahora. El paradigma
de negocios actual basado en premisas como la gestión de procesos de negocio, la integración de la
información, la colaboración integrada a lo largo de toda la cadena de valor, y la ejecución y moni-
toreo en tiempo real, ha obligado a este tipo de soluciones a evolucionar de manera correspondiente
y entregar las capacidades que requieren las organizaciones modernas.
En las próximas páginas estudiaremos como ha ido creciendo el alcance y profundidad de estas solu-
ciones, así como las tendencias hacia el futuro.

www.softwareguru.com.mx ENE-FEB 2006 23


EN PORTADA

Inteligencia
de Negocios
LOS CINCO ESTILOS DE BI
Por Gerardo Rubio

Desde la década de los 90, las aplicaciones de de control sobre el formato visual, destinados a una amplia
Inteligencia de Negocios, o Business Intelligen- distribución entre muchas personas.
ce (BI), han evolucionado dramáticamente y en muchas 2. Análisis de Cubos. Capacidad analítica sobre un sub-
direcciones, tanto en la necesidad de acceso a los distintos conjunto de datos. Dirigida a directivos que requieren un
datos que existen en las compañías, como en el crecimien- ambiente seguro y sencillo para explorar y analizar sobre un
to exponencial que éstos han tenido. Desde los informes rango delimitado de datos.
operacionales de “barra verde” generados por mainframes, 3. Análisis y consultas Ad Hoc. Las herramientas OLAP
a los modelos estadísticos para campañas publicitarias, los relacionales eran utilizadas por usuarios avanzados para in-
ambientes multi-dimensionales de OLAP para analistas, vestigar y analizar toda la base de datos, navegando hasta
los tableros de control para ejecutivos, las compañías co- el nivel más detallado de información, es decir, al nivel de
menzaron a demandar más opciones de reportes y análisis transacción.
de datos. La dramática expansión de almacenamiento de 4. Análisis estadístico y minería de datos. Aplicación de
datos, combinada con la adopción extendida de aplicacio- herramientas matemáticas, estadísticas y financieras para
nes empresariales, tales como ERPs y CRM, así como el encontrar correlaciones, tendencias, proyecciones y análisis
aumento en la cantidad de usuarios capaces de utilizar una financiero. Dirigido a analistas de información avanzados.
computadora, abasteció de combustible esta demanda ex- 5. Entrega de información y alertas. Los motores de distri-
ponencial para reportes BI y aplicaciones analíticas. bución de información eran utilizados para enviar reportes o
alarmas a grandes grupos de usuarios, basándose en suscrip-
Durante este periodo de formación, las empresas descubrie- ciones, itinerarios o acontecimientos.
ron muchas nuevas maneras para utilizar sus activos de in-
formación como apoyo a la toma de decisiones, a los reportes Hasta el momento, la mayoría de las empresas líderes han
de operación y a la optimización de procesos. Durante esta comprado diversas herramientas de BI a distintos proveedo-
etapa de invención, los proveedores de tecnología BI reac- res; cada herramienta enfocada a una nueva aplicación BI,
cionaron en la forma en que acostumbran hacerlo ante la y cada una, entregando funcionalidad enfocada en un solo
evolución del mercado, esto es, construyendo un software de estilo de BI.
nicho para implementar cada nuevo tipo de aplicación que
las empresas creaban. Estos tipos de aplicación se convirtie- Una forma de organizar los estilos es graficándolos a lo lar-
ron en productos de software centrados en solamente uno de go de dos dimensiones, donde el eje vertical representa la
los diferentes estilos de BI que se describen a continuación: sofisticación e interactividad, mientras que el eje horizon-
1. Reporteo corporativo o empresarial. Los reporteadores tal muestra el tamaño de la población a quien está dirigido.
se usaban para generar reportes estáticos con un alto grado Esto se refleja en la siguiente figura:

Gerardo Rubio es el Director General de MicroStrategy en la región norte de Latinoamérica desde el inicio de operaciones de la subsidiaria en México, en enero de
2001. Su formación es en Ciencias Computacionales, egresado de UNITEC, con una maestría en administración del IPADE. Antes de incorporarse a MicroStrategy, es-
tuvo a cargo de eBRM de México, y también en Oracle de México, donde se desempeñó a lo largo de diez años, hasta llegar a la dirección general para nuestro país.

24 ENE-FEB 2006 www.softwareguru.com.mx


seguro que permite a los usuarios princi-
piantes de BI conducirse fácilmente para
tratar de descubrir la raíz del problema en
cuestión. El análisis de este gerente en par-
ticular, permite comparar los resultados de
venta de su tienda contra los resultados de
venta en otras tiendas como la suya, así
como contra años anteriores.

Después de alternar entre varias vistas de


análisis de información, muchas cosas que-
dan evidenciadas. La primera es que la
mayoría de las tiendas parecen estar expe-
rimentando esta misma caída repentina en
sus ventas. La segunda es que esta tendencia
evitará que logre sus metas de ventas para
esta categoría de producto. Y, la tercera, que
esta baja no es consistente con sus patrones
de venta estacionales de los últimos dos años
para esta clase de producto. Concluye que
existe un problema grave, pero que no es ex-
Los estilos más sofisticados e interactivos 1. Reporteo corporativo o empresarial clusivo de su tienda, así que envía una liga
son utilizados por grupos de usuarios relati- Utilizado cuando la empresa desea distribuir in- de este análisis de cubos a un comprador de
vamente pequeños, integrados por analistas formes financieros u operacionales estandariza- las oficinas corporativas, de tal forma que
y usuarios avanzados, cuyo trabajo principal dos a todos aquellos involucrados o interesados este comprador pueda ver exactamente lo
está enfocado en los datos y su análisis. Los en ella (empleados, accionistas, clientes, etc.). mismo y profundizar en el asunto.
estilos menos interactivos proveen datos y Desde los años cincuenta, las corporaciones
los resultados básicos, aplicables a pobla- han encontrado rendimientos claros de su in- 3. Análisis y consultas Ad Hoc
ciones grandes de usuarios, que van desde versión en reportes operacionales y financieros. Este estilo habilita un verdadero análisis de in-
directores generales hasta el grueso del per- Es por ello que este es el estilo de BI más di- vestigación de los datos empresariales, incluso
sonal operativo. fundido, abarcando desde los reportes de barras llegando al nivel de transacción.
en mainframe, hasta los modernos reportes en
Las organizaciones líderes han reconocido los web, o incluso para dispositivos inalámbricos. El comprador en las oficinas corporativas
beneficios de poner información en manos de accede al análisis de cubo que le envió el ge-
todos sus empleados, sin importar el cargo o Consideremos el siguiente escenario: El ge- rente de tienda, pero no puede determinar lo
función. Por esto, es importante contar con rente de una tienda recibe los informes de que sucede basado únicamente en las compa-
una infraestructura de BI que sea capaz de desempeño de la misma, generados sema- raciones predefinidas. El comprador necesita
proveer los cinco estilos a todos los usuarios nalmente por un motor de distribución de probar muchas más áreas de la base de datos
en una organización, ofreciendo diferentes reportes. Después de una revisión al informe para determinar lo que pasa, y utiliza “Aná-
niveles de funcionalidad personalizados a las semanal, advierte que las ventas por periféri- lisis y consultas Ad Hoc” para lograrlo.
necesidades y características de cada usuario. cos de cómputo han caído significativamente
en comparación con las de semanas previas. Así que ejecuta un reporte parametri-
Los Cinco Estilos de BI en un Hace clic en su informe y llega a un mayor zado, donde en base a contestar algunas
Escenario Empresarial nivel de profundidad, donde se muestra que preguntas, define qué información quiere
En las organizaciones actuales, cada uno de sorpresivamente, los tres mejores dispositivos incluir en el reporte. Así genera un repor-
los empleados —desde el Director General han tenido malos resultados en ventas. te con información de inventario de los
hasta el personal de apoyo— analiza infor- productos correspondientes, en los últimos
mación de negocio de alguna forma y hasta 2. Análisis de cubos dos meses. Nota que ha habido un flujo
cierto punto. Este análisis puede ser delibe- El análisis de cubos es el estilo de BI ideal para constante de embarques de las bodegas
rado y exploratorio, automatizado a partir de el análisis básico y predefinido. Como ejem- hacia las tiendas, pero que las bodegas
condiciones predefinidas, o incluso tan em- plo, el análisis de ventas por región durante han dejado de ser reabastecidas, lo que
bebido en los sistemas de uso diario, que no ciertos periodos de tiempo, y el análisis de ha causado un agotamiento de su inven-
es reconocidos como BI. Sin embargo, una ventas por producto y vendedor, podrían ser tario. Concluye que el problema debe
cosa queda clara: las organizaciones exitosas útiles para aquellos gerentes que buscan deta- residir en algún punto anterior en la ca-
hacen uso máximo de sus activos de informa- lles fundamentales en su desempeño. dena de abastecimiento. Desde el reporte
ción a través de la tecnología de inteligencia de almacén, navega hacia un reporte de
de negocios. Regresando a nuestro escenario, el gerente embarque que indica que todos los em-
de la tienda explora más a detalle el asun- barques navales desde Taiwán han sido
Veamos el siguiente escenario, donde utili- to, ejecutando uno de los varios cubos de demorados, afectando los productos en
zamos un conjunto típico de análisis y res- análisis que han sido pre-construidos para cuestión, y otros más. Es de esperarse en-
puestas para mostrar los cinco estilos de BI los gerentes de tienda. Los cubos de aná- tonces, que estos otros productos también
en la práctica: lisis proporcionan un ambiente sencillo y experimentarán una caída en sus ventas.

www.softwareguru.com.mx ENE-FEB 2006 25


EN PORTADA

Las organizaciones
exitosas hacen uso
máximo de sus activos de
información a través de la
inteligencia de negocios.

Informa al vicepresidente de ventas y a los tos, tal como podría ser que una métrica caye- da para soportar aplicaciones departamentales,
gerentes de tienda sobre el resultado de su ra por debajo de un límite preestablecido. no aquellas que abarcaran a toda la empresa.
análisis, y manda la información al depar- Por esta razón, las soluciones de BI eran im-
tamento de marketing, para que determinen Un grupo se encarga de monitorear conti- plantadas de manera aislada por departamen-
el impacto de las demoras de embarque en nuamente el progreso de nuevos programas to, y por lo tanto cada departamento se sentía
los ingresos y utilidades de la compañía para de ventas, suscribiéndose a un servicio de libre de escoger el producto que deseara.
el trimestre. distribución de información que continua-
mente mide el desempeño de los productos Las empresas hoy en día necesitan una tecno-
4. Análisis estadístico y minería de datos correspondientes, así como su rentabilidad logía BI que pueda soportar indistintamente
Esto se utiliza para descubrir relaciones sutiles y los costos de su promoción. El servicio los diferentes estilos de BI, en cualquier com-
(ej. la elasticidad-precio), y/o generar proyec- también monitorea de manera continua los binación, para cualquier aplicación, y para los
ciones (ej. tendencias de ventas), apoyándose niveles de inventario en los almacenes, avi- usuarios en toda la empresa, incluyendo a los
en la teoría de conjuntos, tratamiento estadís- sando a todos los involucrados cuando las clientes y socios de negocio.
tico y otras funciones matemáticas avanzadas. demoras de embarque terminan, señalando
que el precio y la promoción deben volver a Por esto, debemos buscar que la arquitectura
Un analista en el departamento de marketing la normalidad. para inteligencia de negocios que implante-
construye un modelo de los ingresos y utilida- mos en nuestras empresas contemple los di-
des para la línea de productos afectados, como El equipo es capaz de tomar decisiones inte- ferentes estilos de BI, y permita que cada uno
una función de los tiempos de embarque, los ligentes, responder rápidamente ante acon- pueda ser:
precios y la demanda. Después de estimar el tecimientos cambiantes, y preservar el nivel • Integrado y complementado de forma
impacto financiero del retraso en los embar- excepcional de desempeño de la compañía. transparente. Agregar un nuevo estilo de BI
ques, recomienda incrementar el precio en los simplemente debe extender la funcionalidad
artículos restantes para compensar las pérdi- de los reportes existentes.
das. Recomienda también realizar un nuevo • Expresado a través de una sola interfaz de
gasto promocional para promover los produc- Conclusión usuario unificada para maximizar su facili-
tos substituto de los que están agotados debido Actualmente, la mayoría de las grandes empre- dad de uso y aceptación por los usuarios.
al retraso en los embarques. sas tienen una amplia variedad de soluciones • Utilizado sobre una misma arquitectura in-
de BI instaladas en algún lugar de su organiza- tegrada, donde se unifiquen los metadatos, la
5. Entrega de información y alertas ción. Existen dos razones para la proliferación seguridad, y los perfiles de usuario. Aseguran-
Un motor de alertas y entrega de reportes per- sin control de estas tecnologías: do así una sola versión de la verdad a través de
mite a las empresas distribuir un basto número • Anteriormente, la mayoría de las herra- toda la empresa, y minimizando los costos de
de informes o mensajes de manera proactiva y mientas de BI soportaban un solo estilo. Por mantenimiento y administración.
centralizada, permitiendo a los usuarios sus- ejemplo, si una empresa necesitaba consultas
cribirse a los reportes que quieran recibir. La Ad Hoc, y reportes empresariales, entonces re- * Este artículo está basado en el White Paper “The 5
distribución de los reportes se puede realizar quería dos herramientas diferentes. Styles of Business Intelligence: Industrial-Strength Bu-
de forma calendarizada, o disparada por even- • La mayoría de la tecnología de BI fue diseña- siness Intelligence”, preparado por Microstrategy, Inc.

26 ENE-FEB 2006 www.softwareguru.com.mx


DataWarehouse y
Business
Activity Monitoring EL NUEVO ESCENARIO
Por Miguel Cruz

Las soluciones de Inteligencia de obtener conocimiento y soportar la toma de ejemplo, algunas de las tecnologías disponi-
Negocios (BI) nos permiten vi- decisiones estratégicas. bles permiten extender funcionalidades ha-
sualizar, analizar, comunicar y hasta prede- bituales y manejar cubos u otros modelos de
cir el comportamiento de nuestro negocio. Recordemos que a principios de la década del indexación que dan acceso rápido y eficiente
Pero debemos recordar que lo que habilita noventa, las empresas comprendieron que a a los datos sin sacrificar demasiado espacio en
todas estas capacidades, es la información. pesar de que el procesamiento de las bases de disco. Hay un concepto que se llama Bitmap
Típicamente, esta información reside en datos operacionales era muy valioso y ayuda- Index que es un modelo de indexación muy
lo que conocemos como data warehouses. ba a optimizar los procesos, no podía predecir eficiente que da acceso directo a datos especí-
Sin embargo, conforme las arquitecturas comportamientos ni realizar análisis comple- ficos. Otra tecnología clave se llama Data Par-
de software se van orientando a servicios y jos. Poseían datos de gran valor, pero éstos es- titioning y permite particionar los datos por
centrando en procesos —a diferencia de en taban dispersos y con una visión diferente en meses o por años y evita tener que barrer las
datos—, también aumenta el rol que juegan cada caso. Fue entonces que nació el concepto tablas completas para buscar algo y sólo hay
los sistemas de Business Activity Monitoring del data warehouse, como una colección de que ir a esas particiones específicas.
(BAM) como fuente de información en datos orientados a un tema, integrados, histó-
tiempo real sobre la operación de negocio. ricos y no volátiles como soporte para la toma Una vez resuelto el tema del consolidado de
Adicionalmente, se introducen los Enterpri- de decisiones. información, que es dónde se guardan los
se Service Bus (ESB) como gestor de integra- datos y cómo se les llama, la tarea es crear el
ción de la información. En el transcurso de los últimos años, ha cam- modelo adecuado. Existen herramientas que
biado radicalmente la forma de almacenar la facilitan esta actividad, ya que el modelado
Repasemos entonces lo que es un data ware- información. Los modelos de datos son útiles se reealiza de manera gráfica, y desde las mis-
house, y a lo largo del artículo iremos viendo para predecir el valor de ciertos valores a partir mas herramientas es posible generar los enla-
su evolución bajo este nuevo escenario. de otros datos; se realiza una clasificación, em- ces para establecer desde que fuentes de datos
pezando por los atributos más significativos se va a traer la información que alimentará
Data Warehouse hasta terminar por los menos significativos. al warehouse. Un ejemplo de una de estas
Como sabemos, un data warehouse (DW) De esta manera es posible establecer una serie herramientas es el Oracle Warhouse Builder.
es, a fin de cuentas, una base de datos. Sin de reglas sobre qué factores o atributos afectan
embargo, la diferencia fundamental entre a cada caso del modelo, y así tener una base Integración, Clave para el Éxito
ésta y una base de datos operacional, es el a partir de la cual estimar cómo responderán Muchos todavía recuerdan que uno de los
propósito con el que se utilizan sus datos. La otros casos en el futuro. grandes problemas del data warehousing en sus
razón de ser de una base de datos operacio- comienzos era el de la integración. Esto pro-
nal, es habilitar la operación del negocio. En Herramientas para DW voca que aún hoy se piense que son necesarias
cambio, el propósito de un data warehouse es Existen diversas herramientas para la creación inversiones cuantiosas para poder enfrentar las
que sus datos puedan ser analizados, para así y mantenimiento de data warehouses. Por exigencias que requiere integrar los datos.

Miguel Cruz es responsable del área de Tecnología en Oracle México, donde ha laborado por más de 12 años. Anteriormente laboró en el Centro de Desarrollo Mecáni-
co e Innovación Tecnológica de la UNAM, desarrollando proyectos de Investigación en programas de vinculación entre el sector Académico y la Iniciativa Privada. Miguel
es Ingeniero en Computación de la Facultad de Ingeniería de la UNAM y cuenta con un MBA por parte del ITAM.

www.softwareguru.com.mx ENE-FEB 2006 27


EN PORTADA

Figura 1. Ejemplo de
Arquitectura moderna
de BI

En ese entonces, no bastaba con tener el información puede ser generadora de ne- po”. Si durante la ejecución de los procesos
manejador de base de datos más robusto del gocios, comienzan a salir de los datos de negocio se da alguna falla, el BAM nos
mercado, porque la problemática era traer los tradicionales y buscan tomar decisiones permite saber exactamente cuál fue el pun-
datos que corrían sobre otros sistemas para po- en base a imágenes, documentos de todo to del proceso donde está la falla, así como
der consolidarlos posteriormente. Esto estaba tipo y demás elementos; no sólo con base las razones de ésta.
ligado a tecnologías propietarias que hacían el en datos sino en procesos completos. Es
emprendimiento muy costoso. De esta forma, aquí donde entran las soluciones de Busi- Adicionalmente, esta capacidad nos permi-
hubo clientes que se vieron obligados a gastar ness Process Management, y en particular te apostar por una estrategia basada en un
todo su presupuesto y aún más para implantar el componente de Business Activity Moni- producto o servicio específico en un deter-
su warehouse con datos integrados. toring (BAM), o monitoreo de actividades minado mercado, y en lugar de tener que
de negocio. Como hemos visto en artículos esperar varias semanas para conocer los
En las arquitecturas orientadas a servicios, anteriores de esta revista (ver Año 1 No. 4), resultados, se puede monitorear todo en
la integración de información promete ser los sistemas BPM (BPMS) permiten mode- tiempo real, y corregir o adaptar la estrate-
una tarea más sencilla y transparente. Es lar los procesos de negocio como tales, para gia, en caso de ser necesario.
aquí que surge el concepto del Enterprise que puedan ser ejecutados por un motor
Service Bus (ESB). Existen muchas defi- de procesos, y monitoreados a través de un La figura 1 muestra los diferentes elemen-
niciones de un ESB, pero podemos verlo componente BAM, con el cual se puede ac- tos que pueden conformar una solución de
como una infraestructura de middleware ceder no sólo a los históricos, sino también “BI Unificado”, bajo el escenario descrito
que habilita y gestiona la comunicación a las instancias de procesos en tiempo real, en este artículo. Este caso particular está
—basada en estándares como web services, es decir, conforme se están ejecutando. ejemplificado con productos de Oracle,
XML y otros— entre componentes aplica- pero es posible utilizar herramientas de dis-
tivos heterogéneos. Si años atrás se aspiraba a un just in time, tintos proveedores para cada caso. A fin de
bajo el modelo de BAM se puede visualizar cuentas, esta capacidad es una de las gran-
De Datos Hacia Procesos que toda la cadena de producción esté fun- des ventajas de las arquitecturas abiertas y
Cuando las empresas reconocen que la cionando bajo el formato del “justo a tiem- orientadas a servicios.

28 ENE-FEB 2006 www.softwareguru.com.mx


Gestión del
Desempeño Corporativo
LA EVOLUCIÓN DEL BUSINESS INTELLIGENCE
Por Carlos H. García

“Las empresas que busquen superar a sus competidores deberán entender la administración del
desempeño corporativo e inmediatamente comenzar a integrar su estrategia tecnológica BI/CPM.”
—Gartner Research

Desde principios de los noventa, empeño Corporativo (CPM) es hoy una reali- Marco Conceptual de la
las empresas han venido utilizando dad y está demostrando resultados tangibles. Convergencia del BI y BPM/CPM
software de Inteligencia de Negocios para ac- El marco conceptual está basado en mejores
ceder, analizar y compartir información con el prácticas corporativas y define las principales
objetivo de entender su desempeño. La Inteli- Nota del Editor: El término Business actividades involucradas para lograr la conver-
gencia de Negocios entrega a cada usuario de Performance Management (BPM) gencia y por lo tanto, valor al negocio. Las
la organización acceso a información histórica también se utiliza para referirse a actividades son:
almacenada en diversas fuentes de datos así este tipo de soluciones. Sin embargo,
como herramientas de análisis y predicciones dado que el acrónimo es igual al de 1. Definir la estrategia del Negocio o De-
estadísticas. El resultado es la transformación Business Process Management, en partamento. Esta actividad busca la definición de
de grandes volúmenes de datos en informa- ocasiones se genera confusión, por la estrategias, factores críticos de éxito, objetivos,
ción que mejore substancialmente el proceso lo que algunos proveedores prefieren indicadores y la definición de los proyectos o ini-
de toma de decisiones en los niveles estratégi- utilizar el término Corporate Perfor- ciativas estratégicas
cos, tácticos y operativos de la organización. mance Management (CPM). 2. Modelar y Simular. En esta etapa se busca que
las organizaciones, antes de comprometer recur-
Sin embargo, a pesar de que la Inteligencia de sos económicos y humanos, puedan contar con
Negocios convencional entrega información De BI a CPM soluciones de software que les permitan simular y
muy importante, no otorga ninguna referencia La Inteligencia de Negocios aplica herramientas validar sus proyectos e iniciativas en términos de
en cómo actuar o en cómo alinear a los miem- analíticas y metodologías a información suma- maximización de ganancias y/o reducción de costos.
bros de la organización para corregir el rumbo rizada para ser entregada en forma de reportes, 3. Planeación Financiera y Presupuestos.
o materializar oportunidades de negocio. tableros de control y escenarios de análisis a los En estos tiempos modernos toda estrategia
diferentes usuarios de la organización. Las tec- corporativa deberá estar vinculada con recur-
A partir del año 2002, hemos visto la apari- nologías CPM van al siguiente nivel, uniendo la sos financieros que estarán controlados bajo
ción del concepto de Corporate Performance información provista por la Inteligencia de Ne- modelos de presupuestos. Asimismo, la em-
Management (CPM), o Administración del gocios con las estrategias financieras y operativas presas podrán hacer una planeación financiera
Desempeño Corporativo, el cuál representa de la empresa, lo cual llama a tomar acciones en donde manejen escenarios de tipo ¿Qué
una de las categorías de software empresarial concretas y, por lo tanto, se genera valor al nego- pasa si? (What if?) Para conocer los impactos
de mayor crecimiento en la actualidad. Para cio. Por ejemplo, con la Inteligencia de Negocios positivos y negativos de las decisiones finan-
entender mejor la Administración del Desem- no existe un vínculo directo entre un tablero de cieras tomadas en la empresa.
peño Corporativo podemos apoyarnos en la control (Dashboard) que identifica una excep- 4. Monitorear. Es muy importante monito-
definición que utiliza Hyperion Solutions: ción en un indicador y la acción que realizará el rear en forma continua el desempeño de la
tomador de decisiones para generar una respues- Organización por medio del seguimiento a
“un conjunto de tecnologías y procesos que per- ta de manera efectiva a esa problemática. los Indicadores definidos. Esto es posible por
miten a las Organizaciones traducir estrategias medio de la entrega de indicadores personali-
corporativas en planes de acción, monitorear la Las tecnologías de BI y CPM obtienen su zados e integrados en tableros de control vi-
ejecución de estos y proveer información que derive mayor impacto y beneficio en su convergen- sualizados por la Web.
en importantes mejoras financieras y operativas” cia, pero es muy importante mencionar que 5. Analizar. Analizar la información dará el
esta convergencia se debe dar bajo un marco beneficio de entender las excepciones en los
Por tanto, la convergencia entre la Inteligencia conceptual bien definido y una arquitectura indicadores y permitirá también identificar
de Negocios (BI) y la Administración del Des- tecnológica integrada. nuevas oportunidades de negocio.

Carlos H. García Orozco es responsable de la Dirección de Servicios Profesionales en Hyperion + Brio, empresa especializada en soluciones de BI y CPM. Carlos es licen-
ciado en Informática por la Universidad Anáhuac con especialidad en sistemas de información y mercadotecnia por el ITAM. Adicionalmente está certificado como CISA
(Certified Information System Auditor) otorgado por la Information Systems Audit and Control Association®.

www.softwareguru.com.mx ENE-FEB 2006 29


EN PORTADA

Inteligencia
Analítica de
Negocios
MÁS ALLÁ DEL
BI TRADICIONAL
Por Manuel Ruelas

En la nueva era económica, el va-


lor de las empresas reside en su ca-
pacidad para innovar, manejar información
y generar conocimiento; las empresas que
sobreviven y garantizan su permanencia en el
mercado son aquellas que se adelantan a la
alta demanda de los mercados. La otra cara
de la moneda son aquellas empresas que per-
Figura 1. Marco conceptual de CPM y BI. manecen en un estado de vigilia o alerta fren-
te a mercados y fuerzas económicas volátiles,
6. Reportear. Y finalmente, generar los repor- adaptando sus estrategias de forma reactiva.
tes tanto para el interior de la empresa como
para entidades externas o regulatorias. Latinoamérica no es la excepción a esta rea-
lidad, donde la estrategia competitiva está en
Este marco conceptual deja claramente defini- primer lugar de la agenda de cualquier direc-
das las principales actividades involucradas y la tivo. Tal estrategia típicamente se encuentra
convergencia entre CPM y BI (Ver figura 1.) estrechamente ligada a la “Información y
Conocimiento” que la empresa genera. Es
Arquitectura Tecnológica así que surge la pregunta: ¿cómo hacer de esa
Integrada información una herramienta para la toma
La mayoría de las plataformas de Inteligencia inteligente de decisiones?
de Negocio (BI) y de Administración del Des-
empeño Corporativo operan hoy de manera En los últimos años las inversiones en TI han
independiente. Sin embargo, hoy la posibili- recibido una fuerte atención por el papel estra-
dad de su convergencia nos plantea beneficios tégico que juegan en las corporaciones; sobre
muy atractivos como: todo con sistemas como ERPs, que ya son
• Proporcionar a los usuarios un punto de parte de la cadena de integración y generación
acceso único para visualizar e interactuar con Figura 2. Convergencia entre CPM y BI de información. Las empresas se están dando
todas las aplicaciones de Inteligencia de Ne- cuenta de que su activo más importante y me-
gocio y de Administración del Desempeño. nos reconocido es la información que generan,
• Habilitar el acceso universal a fuentes de datos. y pretenden sacar ventaja de éste. Sin embar-
• Mantener una sola versión de la verdad de Conclusiones go, es la forma en que se obtiene, manipula y
nuestra información. Como se ha descrito, esta convergen- usa esta información, la que puede definir el
• Una sola plataforma para administrar cia tecnológica promete ser un com- fracaso o éxito de estas iniciativas.
y controlar. ponente trascendental e indispensable
• Y, mantener un costo total de propiedad en el proceso de transformación de las En esta nueva vertiente de conocimiento
(TCO) bajo. empresas modernas. Es evidente que aplicado se integra un nuevo jugador para
la tecnología hoy por hoy está dispo- cambiar el rol de toma de decisiones basadas
Actualmente, existen plataformas como la nible y que los procesos de negocio en reporteo. Este nuevo jugador es denomi-
de Hyperion® System 9TM (Ver figura 2), están bien definidos, sólo resta que nado como Analytics, y se refiere a las capa-
la cuál permite una convergencia real entre nosotros, la gente de Tecnologías de cidades analíticas de información que son
las aplicaciones de Inteligencia de Negocio Información, seamos los promotores la evolución de los sistemas de Inteligencia
y de Administración del Desempeño, entre- del cambio y de la transformación or- de Negocios actuales. A esta generación de
gando la información por medio de una sola ganizacional para llevar a cada una de soluciones se le conoce como “Inteligencia
interfaz Web incrementado el nivel de adop- nuestras empresas al siguiente nivel. Analítica de Negocios”.
ción por parte de los usuarios. Para los pro-
fesionales de TI, ofrece una administración Haciendo al BI Realmente In-
centralizada e incorpora la gestión de datos teligente
maestros (Master Data Management, MDM) Referencias Como sabemos, las aplicaciones tradiciona-
que sincroniza los datos y catálogos almace- • Lee Geishecker, Nigel Rayner. “Corporate les de BI generan reportes con información
nados en las diversas fuentes de información Performance Management: BI Collides with histórica, de tal forma que se obtiene una
evitando con esto inconsistencias. ERP.” Gartner Research, ID: SPA-14-9282. radiografía de lo que había sucedido, y no de

30 ENE-FEB 2006 www.softwareguru.com.mx


lo que podría suceder. Haciendo una analogía de Maximizando el Retorno
lo que estos sistemas tradicionales proponen, es de Inversión
como viajar en un automóvil y ver por el espejo Para obtener la máxima recuperación de la
retrovisor aquel trayecto de la carretera que ya se inversión a través de la implantación de In-
ha recorrido, pero sin poder ver la parte del cami- teligencia Analítica de Negocios, las empre-
no que está al frente y que representa el futuro, el sas deben ser muy claras respecto al objetivo
trayecto del camino al cual se debe de anticipar comercial que respaldará esta aplicación. El
para dirigir los movimientos adecuados en la di- retorno de inversión se genera gracias a las res-
rección correcta. puestas que ofrece sobre aspectos importantes
del negocio, sin embargo, a muchas empresas
Hablar de Inteligencia Analítica (Business Analy- se les dificulta definir las solicitudes que de-
tics) es hablar de capacidades superiores que per- ben plantear y los datos que serán necesarios
miten predecir escenarios, estas soluciones se han para responderlas.
desarrollado por más de diez años y han evolucio-
nado de ser bases de datos o data marts, a aplica- Ahora bien, las soluciones analíticas requieren
ciones de análisis de minería de datos y texto con menos tiempo para su implantación, y por lo tan-
modelos estadísticos. Estas capacidades analíticas to, la recuperación de la inversión es más rápida.
permiten generar escenarios de probabilidad que Además, añaden valor a las aplicaciones de inte-
definen, no el “qué pasó”, sino el “qué pasaría si”. gración de datos, sin tener que programar desde
cero o alterando la arquitectura con la cual se vie-
Imaginemos que las acciones de una empresa han ne trabajando.
mantenido un comportamiento errático en el
último año y la decisión de invertir en ella se en- Una solución analítica reorganiza la estrategia
cuentra igualmente incierta. Con la Inteligencia comercial, haciéndola más acertiva y aumen-
Analítica de Negocios es posible predecir median- tando la rentabilidad de los clientes. Con esto
te la minería de texto, aquellos acontecimientos se obtienen mejores índices de fidelidad y res-
que impactarían en el precio de las acciones y po- puesta a campañas, así como un aumento de
der anticipar su siguiente movimiento. las capacidades operativas, especialmente en lo
que se refiere a tiempos de respuesta y costos
Toda aquella persona en la que recae la respon- más bajos debido a una mejor identificación
sabilidad de mantener una estrategia de negocios del origen de los costos.
sustentable en inversiones de TI, tiene sus ojos
puestos en el valor de la información que se tra- Conclusión
duce a su vez en valor estratégico; hoy por hoy ser La empresa moderna debe de estar a la par de
competitivo no significa igualar una estrategia o la nueva economía. Lo que puede parecer un
seguir una tendencia. “plus” en las funcionalidades de Inteligencia de
Negocios, determinará en los próximos años un
Beneficios del Análisis Predictivo cambio en la forma de tomar decisiones e invertir
Estos son algunos ejemplos de los beneficios que a mediano y largo plazo. Sólo el que tenga en la
están obteniendo algunas empresas a través de la mira a sus mercados potenciales y sepa cómo y
aplicación del análisis predictivo: por qué atacarlos, podrá destacar en una justa co-
• Para la industria de telecomunicaciones es posi- mercial en la que sólo gana el que hace mejor uso
ble pronosticar qué clientes están en riesgo de per- de su información. Y usted, ¿lo está haciendo?
derse, para poder actuar a tiempo y conservarlos.
• Para la industria de retail es posible determi-
nar los productos que comprará cada uno de sus Un ejemplo de solución de Inteligencia
clientes, haciendo así ofertas personalizadas. Analítica de Negocios, es la que provee la
• Para el sector financiero es posible reducir la can- empresa SAS, que integra una herramien-
tidad de fraudes pronosticando las transacciones ta de minería de datos y texto (Enterprise
que podrían ser fraudulentas, garantizando de esa Miner 5.1) capaz de procesar ambientes
forma el cumplimiento con regulaciones interna- de diagramas de flujo, eliminando la ne-
cionales (Sarbanes Oxley o Basilea II). cesidad de programación manual e inte-
• El sector de manufactura se vería beneficia- gra una arquitectura cliente-servidor que
do al mejorar la rentabilidad de las cadenas de separa la minería computacional del ser-
abastecimiento pronosticando los requisitos vidor de la interfaz del usuario.
de los inventarios de demanda.

Manuel Ruelas es Gerente de Marketing Communication en SAS México. Se especializa en Tecnologías de


Información y Business Intelligence, y en su trayectoria ha colaborado para empresas como Sybase, y Mancera
Ernst & Young. manuel.ruelas@sas.com

www.softwareguru.com.mx
COLUMNA CÁTEDRA Y MÁS

Capital Intelectual e Inteligencia


de Negocios
El Reto en la Empresa Mexicana

L
a economía del conocimiento es un concepto que cita, y el proceso de asimilación requiere de complejos
se ha puesto de moda en las organizaciones. La in- métodos de codificación para ponerlo en forma explícita,
teligencia de negocios promete, mediante técnicas o de premeditados momentos de socialización en los que
de administración del conocimiento, identificar, clasificar y, el conocimiento se transmitirá por medio del ejemplo o la
finalmente, utilizar el capital intelectual de una manera inte- observación. Encontramos aquí el segundo reto, en una
gral en el proceso de toma de decisiones de la organización. cultura que no fomenta la cooperación y el intercambio
Se habla de las promesas de ventajas competitivas que una de información. Esta desconfianza a compartir ideas es
empresa “inteligente” puede lograr, y se consideran los alimentada en gran parte por empresas que poco hacen
costos y estrategias para la implantación de las herramien- porque el empleado se sienta parte de la organización.
tas que soportarán este proceso: portales de conocimiento,
almacenes de datos, paquetes de minería de datos y visua- Puede parecer reiterativo, pero el éxito de una empresa
lizadores de cubos OLAP. Pero si bien es cierto que estas inteligente depende de la capacidad de la alta gerencia
El Dr. Raúl A. Trejo es herramientas tecnológicas pueden extraer conocimiento para generar una cultura organizacional idónea, aún a pe-
profesor investigador importante de datos históricos y de la operación diaria, sar de las ideas preestablecidas. La empresa que implante
del Departamento también lo es que el verdadero poder de la administración el sistema de administración del conocimiento necesita
de Sistemas de
Información en el Tec del conocimiento radica en la identificación y transferencia adaptar sus programas de motivación y reconocimiento
de Monterrey, Campus del conocimiento tácito de los miembros de la organización, para reconocer y apreciar la información y conocimiento
Estado de México. Sus en la mejora y adopción de procesos basados en la expe- ordenado, codificado y compartido entre las personas.
áreas de especialidad
incluyen Ingeniería de riencia y habilidades de las personas. Este reconocimiento debe ser lo suficientemente intere-
Software, Represen- sante para que el empleado o el cliente consideren que
tación del Conoci- Y es este reconocimiento de la importancia de las personas vale la pena el esfuerzo adicional por compartirlo, y para
miento y Algoritmos
Computacionales.
en la organización el tema que me ocupa en esta columna. dar seguridad al empleado de que su trabajo no peligrará
El Dr. Trejo gusta de Pero empecemos por aceptar lo siguiente como un hecho: por ello. Este último es un punto importante, ya que en
participar en proyectos las estrategias de diferenciación tradicionales no son sufi- verdad la alta gerencia de una organización debe creer en
con estudiantes, como
cientes en el competitivo mundo de hoy, y es verdad que la importancia del capital intelectual en la organización,
el Proyecto Principia de
Integración Curricular, una efectiva implantación de un esquema de administra- darse cuenta que un despido o un abandono significa
o el Concurso FIRST ción del conocimiento puede dar esa ventaja “diferencia- una fuga de cerebros hacia la competencia. Toca a la alta
de Robótica de la dora”, cuando la directiva de la empresa se compromete gerencia iniciar el círculo virtuoso; enfrentar el estereoti-
NASA. Ha presentado
ponencias en diversos con dicho esquema en un círculo virtuoso de decisiones y po establecido. La gerencia puede, por ejemplo, ayudar
congresos interna- retroalimentación. Recordemos que la administración del a todo el proceso de administración del conocimiento al
cionales y publicado conocimiento es un proceso que realmente no termina una seleccionar profesionales capaces de documentar y com-
artículos en la revista
Artificial Intelligence. Es vez que se ha empezado. Y existe una cantidad de retos a partir la información y experiencia personal, de tal forma
miembro fundador de enfrentar si se desea tener una verdadera empresa inteli- que la empresa cuente con personal acostumbrado a la
la Asociación de Sis- gente. Quizá el primero es lograr que la empresa, en todos economía del conocimiento, facilitando y apoyando todo
temas de Información
de América Latina y el
sus niveles, acepte la propuesta de adopción de un plan de el proceso de encontrar, seleccionar, organizar, filtrar y
Caribe. inteligencia de negocios. El papel del “defensor” de la ini- presentar información.
ciativa es fundamental, y más de una persona requerirá de
un verdadero acto de fe para aceptar dicha iniciativa, cuya Es esta “evangelización” de los niveles superiores a los in-
implantación se percibe como un proceso lento. feriores la que puede lograr el cambio. El capital humano
es invaluable, y sólo contando y manteniendo dicho capital,
Y llegamos entonces al factor humano. El primer reto es las herramientas tecnológicas serán de verdadera utilidad.
que nos resistimos al cambio: las personas tienden a ser Una empresa capaz de llegar a este nivel, definitivamente
renuentes a adoptar de buena gana los procesos y siste- no estará siguiendo una moda, y en cambio estará constru-
mas que soportarán una iniciativa de inteligencia de ne- yendo bases sólidas para su planeación estratégica.
gocios, un factor que puede matar el proyecto antes de
que inicie. Y existe, además, el problema de identificar y - Raúl A. Trejo
recolectar la información dispersa entre los trabajadores,
clientes y asociados de la organización. Buena parte del *El autor agradece a Ana Lilia Otero, por las valiosas discusiones e ideas
conocimiento de una empresa se encuentra de forma tá- para esta columna.

32 ENE-FEB 2006 www.softwareguru.com.mx


PRÁCTICAS

PROGRAMACIÓN

Java 5 Por Amaury Quintero


MANEJO DE CONCURRENCIA

D
esde sus primeras versiones, Java ha inclui- de trabajo, es que se busca tener una separación entre el lanzamiento de una
do primitivas para el manejo de concurrencia, tarea, y sus políticas de ejecución. Es por ello que a diferencia de utilizar la
tales como synchronized, volatile, forma anterior de lanzar una tarea:
wait(), notify() y notifyAll(). Aunque es new Thread(algunRunnable).start();
posible desarrollar aplicaciones concurrentes a través de
estas primitivas, la verdad es que es algo complicado, y ahora debemos utilizar:
poco productivo. Por esto se creó el Java Specification miExecutor.execute(algunRunnable);
Request (JSR) 166, cuyo objetivo es proveer un conjunto
de “blocks de construcción” de alto nivel para manejar la La interfaz ExecutorService extiende a Executor y provee un marco de
concurrencia, tales como colecciones concurrentes, se- ejecución de tareas asíncronas mucho mas completo, ya que maneja colas,
máforos, repositorios de hilos (thread pools), candados programación de tareas, y permite la terminación controlada de éstas (controlled
(locks) y barreras condicionales. shutdown). En pocas palabras, permite manejar el ciclo de vida completo de los
hilos de ejecución. Adicionalmente, la interfaz ScheduledExecutorService
Uno de los resultados obtenidos como parte de este JSR es agrega soporte para la ejecución de tareas periódicas y/o con retraso.
el paquete java.util.concurrent, que ahora forma
parte de la versión 5 de Java. Este paquete provee una La clase Executors provee los métodos de fábrica (Factory Methods) a
implementación estándar, probada y de alto desempeño, través de los cuales se pueden crear los tipos y configuraciones más comunes
de elementos frecuentemente utilizados en el manejo de de Executors.
concurrencia, tales como semáforos, colas y candados. A
través del uso de estos elementos estándar, los programas Otros dos elementos de este marco de trabajo son las interfaces Callable
de Java que manejan concurrencia ahora pueden ser más y Future. Un Callable es la analogía de un Runnable —la interfaz
claros, confiables, escalables, pero sobre todo más fáciles tradicionalmente utilizada en Java para clases ejecutadas por hilos— pero mejorado,
tanto de desarrollar como de entender. ya que su ejecución puede regresar un resultado, o arrojar una excepción. Un
Future representa una referencia a una tarea asíncrona, sin importar si ésta ya
Las nuevas capacidades en Java 5 para el manejo de haya sido ejecutada, se encuentre en ejecución, o apenas esté programada para
concurrencia se pueden agrupar de la siguiente manera: su próxima ejecución. Es útil cuando uno o más hilos deben esperar a que cierto
• Nuevo marco de trabajo. resultado se produzca antes de continuar con su trabajo.
• Colecciones concurrentes.
• Candados de alto desempeño. Colecciones Concurrentes
• Sincronizadores. El paquete java.util.concurrent define colecciones para acceso concurrente,
• Variables atómicas. como es el caso de ConcurrentHashMap. Posiblemente se pregunten
• Mejoras en el JVM. ¿para qué crear un HashMap concurrente, si se puede utilizar HashTable o
Collections.synchronizedMap, que son seguras a hilos (thread-
Marco de Trabajo basado en Executors safe)? La razón es sencilla: la forma en que estos elementos logran ser seguros
El nuevo marco de trabajo gira alrededor de la interfaz a hilos, es haciendo todos sus métodos synchronized. El resultado de esto
Executor. Un Executor es un objeto que puede es que no es posible que múltiples hilos operen al mismo tiempo sobre ellos. El
ejecutar tareas Runnable. Dependiendo de la acceso se realiza de manera secuencial, lo que puede convertir esta parte del
implementación de Executor que se utilice, las tareas se código en un cuello de botella.
ejecutan en un hilo recién creado o en alguno ya existente
y estos pueden ser ejecutados de manera secuencial o En cambio, clases como ConcurrentHashMap no solamente fueron diseñadas
concurrente. Una diferencia significativa con este marco para ser seguras a hilos, sino también para tener un alto acceso concurrente.

Amaury Quintero es consultor de Itera especializado en Análisis y Diseño, donde se encarga de la iniciativa de Nuevas Herramientas de IBM Rational. Es graduado de
Cibernética-Matemática en la Universidad de La Habana, Cuba, y actualmente cursa la Maestría en Ciencias de la Computación en el CIC del IPN.

34 ENE-FEB 2006 www.softwareguru.com.mx


Esto significa que diferentes hilos pueden traslapar sus operaciones, Cuando el bloqueo y desbloqueo ocurren en diferentes
realizándolas al mismo tiempo sin necesidad de esperar a un candado. Por niveles, debemos tener cuidado para asegurarnos que todo
ejemplo, en el caso específico de ConcurrentHashMap, se puede traslapar el código que es ejecutado mientras el bloqueo está activo,
un número ilimitado de operaciones de lectura, las lecturas se pueden realizar es protegido por un bloque try-finally o try-catch
mientras se está escribiendo, y hasta 16 operaciones de escritura se pueden y así asegurarnos de que el bloqueo se libere cuando sea
traslapar entre sí. La notación en el nombre de ConcurrentXxx indica que la necesario.
clase no sólo es segura en hilos, sino que también brindará alta escalabilidad
y desempeño bajo acceso concurrente. Las implementaciones de Lock proveen funcionalidad
adicional, tal como un intento no bloqueante de adquirir un
Adicionalmente, en Java 5 se ha agregado un nuevo tipo de colección: bloqueo (tryLock()), un intento de adquirir un bloqueo
la cola (queue). Todas las implementaciones de cola que hay en java. que pueda ser interrumpido (lockInterruptibly())
util.concurrent están diseñadas para operación concurrente. Por y el intento de adquirir un bloqueo que puede caducar
ejemplo, la clase ConcurrentLinkedQueue implementa una cola tipo (tryLock(long, TimeUnit)).
FIFO (first in, first out) utilizando un algoritmo libre de espera que permite
que se traslapen operaciones de inserción y eliminación. También existe Sincronizadores
una interfaz BlockingQueue, que define una cola bloqueante. Este tipo El paquete java.util.concurrent incluye diversas
de colas pueden ser útiles para evitar que las colas crezcan demasiado clases que sirven como utilerías de propósito general para
y consuman muchos recursos, en el caso en que se estén insertando el manejo de acceso concurrente. Entre ellas están:
elementos a un ritmo mayor del que se retiran. • Semaphore – Un semáforo contador (Dijkstra).
Típicamente se utiliza para restringir el número de hilos
Candados de Alto Desempeño que puede tener acceso a algún recurso.
La mayoría de los elementos de java.util.concurrent no utilizan
synchronized. Entonces, ¿cómo logran ser seguros a hilos? Pues utilizan • CountDownLatch – Permite que uno o más
la nueva interfaz Lock, que tiene semántica similar a synchronized; pero hilos esperen a que ciertas operaciones que se están
ofrece alto desempeño y características adicionales, tales como la habilidad ejecutando en otros hilos sean completadas. La clase
de interrumpir un hilo que está esperando por un bloqueo, esperar un bloqueo es inicializada con un contador, y cada que se invoca
por un tiempo específico, preguntar por la disponibilidad de un bloqueo, etc. el método countDown(), se disminuye el valor del
contador, hasta que éste llega a cero, y todos los hilos
A pesar de que el uso de los mecanismos generales de los métodos y las que estaban esperando son liberados para que puedan
sentencias synchronized hace mucho más fácil utilizar bloqueos y evita continuar. Una clase CountDownLatch inicializada
muchos errores comunes, hay ocasiones en que necesitamos trabajar con a n puede ser utilizada para hacer que un hilo espere
los bloqueos de una forma más flexible. Por ejemplo, algunos algoritmos que n hilos hayan completados alguna acción o alguna
para el recorrido de estructuras de datos accedidas de manera concurrente, acción haya sido completada n veces. Esta cuenta
requieren el uso de bloqueos en cadena o mano sobre mano (hand-over-hand): regresiva sólo se puede realizar una vez. Para casos
se bloquea el nodo A, luego el nodo B, luego libera A, entonces adquiere C, en que se requiera reestablecer el conteo o realizarlo
entonces libera B y adquiere D, y así sucesivamente. Las implementaciones de varios veces, se debe utilizar la clase CyclicBarrier
la interfaz Lock habilitan el uso de tales técnicas permitiendo a un bloqueo (descrita a continuación).
ser adquirido y liberado en diferentes niveles, así como en cualquier orden.
• CycleBarrier – Permite que varios hilos esperen a
De la misma manera que esto incrementa la flexibilidad, también trae que todos hayan llegado a un punto común, o que algunos
responsabilidades adicionales. La ausencia de estructuras de bloqueo elimina hilos ocasionalmente esperen por otros. La barrera a
la liberación automática de estos, lo cual provoca que las estructuras para alcanzar es cíclica, porque puede ser reutilizada después
trabajar con este tipo de bloqueos tengan que ser manipuladas a mano. La de que los hilos en espera sean liberados. Trabaja muy
siguiente sintaxis debe ser utilizada para estos fines: parecido a CountDownLatch, sólo que el contador sí
puede ser inicializado nuevamente.
Lock l = ...;
l.lock(); • Exchanger – Permite que dos hilos se encuentren e
try { intercambien información. Es útil cuando se utiliza un hilo para
// accedemos al recurso protegido por este llenar un buffer con cierta información, y otro hilo para retirarla.
bloqueo
} finally { Variables Atómicas
l.unlock(); El paquete java.util.concurrent.atomic incluye
} varias clases para el manejo atómico de valores simples,
tales como AtomicInteger, AtomicLong, y AtomicReference.

www.softwareguru.com.mx ENE-FEB 2006 35


PRÁCTICAS

PROGRAMACIÓN

A través de éstas, podemos realizar operaciones


aritméticas, así como comparación y manipulación de Un Ejemplo Real
valores para leer y actualizar elementos como contadores, Hace algún tiempo, en un proyecto, tuvimos la necesidad de investigar
números de secuencia, y referencias a objetos. Todas estas el estado de algunos servicios en nodos remotos, para esto se diseñó un
operaciones son seguras a hilos y con alto desempeño en subsistema que comprobaba la disponibilidad de estos servicios en otra
escenarios concurrentes. máquina. ¿Cómo llevábamos esto a cabo? Pues rastreando qué puertos
en el sistema remoto estaban disponibles para recibir información. Al
Uno de los métodos característicos de estas clases, es el principio, en nuestras pruebas, detectamos que para hacer esta tarea,
compareAndSet, que tiene la forma: el subsistema tomaba mucho tiempo, aproximadamente 6 minutos
boolean compareAndSet(expectedValue, para recorrer los 65536 puertos de los que dispone una computadora.
updateValue); Aquí se decidió cambiar la arquitectura de este subsistema y hacerla
concurrente, dividiendo estos puertos entre múltiples hilos de
Con este método, se provee un valor esperado, y un valor ejecución. Al hacer esta modificación, observamos un incremento
deseado. Si el valor actual del objeto es igual al valor impresionante en el tiempo de respuesta de la aplicación, ya que los
esperado, entonces se procede a realizar la actualización puertos de la máquina son recursos de entrada salida y son atendidos
con el valor deseado y se regresa un true. De lo contrario, por un procesador auxiliar, lo que provoca que el tiempo que tarda el
la operación no se realiza y se regresa un false. puerto en responder sea aprovechado por los otros hilos en encuestar
otro conjunto de puertos que faltasen por responder, incluso si estamos
Mejoras en el JVM en un ambiente de solamente un procesador.
Además de las clases en java.util.concurrent,
Java 5 incluye mejoras a nivel de la máquina virtual Aplicando lo Aprendido
(JVM), para mejorar el manejo de concurrencia. Una de A continuación mostraré a grandes rasgos cómo implementar esta
estas mejoras es la capacidad para medir tiempos con aplicación utilizando las clases de java.util.concurrent.
precisión de nanosegundos. Con este objetivo se agregó
el método System.nanoTime(). Este método provee Para obtener a nuestro objeto de ejecución (Executor), invocaremos
un timestamp que sirve para medir tiempos relativos, el método Executors.newFixedThreadPool(), el cual crea un
es decir, cuánto tiempo pasa entre un momento y otro, repositorio de hilos de tamaño fijo y nos regresa un ExecutorService,
pero no es útil para obtener tiempos absolutos, por que se ocupará de ejecutar todos los hilos que se levanten en la aplicación
ejemplo en base a un calendario. a través de su método execute().

Otra mejora importante a nivel de la máquina virtual, Posteriormente creamos el objeto que va a realizar el trabajo. En este caso,
y que es la que habilita muchas de las mejoras en el crearemos una clase PortReader, que se ocupará de leer el estado de
desempeño de acceso concurrente en Java 5, es el un conjunto de puertos de la máquina destino. Esta clase implementa la
acceso a operaciones de tipo compare-and-swap. interfaz Runnable y por lo tanto debe implementar el método run(),
Sucede que la mayoría de los procesadores modernos que es el que se ejecuta concurrentemente por cada hilo. En nuestro caso,
diseñados para ambientes multiprocesador proveen aquí es donde vamos a investigar si un determinado puerto está abierto o
primitivas de hardware especialmente diseñadas no en el nodo especificado.
para acceso concurrente. Los procesadores Sparc e
Intel soportan un mecanismo denominado compare- Seguidamente se genera el hilo recién creado con la llamada a execute().
and-swap (CAS), mientras que los PowerPC manejan Por último, el ExecutorService es destruido para liberar los recursos,
algo llamado load-linked/store-conditional (LL/SC). a través del método shutdown().
Anteriormente, las clases de Java no tenían acceso
a estas operaciones. Sin embargo, a partir de Java Otra parte interesante de este código es la repartición de puertos entre el
5, el JVM ya expone una operación de compare-and- número de hilos; analizando las expresiones de la cantidad real de hilos
swap, que a su vez implementa de la mejor manera que se van a levantar (threadsCount) y los números de puertos que
posible dependiendo de la arquitectura de procesador rastreará cada uno de los hilos (spni y epni).
utilizado. Gracias a esto, clases como las de java.
util.concurrent puedan utilizar algoritmos no Así es como quedaría la estructura general de estos programas. Por
bloqueantes (lock-free algorithms), los cuales proveen cuestión de simplicidad se omiten cuestiones básicas, como la definición
mucho mayor escalabilidad que aquellos que requieren de constantes o referencia a paquetes que se deben importar:
bloqueo (por ejemplo a través de synchronized)
para proteger los datos compartidos.

36 ENE-FEB 2006 www.softwareguru.com.mx


public class PortScanner {
...
...

// generamos un repositorio de hilos de tamaño fijo


ExecutorService executor = Executors.newFixedThreadPool(MAX_THREADS);

// inicializamos puerto inicial y final para cada uno de los hilos


int spni = startPort;
int epni = ((spni + threadsCount) <= endPort) ?
(spni + threadsCount) : endPort;

while (spni < epni) {


// creamos el hilo que verificará los puertos
Runnable runner = new PortReader(spni, epni);
executor.execute(runner);
spni = epni + 1;
epni = ((spni + threadsCount) <= endPort) ?
(spni + threadsCount) : endPort;
}
// liberamos el repositorio de hilos
executor.shutdown();

...
...
}

class PortReader implements Runnable {


...
...
public void run() {
Socket socket = null;
for (int i = startPort; i <= endPort; i++) {
try {
socket = new Socket(PortScanner.HOST, i);
out.printf(“host %s port %d opened\n”,
socket.getInetAddress(),socket.getPort());
socket.close();
} catch (IOException ioe) {
}
}
}
...
...
}

Listado 1. Las clases PortScanner y PortReader.

www.softwareguru.com.mx
PRÁCTICAS

PROGRAMACIÓN

El paquete java.util.concurrent incluye


diversas clases que sirven como utilerías de propósito
general para el manejo de acceso concurrente

Una solución alterna sería utilizar la clase CountDownLatch, para dividir Como se podrán imaginar, en el método scanPort()
la ejecución en n número de partes, describiendo cada parte como un incluiríamos el código para realizar la lectura del
Runnable. puertos en cuestión.

Conclusión
class PortScanner { Java 5 provee mejoras significativas para el manejo de
... concurrencia. Espero que esta pequeña introducción
... sirva como punto de partida para adentrarse en
void main() throws InterruptedException { las profundidades de estas utilerías, así como en el
CountDownLatch doneSignal = new CountDownLatch( fascinante mundo de la concurrencia.
MAX_THREADS);
Executor e = ...

for (int i = 0; i < N; ++i) { Referencias


e.execute(new PortReader(doneSignal, spni, epni)); • Brian Goetz. “A First Look at JSR 166“
} today.java.net/pub/today/2004/03/01/jsr166.html
doneSignal.await(); // espera a que todas terminen • David Holmes, Brian Goetz. “Concurrency Utilities
} in JDK 1.5”. JavaOne 2004 Conference
} • Documentación de Java 5. “Concurrency Utilities”
java.sun.com/j2se/1.5.0/docs/guide/concurrency
class PortReader implements Runnable {
private final CountDownLatch doneSignal;
private final int startPort;
private final int endPort;

PortReader(CountDownLatch doneSignal, int startPort,


int endPort) {
this.doneSignal = doneSignal;
this.startPort = startPort;
this.endPort = endPort;
}

public void run() {


try {
scanPort(startPort, endPort);
doneSignal.countDown();
} catch (InterruptedException ex) {}
}

void scanPort(int startPort, int endPort) { ... }


}

Listado 2. División en N partes utilizando un CountDownLatch.

38 ENE-FEB 2006 www.softwareguru.com.mx


PRÁCTICAS

ADMINISTRACIÓN DE PROVEEDORES

SLAs Orientados a Requerimientos


de Negocio PARTE 1: PERSPECTIVA DEL CLIENTE
Por Axel Nissim S.

U
n Service Level Agreement (SLA), o Acuerdo de Nivel de acuerdo administrativo generalmente es concertado entre diferentes ejecutivos de
Servicio, es la formalización contractual de un requeri- una misma empresa o grupo empresarial que detectan un área de oportunidad para
miento de servicio entre dos partes (un solicitante y un minimizar costos o aumentar la productividad, al delegar actividades a otros con una
proveedor). Su principal ocurrencia se da en contextos de terce- mayor capacidad técnica, económica o política para solventar los requerimientos de
rización de procesos, o business process outsourcing (BPO). negocio dentro de la misma empresa. Los acuerdos formales de este tipo no son aún
muy comunes en México debido a que son pocas las empresas con el tamaño, así
Sin embargo, los SLA no sólo se dan en escenarios de outsour- como la madurez necesaria para darse cuenta de que cada área tiene oportunidades
cing. Sucede que también son una manera efectiva de formali- y ventajas especiales para la realización de ciertas actividades que inicialmente eran
zar la relación y responsabilidades entre áreas internas de una llevadas a cabo en otras partes de la empresa.
organización. Desde el punto de vista de los procesos de ne-
gocio, todos somos clientes y proveedores de distintas áreas, Identificar el Servicio
personas y stakeholders dentro de nuestra organización. En general, los servicios que subcontratamos con terceros no deben ser parte de
nuestro negocio central, o core business. Esto es, nuestro negocio puede depender
En este artículo, delinearemos de manera general la estrate- del servicio requerido, sin embargo, no constituye el producto o servicio final que
gia de definición y la pauta de negociación para el estableci- nosotros ofrecemos a nuestros propios clientes.
miento de SLAs desde la perspectiva del cliente, sin importar
si hablamos de escenarios BPO o de negociación interna, La regla de dedo es la siguiente: toda actividad que no figure en la misión de
puesto que al final la premisa es la misma, minimizar el cos- nuestra organización o área productiva dentro de la misma, es un servicio que
to, al tiempo que maximizamos el retorno de la inversión. podemos delegar a otros. Sin embargo, regirnos por esta única regla es simpli-
ficar de más las cosas, dado que no todas las organizaciones o áreas internas
El SLA como Contrato cuentan con una misión totalmente definida. La mejor forma de complementar
Los SLA han existido desde siempre, y su representación más esta regla es preguntarse: ¿forma el proceso de negocio X parte de la estrate-
común es el contrato legal, en el cual se especifican derechos gia central de mi organización? Si la respuesta es un rotundo NO, significa que
y obligaciones para dos o más partes que se comprometen podemos tercerizar el proceso. Si la respuesta es un NO a medias, debemos de
mutuamente para conseguir un objetivo común. En nuestro analizarlo con mayor profundidad antes de embarcarnos en una iniciativa de
caso estamos hablando de un contrato civil. Este contrato tercerización. Si la respuesta es un SÍ, entonces mejor convendrá el rascarnos
generalmente es definido por un área legal, que conoce la con nuestras propias uñas, pues no queremos que el proveedor se convierta en
legislación en el contexto del contrato civil, así como la regu- nuestro competidor, o arriesgarnos a perder el control sobre lo que ofrecemos a
lación interna de la compañía, pero que puede —y muchas nuestros clientes como producto o servicio final.
veces es el caso— ignorar totalmente los requerimientos de
negocio y tecnológicos que dan origen al acuerdo. Lo ideal Definir Métricas Orientadas al Negocio
para nosotros clientes, sería el contar con abogados que Una vez que hemos identificado el servicio que requerimos, así como a los pro-
además de dominar la legislación pertinente, conocieran a veedores que se especializan en él, procedemos a identificar las variables de ne-
fondo nuestro negocio y su estrategia, así como las necesi- gocio que se ven afectadas por este servicio; dígase costos, productividad, time
dades específicas que dan pie al servicio contratado. to market, calidad, ventaja tecnológica, etcétera. Estas variables deberán ser
cuantificadas y ponderadas para diversos escenarios de nivel de servicio den-
Otra representación un poco menos común en las empresas tro del contexto del proceso. Obviamente, para definir los diferentes escenarios,
mexicanas, pero no menos importante, es el acuerdo adminis- debemos conocer las medidas cuantitativas y cualitativas del proceso, así como
trativo de servicios, mismo que no tiene implicaciones legales las entradas y las salidas del mismo. Es de especial importancia este paso dado
ni coercibilidad por parte de las autoridades gubernamenta- que, como expuse en un artículo anterior, “lo que no se puede medir, no se pue-
les, y restringe su jurisdicción al interior de la compañía. Este de controlar” (véase “BPM Aplicado al Desarrollo de Software”, SG Año 1 No. 4).

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 Américas, y ha laborado como consultor en algoritmos para seguridad e inte-
ligencia artificial. Actualmente trabaja de manera estratégica en la definición de metodologías y herramientas de workflow en megaproyectos basadas en redes sociales,
planeando sacar al mercado el producto resultante.

40 ENE-FEB 2006 www.softwareguru.com.mx


En las diferentes disciplinas de TI, generalmen- terna (y secreta por cierto), de evaluar a nuestro
te nos encontramos con muchas métricas que proveedor en su propuesta y, posteriormente,
pertenecen a un estricto contexto técnico y que en la prestación concreta del servicio.
no nos dicen nada acerca del costo real o del
impacto productivo de las actividades respecto Evaluar Proveedores
al todo que constituye el negocio. Siempre que Una vez identificadas las métricas y alineadas a
sea posible (y siempre lo es), nuestro objetivo los requerimientos de negocio, podemos acer-
será obtener métricas y variables que nos digan carnos a los proveedores para evaluar de ma-
algo acerca del valor para el negocio que tienen nera concreta sus propuestas. Generalmente,
nuestros procesos. Si somos parte del área de TI los proveedores buscarán convencernos de ma-
de una compañía de servicios y queremos terce- nejar métricas técnicas como requerimientos,
rizar el soporte técnico, midamos el impacto en además de manejar contratos a precio variable.
horas muertas resultante de una infraestructu- Los proveedores están muy acostumbrados a
ra improductiva, sin preocuparnos demasiado esto, y es de especial importancia que nos man-
por medir el número de estaciones de trabajo tengamos firmes en nuestra postura respecto
o nodos de red. Si somos parte del equipo de al manejo del acuerdo, aún y cuando el provee-
desarrollo de aplicaciones de una institución dor nos ofrezca algo que parece una verdadera
financiera, midamos el time to market de algún ganga; por ejemplo, con un precio bajísimo por
producto financiero respecto al desarrollo de hora-hombre por un número de horas determi-
las aplicaciones de software que habilitan su nado, puesto que lo que realmente intentará
operación, así como el impacto en este tiempo, hacer el proveedor con todo esto será minimizar
resultante de una fuerte rotación de personal o su nivel de riesgo, transfiriéndolo a nosotros.
la capacidad de staffing de algún proveedor, en Este tipo de esquemas en general no agregan
vez de simplemente estimar el número de horas valor a una relación de negocios, dado que no
necesarias para desarrollar. Una vez que hemos se comparte equitativamente el riesgo entre el
obtenido estas variables, traduzcámoslas siem- cliente y el proveedor.
pre a dinero, puesto que al final, es el dinero el
que define el retorno de inversión. Ya que he- El contrato que especifica un precio bajísimo
mos identificado las variables de negocio, para por hora-hombre por un número de horas de-
cada una debemos definir niveles de servicio terminado es un caso típico de las tácticas
óptimos, mínimos y deficientes. Estos niveles de los proveedores para ganar una venta sin
serán cuantificados en métricas que nos darán arriesgar demasiado, puesto que aunque finan-
el detalle necesario para saber en qué momen- cieramente estamos hablando de un precio fijo,
to los niveles de servicio son inaceptables. realmente hablamos de un precio variable al
darnos cuenta de que si el proveedor no tiene
Empatando las métricas técnicas con las va- la capacidad para cumplir en tiempo, entonces
riables de negocio y su impacto en dinero, tendremos que pagarle más para que termine
tendremos todo lo que necesitamos para su trabajo. Para un proveedor es fácil compro-
definir un buen SLA que nos dé un amplio meterse, por ejemplo, a que el desarrollo de un
margen de maniobra en la negociación para nuevo sistema le llevará seis meses, y después
obtener los resultados que esperamos, miti- facturarnos sus servicios por hora-hombre. De
gando el riesgo de que el proveedor maneje esta manera, el no terminar en tiempo sólo le
ventajosamente su propuesta. puede afectar reportándole más ingresos. Aún
La clave para la definición de SLAs orientados en el caso de que exista una cláusula en el con-
a requerimientos de negocio consiste en saber trato que especifique que si tarda más del tiem-
cómo integrar los impactos al negocio, los dine- po convenido, no se le pagará o se le cobrará
ros, y las métricas técnicas del proceso. Hacer una penalización, la práctica común de los pro-
esto, por muy difícil que parezca, es muy simple veedores suele ser el “estimar para vender”, sin
si lo visualizamos de esta manera: estar seguros de poder cumplir.
• Las variables de negocio son el requerimiento
para el proveedor. Es por esto que definiremos las penalizaciones
• El dinero es la línea base para determinar las por incumplimiento a partir del impacto directo
penalizaciones por incumplimiento. que esto tiene sobre nuestro negocio, y no so-
• Las métricas técnicas son nuestra manera in- bre lo que el proveedor considera conveniente

www.softwareguru.com.mx
PRÁCTICAS

PROGRAMACIÓN

de acuerdo al precio del servicio contratado. Si


el servicio consiste en proveer un alfiler para Ejemplo
sostener los hilos de nuestro negocio cada A continuación les muestro un ejemplo de requerimientos de negocio para un SLA,
cinco horas, penalizaremos al proveedor con donde la empresa Entrempresarios S.A. de C.V. está contratando un servicio de recu-
la pérdida resultante de ser improductivos en peración de datos:
nuestro negocio por cinco horas, y no con el • La recuperación del servicio a nivel de archivo, en caso de que se tenga que recu-
costo de un alfiler. Lo que intentamos hacer perar el mismo de un respaldo, en ningún caso deberá detener el proceso productivo
con esto es minimizar nuestro nivel de riesgo al de Entrempresarios S.A. de C.V. con un impacto mayor a tres horas-hombre indepen-
contratar un seguro contra la falla en el servicio, dientemente del horario en el que se realice la solicitud.
no llevar a la quiebra al proveedor, y así justa- • La recuperación del servicio a nivel de carpeta, en caso de que se tenga que recu-
mente hay que hacérselo entender a él. perar la misma de un respaldo, en ningún caso deberá detener el proceso productivo
de Entrempresarios S.A. de C.V. con un impacto mayor a diez horas-hombre indepen-
El proveedor que sea capaz de entregar una dientemente del horario en el que se realice la solicitud.
propuesta coherente al requerimiento de ne- • La recuperación del servicio a nivel global, en caso de que se tenga que recuperar
gocio, en la cual se especifique la manera de el repositorio completo de un respaldo, en ningún caso deberá detener el proceso
obtener los resultados que especificamos, en productivo de Entrempresarios S.A. de C.V. con un impacto mayor a cuarenta horas-
general está hablando el mismo idioma que hombre independientemente del horario en que se realice la solicitud.
nosotros. Al comparar su propuesta técnica
con nuestras métricas técnicas, podremos En este ejemplo podemos ver cómo se especifican tres requerimientos de negocio
darnos cuenta de si su solución es exagerada- para la contratación de un servicio de recuperación de datos. Estos requerimientos
mente optimista respecto al desempeño que cumplen con definir la necesidad de negocio, que es mantener a la empresa produc-
nosotros hemos identificado para el proceso, tiva independientemente de la situación en la que se presente una pérdida de datos.
o si realmente está planteando darnos los Además, podemos cuantificar directamente el costo de que no se cumpla con el re-
resultados de negocio que pedimos con un querimiento: si la pérdida de datos afecta a quince personas y se recupera el servicio
desempeño técnico inferior a lo que nosotros en cuatro minutos, se habrá perdido una hora-hombre en producción. Este es un
sabemos que es posible. En todo caso, lo que ejemplo concreto y poco común de una buena utilización de las horas-hombre para
esto nos permite es identificar el nivel de ma- la definición de requerimientos. Al final, si la empresa consigue que un proveedor
durez de nuestro proveedor, su conocimiento acepte cumplir con el requerimiento, y establece penalizaciones de acuerdo al costo
del negocio, y por tanto, el nivel de riesgo al en pérdida de negocio que se plasma en el requerimiento, estará asegurando niveles
que nos exponemos al contratar con él. operacionales y de servicio, y no solamente un número de índole técnica que sólo
tenga significado para un puñado de trabajadores en la organización.

Negociar y Establecer el Acuerdo difícil conseguir que otro proveedor tome su lu- madurez de procesos, ofrecer una solución
Al final, es poco probable que consigamos to- gar debido a que se nos identificará como una dentro de los límites de nuestros requerimien-
dos y cada uno de los puntos de nuestro reque- cuenta de alto riesgo. Es por esto que convie- tos, y asegurarse de que esta solución sea co-
rimiento, así como es poco probable conseguir ne no exagerar en lo que pedimos, puesto que rrectamente implementada. Si el proveedor
que el proveedor firme con las penalizaciones siempre habrá alguien dispuesto a vendernos el es digno de ser contratado, será únicamente
exactas que hemos definido. Aquí es donde paraíso e ir a la quiebra, desprestigiando nues- porque es capaz de cumplirnos, y esto gra-
entra la labor de negociación, la cual es tal vez tra imagen al mismo tiempo. No creo tener que cias a que ha optimizado sus procesos hasta
la parte más importante de firma de un SLA, y advertirles respecto a los peligros de dejarse ese punto dulce que nosotros no podremos
donde se afinarán esas asperezas que definiti- arrastrar por cualquier propuesta de un provee- conseguir, dado que nuestro core business es
vamente serán motivo de conflicto. Recordemos dor, puesto que asumo que ustedes saben qué otro, mientras que el de él... es fácil, es hacer
siempre que un SLA es un balance muy delicado es lo que quieren, cuándo lo quieren y cuánto lo que hace mejor que nosotros.
entre lo que queremos, lo que podemos conse- quieren que les cueste.
guir y lo que estamos dispuestos a pagar. Mi Con esto concluimos la primera parte de este
mejor consejo respecto a esto es que siempre Cabe enfatizar que nuestro trabajo como artículo, donde hablamos sobre cómo se
tengamos en mente una visión Ganar-Ganar, en clientes de un servicio de TI, no es delimitar debe establecer un SLA desde la perspectiva
la que las fuerzas económicas y los riesgos se la solución técnica al problema, sino especi- del cliente. En la próxima ocasión nos enfo-
equilibren de la mejor manera posible entre los ficar el requerimiento de negocio y evaluar la caremos en la perspectiva del proveedor, y lo
participantes. Si nuestro proveedor va a la quie- capacidad de los proveedores. El trabajo del que debe hacer para lograr un acuerdo sano
bra por nuestra culpa, o por la suya propia, será proveedor es cuantificar su propio riesgo y y exitoso.

42 ENE-FEB 2006 www.softwareguru.com.mx


TENDENCIAS EN SOFTWARE

COLUMNA
Web 2.0
Arquitectura de Participación

E
ran principios del año 2004, y la gente de O’Reilly Consecuencias
Media planeaba una conferencia enfocada en cómo El Web 2.0 está creando una nueva forma de ver y usar el
había cambiado el web después del colapso de las Internet. Algunos ejemplos son:
dot com. Decidieron bautizar tal evento como “The Web 2.0 1. Silos de datos. Sitios que originan contenido, posible-
Conference”, y fue así como surgió el término “Web 2.0”. mente utilizando RSS: MSN Spaces.
2. Agregadores de sitios de datos: Suprglu, Bloglines.
La Wikipedia define este término como una segunda fase 3. Proveedores de servicios web: Blogger, Paypal, Meebo.
en el desarrollo del World Wide Web (WWW), haciendo 4. Agregadores de servicios web: Poly9 (www.poly9.com)
referencia a uno o más de los siguientes aspectos: 5. “Smart client” o puntos finales con capacidad cinemá-
• La transición de sitios con contenido aislado, hacia tica o altamente interactiva, posiblemente usando AJAX
una plataforma de aplicaciones para usuarios finales. o Windows Presentation Foundation: World Wide Media
• Un fenómeno social que se refiere a un enfoque para Exchange (wwmx.org).
crear y distribuir contenido, caracterizado por comunica-
Luis Daniel Soto
ciones abiertas, autoridad descentralizada, libertad para ¿Cómo Desarrollar para Web 2.0? Maldonado es Direc-
compartir y reutilizar. Tal vez la característica más representativa de las aplicacio- tor de Evangelización
• Contenido más organizado en categorías y con una ar- nes Web 2.0 es que están diseñadas para la participación en Nuevas Tecnologías
en Microsoft México.
quitectura de vinculación mucho más profunda. activa, aprovechando así la inteligencia colectiva. Tal es el Entre sus funciones
• Un cambio en el valor económico del web, potencial- caso de la Wikipedia. Pero no sólo el conocimiento colectivo está la administración
mente equivalente al auge del dot com. se puede aprovechar, sino también los recursos. BitTorrent, de la relación con el
Gobierno Mexicano
un protocolo para descarga distribuida de archivos, hace para el desarrollo de la
Los escépticos indican que el término carece de significado que los clientes al mismo tiempo que descargan un archivo industria de software.
auténtico, o que son estrategias de mercadotecnia para con- sirvan como servidores para que otros descarguen. Es jurado del “Gran
Orden de Honor al
vencer de que se está creando algo nuevo donde no lo hay.
Mérito Autoral” en soft-
Sin embargo, Web 2.0 poco a poco ha ido tomando signifi- Desarrollar para Web 2.0 implica pensar en cómo utilizar ware del INDAUTOR/
cado, y la comunidad lo ha ido adoptando. Como comenta los distintos recursos disponibles de mejor forma. En el SEP y fundador de
el desarrollador y ensayista Paul Graham: “a pesar de que área de “composición de servicios web”, pueden comen- diversas asociaciones
de TI relacionadas a
aborrezco el término (Web 2.0), entiendo a qué se refiere, y zar a experimentar de la siguiente manera: inteligencia competiti-
eso es prueba de que ha comenzado a significar algo”. 1. Consulten listas de servicios web como la de www.pro- va, administración del
grammableweb.com/apis. Desafortunadamente no hay conocimiento y cons-
trucción de software.
¿Y Entonces qué es el Web 2.0? un sólo repositorio centralizado que sea “universal”. Luis Daniel Soto es
Ni siquiera quienes acuñaron este término pueden dar 2. Usen herramientas que permitan invocar múltiples ser- Ingeniero en Sistemas
una definición concreta de lo que es. La manera en que vicios web en forma simultánea y asíncrona. Por ejemplo, de la Fundación Arturo
Rosenblueth y ganó
lo explican es mencionando aplicaciones que representan WSE 3.0 (Web Services Enhacements) pero idealmente el primer lugar en el
al paradigma Web 2.0, y comparándolas con otras que re- Windows Communication Foundation (WinFX SDK) que concurso nacional
presentan al paradigma anterior. Es así que los blogs son está diseñado particularmente para este escenario. para software de ex-
portación en 1989.
representativos de Web 2.0, a diferencia de las páginas per- blogs.msdn.com/
sonales; la Wikipedia también es Web 2.0, en contraste con El Futuro luisdans
Britannica Online; o Napster, comparado con mp3.com. El ciclo de auge del Web 2.0 apenas empieza y tardará en
consolidarse, pero es altamente probable que suceda. Los
Web 2.0 y el Software atrevidos piensan ya en Web 3.0. Por ejemplo, Microsoft
como Servicio considera que las aplicaciones y datos deben ser accesi-
En el recorrido al “Saas” (Software as a service), es claro bles universalmente sin importar el dispositivo, lo cual es
un fuerte momento del concepto “Web 2.0”. Estos son un cambio evolutivo de infraestructura de cómputo que
ejemplos más concretos: aun está por suceder.
• LivePlasma (www.liveplasma.com) es un sitio que desplie-
ga relaciones entre películas o grupos musicales. Pero existe - Luis Daniel Soto
gracias a que Amazon ha hecho públicos los servicios web
de relaciones que mantiene con compradores internos. Referencias
• MSN liberó recientemente los servicios web de su Mes- • Tim O’Reilly. “What is Web 2.0?“
senger, lo que permite extender cualquier aplicación a ca- www.oreillynet.com/pub/a/oreilly/tim/news/2005/09/30/what-is-web-20.html
pacidades de presencia y comunicación entre empleados, • Paul Graham. “Web 2.0”
clientes y amistades (www.worldsbestapp.com). www.paulgraham.com/web20.html

www.softwareguru.com.mx ENE-FEB 2006 43


UML

Trabajando en Equipo
DIAGRAMAS DE INTERACCIÓN
Por Sergio Orozco y Carlos Macías

T rabajar de forma aislada podría dar resultados solamente en


ciertos contextos, pues para quien pretende alcanzar grandes
objetivos probablemente la única forma de lograrlo sea colaborando
Estos diagramas no sólo sirven para modelar interacciones en-
tre objetos de software. También son una herramienta muy útil
para modelar procesos de negocio, ya que permiten representar
con otras personas; es decir, trabajando en equipo. En cualquier pro- la interacción que se da entre los diferentes roles que ejecutan un
ceso no trivial, encontramos que son diversas áreas o roles las que proceso de negocio.
colaboran para lograr un objetivo común.
Ejemplo Básico de Interacción entre Dos Objetos
El Mundo de los Negocios Trasladado al Software Cuando un comprador le solicita a un vendedor que le venda un pro-
En un proceso de negocio nos podemos encontrar que un cliente in- ducto, ambos están interactuando. Cuando el vendedor le solicita
teractúa con un vendedor y el vendedor interactúa con el área de al comprador que liquide la venta, están teniendo otra interacción.
producción para realizar un proceso de venta. De la misma manera, También son interacciones, cuando el comprador le pide al vendedor
en un sistema de software podemos encontrar a un objeto llamado que cobre la venta y el último le entrega los productos adquiridos al
“cliente” interactuando con otro llamado “ventas” para realizar la primero. Las interacciones son peticiones o mensajes intercambia-
funcionalidad correspondiente a una venta. dos entre los objetos o elementos que colaboran.

Como sabemos, en el paradigma de orientación a objetos se busca Ayúdame que Yo te Ayudaré


representar los elementos del mundo real (ya sea físicos o abstrac- Ok, tal vez la frase original no sea como este título, pero es una rea-
tos), como objetos de un sistema de software. Estos objetos, que lidad en los procesos colaborativos. En estos, los objetos se piden
cuentan con diversas características (ver Fundamentos, SG Año 1 No. ayuda para lograr un objetivo común. El mensaje es el mecanismo me-
6), normalmente no van a funcionar en el sistema de manera aislada, diante el cual dos objetos interactúan en los diagramas de interacción
sino que requieren interactuar con otros objetos para cumplir la fun- (aplica para los dos tipos de diagramas de interacción, tanto para el de
cionalidad requerida en el sistema. secuencia como para el de comunicación). El mensaje es la forma en
que un objeto ayuda a otro a continuar con el trabajo requerido.
Modelando la Colaboración
UML define un tipo de diagramas cuyo objetivo es expresar las inte- Los mensajes se representan mediante flechas que van de un objeto
racciones que se dan entre los objetos para cumplir los requerimien- a otro. El objeto emisor del mensaje (de donde sale la flecha) le está
tos del sistema, e incluso las interacciones de elementos del mundo solicitando al objeto receptor (a donde llega la flecha) que le ayude
real (ej. Roles o áreas) para llevar a cabo procesos de negocio. Estos proporcionándole cierto servicio, es decir, podemos hablar de una
diagramas se conocen como diagramas de interacción. relación cliente-servidor entre dos objetos.

Existen dos tipos específicos de diagramas de interacción: los Un Gran Poder Implica una Gran Responsabilidad
diagramas de secuencia y los diagramas de comunicación (antes En una relación cliente-servidor, el objeto emisor es el cliente y el
conocidos como diagramas de colaboración). Aunque estos dos receptor del mensaje es el servidor. El receptor del mensaje tiene el
diagramas modelan la misma información (interacciones), ambos “poder” de ayudar al emisor, pero esto también significa que el re-
lo hacen desde una perspectiva diferente. El diagrama de secuen- ceptor tiene la “responsabilidad” de atender o procesar la petición.
cia facilita la visualización del orden en el que se llevan a cabo las
operaciones, mientras que el diagrama de comunicación facilita Uno de los aspectos clave en el paradigma orientado a objetos con-
ver qué objetos se comunican entre sí. Por ello se justifica la exis- siste en realizar una adecuada asignación de responsabilidades a los
tencia de ambos. objetos que colaboran en la realización de los procesos. Supongamos
que vamos a una tienda a adquirir un producto y, en repetidos intentos,

Sergio Orozco es Director General e Instructor Senior certificado por la OMG en Milestone Consulting. Carlos Macías es Arquitecto en Jefe e Instructor Senior en
Milestone Consulting, primer empresa mexicana miembro de la OMG, especializada en la capacitación práctica y consultoría en UML, CMM y orientación a objetos.
www.milestone.com.mx, info@milestone.com.mx

44 ENE-FEB 2006 www.softwareguru.com.mx


le solicitamos amablemente al vendedor que Cuando se modela una colaboración de ob-
nos venda lo que queremos, pero este último jetos es muy importante no confundir los
nos ignora; llegará un momento en el que eventos con las responsabilidades. De ha-
nuestra paciencia se agote y, en una forma cerlo así, podríamos llegar a modelos poco
menos amable, le exijamos al irresponsable apropiados como el que se muestra en la
vendedor que nos atienda. Bajo este escena- figura 2.
rio los dos objetos que interactúan, nosotros
como compradores y la otra persona como
vendedor, tenemos asignadas ciertas respon-
sabilidades y quien recibe la petición debe
ser el responsable de resolverla.

La figura 1 muestra al comprador interac-


tuando con el vendedor y éste a su vez con
el almacenista en un diagrama de secuencia.
En el primer y el cuarto mensaje, el compra-
dor es el emisor y por tanto juega el rol de
cliente, mientras que el vendedor se desem- Figura 2. Diagrama de secuencia incorrecto
peña como el servidor. En el tercer mensaje
los papeles se invierten, siendo el vendedor Este diagrama nos da la noción de los pasos
el cliente y el comprador el servidor. que se tienen que realizar para adquirir los
productos, pero definitivamente no refleja las
responsabilidades reales de los objetos al re-
cibir los mensajes. Por ejemplo, da a entender
que “pagar la venta” es responsabilidad del
vendedor.

Nos ha dado excelentes resultados, en las


prácticas realizadas con nuestros alumnos, re-
comendarles que los diagramas de interacción
usen una conversación imperativa en los men-
sajes, es decir ... a veces no hay que pedir, ¡hay
Figura 1. Diagrama de secuencia que dar órdenes!, pues es su responsabilidad.

En cuanto a las responsabilidades, el diagra- Pasando del Análisis al Diseño


ma de secuencia nos indica que el comprador Los diagramas de interacción permiten cu-
es responsable de liquidar la venta mientras brir la brecha natural que existe entre el
que el vendedor es responsable de atender análisis y el diseño. De hecho, son la clave
la venta y de aplicar el pago a la misma, de para evolucionar el modelo de clases de-
igual manera, el almacenista es responsable rivado del análisis (Modelo Conceptual)
de entregar los productos del almacén. hacia uno enfocado en el diseño.

Pedir Por Favor o Dar una Orden En el próximo artículo de esta serie veremos
Nótese cómo las descripciones de los men- como obtener las operaciones de las dife-
sajes no están indicando la tarea que realiza rentes clases, a partir de los mensajes que
el emisor del mensaje, sino la solicitud (u or- enviamos a los objetos en los diagramas
den) que éste le está haciendo al receptor. de interacción.

www.softwareguru.com.mx
COLUMNA PRUEBA DE SOFTWARE

El Proceso de la Prueba de Software


Lenguajes de Definición de Procesos

E
n el número anterior definimos formalmente (uti- proceso pruebas_alpha( );
lizando BNF) lo que en la literatura especializada <Historia_de_Cambios>;
se conoce como un Process Definition Language <Constantes_Tipos_Variables>
(PDL). En este número utilizaremos ese lenguaje para de-
finir de manera formal los fragmentos de un proceso de proceso gestación( );
prueba de software. <Constantes_Tipos_Variables>
proceso establecer_alcances ( ); ...
Antes de hacerlo, quisiera que recordemos que, aunque proceso definir_entregables ( ); ...
el lenguaje presenta aspectos importantes de un PDL, se proceso establecer_criterios_de_éxito ( ); ...
trata de uno muy pequeño y simple, en el que dejamos
fuera componentes importantes por cuestiones de espa- proceso establecer_criterios_para_regresiones ( );
cio, en particular lo referente al sistema de tipos y al paso ...
de parámetros. inicio
Luis Vinicio León
Carrillo es profe- si (el SUT es un sistema crítico)
sor-investigador del En su columna del número anterior, la Dra. Hanna Oktaba criterio_para_regresiones = volver a aplicar
Departamento de hablaba de dos escuelas con versiones antagónicas de lo todos los casos de prueba
Electrónica, Sistemas
e Informática del ITE- que es un proceso. En buena medida porque nuestro pe- si nó
SO, y director general queño PDL es procedural, podemos decir que se adhiere criterio_para_regresiones = volver a aplicar
de e-Quallity S.A. de a lo que ella llamaba “la escuela del SEI”. Documentar sólo el 75% de los casos de prueba
C.V., empresa espe-
cializada en prueba de
un proceso con un PDL definido formalmente facilita tam- fin;
software. Luis Vinicio bién el intercambio de ideas y de experiencias relaciona-
es doctorando por la das con procesos de software sobre bases muy precisas. proceso estimar_esfuerzo ( ); ...
Universidad Técnica
...
de Clausthal, Alema-
nia. Luis Vinicio es Esto puede ayudar a reducir discusiones sin fundamento, inicio
coautor de un marco o a descartar argumentos de empresas que se proclaman paralelizar
tecnológico que hoy a sí mismas líderes en su área porque dicen contar con inicio
permite a e-Quallity
desarrollar empresas procesos “novedosos” que ni siquiera han documentado establecer_alcances();
de prueba de soft- con el rigor metodológico suficiente. definir_entregables();
ware. En el contexto fin
de ese marco, su tesis
doctoral tiene que ver Un Subproceso de Prueba inicio
con aplicaciones de A continuación presentamos pequeños fragmentos de un establecer_criterios_de_éxito();
métodos y lenguajes subproceso de prueba de software que podrían corres- establecer_criterios_para_regresiones();
formales para hacer
más eficiente y efectiva
ponder a la fase de las pruebas alpha en el “Modelo-V” fin
la prueba de software. que se mencionó en nuestra columna del número anterior. inicio
Es co-fundador del Cabe mencionar que en esta definición, el énfasis está, estimar_esfuerzo();
Capítulo Guadalajara
de la AMCIS y su
por un lado, en mostrar el uso de las construcciones del fin
Secretario actual. PDL, y por otro, en refinar un poco más el proceso de prue- fin_p
ba de software aunque sin pretender ser exhaustivo (nos fin;
concentramos en lo que creímos que podría resultar más
interesante); algunas actividades podrían documentarse proceso planeación( );
de otra manera. <Historia_de_Cambios>;
<Constantes_Tipos_Variables>
Hemos estructurado los fragmentos de manera que sea proceso docum_admón_de_riesgos ( ); ...
explícita la consideración de las áreas de la adminis- proceso docum_admón_del_tiempo ( );...
tración de proyectos propuesta por el Project Manage- proceso docum_admón_del_personal();...
ment Institute, parte de ello se encuentra listado en el proceso docum_admón_de_la_calidad ( );...
subproceso planeación(). proceso docum_admón_de_la_comunicación();...
proceso docum_admón_de_proveedores ( );...
proceso docum_admón_de_costos ( ); ...

46 ENE-FEB 2006 www.softwareguru.com.mx


... detalle. Por ejemplo, en el proceso principal
inicio definido justo arriba, gestación y planeación
paralelizar se definen como subprocesos, mientras que
inicio aplicar_casos_de_prueba y diseñar_casos_
docum_admón_del_tiempo(); de_prueba son tareas. En la realidad, al me-
docum_admón_del_personal(); nos esta última es un subproceso complejo,
docum_admón_de_la_comunicación(); y debe llevarse a cabo utilizando alguna(s)
fin de las técnicas que mencionamos en nuestra
inicio columna del número de septiembre.
docum_admón_de_riesgos();
docum_admón_de_la_calidad(); Un aspecto importante que también se dejó
docum_admón_de_proveedores(); fuera del PDL fue el manejo de precondicio-
docum_admón_de_costos(); nes y poscondiciones de ejecución de un
fin proceso, así como la definición de sus en-
fin_p tradas y sus salidas (paso de parámetros y
fin; generación de “resultados”). El PDL podría
también permitir definir roles, insumos y
proceso cierre( ); productos de cada subproceso de la prueba
<Historia_de_Cambios>; de software, y podrían asociarse a ellos for-
<Constantes_Tipos_Variables> matos o plantillas adecuadas.
proceso cerrar_contrato ( ); ...
proceso cerrar_contrato ( ); ... Corolario
... La definición formal de un PDL permite
inicio procesarlo automáticamente mediante un
cerrar_contrato(); compilador. Este procesamiento puede
cerrar_parte_administrativa(); incluir la generación automática de docu-
fin; mentos en algún subconjunto del Español
... (un así llamado restricted language) que
respete formatos establecidos. Entre otras
inicio ventajas que esto tiene, es poder agilizar
gestación(); (y hacer más sistemática) la actividad de la
planeación(); documentación de procesos en un proyecto
reproducir_el_contexto_del_SUT; de mejora bajo algún modelo de procesos
preparar_herramientas; como CMMI o MoProSoft. Así se contribuye
mientras (no criterio_de_terminación) a mejorar la relación costo-beneficio de di-
diseñar_casos_de_prueba; cho esfuerzo, que como Hanna nos comen-
aplicar_casos_de_prueba; ta, es una de las principales preocupaciones
reportar_métricas_y_dar_seguimiento; de las organizaciones que consideran este
reportar_análisis_de_resultados; tipo de iniciativas.
fin_m;
cierre(); Por supuesto, esto aplica también si se
fin. trabajara en el marco de un modelo de ca-
lidad especializado en prueba de software,
Este PDL permite manejar el nivel de detalle tal como TPI (Test Process Improvement) o
de una actividad: si se trata de algo que debe TMM (Test Maturity Model).
ser refinado, se le define como un subproce-
so y se deben enunciar sus actividades; si es —Luis Vinicio León
una actividad relativamente sencilla, se le
trata como una tarea que no requiere mayor

www.softwareguru.com.mx
FUNDAMENTOS

Divide y Vencerás
Cuándo y Hasta Dónde Normalizar
Por Guillermo Rodríguez

El proceso de normalización de bases de datos decir, el número telefónico. De esta manera, la nueva tabla en primera
tiene como objetivo optimizar técnicamente el di- forma normal quedaría como se indica a continuación:
seño de las mismas. Así, es posible minimizar re-
dundancias y evitar anomalías relacionadas con la
manipulación de los datos.

Existen distintos niveles de normalización, según diferentes auto-


res. Sin embargo, es común encontrar que, en la práctica, llegar a Figura 2. Estructura en primera forma normal
la tercera forma normal es suficiente. La mayoría de la literatura,
enfatiza también la cuarta forma normal, la forma normal de Bo- Nótese que el atributo teléfono está ahora también subrayado, indi-
yce-Codd, y la quinta forma normal. Cada paso de una forma a la cando que es parte de una llave primaria compuesta.
siguiente implica fragmentar la base de datos en más tablas, por lo
que es común que nos preguntemos hasta dónde debemos llegar, Para pasar a segunda forma normal, es necesario verificar que no
y si realmente es mejor normalizar al máximo la base de datos para existan dependencias parciales. Es decir, que no existan atribu-
obtener un diseño óptimo. tos que puedan ser determinados por una sola parte de la llave
primaria compuesta. En realidad, este no es el caso en nuestra
Empecemos por entender la normalización básica, con el fin de obte- tabla, ya que prácticamente todos los atributos se determinan
ner mayor claridad en la respuesta. sólo con el número de nómina. Para obtener la segunda forma
normal, entonces, es necesario dividir la tabla en dos, dejando
Supongamos que tenemos la siguiente tabla de empleados: los atributos que requieren ambas partes de la llave en una y los
que requieren una parte en la otra. De ese modo, nuestras nuevas
tablas quedarían así:

Figura 1. Tabla inicial

Para entender el estado de esta tabla, es importante conocer las re-


laciones entre sus atributos. El número de nómina nos permite de-
terminar los valores de todas las columnas en un registro, por lo que
está subrayada, indicando que se trata de la llave primaria.
Figura 3. Estructura en segunda forma normal
Para encontrarse en primera forma normal, es necesario no tener gru-
pos repetidos. Esto significa que ninguna celda en la tabla debe con- Noten ahora que el atributo nómina en la segunda tabla, está aho-
tener más de un valor. Este no es el caso, ya que Luisa López tiene dos ra circulada, indicando que se ha convertido en una llave foránea,
números telefónicos. Con el fin de tener celdas atómicas, tendríamos que apunta a la primera tabla. Una llave foránea se define como
que crear un nuevo registro para Luisa y dividir sus números telefó- un atributo en una tabla, que es también la llave primaria de otra.
nicos de modo que quedara uno en cada renglón. Esto tendría como Es una redundancia necesaria para poder conectar las tablas entre
consecuencia que el número de nómina se repetiría y ya no serviría sí. Sin embargo, este paso eliminó la redundancia causada por la
como identificador único, por lo que es necesario crear una llave com- repetición del registro de Luisa López que teníamos en la primera
puesta entre el número de nómina y el atributo con más de un valor, es forma normal.

El Dr. Guillermo Rodríguez Abitia es Director de Sistemas de Información en el Tecnológico de Monterrey, Campus Estado de México, donde se especializa en temas como
Sistemas Estratégicos, Administración del Conocimiento y Transferencia de Tecnología. Guillermo participa de manera continua en conferencias internacionales, y en 1999 recibió
el reconocimiento a la mejor conferencia en el Americas Conference on Information Systems. Es presidente fundador de la Asociación de Sistemas de Información de América
Latina y el Caribe.

48 ENE-FEB 2006 www.softwareguru.com.mx


Finalmente, para llegar a tercera forma normal, es necesario elimi- la intención de optimizar su diseño técnicamente, ya que no son
nar las dependencias transitivas. Estas existen, cuando la llave pri- bases de producción con grandes operaciones simultáneas, sino
maria determina el valor de un atributo a través de otro. En nuestra que su diseño obedece al proceso mismo de toma de decisiones.
tabla de empleado, podemos conocer el nombre del departamento Así, las tablas se clasifican en tablas de hechos y de dimensiones.
a través de la clave del mismo. Por ello, es necesario crear una nue- Las tablas de hechos contienen aspectos cuantitativos de análi-
va tabla para departamento, quedando nuestro esquema como se sis, como ventas en moneda y en unidades, margen de ganancia,
muestra a continuación: etc. Las dimensiones representan los diferentes agrupamientos
o perspectivas desde los cuales se desea analizar la información
cuantitativa contenida en las tablas de hechos. Así, algunos ejem-
plos de tablas de dimensiones incluirían regiones, períodos de
tiempo, líneas de productos, etc.

Las bases orientadas a la toma de decisiones llevan una redundancia


intencional, ya que es necesario almacenar los datos de un objeto de
interés (como por ejemplo los clientes) en una sola tabla. La idea es
tener datos con diferentes niveles de agregación y de manera his-
tórica en la base, para su consulta rápida y efectiva por parte del
tomador de decisiones.

A veces, es preferible tener


Figura 4. Estructura en tercera forma normal mayor redundancia entre las
Ahora nuestro esquema se encuentra en tercera forma normal, lo
tablas con tal de poder mejorar
cual es lo que más frecuentemente encontramos en la práctica. Sin el tiempo de respuesta.
embargo, ¿es esto siempre lo más deseable?
En algunas ocasiones, se implantan cubos de análisis y visualización
Nuestro ejemplo es muy sencillo, pero muestra como una tabla se sobre bases de datos transaccionales, con el fin de facilitar decisio-
terminó convirtiendo en tres. Si pensamos en una base de datos de nes a niveles más operativos. En esos casos, se pueden establecer
una aplicación relativamente compleja, esta fragmentación puede réplicas de las mismas, para no afectar la eficiencia y desempeño de
convertirse en algo bastante considerable, con cientos de tablas en la operación, y desnormalizar para obtener niveles de redundancia
la base de datos. Esto trae como consecuencia que el desempeño que permitan un análisis más efectivo.
de las consultas se vea seriamente afectado, al tener que hacer
sentencias SQL más complicadas, con múltiples joins, afectando Y la respuesta es ...
seriamente el tiempo de respuesta de la aplicación. A veces, es pre- Como normalmente ocurre, la respuesta a nuestra pregunta de cuán-
ferible tener mayor redundancia con tal de poder mejorar el tiempo do y hasta dónde normalizar dependerá del objetivo de la base de
de respuesta. En esos casos, es preferible desnormalizar a una for- datos, así como de la naturaleza de los datos mismos. Lo importante
ma normal anterior. Esto es particularmente importante cuando la es desarrollar la habilidad para aplicar criterios de optimización en
redundancia que se está optimizando al normalizar es mínima. La cada contexto.
respuesta entonces estará en función de hacer un balance entre la
redundancia y el tiempo de respuesta.

Por otro lado, es importante recordar que la normalización sólo


es indicada cuando se trata de bases de datos transaccionales.
Las bases multidimensionales, normalmente asociadas con la
toma de decisiones, como es el caso de las data warehouses y
otras aplicaciones OLAP para inteligencia de negocios, no tienen

www.softwareguru.com.mx ENE-FEB 2006 49


TECNOLOGÍA

Triple Play y Convergencia de Redes


Aclarando las Dudas
Por Ariel García

Existe una duda razonable cuando nos preguntamos si Triple Play es lo mismo que la convergencia de redes,
pues ambos manejan la misma filosofía de una convergencia o integración en servicios de voz, datos y video.
Para eliminar esta incógnita, presentamos una explicación de ambas soluciones para que usted genere sus
conclusiones, y si alguna vez se lo preguntan, pueda entonces “ampliar” las dudas de quién lo haga.
Triple Play tóricos de estas descargas, verificar estados tarde se volvió una apuesta segura el inter-
Para aquellos que no estén familiarizados de cuentas, facturas, etc. Este es un buen conectarlas en una red: las redes permitirían
con el Triple Play, este se refiere a la entrega ejemplo, pues toma lo mejor de la interfaz a los empleados y socios de negocio colabo-
de servicios de voz, video y datos a un usua- de la televisión digital, combinándola con el rar de forma sencilla, también se reducirían
rio final. ¿Cuántos usuarios cuentan hoy servicio de telefonía. los costos al compartir recursos y reutilizar
en día con Triple Play? Si ustedes cuentan contenido y aplicaciones.
con teléfono, servicio de cable y acceso de En resumen, una definición básica de Triple
banda ancha, entonces en cierta forma po- Play es la entrega de servicios de voz, datos La realidad es que las redes aún no cumplen
dríamos decir que tiene Triple Play. Sin em- y video sobre una conexión común. Esto im- de forma completa la promesa de compartir
bargo, el verdadero Triple Play es más que plica que los usuarios cuentan con una so- recursos. El departamento de TI debe so-
una combinación de servicios, aún si estos lución más simple que se entrega a través portar arquitecturas distintas para entregar
fueran entregados por un solo proveedor y de una conexión de banda ancha. Esto por sí servicios de voz, datos y video. Esto de nin-
pagados en una sola factura. Un verdadero sólo trae el beneficio al usuario al contar con guna forma ayuda a reducir el costo total de
servicio de Triple Play es una solución inte- proveedor único, que le cuesta una sola sus- propiedad o maximizar el valor de la infor-
grada entre el proveedor y el consumidor. cripción, instalación y da soporte a los tres mación. Por ello las futuras inversiones en
servicios en una sola factura. redes deberán orientarse a una convergencia
Para el proveedor esta integración signifi- de redes total: tráfico de voz, video y datos
ca una sola interfaz de aprovisionamien- En un escenario avanzado, involucra una in- entregados a través de una sola red, una red
to, facturación y administración de los tres tegración del proveedor de servicios, quien es IP. Las tecnologías que están habilitando la
servicios. El servicio unificado sería capaz capaz de ofrecer soluciones combinando la voz, convergencia de redes, como VoIP, están co-
de ofrecer virtualmente cualquier combi- datos y video en una sola interfaz que adminis- menzando a utilizar protocolos estándar, lo
nación de servicios IP (no sólo voz, video y tra en una infraestructura común que le permite cual nos permite comenzar a invertir en esta
datos. Por ejemplo: video vigilancia, juegos reducir costos y extender sus servicios. tecnología con un riesgo menor, pero nada
en línea, citas, compras, etc.), ejecutarlos de esto nos servirá a menos que nuestra red
y administrarlos desde una infraestructura Convergencia de Redes esté administrando de forma activa el ancho
integral. Este es el verdadero beneficio de La convergencia de redes de voz, datos y de banda.
los servicios IP, una plataforma común para video es una solución para corporativos
crear y administrar servicios. Un enorme donde la colaboración y comunicación de Como resultado de esto, muchas compa-
ahorro en costos de operación y administra- toda la compañía es un componente vital. ñías se encuentran a la expectativa antes de
ción, además de una mejora en la atención Es una solución orientada a reducir cos- apostar a la convergencia de redes. Siempre
al cliente. tos y a buscar hacer más con menos. Para que apostamos por una nueva tecnología
entenderlo mejor, presentamos una ex- existe el riesgo de que los beneficios no
Para el cliente, la integración significa una plicación un poco más detallada con una sean tan grandes como esperábamos, por
apariencia común entre una variedad de serie de recomendaciones para su imple- ende, debemos tener cuidado en la adminis-
interfaces, por ejemplo: teléfono, computa- mentación, pues este es un tema donde tración de expectativas. Cualquier apuesta
dora, celular, televisión, PDA, etc. También existe mucha información a revisar. tiene riesgos, pero si éstos se conocen y ad-
significa que estos servicios están conscien- ministran de forma correcta y oportuna, se
tes de la existencia entre ellos y su interre- Las empresas se vuelven más cuidadosas logra minimizarlos.
lación, por ejemplo: un televisor en el que cuando se trata de apostar a nuevas tecno-
se pueden realizar llamadas telefónicas, logías, y la convergencia de redes no es la Un factor importante a considerar es el
recibirlas y ver en pantalla el identificador excepción. Tomemos, por ejemplo, las com- riesgo de no entrar en la convergencia de
de llamada y decidir si se toma o se manda putadoras; la mayor parte de las compañías redes. Esto nos lleva a continuar con la
directamente el buzón de voz de la compu- apostaron a las PCs pues era obvio el incre- administración y soporte de tecnologías
tadora; descargar películas y revisar los his- mento de productividad que traerían. Más excluyentes, para generar y distribuir con-

50 ENE-FEB 2006 www.softwareguru.com.mx


tenido a la empresa. No sólo se trata de Posibles Problemas
mantener redes de voz, datos y video, sino Las redes de datos no son como las redes
también de crear contenido en múltiples de voz. La gran parte de las empresas uti-
formatos para entregarse a empleados, lizan redes con arquitectura TCP/IP en la
clientes y proveedores. cual los paquetes pueden llegar atrasados,
desordenados o incluso perderse. Estos
Elementos Clave problemas de red no dañan excesivamen-
Si usted está pensando en iniciar su plan te a las aplicaciones de datos, pero para
de convergencia el próximo año, le reco- aplicaciones que son sensitivas al tiempo,
mendamos revisar los elementos clave de donde los paquetes son de voz o video, la
negocio que debe considerar y los riesgos calidad se ve afectada de forma directa si
más comunes. no se entregan dichos paquetes en tiempo
real con una pérdida mínima.
Identificar el panorama completo para el
caso de negocio de la convergencia de re- Los indicadores de calidad para redes con-
des no es difícil: la reducción en el número vergentes deben resultar familiares para los
de redes que se administran impacta de administradores de red. Los sospechosos
forma directa los costos de operación. Por comunes son: network delay, jitter y pér-
ejemplo, las líneas analógicas de nuestro dida de paquetes. Para mitigar este riesgo,
PBX se vuelven innecesarias y podremos es necesario reservar suficiente ancho de
eliminar la separación en cableado de voz banda para aplicaciones sensitivas a estos
y datos. Mover o adicionar empleados a problemas, por ejemplo, con implementa-
un solo nodo de voz/datos es más barato ciones de QoS (Quality of Service).
y sencillo que hacerlo en redes separadas.
Realizar llamadas sobre una red de datos Existe también el problema de los recursos
reduce la dependencia a proveedores exter- humanos. La realidad es que en la actuali-
nos y reduce nuestros costos de telefonía. dad la mayoría de las organizaciones en
Se reducen los costos de poseer y admi- nuestro país no cuenta con personal expe-
nistrar redes separadas, lo cual reduce las rimentado en la administración y manteni-
cargas de trabajo del staff de IT y puede de- miento de redes convergentes. Incluso hoy
dicarse a realizar nuevos proyectos. en día, muchas empresas tienen separadas
las áreas que administran las redes de voz,
La convergencia trae aplicaciones más inte- de datos y de video. El unir estos servicios
ligentes que fusionan el contenido de voz, bajo una sola administración y soporte re-
video y datos, como el streaming de video, quiere forzosamente un reentrenamiento
video chat rooms, mensajería unificada y del equipo de TI.
la entrega de contenido digital de alta ca-
lidad. Todo esto incrementa la colaboración Conclusión
y productividad de nuestro personal. En resumen, la convergencia de redes es un
concepto que se maneja comúnmente en
La convergencia bien implementada puede el ambiente empresarial y es una solución
llegar a reducir nuestros requerimientos de orientada a la reducción de costos y generar
consumo de ancho de banda, a través de las ventajas competitivas. Su implementación
nuevas tecnologías de compresión de voz y es un proyecto que afecta a toda la compa-
datos. Cuando están bien configurados, los ñía. Por ello, debe llevarse de forma integral,
sistemas de VoIP pueden comprimir la voz teniendo en cuenta sus riesgos y adminis-
y datos a fracciones del ancho de banda re- trándolos adecuadamente para obtener los
querido por una llamada analógica y mante- mayores beneficios posibles.
ner una buena calidad.

www.softwareguru.com.mx
TECNOLOGÍA

Apple
iPod Sun Microsystems
La más reciente versión del popular player de Apple, no sólo Java Workstation W2100z
presentó un cambio estético, sino también en su interior. Lo ob-
vio es el crecimiento en la pantalla, ahora de 2.5 pulgadas; y la Esta máquina ya cumplió un año en el mercado, pero sigue
reducción en el grosor y peso del iPod en sí, ambos debidos a siendo el sueño de muchos. Por fuera es bastante atractiva, y
novedades tecnológicas. Ahora, además de funcionar como un llama la atención la ausencia de conectores PS2 (exclusivamen-
reproductor de archivos de audio, también hace las veces de un te USB y Firewire). Sin embargo lo mejor está por dentro, con un
receptor de video, en el que se pueden disfrutar programas des- par de procesadores AMD Opteron 64 de hasta 2.6 GHz, capaci-
cargables desde iTunes, o videos propios convertidos al formato dad para 16 GB de RAM, y hasta cuatro discos duros de 146GB.
adecuado. En cuanto a su tamaño, la delgadez se debe a que el Otra característica importante de este equipo es la variedad de
disco interno se ha reducido considerablemente, sin afectar la sistemas operativos que soporta, ya sea en 32 o 64 bits, desde
velocidad de acceso a los datos y su capacidad. Otro detalle a re- Solaris hasta Windows XP, pasando por Red Hat Enterprise Li-
saltar es que la vida de la batería se ha extendido hasta 14 horas nux y Java Desktop System, obviamente.
de uso continuo con la carga máxima.

Linksys
Wireless-G WVC54G
Kingston
Aunque cada vez más gente utiliza webcams
para diversos usos de entretenimiento y co- U3 Data Traveler
municación, pocas novedades se han presen-
tado en el hardware. Esta opción de Linksys El estándar U3 fue desarrollado con el objetivo de permitir que los programas y
ofrece lo mejor de dos mundos, al funcionar configuraciones de usuario puedan ejecutarse directamente desde una memoria
como webcam casera en interiores y cámara USB, logrando así que estos dispositivos dejen de ser un simple almacenamien-
de seguridad en exteriores. Lo mejor es que to portátil y se conviertan en “drives inteligentes”. La visión es que un usuario
opera sin necesidad de estar conectada direc- pueda utilizar diferentes computadoras exactamente de la misma forma, ya que
tamente a una PC, ya que integra una dirección en realidad las aplicaciones y configuración se ejecutarían desde el dispositivo
IP independiente, que envía la información USB, no desde el disco duro de las computadoras. Kingston es una de las pri-
en paquete o en stream —de alta calidad, meras empresas en lanzar al mercado dispositivos que soporten este estándar,
640X480— hasta a cuatro usuarios remotos. contando con capacidades de 512 MB y 1 GB. En el sitio de U3 (www.u3.com)
Cuenta además con un ojo electrónico y micró- ya hay diferentes programas disponibles para descargar, desde procesadores de
fono integrado para grabar sonido. palabras hasta herramientas de encripción y seguridad.

52 ENE-FEB 2006 www.softwareguru.com.mx


CARRERA

¡Hey, Coach!
Coaching en un Ambiente de e-Learning
Por Carlos Sánchez

Los actuales procesos de capacitación ción, formación e investigación, que electrónico de información, recorda-
implican la producción, administración y motiva al personal a transformar la torio de eventos y alertas.
transmisión del conocimiento en todos los realidad de su entorno.
niveles de la organización, con el objetivo • Propiciar el auto desarrollo y la inte- Perfil del Coach
de mantener su sinergia y competitividad. racción entre los colaboradores. Para que un coach pueda ser un
Bajo esta perspectiva, el e-Learning es una • Lograr el compromiso y la satisfac- agente que facilite el conocimiento y
alternativa eficaz para mejorar los proce- ción de sus colaboradores mediante promueva el desarrollo y cambio de
sos de colaboración, generación y trans- la motivación, establecimiento de re- cultura en el equipo debe poseer las
misión de conocimiento, ya que vincula la tos, conciliación e integración de las siguientes características:
tecnología basada en Internet con el co- ideas que ofrece cada uno de los inte- • Profundo conocimiento de la em-
nocimiento y práctica de las personas. grantes del equipo. presa, habilidades de comunicación y
principalmente de escucha.
Lograr que todos los integrantes de una organización se Herramientas de e-Learning • Capacidad para propiciar confianza
dirijan hacia la consecución de los mismos objetivos, re- Para que un coach pueda enriquecer e identificar las cualidades del perso-
quiere trabajar mediante relaciones dinámicas de apren- el aprendizaje y la experiencia de su nal que colabora en la organización.
dizaje, propias de un modelo colaborativo, que coordine equipo, utiliza recursos tecnológicos • Asertividad, pensamiento analítico.
esfuerzos individuales y colectivos en espacios virtuales propios del e-Learning, que permiten • Capacidad de motivación y direc-
para su interacción e interrelación. su interacción, la aplicación del cono- ción para una toma de decisiones efi-
cimiento adquirido y el incremento de ciente y para encontrar en acciones
Los modelos colaborativos en el e-Learning se basan en: las capacidades de comunicación, au- pequeñas cambios contundentes.
• Relaciones de aprendizaje enfocadas a un mismo objetivo. toaprendizaje y autodeterminación. • Empatía con los colaboradores para
• Logro de mejores resultados a través del consenso grupal. identificar metas personales y colec-
• Revisión y determinación de acciones en torno a diver- Todas estas acciones se llevan a cabo tivas y el potencial de crecimiento de
sas perspectivas. en espacios virtuales de colaboración, su personal.
que son portales dinámicos con infor-
El capital intelectual de una empresa está compuesto por los mación y servicios formativos en línea.
conocimientos y la experiencia de su personal, el cual es al- Un centro de formación puede ofrecer Conclusión
macenado en forma de cápsulas de conocimiento, compues- las siguientes herramientas al coach: La relación dinámica y colaborativa que
tas por contenido inteligente de fácil aprendizaje, que resulta es capaz de establecer un coach, impreg-
útil para la toma de decisiones y solución de problemas. Para • Comunicación y actividades en gru- na la vida productiva del individuo, ya
poder transmitir y hacer explícito este conocimiento en be- po mediante herramientas síncronas que deja de ver el aprendizaje como una
neficio de la organización, es necesaria la presencia de una (charlas, aula virtual, web confe- actividad conceptual y de corta duración,
figura que denominamos coach o dinamizador. rence), y asíncronas (foros, wikis), al integrar la necesidad de aplicar el co-
conformando un ambiente de apren- nocimiento dentro de su organización.
Responsabilidades dizaje que facilita el acceso al conoci-
La tarea del coach, se enfoca al desarrollo de las capacida- miento, y promueve la comunicación La implementación del modelo co-
des y habilidades de cada una de las personas dentro de entre los integrantes. laborativo de e-Learning, junto con
una organización, para mejorar su desempeño a través de • Repositorio de documentos útiles para la conducción de un coach, conlleva
la constante reflexión de su situación actual y la determi- el desempeño de sus colaboradores. a que el personal sea consciente de
nación de acciones encaminadas a un futuro deseable. Es • Seguimiento a las actividades de sus fuerzas y debilidades y que sea
la persona encargada de guiar y conducir hacia el progre- los miembros del equipo mediante el capaz de actuar de manera positiva y
so. Su asesoramiento se caracteriza por: registro de flujos de trabajo. eficiente ante cada circunstancia que
• Brindar estrategias para la utilización del conocimiento y el • Organizador electrónico para que todos se le presenta. Por lo tanto, contribu-
desarrollo de capacidades a través del trabajo colaborativo. puedan dar seguimiento a las acciones de ye a generar una satisfacción tanto
• Fomentar una actitud crítica y la reflexión colectiva sobre planeación, organización y coordinación. personal como profesional en los co-
las prácticas laborales en un espacio virtual de comunica- • Servicio de mensajería para el envío laboradores de la organización.

Carlos Sánchez Sodi es socio fundador y director general de e-Innovation, empresa especializada en e-Learning y colaboración electrónica. Es miembro de AEFOL (Aso-
ciación de e-learning para España) y del Instituto Cataluña de Tecnología, así como miembro activo del e-Learning Guild.
www.einnovation.com.mx

54 ENE-FEB 2006 www.softwareguru.com.mx


INDEX

DIRECTORIO
Anunciante Páginas Sitio
AMCIS 55 www.amcis.org.mx
Avantare 41 www.avantare.com
Edutecsa 37 www.edutecsa.com
e-Quallity 31 www.e-quallity.net
ExpoComm 13 www.expocomm.com.mx
Grupo STI 51 www.gsti.com.mx
IBM F4 www.ibm.com/mx
Imexsoft 47 www.imexsoft.com.mx
Itera 53 www.itera.com.mx
LinuxWorld 11 www.linuxworldexpo.com.mx
Microsoft F2-1, 56-F3 www.microsoft.com/mexico
Milestone 21 www.milestone.com.mx
Oracle 07 www.oracle.com/mx
Roca Sistemas 39 www.rocasistemas.com.mx
SafeNet 33 www.safenet-inc.com
TENEMOS UN ESPACIO Sterling Commerce 45 www.sterlingcommerce.com.mx
RESERVADO PARA TI Vision Consulting 09 www.visionconsulting.com.mx
Si deseas anunciarte contáctanos
en el (55) 5239 5502 o en
ventas@softwareguru.com.mx

www.softwareguru.com.mx ENE-FEB 2006 55


Año 02 No. 01 www.softwareguru.com.mx SOFTWARE GURU CONOCIMIENTO EN PRÁCTICA Enero-Febrero 2006

You might also like