34
Proyecto de Migración de Proyecto de Migración de Visual Basic 6.0 a .NET Visual Basic 6.0 a .NET ¿Cuál es el valor de negocios? ¿Cuál es el valor de negocios? Federico Zoufaly Federico Zoufaly [email protected] [email protected] Microsoft, Centro de Excelencia en Migraciones a .Net Microsoft, Centro de Excelencia en Migraciones a .Net www.microsoft.com/spanish/msdn/latam/cem/ www.microsoft.com/spanish/msdn/latam/cem/

20060612 Dev Ba

Embed Size (px)

Citation preview

Page 1: 20060612 Dev Ba

Proyecto de Migración de Proyecto de Migración de Visual Basic 6.0 a .NETVisual Basic 6.0 a .NET¿Cuál es el valor de negocios? ¿Cuál es el valor de negocios?

Federico ZoufalyFederico [email protected]@artinsoft.com

Microsoft, Centro de Excelencia en Migraciones a .Net Microsoft, Centro de Excelencia en Migraciones a .Net www.microsoft.com/spanish/msdn/latam/cem/www.microsoft.com/spanish/msdn/latam/cem/

Page 2: 20060612 Dev Ba

EventosEventos

Actualizando Objetos Comunes de Visual Basic 6.0 a .Net y testing de aplicaciones migradas

30 de junio, 2pm (Lima, Quito)

Mejores practicas para realizar una migración a .Net exitosa

23 de junio, 2pm (Lima, Quito)

Preparándose para un Upgrade a Visual Basic. Net19 de junio, 2pm (Lima, Quito)

Migraciones Visual basic 6.0 a .NET: Pregunte al Experto14 de junio, 2pm (Lima, Quito)

Programa CEM: Valor de Negocios para ISVs12 de junio, 2pm (Lima, Quito)

Entendiendo el Microsoft Upgrade Wizard 8 de junio, 2pm (Lima, Quito)

TemaFecha

Por que considerar un proyecto de migración de Visual Basic 6.0 a .NET?

2 de junio, 2pm (Lima, Quito)

Visual Basic 6.0 a Visual Basic .NET

Eventos pueden ser vistos en el portal CEM:http://www.microsoft.com/spanish/msdn/latam/cem/

Page 3: 20060612 Dev Ba

Centro de Excelencia en Centro de Excelencia en Migraciones a .NetMigraciones a .Net

Consiste en un portal para tratar el "por qué" y el Consiste en un portal para tratar el "por qué" y el "cómo" de migraciones a .Net"cómo" de migraciones a .Net

Incluye la creación de materiales como casos de Incluye la creación de materiales como casos de estudio, Documentos técnicos y herramientasestudio, Documentos técnicos y herramientas

Actividades varias como presentaciones, Actividades varias como presentaciones, entrenamientos, proyectos piloto y eventos en entrenamientos, proyectos piloto y eventos en distintos países de Latinoaméricadistintos países de Latinoamérica

Nuestro objetivo es crear una “comunidad” Nuestro objetivo es crear una “comunidad” relacionada con migraciones hacia .Netrelacionada con migraciones hacia .Net

http://www.microsoft.com/spanish/msdn/latam/cem/http://www.microsoft.com/spanish/msdn/latam/cem/

Page 4: 20060612 Dev Ba

AgendaAgenda¿Por qué considerar un proyecto de migración?¿Por qué considerar un proyecto de migración?

Información mínima requerida para tomar una Información mínima requerida para tomar una decisióndecisión

Tomando la decisiónTomando la decisión

Razones de negocioRazones de negocio

¿Migrar, reemplazar, reescribir, o reutilizar?¿Migrar, reemplazar, reescribir, o reutilizar?

Estrategias y alternativas de migraciónEstrategias y alternativas de migración

Page 5: 20060612 Dev Ba

¿Por qué considerar un ¿Por qué considerar un proyecto de migración? proyecto de migración?

Costo de OperaciónCosto de Operación

