Migrando VFP a .NET Tips y Sugerencias

Slides:



Advertisements
Presentaciones similares
Interfaz de usuario VB.NET
Advertisements

Internet y tecnologías web
Unidad 2 IDE Visual Studio.Net [UTN - Tecnologías de desarrollo de software IDE] [2009]
Red Social: “Un millón de Amigos”.
Procedimientos de Almacenado
Sistema de Atención a PLANTEAMIENTOS de los electores Informatizamos para la Sociedad Cubana.
Introducción a ASP.NET.
Tecnologías para desarrollo de aplicaciones web. Un caso de uso
Portal Hacienda Digital
Ma. Esther González Zamora Guillermo López Rodríguez
ActiveX.
INDUSOFT Software para generación de completas aplicaciones industriales multi-plataforma Se compone de un completo y potente conjunto de herramientas.
UNIVERSIDAD TECNOLÓGICA ISRAEL CARRERA DE SISTEMAS INFORMÁTICOS
ERP-Sistema de Gestión Integral
"java del lado del servidor" Servlet y JSP Java Server Pages.
Presentación Asignatura POF030 Semana 1. Contenido En forma general, los conceptos que se estudiarán en la asignatura son: – Procedures – Functions –
ADO ActiveX Data Object.
INFOPATH.
Desarrollando y consumiendo Web Services con Visual FoxPro
El desafío de organizar la información
Módulo 1: Primeros Pasos
Presentación del estado del arte
Introducción a ASP.NET.
DE LAS CUENTAS DE USUARIO Y OPCIONES DE CARPETA
Desarrollo de aplicaciones web en entorno servidor
GeneXus 8.0 Armin Bachmann
Presentación Técnica Gonzalo Echagüe
Propuesta de una metodología para el desarrollo de proyectos informáticos empleando la herramienta para el diseño automatizado GeneXus Autor: Dipl.-Ing.
Administración de datos con MS-SQL Server y Visual Basic
Modelado Arquitectónico
Ignacio Esmite, Mauricio Farías, Nicolás Farías, Beatriz Pérez
Visualizador de imágenes remotas Alumno: Juan Pablo García Ortíz Director: Vicente Gonzalez Ruiz.
SQL SERVER Reporting Services
Ing. Silvia Keymetlian ARTech Acompañe la evolución: Convierta sus aplicaciones !
Introducción a la Programación. Lenguaje de Máquina.
MÉTODO CIENTÍFICO Seminario de Técnicas de Investigación II Morelia, Mich. 29 de Sept de 2006.
Programación e Ingeniería de Software III
InfoPath Ventajas y Uso.
ASP.NET es una nueva y potente tecnología para escribir páginas web dinámica. Es una importante evolución respecto a las antiguas páginas ASP de Microsoft.
Como Desarrollar SW Distribuido de Calidad
Paola Saavedra -
Seguridad en Aplicaciones GeneXus Algunos consejos prácticos
Nueva Interfaz de Usuario y Nuevo Lector Java «La socialización del conocimiento»
De Larrobla & Asociados
ScrumMe Integrantes: Gabriel Centurión Maximiliano Félix.
Paulina Guevara UNITA - IBARRA. Lenguaje de programación orientado a objetos y procedural. Un Sistema Gestor de Bases de datos o Database Management System.
Un sistema de gestión de bases de datos: Es un conjunto de programas que permite a los usuarios crear y mantener una base de datos. Por tanto, el SGBD.
Performance en aplicaciones GeneXus. ¿Qué hacer cuando hay problemas?
Infonova Consultores q uick a pplication d esign & d evelopment - Presentación de Producto - Versión 2.0.
HERNÁNDEZ BUSTOS CLAUDIA I. LAGUNAS ESPINOZA CITLALLI C. MARTÍNEZ GUADARRAMA MARTHA S.
Sistema de Administración de Iglesias
Migración Win a Web, experiencias, tips y consejos.
LINQ TO AMAZON IN SILVERLIGHT Presentación del Producto.
¿Cómo nos ayuda GeneXus a mejorar la calidad en el proceso de desarrollo de Software? Ing. Rosario Estévez Ing. Rafael Mon
Aplicación y uso de la herramienta
Solución Integrada para la Continuidad del Negocio
Acceso y consulta a bases de datos. Base de datos Una base de datos (cuya abreviatura es BD) es una entidad(host) en la cual se pueden almacenar datos.
Introducción al Lenguaje. ¿ Qué es PHP ? O Hypertext Pre-processoes (PHP) es un lenguaje de "código abierto" interpretado, de alto nivel, embebido en.
El rol de SQA en PIS.
EQUIPO:#3 GRUPO:304 NOMBRES: Lizbeth Nava Barón y Erick Ali Mejía.
Nombre: Germania Ruiz UNIVERSIDAD TECNOLOGICA AMERICA.
Introducción a UML Departamento de Informática Universidad de Rancagua
DISEÑO CURRICULAR Presentado por: Cesar Augusto Sáenz María Alejandra Hernández 1.contenidos curriculares de competencia.
Daniel Méndez ARTech Aplicaciones Web: user experience.
Introducción al Lenguaje. ¿Qué es PHP? O Es un lenguaje de programación que es interpretado por un servidor web. O El lenguaje es genérico. PHP está orientado.
INTRODUCCIÓN AL HTML. VAMOS A HABLAR DE...HTML Conceptos del lenguaje Estructura para documentos Herramientas usadas para crear documentos Buenas prácticas.
Servicios Web Conjunto de aplicaciones o de tecnologías con capacidad para interoperar en la Web. Estas aplicaciones o tecnologías intercambian datos entre.
Programación en Visual Basic
DLM Transact SQL Sesión I Introducción al SQL Server Uso de las herramientas de consultas del Transact SQL.
Gestión de versiones. Cronograma Conceptos introductorios Arquitecturas posibles Riesgos en la no utilización Herramientas.
Transcripción de la presentación:

