Ventajas, características e implementación de la tecnología de orientación a objetos
Enfrentándose a la complejidad
La tecnología de orientación a objetos ( OO ) , es una nueva forma de desarrollar software en base a conceptos de diseño de software convencionales, como la modularidad, la abstracción y la encapsulación de datos . En un objeto de software se combinan en un mismo lugar tanto los datos como los procedimientos o codificación necesarios para codificarlos; un conjunto de datos actuando juntos forman una aplicación . Estas funcionalidades han posicionado a la tecnología basada en la orientación a objeto como algo casi imprescindible dentro de los Departamentos de Sistemas de Información de las organizaciones .
Por qué existe tanto interés en la tecnología de orientación a objetos ? La razón que se da generalmente es que esta tecnología permite a los desarrolladores de aplicaciones enfrentarse de manera efectiva a cuestiones como las siguientes .
Complejidad
Las necesidades y requerimientos comerciales se están haciendo cada vez más complejos, y se está pidiendo a los desarrolladores crear no sólo aplicaciones independientes y autónomas, sino también sistemas integrados y distribuidos que abarquen asimismo unidades comerciales en todo el mundo . Las empresas no pueden sobrevivir únicamente en base a datos numéricos y de texto, sino que ahora requieren nuevos tipos de datos, como video, imágenes, gráficos, listas, conjuntos, tablas y sonido .
Flexibilidad
En las grandes empresas del mundo, se está difundiendo cada vez más una tendencia hacia el downsizing y el rightsizing, y se necesitan nuevos sistemas de información que puedan adaptarse a las organizaciones comerciales en cambio permanente, y a unas estructuras que conectan cada vez más a los vendedores, proveedores y clientes a través de redes mundiales .
Capacidad de respuesta
Se están introduciendo productos con más rapidez que nunca, y con frecuencia la única limitación está también en la rapidez con que los sistemas de información puedan soportarlos . Las empresas no sólo necesitan ciclos de desarrollo más rápidos, sino una mejor integración, una extracción más rápida de los datos, y la capacidad de encuadrar consultas complejas en modalidades del tipo point-and-click .
Calidad
El software debe satisfacer los objetivos comerciales en términos de facilidad de uso, rendimiento y disponibilidad . También deberá ser más rápido de desarrollar, depurar de errores, modificar y mejorar . La calidad del software está directamente relacionada con cuestiones de diseño y codificación como la modularidad, encapsulación, acoplamiento y cohesión .
Facilidad de expresión
Son pocas las empresas que hacen participar a los usuarios finales en todas las fases de los requerimientos, análisis, diseño, codificación y pruebas de un proyecto . En la mayoría de los proyectos informáticos, los usuarios finales sólo intervienen en la especificación de los requerimientos, y después se les pide que implementen un sistema doce meses más tarde . Uno de los motivos de esta situación es que los profesionales informáticos utilizan su propio vocabulario para expresar su trabajo durante las fases de análisis, diseño y codificación, un vocabulario que incluye expresiones tales como diagramas entity-relationship, gráficos jerárquicos, y lenguajes de programación . La orientación a objetos permite a los analistas y a los diseñadores de sistemas comunicarse con los usuarios finales en el lenguaje de los objetos, un lenguaje que todos hemos utilizado desde que nacimos . Poder expresar los requerimientos de los usuarios finales en términos de objetos y utilizar esos mismos términos en todo el proceso ha permitido acelerar el desarrollo de sistemas . La participación del usuario final durante todo el ciclo de vida de un proyecto garantiza unos mayores requerimientos de calidad y una mayor probabilidad de que el sistema suministrado satisfará las necesidades del usuario final .
Migración
Una empresa sólo podrá obtener los beneficios de la orientación a objetos si dispone de un plan de migración apropiado . Migrar a la orientación a objetos requiere algo más que formación en metodología y herramientas . Demanda enfoque, visión y un proceso probado y verdadero .
Enfoque
Muchos departamentos de Sistemas de Información no toman en consideración las cuestiones culturales . Las consideraciones técnicas son críticas a nivel operacional, pero no a nivel estratégico . En cualquier migración a la orientación a objetos deberán tenerse en cuenta cuestiones técnicas, como por ejemplo una posible subestimación de la resistencia al cambio que podrían ofrecer tanto la empresa como los desarrolladores de aplicaciones .
Visión
Una empresa deberá crear primero un modelo de objeto de alto nivel e identificar cómo se relacionan unos con otros los modelos de alto nivel . El modelo de objeto inicial se irá optimizando al irse implementando los proyectos, y servirá como marco o esquema para comprender la actividad comercial y desarrollar una biblioteca de objetos reutilizables .
Proceso
El proceso teórico de implementación de la tecnología de orientación a objetos puede requerir entre seis y diez años, dependiendo de la empresa de que se trate . Sin embargo, invirtiendo cuidadosamente los recursos, una empresa puede tener la seguridad de encontrarse en la vanguardia de la orientación a objetos, y no en una situación de retraso . Este proceso se puede subdividir en cinco etapas .
La Evaluación de la Tecnología puede ser un proceso de cinco meses, y se utiliza para comprender el modelo de desarrollo de orientación a objetos y las metodologías disponibles, los lenguajes y herramientas de orientación a objetos, y el impacto potencial de la orientación a objetos . En esta etapa, el equipo puede entrevistar a vendedores, y evaluar lenguajes, herramientas y metodologías, y la Dirección puede crear un perfil del personal actual ( es decir, sus habilidades y conocimientos en técnicas, lenguajes y herramientas estructuradas ) y del entorno actual ( es decir, utilización consistente o inconsistente de valores de medición o métodos )
El resultado más importante de esto es un informe que cubre la evaluación de necesidades, el impacto organizacional, recomendaciones de lenguajes y herramientas, y riesgos/beneficios de la orientación a objetos .
La Exploración de la Tecnología es un esfuerzo de seis meses para formar equipos de desarrollo en orientación a objetos, adquirir tecnología, contratar asesores y planificar y suministrar al menos dos proyectos piloto . Los proyectos piloto deberán ser importantes, pero no críticos en el tiempo, tener requerimientos definibles, añadir valor comercial y ofrecer un periodo de vida útil de entre cuatro y seis meses .
Cada equipo piloto puede aplicar su propio enfoque . Un equipo de desarrolladores con poca formación en técnicas formales estructuradas puede obtener mejores resultados utilizando un escenario de prototipos repetitivos combinado con un lenguaje de orientación a objetos que sea una extensión de un lenguaje ya existente . El objetivo es que los equipos trabajen como una unidad .
El Compromiso con la Tecnología es un trabajo de tres meses que permite tanto al usuario final como a la Dirección de Sistemas de Información analizar los resultados de la etapa anterior y decidir si hay que proceder o si hay que realizar proyectos piloto adicionales .
La Implementación de la Tecnología es una actividad de doce meses que tiene por resultado la implementación de por lo menos dos aplicaciones de producción de orientación a objetos .
La Extensión a todas las Unidades Comerciales puede re