FuncionalidadFuncionalidad

Page 6: 20060612 Dev Ba

¿Por qué considerar un ¿Por qué considerar un proyecto de migración? proyecto de migración?

Existen varias alternativas:Existen varias alternativas:

Mantener la aplicación en Visual Basic 6.0.Mantener la aplicación en Visual Basic 6.0.

Re-escribir la aplicación en Visual Basic .NET.Re-escribir la aplicación en Visual Basic .NET.

Migrar la aplicación con el VB6.0 to VB.NET Upgrade Migrar la aplicación con el VB6.0 to VB.NET Upgrade Wizard.Wizard.

Re-escribir en una plataforma NO MicrosoftRe-escribir en una plataforma NO Microsoft

Elegir una alternativa depende de diversos factoresElegir una alternativa depende de diversos factores

Page 7: 20060612 Dev Ba

¿Por qué considerar un ¿Por qué considerar un proyecto de migración?proyecto de migración?

Aumentar la Integración de los clientesAumentar la Integración de los clientes

Clientes están realizando mas instalaciones de Clientes están realizando mas instalaciones de soluciones sobre SQLServer, que sobre Oracle y soluciones sobre SQLServer, que sobre Oracle y DB2 combinadas!DB2 combinadas!

Aprovechar el “momentum”Aprovechar el “momentum”

Cantidad de desarrolladores en .Net creció en un Cantidad de desarrolladores en .Net creció en un 53% durante Q2 del 2005, mientras que los 53% durante Q2 del 2005, mientras que los desarrollares en Java se mantuvieron en un 33%desarrollares en Java se mantuvieron en un 33%

Page 8: 20060612 Dev Ba

¿Por qué considerar un ¿Por qué considerar un proyecto de migración?proyecto de migración?

Total integración con gran cantidad de Total integración con gran cantidad de herramientas, para una solución completa:herramientas, para una solución completa:

Desarrollo: Microsoft Visual Studio 2005Desarrollo: Microsoft Visual Studio 2005

Infraestructura: Microsoft Windows Server 2003Infraestructura: Microsoft Windows Server 2003

Almacenamiento: Microsoft SQLServer 2005 Almacenamiento: Microsoft SQLServer 2005

Seguridad y Administración: Microsoft System Seguridad y Administración: Microsoft System Center, Microsoft System Management Server 2003, Center, Microsoft System Management Server 2003, Microsoft Operations Manager 2005, Microsoft Microsoft Operations Manager 2005, Microsoft Internet Security and Acceleration (ISA) Server 2004Internet Security and Acceleration (ISA) Server 2004

Algunos ejemplos y casos de estudio pueden ser Algunos ejemplos y casos de estudio pueden ser encontrados en encontrados en httphttp://://www.microsoft.comwww.microsoft.com/net//net/businessbusiness//ways.aspways.asp

Page 9: 20060612 Dev Ba

Average ISV software revenue CAGR, 2002-2004Average ISV software revenue CAGR, 2002-2004

Sou

rce:

Mic

roso

ft a

naly

sis

base

d on

57

6 IS

Vs

with

$10

M+

so

ftwa

re r

even

ue a

cros

s 20

02-2

004

OtherOther UNIXUNIXAS/400AS/400 WindowsWindowsMainframeMainframePlatform where ISV generated the most revenuePlatform where ISV generated the most revenue

Page 10: 20060612 Dev Ba

Average ISV software revenue CAGR, 2002-2004Average ISV software revenue CAGR, 2002-2004

% of ISV revenue deployed on Windows % of ISV revenue deployed on Windows 80-99%80-99%<20%<20% 100%100%20-49%20-49% 50-79%50-79%

Sou

rce:

Mic

roso

ft a

naly

sis

base

d on

57

6 IS

Vs

with

$10

M+

so

ftwa

re r

even

ue a

cros

s 20

02-2

004

Page 11: 20060612 Dev Ba

Average ISV software revenue CAGR, 2002-2004Average ISV software revenue CAGR, 2002-2004

