SlideShare una empresa de Scribd logo
4
Lo más leído
PROGRAMACIÓN
ORIENTADA A
COMPONENTES
FERNANDO SOLIS
INTRODUCCIÓN
• EL USO DE COMPONENTES ES MADURO EN MUCHAS
DISCIPLINAS DE INGENIERÍA.
• EN EL AMBITO DEL SOFTWARE, RECIEN SE TIENE EXITO EN
SU USO A PARTIR DEL 1990
• LAS RAZONES DEL FRACASO SE PUEDEN ATRIBUIR A LA
NATURALEZA DEL SW.
NATURALEZA DEL SW
• LOS COMPONENTES DE SOFTWARE FUERON INICIALMENTE
CONSIDERADOS SIMILARES A LOS COMPONENTES DE HARDWARE,
COMO LOS CIRCUITOS INTEGRADOS.
• ASÍ, EL TÉRMINO ''CIRCUITO INTEGRADO DE SOFTWARE'' SE VOLVIÓ
FASCINANTE.
• TAMBIÉN SE HICIERON ANALOGÍAS DE ESTE TIPO EN LA MECÁNICA Y
LA INGENIERÍA CIVIL.
• EL SOFTWARE ES DIFERENTE A LOS PRODUCTOS DE TODAS LAS
DEMÁS DISCIPLINAS DE INGENIERÍA. EN LUGAR DE ENTREGAR UN
PRODUCTO FINAL, LA ENTREGA DE SOFTWARE SIGNIFICA LA ENTREGA
DE MODELOS PARA LOS PRODUCTOS.
LOS COMPONENTES SON PARA
COMPOSICIÓN
• LA COMPOSICION PERMITE REUSAR “COSAS PREFABRICADAS”
ADAPTANDOLAS EN EL NUEVO AMBIENTE.
• COMPONENTES DE SOFTWARE
• SON UNIDADES EJECUTABLES DE PRODUCCIÓN INDEPENDIENTES.
• ABSTRACCIONES, TALES COMO PROCEDIMIENTOS, CLASES,
MÓDULOS O APLICACIONES, PODRÍAN FORMAR COMPONENTES,
SIEMPRE Y CUANDO ESTÉN EN UNA FORMA EJECUTABLE
SUSCEPTIBLE DE SER UN COMPONENTE.
• LAS BIBLIOTECAS PROCEDURALES SON EL EJEMPLO MÁS ANTIGUO
DE LOS COMPONENTES DE SOFTWARE
• INDEPENDENCIA Y FORMA EJECUTABLE SON ESENCIALES CON EL
FIN DE PERMITIR EL DESARROLLO INDEPENDIENTE Y LA
INTEGRACIÓN ROBUSTA.
POR QUÉ PRODUCIR, COMPRAR,
DISTRIBUIR, USAR…
COMPONENTES DE SW?
• LOS COMPONENTES SON EL CAMINO A SEGUIR PORQUE TODAS
LAS DISCIPLINAS DE INGENIERÍA INTRODUJERON
COMPONENTES A MEDIDA QUE FUERON MADURANDO - Y
TODAVÍA LOS UTILIZAN.
• POCO DESPUÉS DE LA CRISIS DEL SOFTWARE SE ACUÑÓ EL
TÉRMINO, FUE PREVISTO TAMBIÉN: SOFTWARE DE CIRCUITOS
INTEGRADOS (MCILROY 1968; COX 1990) DESDE ENTONCES,
HACE 30 AÑOS, LAS PERSONAS HAN PREGUNTADO POR QUÉ
ESTE IDEA INTUITIVA REALMENTE NUNCA LLEGÓ A
REALIZARSE.
BENEFICIOS
• EL DESARROLLO DE SOFTWARE TRADICIONAL PUEDEN DIVIDIRSE EN
DOS CAMPOS.
• EN UN EXTREMO, UN PROYECTO DESARROLLADO ÍNTEGRAMENTE
DESDE CERO (LÍNEA POR LÍNEA), CON LA AYUDA SÓLO DE
HERRAMIENTAS DE PROGRAMACIÓN Y BIBLIOTECAS.
• EN EL OTRO EXTREMO, TODO ES "EXTERNALIZADO" - EN OTRAS
PALABRAS, EL SOFTWARE ESTÁNDAR SE COMPRA Y SE PARAMETRIZA
PARA PROPORCIONAR UNA SOLUCIÓN QUE ESTA LO "SUFICIENTEMENTE
CERCA" A LO QUE SE NECESITA.
ESTE TIPO DE SOFTWARE TIENE VENTAJAS SIGNIFICATIVAS (CUANDO
FUNCIONA):
• PUEDE SER ÓPTIMAMENTE ADAPTADO AL MODELO DE NEGOCIO DEL
USUARIO
• PUEDE TOMAR VENTAJA DE CUALQUIER CONOCIMIENTO DE SU PROPIEDAD
O PRÁCTICAS.
• PUEDE PROPORCIONAR UNA VENTAJA COMPETITIVA EN LA ERA DE LA
ANTECENDENTES: SW HECHO
LÍNEA POR LÍNEA (DESVENTAJAS)
• LA PRODUCCIÓN DE SW DESDE CERO ES UNA EMPRESA MUY
COSTOSA.
• EL MANTENIMIENTO Y EL SEGUIMIENTO DEL ESTADO DEL ARTE, COMO
EL INCORPORAR ACCESOS WEB, PUEDEN CONVERTIRSE EN UNA
MAYOR CARGA.
• LOS REQUERIMIENTOS DE INTEROPERABILIDAD CON OTROS SISTEMAS
LOCALES TAMBIÉN SE VEN AFECTADOS.
• COMO RESULTADO, LA MAYORÍA DE LOS PROYECTOS GRANDES
FALLAN PARCIALMENTE O TOTALMENTE, CONDUCIENDO A UN RIESGO
SUSTANCIAL. ADEMÁS, EN UN MUNDO DE RÁPIDOS Y CONTÍNUOS
CAMBIOS EN LOS REQUERIMIENTOS DE NEGOCIOS, EL SOFTWARE
HECHO LÍNEA POR LÍNEA ES USUALMENTE MUY LENTO PARA SER
PRODUCTIVO ANTES DE CONVERTIRSE EN OBSOLETO.
TENDENCIA OUTSOURCING
• FRENTE A TODAS ESTAS DESVENTAJAS MENCIONADAS, LA GRAN TENDENCIA HACIA
EL "OUTSOURCING" EN LA INDUSTRIA ES COMPRENSIBLE.
• LA PRODUCCIÓN DE SOFTWARE A MEDIDA ES SUBCONTRATADA POR DEBAJO DEL
PRECIO FIJADO, PARA LIMITAR EL RIESGO FINANCIERO, PARA CUBRIR EL RIESGO DE
TIEMPO DE SALIDA AL MERCADO.
• HAY UNA FUERTE TENDENCIA HACIA EL USO DE SOFTWARE ESTÁNDAR - ES DECIR, EL
SOFTWARE QUE ES SÓLO LIGERAMENTE AJUSTADO A LAS NECESIDADES REALES.
• LA CARGA DE MANTENIMIENTO, EVOLUCIÓN DEL PRODUCTO, Y LA
INTEROPERABILIDAD SE DEJA AL PROVEEDOR DEL PAQUETE ESTÁNDAR.
• LO QUE QUEDA ES LLEVAR LA PARAMETRIZACIÓN Y EL DETALLE DE CONFIGURACIÓN
AL PRÓXIMO LANZAMIENTO - TODAVÍA UN ESFUERZO CONSIDERABLE, PERO
INEVITABLE EN UN MUNDO DE CAMBIO.
¿QUÉ HAY DE MALO EN SOFTWARE
ESTÁNDAR?
• EN PRIMER LUGAR, SOFTWARE ESTÁNDAR PUEDE REQUERIR
UNA REORGANIZACIÓN MAYOR O MENOR DE LOS PROCESOS
DE NEGOCIO AFECTADO. AUNQUE EL PROCESO DE
REINGENIERÍA DEL NEGOCIO PUEDE VALER LA PENA EN LA
EMPRESA.
• SEGUNDO EL SOFTWARE ESTÁNDAR ES UN ESTÁNDAR.
INTENTA DAR UNA SOLUCIÓN GENERAL A UN PROBLEMA
AMPLIO. LO CUAL NOS RESTRINGE SU USO, EXCEPTO QUE SE
UTILICE EXTREMADAMENTE BIEN.
• EN TERCER LUGAR, COMO SOFTWARE ESTÁNDAR NO ESTÁ
BAJO EL CONTROL LOCAL, NO ES SUFICIENTEMENTE ÁGIL
COMO PARA ADAPTARSE RÁPIDAMENTE A LAS NECESIDADES
CAMBIANTES.
EL ESPECTRO ENTRE HACERLO
TODO Y COMPRARLO TODO
Cuando todo esta
hecho a medida, la
flexibilidad no tiene
límites pero la
rentabilidad cae en
picada.
LOS COMPONENTES SON
INEVITABLES
• EL DESARROLLO DE LA TECNOLOGÍA DE COMPONENTES EXCELENTES NO ES
SUFICIENTE PARA ESTABLECER UN MERCADO. LA DISCIPLINA ESTÁ LLENA DE
EJEMPLOS DE PRODUCTOS TÉCNICAMENTE SUPERIORES QUE NO PUDIERON
CAPTURAR MERCADOS SUFICIENTEMENTE GRANDES. ADEMÁS DE LA SUPERIORIDAD
TÉCNICA DE UN COMPONENTE SE NECESITA UNA MASA CRÍTICA PARA DESPEGAR.
• UN PARADIGMA DE COMPONENTES GANA UNA GRAN CLIENTELA SI LOS
COMPONENTES OFRECIDOS TIENEN SUFICIENTE VARIEDAD Y CALIDAD, ENTONCES,
EXISTE UN BENEFICIO OBVIO AL USAR COMPONENTES.
• UNA VEZ QUE LOS CLIENTES HAN CUBIERTO SUS NECESIDADES EN UN SEGMENTO DEL
MERCADO, EL USO DE COMPONENTES EN ESE SEGMENTO SE VUELVE INEVITABLE.
…LOS COMPONENTES SON
INEVITABLES
• SI NO SE ENCUENTRAN LOS COMPONENTES REQUERIDOS
DISPONIBLES, SE PROVOCA LA REINVENCIÓN DE SOLUCIONES.
ESTO SÓLO PUEDE SER JUSTIFICADO CUANDO LA SOLUCIÓN
CREADA ES SUPERIOR A LA ALTERNATIVA QUE SE PUEDE
COMPRAR.
• UN PRODUCTO QUE UTILIZA LOS BENEFICIOS DE LOS
COMPONENTES, ES EL QUE HACE USO DE UNA COMBINACIÓN
DE PRODUCTIVIDAD E INNOVACIÓN DE TODOS LOS
VENDEDORES DE COMPONENTES. LOS VENDEDORES DE
COMPONENTES ESTÁN ENFOCADOS EN PROVEER A MUCHOS
CLIENTES DIFERENTES Y ASÍ SER CAPACES DE PERFECCIONAR
SUS COMPONENTES RÁPIDAMENTE.
LOS COMPONENTES SON
UNIDADES DE IMPLEMENTACIÓN
• UN COMPONENTE DE SOFTWARE UNA IMPLEMENTACIÓN AISLADA DE
UN SISTEMA.
• CONTRARIO A LO QUE SE HA DICHO, LOS OBJETOS CASI NUNCA SE
COMPRAN, VENDEN O IMPLEMENTAN.
• LA UNIDAD DE IMPLEMENTACIÓN ES ALGO MAS BIEN MÁS ESTÁTICO,
COMO UNA CLASE, O, MÁS PROBABLEMENTE, UN CONJUNTO DE
CLASES, COMPILADO Y ENLAZADO EN ALGÚN PAQUETE.
• AUNQUE UN COMPONENTE PUEDE SER UNA SOLA CLASE, ES MÁS
PROBABLE QUE SEA UNA COLECCIÓN DE CLASES, ALGUNAS VECES
LLAMADO MÓDULO.
MERCADOS
• RECIENTEMENTE HAN SURGIDO MERCADOS EXITOSOS
BASADOS EN TECNOLOGÍAS DE COMPONENTES.
• COMPAÑÍAS COMO COMPONENTSOURCE.COM O
FLASHLINE.COM VENDEN MILES DE COMPONENTES YA
HECHOS, LA MAYORÍA EN COM Y CATEGORÍAS EN JAVA,
PERO COMPONENTES VCL (UNA TECNOLOGÍA DE
DELPHI/C++ BUILDER POR BORLAND) Y .NET TAMBIÉN
ESTÁN PRESENTES. COMPAÑÍAS COMO ILOG Y ROUGE WAVE
SOFTWARE GENERAN INGRESOS SUSTANCIALES AL
ENFOCARSE EN SU PRODUCCIÓN DE COMPONENTES.
BIBLIOGRAFIA
• HTTP://COMPUTACION.CS.CINVESTAV.MX/~SGARRIDO/CU
RSOS/ING_SOFT/COMPONENTES/NODE4.HTML