Migrando VFP a .NET Tips y Sugerencias Experiencia de una migración en la Aduana de Costa Rica Enrique Almeida – Concepto ealmeida@concepto.com.uy Gustavo Morales – Aduana de Costa Rica moralescg@hacienda.go.cr

El proyecto Adaptación del sistema a la realidad de Costa Rica. Transferencia tecnológica de Concepto al grupo de desarrollo de la Aduana de Costa Rica. Migración de GeneXus 7.5 generando Visual FoxPro (Windows) y C/SQL (Web y WebServices) a GeneXus 8.0 y full .NET 400 Tablas y 3200 objetos

Quienes somos?. CONCEPTO 12 años trabajando con GeneXus. Pertenecientes a la GxAlliance. 2001 y 2002 Mejor BetaTester 2001 Early adopter of new tecnologies .NET Sistema de Calidad ISO-9001:2000

Quienes somos? ADUANA DE COSTA RICA. - 650 funcionarios. - Recaudación U$S 1.029.000.000 6% PBI de Costa Rica.

Directiva de Ministerio de Hacienda de Costa Rica. Porque .NET y Tres Capas? Directiva de Ministerio de Hacienda de Costa Rica. Seguridad Escalabilidad Necesidad de integración con otros organismos Pensado para mantener la misma tecnología por los próximos 5 años.

Que teníamos? Un sistema funcionando, desarrollado con: Y nos pedían…. WIN Visual Fox Pro WEB C/SQL Oracle Un sistema funcionando, desarrollado con: Cliente/ Servidor WIN .NET WEB .NET Tres Capas Y nos pedían…. SQLServer Cambios en En generador WIN y WEB La arquitectura de la aplicación La base de datos Lo cual implicaba además La versión de GeneXus (7.5 a 8.0) La forma de Acceso a datos (ODBC– ADO.NET)

Etapas. 4 GeneXus 8.0 WIN .NET WEB .NET ADO.Net SQLServer Tres Capas Acceso a datos Arquitectura Base de datos 3 GeneXus 8.0 WIN .NET WEB .NET ADO.Net SQLServer Cliente/ Servidor 2 GeneXus 8.0 WIN .NET WEB .NET ODBC SQLServer Cliente/ Servidor 1 GeneXus 7.5 WIN Visual Fox Pro WEB .NET ODBC SQLServer Cliente/ Servidor GeneXus 7.5 WIN Visual Fox Pro WEB C/SQL ODBC Oracle Cliente/ Servidor

Sugerencia I: Planificar la migración!! Etapas Pasos simples y comprobables Si se presenta un problema, siempre es fácil detectarlo y compararlo con algo que funcione bien. Recursos Definir los recursos necesarios para cada etapa La primer sugerencia, aunque parezca de perogrullo, es planificar la migración. Toda migracion, debe ser bien planificada, pues es un proyecto que va a insumir horas de personas, van a haber inconvenientes. Tambien conviene destinar

Sugerencia II: Grupo de trabajo focalizado en la migración Equipo dedicado a la migración Se adelanta a los problemas Evalúa nuevas versiones Encontrar soluciones a problemas “tipo” Comunicar soluciones al resto del grupo de trabajo Resto del equipo dedicado a programar nuevas funcionalidades. Tener una o dos personas que sean las que realizan la migración Estas personas haran la migracion tantas veces como sea necesario hasta que tengamos todo pronto como para que todo el grupo migre la aplicaion