Partner Technology preference Partner Technology preference

J2EE OnlyJ2EE Only .NET + J2EE.NET + J2EE .NET Only.NET Only

Sou

rce:

Mic

roso

ft a

naly

sis

base

d on

27

0 IS

Vs

with

$10

M+

so

ftwa

re r

even

ue a

cros

s 20

02-2

004

Page 12: 20060612 Dev Ba

¿Por qué considerar un ¿Por qué considerar un proyecto de migración? proyecto de migración?

Existen varias alternativas:Existen varias alternativas:

Mantener la aplicación en Visual Basic 6.0.Mantener la aplicación en Visual Basic 6.0.

Re-escribir la aplicación en Visual Basic .NET.Re-escribir la aplicación en Visual Basic .NET.

Migrar la aplicación con el VB6.0 to VB.NET Upgrade Migrar la aplicación con el VB6.0 to VB.NET Upgrade Wizard.Wizard.

Re-escribir en una plataforma NO MicrosoftRe-escribir en una plataforma NO Microsoft

Elegir una alternativa depende de diversos factoresElegir una alternativa depende de diversos factores

Page 13: 20060612 Dev Ba

¿Por qué considerar un ¿Por qué considerar un proyecto de migración?proyecto de migración?

Mantener la aplicación en Visual Basic 6.0Mantener la aplicación en Visual Basic 6.0

Factible si la aplicación cumple las funciones del Factible si la aplicación cumple las funciones del negocio, no requiere mejoras y staff esta capacitadonegocio, no requiere mejoras y staff esta capacitado

Riesgoso dado que VB6.0 esta en fase de soporte Riesgoso dado que VB6.0 esta en fase de soporte extendidoextendido

http://msdn.microsoft.com/vbrun/support.aspxhttp://msdn.microsoft.com/vbrun/support.aspx

No soporta nuevas tecnologías y paradigmasNo soporta nuevas tecnologías y paradigmas

Costo de Operación Costo de Operación

Page 14: 20060612 Dev Ba

Información mínima requerida Información mínima requerida para tomar una decisión para tomar una decisión

Es necesario recopilar información sobre el estado Es necesario recopilar información sobre el estado de las aplicaciones en Visual Basic 6de las aplicaciones en Visual Basic 6

Se recomiendan 3 actividadesSe recomiendan 3 actividades

Estimación del valor de negocios Estimación del valor de negocios

Valoración de la calidad del códigoValoración de la calidad del código

Valoración del ambiente de desarrolloValoración del ambiente de desarrollo

Page 15: 20060612 Dev Ba

Beneficios e ImpulsadoresBeneficios e Impulsadores

Impulsador de Negocio

Objetivos Principales de negocio

Dimensiones de Valor

Enfoque interno

Enfoque Externo

Supervivencia, continuidad

operativa

Reduce costos operativos

Extender alcance dentro del negocio

y/o externo al negocio

Posicionar el negocio para el

futuro

•Mantenibilidad mejorada (documentación, más fácil de arreglar)

•Acceso al soporte

•Menores costos operativos

•Accesa nuevos clientes (proveedor de paquetes)

•Sistema más adpatable

•Costos operativos reducidos, costos de licencia, licence costs, costos de recuperación (apoyo/desastre)

•Oportunidad de subcontratar

•Complejidad reducida

•Sistema más adaptable

•Aumento en ingresos

•Clientes/usuarios nuevos

•Mejor servico a los clientes/usuarios existentes y nuevos

•Costos menores de adquisión de clientes

•Mejoras en marca

•Sistema adaptable•Integración estrecha con aliados de negocio

•Servicios extendidos para clientes

•Opción de Servicios de Web

•Reutilización de componentes

•A prueba de futuro

Transformación de Aplicaciones Legacy – Modelo de valor del Negocio

Page 16: 20060612 Dev Ba

Valoración de la calidad del Valoración de la calidad del código código

Análisis del códigoAnálisis del código