Más contenido relacionado

PPTX
Uml (lenguaje unificado de modelado)
PPTX
1 requisitos funcionais e não funcionais ok
PPTX
Modelos o Ciclos de vida de software
DOC
Metodologia oohdm
PPT
Caso de Uso
PPT
Sistemas Gestores de Bases de Datos
PDF
Casos de Uso 2.0 de Ivar Jacobson International SA
DOCX
Cuestionario uml y objetos zuli
Uml (lenguaje unificado de modelado)
1 requisitos funcionais e não funcionais ok
Modelos o Ciclos de vida de software
Metodologia oohdm
Caso de Uso
Sistemas Gestores de Bases de Datos
Casos de Uso 2.0 de Ivar Jacobson International SA
Cuestionario uml y objetos zuli

La actualidad más candente (20)

DOC
Plan de pruebas de software
PDF
Implementación de hilos
PPTX
Diseño de interfaz de usuario
PPT
Manual de Erwin
PDF
Diseño de interfaz de usuario
PDF
Casos de estudio para diagramas de clases
PPTX
Modelo basado en prototipos - Ingeniería de Software
PPTX
Metodologias para el desarrollo de aplicaciones web
PPT
Pruebas del Software
PPT
Diagramas de casos de uso - aula 2
PPTX
Modelo Incremental - Engenharia de Software
PPT
Normalization.ppt
PDF
Tema 3: Despliegue de aplicaciones web (Desarrollo Aplicaciones Web)
PPTX
Modelo cascada
PPT
Modelo requisitos UML
PDF
Gerência de Requisitos
PDF
IEEE 730 1989: Plan de aseguramiento de la calidad del software
PPTX
3.creacion de componentes visuales
PDF
Modelos de estruturação de sistemas distribuídos
PDF
Metodologia Diseño Web
Plan de pruebas de software
Implementación de hilos
Diseño de interfaz de usuario
Manual de Erwin
Diseño de interfaz de usuario
Casos de estudio para diagramas de clases
Modelo basado en prototipos - Ingeniería de Software
Metodologias para el desarrollo de aplicaciones web
Pruebas del Software
Diagramas de casos de uso - aula 2
Modelo Incremental - Engenharia de Software
Normalization.ppt
Tema 3: Despliegue de aplicaciones web (Desarrollo Aplicaciones Web)
Modelo cascada
Modelo requisitos UML
Gerência de Requisitos
IEEE 730 1989: Plan de aseguramiento de la calidad del software
3.creacion de componentes visuales
Modelos de estruturação de sistemas distribuídos
Metodologia Diseño Web
Publicidad

