UNIVERSIDAD DON BOSCO FACULTAD DE INGENIERÍA ESCUELA DE COMPUTACIÓN INGENIERÍA DE SOFTWARE CICLO II/2008 TEMA: Benchmarking para Competir con Ventaja Por: Roberto J. Boxwell CATEDRÁTICO: ING. MILTON NARVÁEZ GRUPO TEÓRICO: 01 INTEGRANTES: JOSÉ ALFONSO ARÁUZ PINEDA AP040155 SAN SALVADOR 29 DE JUNIO DE 2008 Benchmarking para Competir con Ventaja Por: Roberto J. Boxwell Se denomina Benchmarking al estudio comparativo en áreas o sectores de empresas competidoras con el fin de mejorar el funcionamiento de la propia organización. Estos estudios se hicieron muy populares especialmente en EEUU en la década de los ’90, y un gran número de importantes empresas los han incorporado. Sin embargo, si no se cumplen ciertos requisitos o claves, se tornará difícil concretar los objetivos planteados. El Benchmarking no es sólo un estudio comparativo de datos. Sus alcances son más extensos: apuntan al mejoramiento de la organización, de la estructura productiva o de las políticas internas para lograr ventajas competitivas.1 Según esta definición nos vamos a basar para realizar todas las posibles interrogantes que se pueden ir generando a la hora de ir entrar al tema de Ingeniería de Software. Se puede iniciar diciendo que la Técnica de Benchmarking se puede utilizar en cualquier rubro en que se esté trabajando, refiriéndonos específicamente al área de Ingeniería de Software, podemos decir que se puede emplear esta técnica haciendo referencia al área de producción, verificando el mercado externo con el cuál se está compitiendo. Se puede ver desde diferentes puntos de vista, por ejemplo: costos de producción, costos de mantenimientos, períodos en los que se dan los anteriores mencionados. Como sabemos, el benchmarking, es el espionaje industrial (según fuente de consulta) entonces se deben fijar metas y objetivos que sean capaces de ofrecer el mismo grado de confiabilidad que otras empresas, haciendo un uso diferente de los recursos (sobre todo humanos) a la hora de producción de un aplicativo, este viéndolo desde el punto de vista de una Consultora de Software. El benchmarking puede llegar a ser importante a la hora de ver el grado de funcionalidad de los sistemas computarizados. Se puede observar que los softwares son soluciones a problemas que se han presentado para que funciones de una forma mucho más optima, entonces verificando la funcionalidad de aplicaciones parecidas realizadas por otras empresas/ingenieros, la eficiencia con la que se hizo el proyecto, las ventajas que ofrecen dichas personas, los mantenimientos que se realizan a dicha aplicación, pueden ser formas óptimas y eficientes de poder realizar dicho análisis. El desempeño de los sistemas de software se mide por la velocidad con que trabaja, la confiabilidad que ofrece, la escalabilidad con la que cuenta, la respuesta rápida a falla de errores que es muy frecuente en ingeniería de software, pueden ser puntos de partida buenos para aplicar benchmarking, trazando objetivos y metas que mejoren mis estándares de trabajo y calidad profesional, para estar siempre a la vanguardia de la funcionabilidad/desempeño de los aplicativos de software. Según se ha visto en el tema sobre benchmarking, existen etapas o fases en las cuales se rige, y son las siguientes: planificación, ejecución y aplicación de mejoras. Siguiendo esta misma temática, se puede ejecutar un plan de trabajo utilizando benchmarking para la definición de requerimientos, especificaciones y el diseño del sistema. Primero, se debe de hacer una planificación de todos los requerimientos y especificaciones que se han previsto para un sistema, sentadas las bases con las que se va a trabajar, se deben de trazar objetivos y metas para las actividades en las que han sobresalido otras empresas y tomarlas como idea principal para nuestro sistema. Luego, se tiene que realizar un estudio sistemático sobre los factores claves sobre los cuales giran dichos requerimientos y especificaciones buscando y comparando con empresas que han realizado sistemas computarizados parecidos, o en su defecto, que posean sistemas parecidos estudiando el valor que tienen y el crecimiento que éste puede ir añadiendo con el pasar del tiempo. 1 Concepto tomado del artículo “Benchmarking para Competir con Ventaja” Por: Roberto J. Boxwell 2 Luego de esto, se puede ir haciendo una comparación con multinacionales o transnacionales tomándolas de guía para el análisis contiguo que llevará el sistema, tomando en cuanta las tecnología más avanzada con la que se puede contar, acordémonos que si lo estamos viendo desde el punto de partida del benchmarking, se debe ver la posibilidad de usar tecnología de punto, porque queremos sobresalir en el mercado nacional e internacional, pero si lo estamos viendo desde el punto de vista de nuestra realidad nacional (El Salvador) esto no es muy práctico debido a que acá se busca lo “más barato”, lo que está más al alcance de la mano, lo “mínimo” que se necesita para hacer funcionar un proyecto, pero desde el punto de vista de grandes empresas siempre se busca lo mejor y lo más óptimo y reciente, es por eso que se hace una visión de lo mejor que se puede ir a diseñar y posteriormente implementar un sistema. Claro está que se debe proyectar lo mejor y lo más avanzado, pero esto debe ir acompañado con las propias prestaciones e irlas comparando con las mejores. Esto es debido a que nosotros nos podemos proyectar a realizar grandes sistemas aplicativos, muy completos y modernos, pero no tenemos la capacidad económica para costarlos, refiriéndonos a compra y mantenimiento del mismo, es por eso que debemos ser concientes a qué podemos aspirar y a lo que no podemos. Todo lo anterior se debe de desarrollar mediante planes cuidadosamente diseñados para igualar y (si se puede) superar las prácticas avanzadas, es decir, para igualar o superar un software que se ha realizado previamente por un equipo de ingenieros de software, con esto se quiere decir que si se puede realizar un software mucho mas eficiente que uno que está implementado, ya que se toman los errores que poseen otros y se mejoran, se optimiza más, se hace más escalable y parametrizado si no se ha hecho, se hace un plan de financiamiento mucho más atractivo a las empresas compradoras, los mantenimientos son mejores y más eficientes, en fin es un mar de mejoras que se pueden llegar a hacer a un sistemas previamente realizado. Y todo esto debe ser compromiso de todas las personas que están involucradas en el proyecto, desde programadores, técnicos, jefes de departamentos, jefe de proyectos, etc., realizando sus tareas prácticas enfocadas al mejoramiento del sistema, evaluando cada uno de los avances que se van generando (ya que la evaluación de proyectos es una constante que se va dando en casi toda la creación del proyecto, desde sus requerimientos hasta su implementación) y cada quién supervisando los resultados que se van obteniendo a la hora de ir realizando las etapas del proyecto. Para finalizar, ¿Qué se puede decir de éste tema? ¿Cuáles son las lecciones aprendidas?, bueno se puede decir que es una herramienta excelente a la hora de realizar proyectos. Se trata de un proceso de investigación constante que busca nuevas ideas para llevar a cabo métodos, prácticas y procesos de adaptación de características positivas, con el fin de obtener lo mejor de lo mejor. El benchmarking se puede llevar a cabo tanto en la parte industrial como en la comercial y administrativa, de negocios, de fabricación de software, etc., pues no se limita a una área en especial. Se basa firmemente en contemplar y comprender no solo el mundo interno de la compañía, sino más importante aún, evaluar constantemente el externo. Es una forma de comparar lo que usted hace con las mejores practicas (best practices) implementadas por otras empresas de éxito reconocido para evaluar el desempeño y determinar los cambios. La palabra benchmarking proviene del ingles bench marck que significa marca o punto de referencia; es decir, se toma un punto de comparación para medir lo hecho por nosotros y por los demás. 3 Conclusiones El benchmarking es una nueva manera de hacer negocios, puesto que obliga a utilizar un punto de vista externo que asegure la corrección de la fijación de objetivos y así mismo, brinda un nuevo enfoque administrativo, ya que impulsa a la prueba constante de las acciones internas contra estándares externos. El benchmarking requiere de una metodología estructurada para la obtención de información; sin embargo, debe ser flexible para incorporar formas innovadoras. El benchmarking no es un mecanismo para determinar reducciones de recursos. Los recursos de reasignarán de la forma más efectiva para apoyar los procesos y obtener la satisfacción de los clientes. Además, el benchmarking debe ser un proceso continuo de la administración, que requiere una actualización constante (la recopilación y selección continua de las mejores prácticas para incorporarlas a la toma de decisiones y las funciones de comunicaciones en todos los niveles del negocio). El benchmarking es una estrategia que fomenta el trabajo de equipo al enfocar la atención sobre las prácticas de negocios para que la organización sea competitiva, supeditando el interés individual al colectivo. 4