Mapa actual y por seguirMapa actual y por seguir

Identificar información técnicaIdentificar información técnicaTecnologías usadas y su equivalente en .NETTecnologías usadas y su equivalente en .NET

Métricas de tamaño, uso, estructura y complejidadMétricas de tamaño, uso, estructura y complejidad

Jerarquía y dependencia de las clasesJerarquía y dependencia de las clases

Page 17: 20060612 Dev Ba

Valoración de la calidad del Valoración de la calidad del códigocódigo

Caracteristicas sin soporte o con soporte parcialCaracteristicas sin soporte o con soporte parcial

Diferentes capas comunicándose por COMDiferentes capas comunicándose por COM

Visual Basic 5Visual Basic 5

Proyectos de Internet que utilicen clases Web, Doc. Proyectos de Internet que utilicen clases Web, Doc. ActiveX o DHTMLActiveX o DHTML

Controles ActiveXControles ActiveX

Otros.Otros.

Es recomendable migrar cuando la base de código Es recomendable migrar cuando la base de código esta estableesta estable

Page 18: 20060612 Dev Ba

Tomando la decisión Tomando la decisión

Factores determinantes:Factores determinantes:

Reducir costosReducir costos

Mejorar el proceso de mantenimientoMejorar el proceso de mantenimiento

Mejorar el acceso a aplicaciones legadasMejorar el acceso a aplicaciones legadas

Posicionamiento para proyectos futurosPosicionamiento para proyectos futuros

Page 19: 20060612 Dev Ba

Reescribir MigraciónAutomatica

Reemplazar Reutilizar

Calidad del Sistem Actual

Tip

o d

e A

plic

ació

n A la medida

Estandar

AltaBaja

¿Migrar, reemplazar, reescribir, ¿Migrar, reemplazar, reescribir, o Reutilizar?o Reutilizar?

Page 20: 20060612 Dev Ba

Estrategias y alternativas de Estrategias y alternativas de migración migración

No migrarNo migrar

Migración completa*Migración completa*

Migración por etapasMigración por etapas

CoexistenciaCoexistencia

Re-utilizaciónRe-utilización

Re-escrituraRe-escritura

* Cubierto en esta presentación

Page 21: 20060612 Dev Ba

Proporciona una aplicación equivalente en Visual Proporciona una aplicación equivalente en Visual Basic .NETBasic .NET

Puede requerir de un esfuerzo considerablePuede requerir de un esfuerzo considerable

Migración completa del código de Visual Basic 6.0 a Migración completa del código de Visual Basic 6.0 a Visual Basic .NETVisual Basic .NET

Convertir todas la tecnologías utilizadas a su Convertir todas la tecnologías utilizadas a su equivalente en .NET o a alternativasequivalente en .NET o a alternativas

Puede ser rápida para aplicaciones que no dependen Puede ser rápida para aplicaciones que no dependen de tecnologías obsoletasde tecnologías obsoletas

Migración CompletaMigración Completa

Page 22: 20060612 Dev Ba

Migración CompletaMigración CompletaVentajasVentajas

Aplicaciones pueden tomar ventaja de nuevas Aplicaciones pueden tomar ventaja de nuevas tecnologías en .NETtecnologías en .NET

Puede ser integrada en otras soluciones de .NETPuede ser integrada en otras soluciones de .NET

Portabilidad de .NETPortabilidad de .NET

DesventajasDesventajas

Work-around Work-around para características no presentes para características no presentes en .NETen .NET

Diferencias de comportamientoDiferencias de comportamiento

Costo de re-entrenamientoCosto de re-entrenamiento

Page 23: 20060612 Dev Ba

Proyecto Estándar de Proyecto Estándar de MigraciónMigración

Aplicación Original

Assessment de la app

Salida de las herramientas automáticas

100% FunctionalEquivalence

Re-ingeniería y Nuevas Funcionalidades

Consultoria o trabajo in-house

Evolución Costumizada

Máximo Beneficio

Cambios Parciales