Similar a Programacion orientada a componentes (20)

PDF
Factoria software
PDF
Desarrollo de software basado en componentes
PDF
Tema1 desarrollo de software basado en componentes
PPTX
ing del software
PPTX
Desarrollo de software basado en componentes
PPTX
ciclo de vida del software, evolución y características
PPTX
Tipos de software
PPTX
Tipos de software
PPT
Exposicion unidad 1 ing software
DOCX
Tipos de software
PPTX
Problemas en el desarrollo de software.
PPTX
Unidad 1 Ingenieria de software
PPTX
Software
PPTX
PPTX
SOFTWARE
PPTX
PPTX
Software
PPTX
Fundamentos de ingenieria del software (2)
Factoria software
Desarrollo de software basado en componentes
Tema1 desarrollo de software basado en componentes
ing del software
Desarrollo de software basado en componentes
ciclo de vida del software, evolución y características
Tipos de software
Tipos de software
Exposicion unidad 1 ing software
Tipos de software
Problemas en el desarrollo de software.
Unidad 1 Ingenieria de software
Software
SOFTWARE
Software
Fundamentos de ingenieria del software (2)
Publicidad

Más de mellcv (20)

PPT
INTERACCIÓN ENTRE CLASES, GENERALIZACIÓN
PPTX
INTERACCIÓN ENTRE CLASES, HERENCIAS
PPT
Asp .net
PPTX
Asp
PPTX
Eventos
PPTX
ARREGLOS EN JAVA, VECTORES Y MATRICES
PPTX
Arquitectura basada en componentes
PPT
Poc 2
PPTX
Poc
PPTX
PAQUETES EN JAVA
PPT
EXCEPCIONES JAVA
PPTX
Programacion orientada a objetos 2
PPTX
Programacion orientada a objetos 1
PPTX
MODIFICADORES Y METODOS DE ACCESO
PPTX
INSTANCIAS Y CONSTRUCTORES EN JAVA
PPTX
ENTORNO DE DESARROLLO, ESTRUTURA GENERAL DE UN PROGRAMA
PPTX
Lenguaje de programacion java, conceptos
PPT
Principios fundamentales de la programación orientado a objetos
PPTX
Introduccion al lenguage java
PPTX
Programar aplicaciones windows forms
INTERACCIÓN ENTRE CLASES, GENERALIZACIÓN
INTERACCIÓN ENTRE CLASES, HERENCIAS
Asp .net
Asp
Eventos
ARREGLOS EN JAVA, VECTORES Y MATRICES
Arquitectura basada en componentes
Poc 2
Poc
PAQUETES EN JAVA
EXCEPCIONES JAVA
Programacion orientada a objetos 2
Programacion orientada a objetos 1
MODIFICADORES Y METODOS DE ACCESO
INSTANCIAS Y CONSTRUCTORES EN JAVA
ENTORNO DE DESARROLLO, ESTRUTURA GENERAL DE UN PROGRAMA
Lenguaje de programacion java, conceptos
Principios fundamentales de la programación orientado a objetos
Introduccion al lenguage java
Programar aplicaciones windows forms