Sugerencia III: Estudiar la plataforma destino Si vamos a generar C#, que alguien en el grupo sepa programar en C#. Armar un “laboratorio” con la plataforma destino para poder hacer pruebas y poder aprender

Sugerencia IV: Borrar todo lo que no sea necesario Eliminar todo lo que no se use!! Buscar todos los objetos no alcanzables desde mains y borrarlos.

TIP I: Como consigo el conjunto de objetos usados en mi aplicación? Distribuir: Todas las transacciones y Data Views Todos los mains usados (Facil en 8.0) Todos los objetos referenciados por esos main (ADD CALLED) Objetos invocados en forma dinámica

Que me puede ocasionar problemas? Estudiar la KB buscando “cosas raras” Programas Externos y Stored Procedures Comandos “SQL”, “JAVA”, “DBASE”, “CSHARP”, “VB” Funciones NO STANDARD DataViews con otras bases de datos Imágenes/Archivos leídos Componentes ActiveX, DLL, etc. Calls entre objetos que no son del mismo generador/environment. Tablas DBF

Reprogramarlos en el nuevo lenguaje (C#) Programas Externos Racionalizar su uso Unificar lo que hacen cosas parecidas Ver si no hay alguna función de GeneXus para hacerlo. Reprogramarlos en el nuevo lenguaje (C#) Probarlos en el nuevo lenguaje y plataformas

TIP II – Como ver programas externos usados en mi KB?

Programas externos En la migración a C# tuvimos que agregar parámetros utilizado por GeneXus pero no por la aplicación. Versiones diferentes para Windows/WEB, por los parámetros.

Stored Procedures En ADO.NET la llamada a SP hay que hacerla con el nombre de variable del parámetro. Cambiar la programación.

Comandos “DBASE” Buscar todos los objetos que tienen DBASE en el código GeneXus. Por ejemplo: DBASE wait window 'Presione <ESC> para cancelar' TIMEOUT 5 if lastkey()=27 &SALGO='S' return Endif Tratar de evitar esta forma de programar. Sustituir DBASE por CSHARP, y programar código equivalente

TIP III: Que objetos usan el comando DBASE?

Sugerencia V: Usar los archivos XPZ (Distribute) Estudiar el formato de los archivos XML de distribución (dentro del XPZ) Herramienta de “Search and Replace” con expresiones regulares Grep (SR) www.funduc.com. Usarlas para buscar que objetos que contienen un string determinado

Funciones Conocer la lista de funciones soportadas en la plataforma destino. Detectar cuales son las funciones no soportadas o que cambiaron su significado en la plataforma destino. Buscar funciones NO STANDARD, o no nativas de GeneXus, para buscarle una alternativa.

TIP IV: Como encontrar que objetos usan funciones no standard? Consolidarlo en una KB vacía, con la propiedad Function para que no acepte funciones no standard DISEÑO PROTOTIPO Revisar todo lo que da errores y warnings Arreglarlo

Sugerencia VI: Estudiar las Releases Notes de los Upgrades Buscar errores corregidos Funcionalidades nuevas Cambios en Funciones Propiedades Comandos Configuración

Controles ActiveX No están soportados en el generador .NET Reprogramarlos con controles nativos. Mantener algunos programas en Visual FoxPro.

Proceso propuesto Borrar todo lo que no se necesite migrar Distribuir modelo original. Consolidar en una KB vacía y arreglar problemas Especificar y arreglar problemas Generar, Compilar y arreglar problemas Comparar ejecución con modelo anterior y arreglar diferencias Documentar errores y reportarlos

Conclusiones Migrar es inevitable Pero…… Da trabajo Hay que planificar Consume recursos Posibilita la incorporación de nuevas funcionalidades

Migrando VFP a .NET Tips y Sugerencias ¿Preguntas? Enrique Almeida – Concepto ealmeida@concepto.com.uy Gustavo Morales – Aduana de Costa Rica Moralescg@hacienda.go.cr

Pedidos a Artech Incorporar a los programas externos como objetos genexus Search and Replace Global Comparador de navegaciones Comparador de LOGs de performance

Funciones no standard En el código VFP había funciones no standard, como son ADIR() que devuelve el contenido de un directorio en un array. Esas fueron migradas y utilizadas con programas externos.

Tablas DBF. En el modelo Visual FoxPro teníamos algunas tablas marcadas como locales que generaban DBF Estas tablas fueron migradas a utilizar tablas temporales en la base de datos.