Proceso de Conversion Automática

Ca

mb

ios

Ma

nuale

sHerramientas Automáticas

Page 24: 20060612 Dev Ba

El El Visual Basic 6.0 to Visual Basic .NET Visual Basic 6.0 to Visual Basic .NET Upgrade WizardUpgrade Wizard permite una rápida migración permite una rápida migración de las aplicacionesde las aplicaciones

Aplicación migrada tiene equivalencia Aplicación migrada tiene equivalencia funcional con la aplicación originalfuncional con la aplicación original

Genera automáticamente Genera automáticamente Primary InteropsPrimary Interops para componentes ActiveXpara componentes ActiveX

Permite una fácil integración con la Permite una fácil integración con la tecnología .NETtecnología .NET

Visual Basic 6.0 to Visual Visual Basic 6.0 to Visual Basic .NET Upgrade WizardBasic .NET Upgrade Wizard

Page 25: 20060612 Dev Ba

Visual Basic 6.0 to Visual Visual Basic 6.0 to Visual Basic .NET Upgrade WizardBasic .NET Upgrade Wizard

Manera eficiente de convertir de VB6.0 a Manera eficiente de convertir de VB6.0 a VB.NETVB.NET

Minimizar curva de aprendizajeMinimizar curva de aprendizaje

Minimizar re-entrenamientosMinimizar re-entrenamientos

Capacidad incrementada de la aplicaciónCapacidad incrementada de la aplicación

Nuevas tecnologías .NETNuevas tecnologías .NET

Código final extensible y de fáCódigo final extensible y de fácil mantenimientocil mantenimiento

Mantener comentarios originalesMantener comentarios originales

Mantener referencias cruzadasMantener referencias cruzadas

Page 26: 20060612 Dev Ba

Respaldo TécnicoRespaldo Técnico

Fase Principal de soporte para Visual Basic 6 Fase Principal de soporte para Visual Basic 6 finalizadafinalizada

Marzo 2005Marzo 2005

Soporte extendido hasta marzo del 2008Soporte extendido hasta marzo del 2008

http://msdn.microsoft.com/vbrun/support.aspxhttp://msdn.microsoft.com/vbrun/support.aspx

Visual Basic .NET es la plataforma preferida de Visual Basic .NET es la plataforma preferida de desarrollodesarrollo

Page 27: 20060612 Dev Ba

Ir mas allá con el Ir mas allá con el Visual Visual Basic Upgrade CompanionBasic Upgrade Companion

Extensiones al Extensiones al Upgrade WizardUpgrade Wizard

Permite reducir el tiempo de migraciónPermite reducir el tiempo de migración

Nuevas característicasNuevas características

Inferencia de tipos Inferencia de tipos

ADO->ADO.NETADO->ADO.NET

ExtensibilidadExtensibilidad

Manejo de erroresManejo de errores

Código estilo .NETCódigo estilo .NET

Mejoras adicionalesMejoras adicionales

Disponible a través de ArtinSoftDisponible a través de ArtinSoft

Page 28: 20060612 Dev Ba

Proceso de DecisiónProceso de Decisión

Estimación del Valor de Negocios

Valoración de la Calidad del Código

Valoración del Ambiente de Desarrollo

Reescribir MigraciónAutomatica

Reemplazar Reutilizar

La migración La migración debe debe considerarse considerarse después de un después de un proceso de proceso de decisióndecisión

Existen otras Existen otras alternativas a alternativas a la migración la migración para para modernizar modernizar una aplicaciónuna aplicación

Page 29: 20060612 Dev Ba

Nuevas oportunidades de Negocio!!!Nuevas oportunidades de Negocio!!!

La aplicación migrada conserva las reglas de La aplicación migrada conserva las reglas de negocionegocio

Ventajas del ambiente .NETVentajas del ambiente .NET

Ventajas de despliegue e instalaciónVentajas de despliegue e instalación

Proyecto de actualización de bajo riesgo y de Proyecto de actualización de bajo riesgo y de un costo menor a otras alternativasun costo menor a otras alternativas