Último (20)

PPTX
Acronis Cyber Protect Cloud para Ciber Proteccion y Ciber Seguridad LATAM - A...
PPTX
ANCASH-CRITERIOS DE EVALUACIÓN-FORMA-10-10 (2).pptx
PPTX
historia_web de la creacion de un navegador_presentacion.pptx
PPTX
Presentación PASANTIAS AuditorioOO..pptx
PDF
Plantilla para Diseño de Narrativas Transmedia.pdf
PDF
Influencia-del-uso-de-redes-sociales.pdf
PPT
El-Gobierno-Electrónico-En-El-Estado-Bolivia
PDF
clase auditoria informatica 2025.........
PPTX
Sesion 1 de microsoft power point - Clase 1
PDF
Estrategia de apoyo tecnología miguel angel solis
DOCX
Zarate Quispe Alex aldayir aplicaciones de internet .docx
PDF
SAP Transportation Management para LSP, TM140 Col18
PPTX
REDES INFORMATICAS REDES INFORMATICAS.pptx
PDF
Diapositiva proyecto de vida, materia catedra
PPT
Que son las redes de computadores y sus partes
PDF
CyberOps Associate - Cisco Networking Academy
PPTX
Presentación de Redes de Datos modelo osi
PDF
Calidad desde el Docente y la mejora continua .pdf
PDF
Instrucciones simples, respuestas poderosas. La fórmula del prompt perfecto.
PPTX
sa-cs-82-powerpoint-hardware-y-software_ver_4.pptx
Acronis Cyber Protect Cloud para Ciber Proteccion y Ciber Seguridad LATAM - A...
ANCASH-CRITERIOS DE EVALUACIÓN-FORMA-10-10 (2).pptx
historia_web de la creacion de un navegador_presentacion.pptx
Presentación PASANTIAS AuditorioOO..pptx
Plantilla para Diseño de Narrativas Transmedia.pdf
Influencia-del-uso-de-redes-sociales.pdf
El-Gobierno-Electrónico-En-El-Estado-Bolivia
clase auditoria informatica 2025.........
Sesion 1 de microsoft power point - Clase 1
Estrategia de apoyo tecnología miguel angel solis
Zarate Quispe Alex aldayir aplicaciones de internet .docx
SAP Transportation Management para LSP, TM140 Col18
REDES INFORMATICAS REDES INFORMATICAS.pptx
Diapositiva proyecto de vida, materia catedra
Que son las redes de computadores y sus partes
CyberOps Associate - Cisco Networking Academy
Presentación de Redes de Datos modelo osi
Calidad desde el Docente y la mejora continua .pdf
Instrucciones simples, respuestas poderosas. La fórmula del prompt perfecto.
sa-cs-82-powerpoint-hardware-y-software_ver_4.pptx