Respaldo técnico de Visual Basic 6.0Respaldo técnico de Visual Basic 6.0

Permite evolucionar gradualmente la Permite evolucionar gradualmente la aplicación, después de un rápido movimiento aplicación, después de un rápido movimiento a la plataforma destinoa la plataforma destino

Razones para la MigraciónRazones para la Migración

Page 30: 20060612 Dev Ba

ConclusionesConclusionesEs factible considerar una migraciónEs factible considerar una migración

Algunas aplicaciones no se prestan para Algunas aplicaciones no se prestan para ellaella

Si la migracion es factible, los beneficios Si la migracion es factible, los beneficios de negocios son muchosde negocios son muchos

Baja costos de mantenimientoBaja costos de mantenimiento

Mejorar la productividad y la motivacion de Mejorar la productividad y la motivacion de los desarrolladoreslos desarrolladores

Mejorar la integración (interna, con aliados, Mejorar la integración (interna, con aliados, con clientes)con clientes)

Mejora las ventas y crea nuevas Mejora las ventas y crea nuevas oportunidades!!oportunidades!!

Page 31: 20060612 Dev Ba

Acerca de ArtinSoftAcerca de ArtinSoftApoyando migraciones desde 1993Apoyando migraciones desde 1993

Tecnología basada en inteligencia artificial Tecnología basada en inteligencia artificial para traducir automáticamente el código para traducir automáticamente el código fuentefuente

““Ofrecer servicios y tecnologías de Ofrecer servicios y tecnologías de

conversión automatizada de software que conversión automatizada de software que

ayudan a clientes alrededor del mundo a ayudan a clientes alrededor del mundo a

evolucionar aplicaciones de misión crítica evolucionar aplicaciones de misión crítica

más rápido, con menor riesgo y a un menor más rápido, con menor riesgo y a un menor

costo que otro tipo de soluciones.”costo que otro tipo de soluciones.”

www.artinsoft.comwww.artinsoft.com

Page 32: 20060612 Dev Ba

EventosEventos

Actualizando Objetos Comunes de Visual Basic 6.0 a .Net y testing de aplicaciones migradas

30 de junio, 2pm (Lima, Quito)

Mejores practicas para realizar una migración a .Net exitosa

23 de junio, 2pm (Lima, Quito)

Preparándose para un Upgrade a Visual Basic. Net19 de junio, 2pm (Lima, Quito)

Migraciones Visual basic 6.0 a .NET: Pregunte al Experto14 de junio, 2pm (Lima, Quito)

Programa CEM: Valor de Negocios para ISVs12 de junio, 2pm (Lima, Quito)

Entendiendo el Microsoft Upgrade Wizard 8 de junio, 2pm (Lima, Quito)

TemaFecha

Por que considerar un proyecto de migración de Visual Basic 6.0 a .NET?

2 de junio, 2pm (Lima, Quito)

Visual Basic 6.0 a Visual Basic .NET

La grabación de este evento se encontrará en el portal CEM:

http://www.microsoft.com/spanish/msdn/latam/cem/eventos.asp

Page 33: 20060612 Dev Ba

Mayor información:Mayor información:Microsoft, Centro de Excelencia en Migraciones Microsoft, Centro de Excelencia en Migraciones a .NET:a .NET:

www.microsoft.com/spanish/msdn/latam/cem/www.microsoft.com/spanish/msdn/latam/cem/

ArtinSoftArtinSoftwww.artinsoft.comwww.artinsoft.com

Visual Basic Upgrade CompanionVisual Basic Upgrade Companionwww.artinsoft.com/pr_vbcompanion.aspxwww.artinsoft.com/pr_vbcompanion.aspx

What’s next for ISVsWhat’s next for ISVs

http://www.isvnxt.com/Index.aspxhttp://www.isvnxt.com/Index.aspx

Page 34: 20060612 Dev Ba

Preguntas y RespuestasPreguntas y Respuestas