Programacion orientada a componentes

  • 2. INTRODUCCIÓN • EL USO DE COMPONENTES ES MADURO EN MUCHAS DISCIPLINAS DE INGENIERÍA. • EN EL AMBITO DEL SOFTWARE, RECIEN SE TIENE EXITO EN SU USO A PARTIR DEL 1990 • LAS RAZONES DEL FRACASO SE PUEDEN ATRIBUIR A LA NATURALEZA DEL SW.
  • 3. NATURALEZA DEL SW • LOS COMPONENTES DE SOFTWARE FUERON INICIALMENTE CONSIDERADOS SIMILARES A LOS COMPONENTES DE HARDWARE, COMO LOS CIRCUITOS INTEGRADOS. • ASÍ, EL TÉRMINO ''CIRCUITO INTEGRADO DE SOFTWARE'' SE VOLVIÓ FASCINANTE. • TAMBIÉN SE HICIERON ANALOGÍAS DE ESTE TIPO EN LA MECÁNICA Y LA INGENIERÍA CIVIL. • EL SOFTWARE ES DIFERENTE A LOS PRODUCTOS DE TODAS LAS DEMÁS DISCIPLINAS DE INGENIERÍA. EN LUGAR DE ENTREGAR UN PRODUCTO FINAL, LA ENTREGA DE SOFTWARE SIGNIFICA LA ENTREGA DE MODELOS PARA LOS PRODUCTOS.
  • 4. LOS COMPONENTES SON PARA COMPOSICIÓN • LA COMPOSICION PERMITE REUSAR “COSAS PREFABRICADAS” ADAPTANDOLAS EN EL NUEVO AMBIENTE. • COMPONENTES DE SOFTWARE • SON UNIDADES EJECUTABLES DE PRODUCCIÓN INDEPENDIENTES. • ABSTRACCIONES, TALES COMO PROCEDIMIENTOS, CLASES, MÓDULOS O APLICACIONES, PODRÍAN FORMAR COMPONENTES, SIEMPRE Y CUANDO ESTÉN EN UNA FORMA EJECUTABLE SUSCEPTIBLE DE SER UN COMPONENTE. • LAS BIBLIOTECAS PROCEDURALES SON EL EJEMPLO MÁS ANTIGUO DE LOS COMPONENTES DE SOFTWARE • INDEPENDENCIA Y FORMA EJECUTABLE SON ESENCIALES CON EL FIN DE PERMITIR EL DESARROLLO INDEPENDIENTE Y LA INTEGRACIÓN ROBUSTA.
  • 5. POR QUÉ PRODUCIR, COMPRAR, DISTRIBUIR, USAR… COMPONENTES DE SW? • LOS COMPONENTES SON EL CAMINO A SEGUIR PORQUE TODAS LAS DISCIPLINAS DE INGENIERÍA INTRODUJERON COMPONENTES A MEDIDA QUE FUERON MADURANDO - Y TODAVÍA LOS UTILIZAN. • POCO DESPUÉS DE LA CRISIS DEL SOFTWARE SE ACUÑÓ EL TÉRMINO, FUE PREVISTO TAMBIÉN: SOFTWARE DE CIRCUITOS INTEGRADOS (MCILROY 1968; COX 1990) DESDE ENTONCES, HACE 30 AÑOS, LAS PERSONAS HAN PREGUNTADO POR QUÉ ESTE IDEA INTUITIVA REALMENTE NUNCA LLEGÓ A REALIZARSE.
  • 6. BENEFICIOS • EL DESARROLLO DE SOFTWARE TRADICIONAL PUEDEN DIVIDIRSE EN DOS CAMPOS. • EN UN EXTREMO, UN PROYECTO DESARROLLADO ÍNTEGRAMENTE DESDE CERO (LÍNEA POR LÍNEA), CON LA AYUDA SÓLO DE HERRAMIENTAS DE PROGRAMACIÓN Y BIBLIOTECAS. • EN EL OTRO EXTREMO, TODO ES "EXTERNALIZADO" - EN OTRAS PALABRAS, EL SOFTWARE ESTÁNDAR SE COMPRA Y SE PARAMETRIZA PARA PROPORCIONAR UNA SOLUCIÓN QUE ESTA LO "SUFICIENTEMENTE CERCA" A LO QUE SE NECESITA. ESTE TIPO DE SOFTWARE TIENE VENTAJAS SIGNIFICATIVAS (CUANDO FUNCIONA): • PUEDE SER ÓPTIMAMENTE ADAPTADO AL MODELO DE NEGOCIO DEL USUARIO • PUEDE TOMAR VENTAJA DE CUALQUIER CONOCIMIENTO DE SU PROPIEDAD O PRÁCTICAS. • PUEDE PROPORCIONAR UNA VENTAJA COMPETITIVA EN LA ERA DE LA
  • 7. ANTECENDENTES: SW HECHO LÍNEA POR LÍNEA (DESVENTAJAS) • LA PRODUCCIÓN DE SW DESDE CERO ES UNA EMPRESA MUY COSTOSA. • EL MANTENIMIENTO Y EL SEGUIMIENTO DEL ESTADO DEL ARTE, COMO EL INCORPORAR ACCESOS WEB, PUEDEN CONVERTIRSE EN UNA MAYOR CARGA. • LOS REQUERIMIENTOS DE INTEROPERABILIDAD CON OTROS SISTEMAS LOCALES TAMBIÉN SE VEN AFECTADOS. • COMO RESULTADO, LA MAYORÍA DE LOS PROYECTOS GRANDES FALLAN PARCIALMENTE O TOTALMENTE, CONDUCIENDO A UN RIESGO SUSTANCIAL. ADEMÁS, EN UN MUNDO DE RÁPIDOS Y CONTÍNUOS CAMBIOS EN LOS REQUERIMIENTOS DE NEGOCIOS, EL SOFTWARE HECHO LÍNEA POR LÍNEA ES USUALMENTE MUY LENTO PARA SER PRODUCTIVO ANTES DE CONVERTIRSE EN OBSOLETO.
  • 8. TENDENCIA OUTSOURCING • FRENTE A TODAS ESTAS DESVENTAJAS MENCIONADAS, LA GRAN TENDENCIA HACIA EL "OUTSOURCING" EN LA INDUSTRIA ES COMPRENSIBLE. • LA PRODUCCIÓN DE SOFTWARE A MEDIDA ES SUBCONTRATADA POR DEBAJO DEL PRECIO FIJADO, PARA LIMITAR EL RIESGO FINANCIERO, PARA CUBRIR EL RIESGO DE TIEMPO DE SALIDA AL MERCADO. • HAY UNA FUERTE TENDENCIA HACIA EL USO DE SOFTWARE ESTÁNDAR - ES DECIR, EL SOFTWARE QUE ES SÓLO LIGERAMENTE AJUSTADO A LAS NECESIDADES REALES. • LA CARGA DE MANTENIMIENTO, EVOLUCIÓN DEL PRODUCTO, Y LA INTEROPERABILIDAD SE DEJA AL PROVEEDOR DEL PAQUETE ESTÁNDAR. • LO QUE QUEDA ES LLEVAR LA PARAMETRIZACIÓN Y EL DETALLE DE CONFIGURACIÓN AL PRÓXIMO LANZAMIENTO - TODAVÍA UN ESFUERZO CONSIDERABLE, PERO INEVITABLE EN UN MUNDO DE CAMBIO.
  • 9. ¿QUÉ HAY DE MALO EN SOFTWARE ESTÁNDAR? • EN PRIMER LUGAR, SOFTWARE ESTÁNDAR PUEDE REQUERIR UNA REORGANIZACIÓN MAYOR O MENOR DE LOS PROCESOS DE NEGOCIO AFECTADO. AUNQUE EL PROCESO DE REINGENIERÍA DEL NEGOCIO PUEDE VALER LA PENA EN LA EMPRESA. • SEGUNDO EL SOFTWARE ESTÁNDAR ES UN ESTÁNDAR. INTENTA DAR UNA SOLUCIÓN GENERAL A UN PROBLEMA AMPLIO. LO CUAL NOS RESTRINGE SU USO, EXCEPTO QUE SE UTILICE EXTREMADAMENTE BIEN. • EN TERCER LUGAR, COMO SOFTWARE ESTÁNDAR NO ESTÁ BAJO EL CONTROL LOCAL, NO ES SUFICIENTEMENTE ÁGIL COMO PARA ADAPTARSE RÁPIDAMENTE A LAS NECESIDADES CAMBIANTES.
  • 10. EL ESPECTRO ENTRE HACERLO TODO Y COMPRARLO TODO Cuando todo esta hecho a medida, la flexibilidad no tiene límites pero la rentabilidad cae en picada.
  • 11. LOS COMPONENTES SON INEVITABLES • EL DESARROLLO DE LA TECNOLOGÍA DE COMPONENTES EXCELENTES NO ES SUFICIENTE PARA ESTABLECER UN MERCADO. LA DISCIPLINA ESTÁ LLENA DE EJEMPLOS DE PRODUCTOS TÉCNICAMENTE SUPERIORES QUE NO PUDIERON CAPTURAR MERCADOS SUFICIENTEMENTE GRANDES. ADEMÁS DE LA SUPERIORIDAD TÉCNICA DE UN COMPONENTE SE NECESITA UNA MASA CRÍTICA PARA DESPEGAR. • UN PARADIGMA DE COMPONENTES GANA UNA GRAN CLIENTELA SI LOS COMPONENTES OFRECIDOS TIENEN SUFICIENTE VARIEDAD Y CALIDAD, ENTONCES, EXISTE UN BENEFICIO OBVIO AL USAR COMPONENTES. • UNA VEZ QUE LOS CLIENTES HAN CUBIERTO SUS NECESIDADES EN UN SEGMENTO DEL MERCADO, EL USO DE COMPONENTES EN ESE SEGMENTO SE VUELVE INEVITABLE.
  • 12. …LOS COMPONENTES SON INEVITABLES • SI NO SE ENCUENTRAN LOS COMPONENTES REQUERIDOS DISPONIBLES, SE PROVOCA LA REINVENCIÓN DE SOLUCIONES. ESTO SÓLO PUEDE SER JUSTIFICADO CUANDO LA SOLUCIÓN CREADA ES SUPERIOR A LA ALTERNATIVA QUE SE PUEDE COMPRAR. • UN PRODUCTO QUE UTILIZA LOS BENEFICIOS DE LOS COMPONENTES, ES EL QUE HACE USO DE UNA COMBINACIÓN DE PRODUCTIVIDAD E INNOVACIÓN DE TODOS LOS VENDEDORES DE COMPONENTES. LOS VENDEDORES DE COMPONENTES ESTÁN ENFOCADOS EN PROVEER A MUCHOS CLIENTES DIFERENTES Y ASÍ SER CAPACES DE PERFECCIONAR SUS COMPONENTES RÁPIDAMENTE.
  • 13. LOS COMPONENTES SON UNIDADES DE IMPLEMENTACIÓN • UN COMPONENTE DE SOFTWARE UNA IMPLEMENTACIÓN AISLADA DE UN SISTEMA. • CONTRARIO A LO QUE SE HA DICHO, LOS OBJETOS CASI NUNCA SE COMPRAN, VENDEN O IMPLEMENTAN. • LA UNIDAD DE IMPLEMENTACIÓN ES ALGO MAS BIEN MÁS ESTÁTICO, COMO UNA CLASE, O, MÁS PROBABLEMENTE, UN CONJUNTO DE CLASES, COMPILADO Y ENLAZADO EN ALGÚN PAQUETE. • AUNQUE UN COMPONENTE PUEDE SER UNA SOLA CLASE, ES MÁS PROBABLE QUE SEA UNA COLECCIÓN DE CLASES, ALGUNAS VECES LLAMADO MÓDULO.
  • 14. MERCADOS • RECIENTEMENTE HAN SURGIDO MERCADOS EXITOSOS BASADOS EN TECNOLOGÍAS DE COMPONENTES. • COMPAÑÍAS COMO COMPONENTSOURCE.COM O FLASHLINE.COM VENDEN MILES DE COMPONENTES YA HECHOS, LA MAYORÍA EN COM Y CATEGORÍAS EN JAVA, PERO COMPONENTES VCL (UNA TECNOLOGÍA DE DELPHI/C++ BUILDER POR BORLAND) Y .NET TAMBIÉN ESTÁN PRESENTES. COMPAÑÍAS COMO ILOG Y ROUGE WAVE SOFTWARE GENERAN INGRESOS SUSTANCIALES AL ENFOCARSE EN SU PRODUCCIÓN DE COMPONENTES.