Desarrollo de Software conducido por Pruebas

Tamaño: px
Comenzar la demostración a partir de la página:

Download "Desarrollo de Software conducido por Pruebas"

Transcripción

1 Desarrollo de Software conducido por Pruebas Test-Driven Development Aportes de: Agustín Goñi Microsoft Cono Sur

2 Temario Testeo de aplicaciones Desarrollo conducido por las pruebas Impacto en el proceso de desarrollo Herramientas para TDD Buenas prácticas y recomendaciones

3 Desarrollo conducido por pruebas Procesos de desarrollo tradicionales Etapas de análisis, diseño, implementación y testeo claramente separadas. Asumen un diseño correcto al primer intento. Se espera a tener el componente o pieza de software implementado para hacer pruebas. Fallas en la etapa de testing significan tener que rehacer muchas trabajo. Alto costo e impacto.

4 Desarrollo conducido por la prueba Procesos de espiral Se construye por iteración. Las etapas están separadas dentro de cada iteración, pero no en el proyecto completo. Se reduce el riesgo de detectar tardíamente errores de muy alto costo. A pesar de todo es necesario construir antes de comenzar el testing.

5 Inconvenientes y problemas Degradación del diseño Las pruebas se dejan para el final. Los errores pequeños no son detectados a tiempo y se propagan. Los errores del componente se arreglan extraoficialmente. El diseño no corresponde a la realidad; es el código el que manda.

6 Temario Testeo de aplicaciones Desarrollo conducido por las pruebas Impacto en el proceso de desarrollo Herramientas para TDD Buenas prácticas y recomendaciones

7 Desarrollo conducido por la prueba Qué es el desarrollo conducido por la prueba? Una técnica para la construcción de software que consiste en producir pruebas unitarias automáticas antes de escribir el código. Proviene de la filosofía de Extreme Programming, buscando un proceso de desarrollo más ágil.

8 Desarrollo conducido por la prueba Por qué antes? Es una forma de prevenir defectos. Permite analizarlos y contenerlos antes que se introduzcan en el código. Busca detectar los errores antes en vez de arreglarlos después.

9 Desarrollo conducido por la prueba Cómo funciona? Esquema Red/Green/Refactor 1. El desarrollador escribe tests unitarios para el componente que está por construir. 2. Compila (lo cual debería fallar: no se ha implementado) 3. Escribe código sólo para que compile. 4. Corre el test (lo cual debería fallar). 5. Arregla el código para que pase el test. 6. Corre el test y ve que pasa OK. 7. Hace refactoring del código para eliminar la duplicación y hacerlo más legible y mantenible 8. Vuelve a repetir.

10 Desarrollo conducido por la prueba Cómo se realiza la prueba unitaria? Los desarrolladores ejecutan el código para verificar que cumple los requisitos del diseño. Si se encuentran defectos se hace debug. Estas actividades se alternan con la codificación. Muchas veces se agrega código de prueba para ejecutar el componente.

11 Desarrollo conducido por la prueba Código de prueba A veces luego de terminado el desarrollo, se descarta el código de prueba. A veces se guarda, pero mezclado con el código de producción (ej. en un método de prueba). Como la prueba unitaria es responsabilidad del desarrollador, en general no se define un estándar para ordenar el código de prueba.

12 Desarrollo conducido por la prueba Porque es un conductor del desarrollo? El conjunto de prueba define una especificación programática del componente. Hacerlo antes del desarrollo permite tener un criterio de satisfacción de los requisitos de diseño. Es una guía de lo que se debe implementar. Más importante, es un mecanismo que permite al diseño evolucionar. Se postergan las decisiones hasta tener información más completa.

13 Desarrollo conducido por la prueba Proceso simple El desarrollador hace la prueba con las mismas herramientas que usa y en el mismo lenguaje de programación. Ordena prácticas que ya están presentes y ayuda a darle foco a la prueba.

14 Temario Testeo de aplicaciones Desarrollo conducido por las pruebas Impacto en el proceso de desarrollo Herramientas para TDD Buenas prácticas y recomendaciones

15 Impacto en el proceso de desarrollo El desarrollo conducido por la prueba afecta varias áreas del desarrollo: Prevención de defectos. Mantenimiento. Diseño simple. Confianza del desarrollador. Documentación. Trabajo en equipo.

16 Impacto en el proceso de desarrollo Prevención de defectos Es el impacto directo de la técnica. Se produce código con menos defectos, se previenen y corrigen muy temprano. El conjunto de casos de prueba unitaria hace que el software sea auto-verificable.

17 Impacto en el proceso de desarrollo Mantenimiento Repetir las pruebas muchas veces es fácil, agiliza el ciclo de desarrollo y el mantenimiento. Cuando tenemos que realizar un cambio es menos riesgoso romper algo. Contamos con una especificación programática del comportamiento.

18 Impacto en el proceso de desarrollo Diseño simple Guía al desarrollador a un diseño simple. Generalmente un diseño fácil de probar es un buen diseño. Conduce a una interfaz simple y evita el acoplamiento. Al implementar la interfaz se hace lo mínimo necesario para satisfacer el test.

19 Impacto en el proceso de desarrollo Confianza del desarrollador El método incentiva los incrementos pequeños fácilmente verificables. Se puede hacer una modificación y saber inmediatamente si todo sigue funcionando. Refactoring del código con muy poco peligro de romper algo.

20 Impacto en el proceso de desarrollo Documentación Los casos de prueba constituyen una documentación muy completa del comportamiento del componente.

21 Impacto en el proceso de desarrollo Trabajo en equipo Relacionado con las prácticas de XP La facilidad de cambiar la funcionalidad se traslada fácilmente a todos los miembros. Lo importante es que se cumplan las pruebas sin importar quien modifique el componente. No hay propietarios.

22 Temario Testeo de aplicaciones Desarrollo conducido por las pruebas Impacto en el proceso de desarrollo Herramientas para TDD Buenas prácticas y recomendaciones

23 Herramientas para TDD Para poner todo esto en práctica necesitamos una herramienta que permita: Definir tests unitarios. Ejecutarlos de manera automática. Mantenerlos independientes del código de la aplicación. Hacer cambios y volver a correr los tests de manera transparente. Proveer una interfaz de usuario clara e informativa.

24 Herramientas para TDD Se han desarrollado varias opciones: Originalmente el framework XUnit para C/C++ sobre Unix. JUnit para Java basado en ese framework, creado por Erich Gamma y Kent Beck Nunit, MbUnit para.net. Varios otros para lenguajes/ambientes específicos. Algunas herramientas de desarrollo lo están incorporando en la IDE.

25 Herramienta NUnit Definiendo NUnit Cumple con las condiciones que se busca en una herramienta de TDD. Es un conjunto de clases (framework) que se extienden por herencia. Es una herramienta de diseño muy simple. Las pruebas se pueden codificar en cualquier lenguaje.net.

26 Herramienta NUnit Radiografía de un caso de prueba: Estímulo Respuesta Evaluación Ejemplo (C#) [Test] public void PushOne() { stack.push( first element ); Assert.IsFalse(stack.IsEmpty); }

27 Herramienta NUnit Ejecución utilizando TestRunners

28 Herramienta NUnit Atributos en NUnit 2.x A partir de la versión 2 se utilizan atributos. Nos permiten atribuir características al código, en un nivel de abstracción diferente al de la funcionalidad.

29 Herramienta NUnit Ejemplo de atributos en NUnit <Test()> Define un método de prueba <TestFixture()> Define una clase que contiene métodos de prueba <ExpectedException(Excepcion)> Cuando el resultado esperado es una excepción <Ignore( Mensaje )> No se corre la prueba, pero da una alerta amarilla. <SetUp()> Método de inicialización del fixture <TearDown()> Método de finalización

30 Demo NUnit y VisualStudio.NET

31 Definición n de Stack Estructura de datos que almacena información en forma LIFO. Operaciones: Push Pop Top IsEmpty Push Top Pop IsEmpty?

32 Tests para un Stack 1. Crear un Stack y ver que IsEmpty() es true. 2. Push un único elemento y verificar que IsEmpty() es false. 3. Push un único elemento, luego Pop, y verificar que IsEmpty() es true. 4. Push un único objeto, recordándolo, luego Pop y verificar que ambos son iguales. 5. Push tres objetos, recordándolos y luego Pop, uno por uno, verificando su igualdad y orden correcto. 6. Pop un Stack sin elementos. 7. Push un único elemento, usar Top y verificar IsEmpty es false. 8. Push un elemento, recordándolo y luego usar Top y verificar que es el mismo elemento. 9. Llamar a Top con un Stack vacío.

33 Conclusiones How much of the intended code (Stack) is covered by one or more tests? 100% Coverage How much code was implemented in Stack.cs that didn t serve for the required functionality? None (Implement only what is needed) How certain are we that the code works? 100% If we need to change Stack s implementation to use (for example) a linked list, would it be easy to ensure we don t break current version? Yes! If someone new needs to find out what the implemented class is intended to do, how can he/she learn? Read unit tests. They serve as formal documentation. (Therefore, store Unit Tests with the official code)

34 Extensiones de NUnit Existen extensiones de la herramienta, orientados a ciertos modelos de aplicación Estas herramienta facilitan las pruebas específicas, permitiendo un mayor nivel de abstracción. Ejemplo: Win Forms, ASP, XML, etc.

35 Extensiones de NUnit NUnitASP y NUnitForms Periten realizar pruebas funcionales que ejecutan acciones sobre la GUI. Proveen de clases helper para Ubicar controles en el form Analizar el contenido Disparar eventos.

36 Extensiones de NUnit Ejemplo NUnitForms (C#) Form form = new Form(); form.show(); ControlTester button = new ControlTester( nombreboton"); button.fireevent("click"); ControlTester textbox = new ControlTester( nombretxtbox"); textbox[ texto"] = texto"; Assertion.AssertEquals("defaultText", textbox[ texto"];

37 Extensiones de NUnit Ejemplo NUnitASP (C#) LabelTester label = new LabelTester( label", WebForm); LinkButtonTester link = new LinkButtonTester("linkBtn", WebForm); Browser.GetPage("http://localhost/ejemplo.aspx"); // Probar objetos de la página link.click(); AssertEquals( un click", label.text);

38 Visual Studio 2005

39 Visual Studio Team System Process and Architecture Guidance Visual Studio Team Architect Application Modeling Logical Infra. Modeling Deployment Modeling Class Modeling Visio and UML Modeling Visual Studio Team Developer Dynamic Code Analyzer Static Code Analyzer Code Profiler Team Foundation Client Visual Studio Professional Edition Unit Testing Code Coverage Visual Studio Team Test Load Testing Manual Testing Test Case Management Visual Studio Industry Partners Visual Studio Team Foundation Change Management Work Item Tracking Reporting Project Site Integration Services Project Management

40 Temario Testeo de aplicaciones Desarrollo conducido por las pruebas Impacto en el proceso de desarrollo Herramientas para TDD Buenas prácticas y recomendaciones

41 Buenas prácticas y recomendaciones Recomendaciones prácticas Pensar en todos los casos de prueba necesarios; abordarlos uno a uno. Mantener los casos de prueba simples No confiar en un orden particular de ejecución No dejar efectos laterales luego de la prueba Si se encuentra un defecto, agregar el caso que lo muestra primero, luego corregir

42 Buenas prácticas y recomendaciones Se puede escribir la prueba después o por un equipo independiente? Lo podría hacer un equipo independiente, pero se pierde el feedback de las pruebas. Se puede codificar la prueba luego de terminado el componente pero no se obtienen los mismos beneficios. No sirve como prevención, ni como análisis del problema.

43 Buenas prácticas y recomendaciones Automatización No intentar automatizar todo el proceso de prueba, puede no ser viable ni práctico. La prueba debe ser estratégica en la búsqueda de defectos. Utilizar distintos niveles y técnicas, los defectos son evasivos.

44 Buenas prácticas y recomendaciones Prueba funcional vs. TDD Se ejecuta el software con el objetivo de encontrar defectos, con la perspectiva del usuario. Prueba el sistema o divisiones funcionales como los casos de uso, a través de la IU. Puede ser costosa de automatizar. La prueba funcional sigue siendo necesaria y es una actividad complementaria al desarrollo conducido por la prueba.

45 Resumen

46 Resumen TDD es una técnica para desarrollar basado en las pruebas. TDD puede mejorar significativamente el proceso de desarrollo. Existen herramientas que permiten llevarlo a cabo en forma automática.

47 Referencias James Newkirk; Test Driven Development in Microsoft.NET Kent Beck; Test Driven Development, by example Will Stott, James Newkirk; Test-Driven C#, Improve the Design and Flexibility of Your Project with Extreme Programming Techniques ng Visual Studio 2005 Team System Herramientas - Noticias, recursos

Capitulo 3. Test Driven Development

Capitulo 3. Test Driven Development Capitulo 3. Test Driven Development 3.1 Uso de JUnit como framework para realizar pruebas unitarias Como ya se mencionó en el marco teórico Test Driven Development es una técnica de programación extrema

Más detalles

Pruebas de unidad utilizando JUnit Juan Manuel Fernández Peña, 2005

Pruebas de unidad utilizando JUnit Juan Manuel Fernández Peña, 2005 Pruebas de unidad utilizando JUnit Juan Manuel Fernández Peña, 2005 JUnit es una herramienta para la realización de pruebas de unidad de software desarrollado con Java, que es una herramienta de software

Más detalles

Sistemas de Programas Universidad Simón Bolívar

Sistemas de Programas Universidad Simón Bolívar Pruebas en sistemas orientados a objetos Sistemas de Programas Universidad Simón Bolívar Agenda 2 Introducción Qué es probar software? Por qué necesitamos probar el software? Terminología de Pruebas Black

Más detalles

Pruebas de unidad con JUnit

Pruebas de unidad con JUnit Pruebas de unidad con JUnit Cuando se implementa software, resulta recomendable comprobar que el código que hemos escrito funciona correctamente. Para ello, implementamos pruebas que verifican que nuestro

Más detalles

Jesús Hernández j.hernandez@@danysoft.com

Jesús Hernández j.hernandez@@danysoft.com Jesús Hernández j.hernandez@@danysoft.com Agenda Introducción Arquitectura de Team System Lab Gestión de procesos con Microsoft 2005 Team System. Situación actual La mayoríade las conexiones entrelos flujos

Más detalles

Visual Studio Team System 2010

Visual Studio Team System 2010 Visual Studio Team System 2010 5. Pruebas Automatizadas con Visual Studio 6. Pruebas codificadas de interfaz de usuario 7. Pruebas Web de desempeño Identificación de candidatos para la automatización Visual

Más detalles

Visual Studio Team System

Visual Studio Team System Visual Studio Team System MSF for CMMi Process Improvement Aurelio Porras Development Tools Advisor aureliop@microsoft.com Microsoft Ibérica El éxito es raro Fallidos Problemáticos Existosos 2004 15% 51%

Más detalles

Desarrollo ágil con Scrum y Visual Studio 2005 Team System

Desarrollo ágil con Scrum y Visual Studio 2005 Team System Desarrollo ágil con Scrum y Visual Studio 2005 Team System (Experiencias desde la trinchera) Lionel Barrabino / lbarrabino@snoop.com.ar Nicolás Paez / npaez@snoop.com.ar Agenda Métodos ágiles Scrum y los

Más detalles

Cuándo estoy listo para pasar a producción?

Cuándo estoy listo para pasar a producción? IBM Software Expo 2006. Madrid 23 de Mayo Cuándo estoy listo para pasar a producción? antonio.alonso @ es.ibm.com IBM Software 2005 IBM Corporation Agenda IBM Software Expo 2006. Madrid, 23 de mayo La

Más detalles

Pruebas unitarias en profundidad

Pruebas unitarias en profundidad Pruebas unitarias en profundidad Luis Alfonso Rey 9º Encuentro Danysoft en Microsoft Agenda Lo que ya sabemos Algunas cosas nuevas Despacito y buena letra Herencia de familia Lo que ya sabemos Qué es

Más detalles

Orígenes y descripción de la Automatización 'Inteligente'

Orígenes y descripción de la Automatización 'Inteligente' Orígenes y descripción de la Automatización 'Inteligente' Orígenes La automatización, como hoy la propone Agile, nace del concepto Jidoka; también llamado: Autonomation. Automation with a human touch.

Más detalles

4994 Introduction to Programming Microsoft.NET Framework Applications with Microsoft Visual Studio 2005

4994 Introduction to Programming Microsoft.NET Framework Applications with Microsoft Visual Studio 2005 4994 Introduction to Programming Microsoft.NET Framework Applications with Microsoft Visual Studio 2005 Introducción Este curso de cinco días impartido por instructor permite a desarrolladores de nivel

Más detalles

DESARROLLO DE SOFTWARE DE CALIDAD: EXTREME PROGRAMMING Y HERRAMIENTAS OPENSOURCE. Mª Carmen Bartolomé. mcbartolome@qualityobjects.

DESARROLLO DE SOFTWARE DE CALIDAD: EXTREME PROGRAMMING Y HERRAMIENTAS OPENSOURCE. Mª Carmen Bartolomé. mcbartolome@qualityobjects. DESARROLLO DE SOFTWARE DE CALIDAD: EXTREME PROGRAMMING Y HERRAMIENTAS OPENSOURCE Mª Carmen Bartolomé mcbartolome@qualityobjects.com Índice Introducción a extreme Programming (XP) Herramientas OpenSource

Más detalles

Necesitamos herramientas que faciliten la tarea. Y que a la vez nos valgan de un modo efectivo para la colaboración.

Necesitamos herramientas que faciliten la tarea. Y que a la vez nos valgan de un modo efectivo para la colaboración. Colaboración n en el ciclo de vida Herramientas para jefes de proyecto Agenda Introducción. n. La guía a de proceso. La gestión n de tareas. Work Items. Gestión n de iteraciones. Integración n Project

Más detalles

Ingeniería de Software

Ingeniería de Software Ingeniería de Software MSDN Ingeniería de Software...1 Ingeniería del Software_/_ Ingeniería y Programación...1 Análisis de Requerimientos...2 Especificación...3 Diseño...4 Desarrollo en Equipo...5 Mantenimiento...6

Más detalles

Agile, Scrum & extreme Progammig

Agile, Scrum & extreme Progammig Agile,, Introduction Departamento de Computación Facultad de Cs. Exactas Fco-Qcas y Naturales Universidad Nacional de Río Cuarto {fbrusatti}(at)dc.exa.unrc.edu.ar Agile,, Metodologías Agiles Son metodologías

Más detalles

Bienvenidos a la presentación, producción de informes y depuración (debugging). En esta unidad discutiremos la producción de informes utilizando la

Bienvenidos a la presentación, producción de informes y depuración (debugging). En esta unidad discutiremos la producción de informes utilizando la Bienvenidos a la presentación, producción de informes y depuración (debugging). En esta unidad discutiremos la producción de informes utilizando la tecnología.net y la aplicación de técnicas de depuración

Más detalles

Introducción a las Metodologías Ágiles. Nicolás Brailovsky March 7, 2009

Introducción a las Metodologías Ágiles. Nicolás Brailovsky March 7, 2009 Universidad Tecnológica Nacional Facultad Regional Buenos Aires Diseño de Sistemas Introducción a las Metodologías Ágiles Nicolás Brailovsky March 7, 2009 1 Qué es una metodología? 2 Metodologías Ágiles

Más detalles

Lenguaje Java Avanzado

Lenguaje Java Avanzado Lenguaje Java Avanzado Sesión 4: Pruebas con JUnit 2012-2013 Depto. Ciencia de la Computación e IA Índice Introducción a JUnit Implementación de las pruebas Ejecución de pruebas Pruebas con excepciones

Más detalles

Aseguramiento de la calidad y pruebas de software

Aseguramiento de la calidad y pruebas de software Aseguramiento de la calidad y pruebas de software 5- Pruebas del software Automatización de pruebas unitarias Blanca A. Vargas Govea vargasgovea@itesm.mx Abril 23, 2013 Contenido Automatización de pruebas

Más detalles

Técnicas Avanzadas de Testing Automático

Técnicas Avanzadas de Testing Automático Técnicas Avanzadas de Testing Automático Marcelo Frias ITBA - Buenos Aires, Argentina CONICET Preliminares: Calidad Validación y Verificación Especificaciones y V&V Análisis estático y dinámico Inspecciones

Más detalles

Pruebas de Unidad en BlueJ

Pruebas de Unidad en BlueJ Pruebas de Unidad en BlueJ Versión 1.0 para BlueJ versión 1.3.0 Michael Kölling Mærsk Institute University of Southern Denmark Traducido al español por Matías Avallone Instituto de Tecnología Ort Nº 2

Más detalles

Práctica 7. Pruebas. Introducir conceptos básicos de pruebas unitarias en sistemas orientados a objetos.

Práctica 7. Pruebas. Introducir conceptos básicos de pruebas unitarias en sistemas orientados a objetos. Objetivos Introducir conceptos básicos de pruebas unitarias en sistemas orientados a objetos. Material Necesario - Pruebas de caja negra con Junit. www.junit.org Viene integrado en Eclipse, pero al crear

Más detalles

Clase Práctica Nº 1 ED 2015

Clase Práctica Nº 1 ED 2015 Clase Práctica Nº 1 ED 2015 Introducción La creación de una solución de software tiene varias etapas, por ejemplo: Diseño Implementación Testeo Y para cada etapa existen herramientas que nos ayudan. Introducción

Más detalles

Carlos Fontela cfontela@fi.uba.ar

Carlos Fontela cfontela@fi.uba.ar Carlos Fontela cfontela@fi.uba.ar Vimos la estrategia de resolución de problemas usando objetos Pero no cómo implementar los propios objetos => Construcción de objetos 2 1c2016 Diseño por contrato y Test-First

Más detalles

04.01.01 Introducción a ASP.NET

04.01.01 Introducción a ASP.NET 04.01.01 Introducción a ASP.NET Integración de Sistemas Parte II. Diseño e implementación de aplicaciones Web con.net Objetivos Conocer los fundamentos de ASP.NET Saber crear una aplicación web ASP.NET

Más detalles

Pruebas unitarias. Que son las pruebas unitarias. Porque realizar pruebas unitarias

Pruebas unitarias. Que son las pruebas unitarias. Porque realizar pruebas unitarias Pruebas unitarias Marzo 2006 @autor: Jorge Rodriguez Probar código nunca tuvo tanta importancia en el ciclo de desarrollo de una aplicación hasta hace algunos años, donde se ha desatado una revolución

Más detalles

Artesanía de So-ware y Desarrollo Dirigido por Pruebas

Artesanía de So-ware y Desarrollo Dirigido por Pruebas Artesanía de So-ware y Desarrollo Dirigido por Pruebas QUÉ ES LA ARTESANÍA DE SOFTWARE Manifiesto por la Artesanía de So-ware Como aspirantes a artesanos de so-ware, estamos elevando el nivel de desarrollo

Más detalles

Taller de Test Driven Development

Taller de Test Driven Development Taller de Test Driven Development Pablo Orduña (aka NcTrun) This work is licensed under the Creative Commons Attribution-ShareAlike License. To view a copy of this license, visit http://creativecommons.org/licenses/by-sa/2.0/

Más detalles

Tema 3. Test Driven Development

Tema 3. Test Driven Development Tema 3. Test Driven Development Ejercicios Resueltos Ejercicio 01. Desarrolle mediante TDD una implementación del algoritmo de la Criba de Eratóstenes para calcular la lista de los números primos desde

Más detalles

Continuous Integration Contenido

Continuous Integration Contenido Continuous Integration Contenido Continuous Integration... 1 Principios del Manifiesto Ágil... 3 Concepto... 3 Qué es integrar?... 3 Qué implica construir?... 3 Entonces, Qué es la Integración Continua?...

Más detalles

Aplicaciones Distribuidas con Visual Studio 2005

Aplicaciones Distribuidas con Visual Studio 2005 Aplicaciones Distribuidas con Visual Studio 2005 24.10.2006 Servicios Profesionales Danysoft Ahora los arquitectos en.net disponen de una versión de Visual Studio especialmente creada para atender sus

Más detalles

http://web.archive.org/web/20080203143123/http://www.microsoft.co...

http://web.archive.org/web/20080203143123/http://www.microsoft.co... 1 de 8 15/03/2009 02:14 p.m. Haga clic aquí para descargar Silverlight. * LatinoaméricaCambiar Todos los sitios de Microsoft Microsoft * Buscar en Microsoft.com: Home MSDN Library Descarga DCE 2005 Net

Más detalles

Workflow, BPM y Java Resumen de la presentación de Tom Baeyens

Workflow, BPM y Java Resumen de la presentación de Tom Baeyens Workflow, BPM y Java Resumen de la presentación de Tom Baeyens Workflow, BPM y Java Página 1 de 11 1. Introducción Tom Baeyens es el fundador y arquitecto del proyecto de JBoss jbpm, la máquina de workflow

Más detalles

Ingeniería de Software: Parte 2

Ingeniería de Software: Parte 2 Ingeniería de Software: Parte 2 Agustín J. González ElO329: Diseño y Programación Orientados a Objeto Adaptado de: http://www.dsic.upv.es/~uml http://inst.eecs.berkeley.edu/~cs169/ entre otras fuentes.

Más detalles

Vendiendo Visual Studio 2010

Vendiendo Visual Studio 2010 Vendiendo Visual Studio 2010 Interactive entertainment Search/ advertising Mobile Traditional IT and cloud Modern desktop Maps Problema de negocio, reto o oportunidad identificado El desarrollador

Más detalles

Proceso Unificado de Rational

Proceso Unificado de Rational RUP: El Proceso Unificado de Rational XP: Programacion Extrema EAP: Computación Científica Ciencia de la Computación V Prof. Oscar Brnito Pacheco Proceso Unificado de Rational Orígenes Modelo original

Más detalles

Automatización de Pruebas de Software con Herramientas Open Source. Henry Eduardo Carrión Cristóbal

Automatización de Pruebas de Software con Herramientas Open Source. Henry Eduardo Carrión Cristóbal Automatización de Pruebas de Software con Herramientas Open Source Henry Eduardo Carrión Cristóbal Agenda Pruebas de Software Test Driven Development Por que automatizar? Herramientas Estrategias Conclusiones

Más detalles

Gestión de calidad en el software. Calidad en el Desarrollo de Software. Spoilage. Spoilage

Gestión de calidad en el software. Calidad en el Desarrollo de Software. Spoilage. Spoilage Gestión de calidad en el software Calidad de software Depto. Ciencias e Ingeniería de la Computación Universidad Nacional del Sur Segundo Cuatrimestre 2007 primer problema: los errores se aceptan. Esto

Más detalles

Tema 5. Gestión de Proyectos (ISG3)

Tema 5. Gestión de Proyectos (ISG3) Tema 5. Gestión de Proyectos (ISG3) Antonio José Sáenz Albanés (C.T.O) Reconocimiento No Comercial Compartir Igual - 2.5 - España 1 Planificación 1ª Clase: Presentación y Conceptos Generales 2ª Clase:

Más detalles

ESTRATEGIA DE DISEÑO PARA LA AUTOMATIZACIÓN DE PRUEBAS UNITARIAS DE CÓDIGOS PHP UTILIZANDO EL FRAMEWORK PHPUNIT

ESTRATEGIA DE DISEÑO PARA LA AUTOMATIZACIÓN DE PRUEBAS UNITARIAS DE CÓDIGOS PHP UTILIZANDO EL FRAMEWORK PHPUNIT ESTRATEGIA DE DISEÑO PARA LA AUTOMATIZACIÓN DE PRUEBAS UNITARIAS DE CÓDIGOS PHP UTILIZANDO EL FRAMEWORK PHPUNIT Alejandro Villa Betancur 1, Jorge E. Giraldo Plaza 2 1 Estudiante de ingeniería Informática,

Más detalles

Técnicas Avanzadas de Testing Automatizado

Técnicas Avanzadas de Testing Automatizado Técnicas Avanzadas de Testing Automatizado Introducción: Testing ad hoc Testing sistemático Testing unitario Unidad y Suite de tests Frameworks xunit Fixtures compartidos e independecia Tests parametrizados

Más detalles

Serie Artículos sobre Gestión de IT y Calidad CALIDAD vs TESTING

Serie Artículos sobre Gestión de IT y Calidad CALIDAD vs TESTING Serie Artículos sobre Gestión de IT y CALIDAD vs TESTING - 1 - vs Testing Autor: Dr. Norberto Figuerola (PMP) Contador Público y Licenciado en Administración (U.B.A.) Master in Project Management (George

Más detalles

A 10 años del Manifiesto Ágil

A 10 años del Manifiesto Ágil A 10 años del Manifiesto Ágil #AgilesPV Pueden comenzar a twittear sus preguntas. #AM De donde venimos De donde venimos 1970 s 1980 s 1990 s 2000 s I believe in this concept, but the implementation described

Más detalles

E 2.4.1 Documento de entrega de Aplicación

E 2.4.1 Documento de entrega de Aplicación E 2.4.1 Documento de entrega de Aplicación Versión: 0.1 Fecha: 11/08/11 Autor: Email: Antoni Bertran Bellido abertran@opentrends.net Historial de cambios Versión Fecha Autor Cambios 0.1 11/08/11 Antoni

Más detalles

ESTRATEGIA PARA LA APLICACIÓN DE PRUEBAS DE CAJA BLANCA Y CAJA NEGRA EMPLEANDO LA METODOLOGÍA RUP.

ESTRATEGIA PARA LA APLICACIÓN DE PRUEBAS DE CAJA BLANCA Y CAJA NEGRA EMPLEANDO LA METODOLOGÍA RUP. ESTRATEGIA PARA LA APLICACIÓN DE PRUEBAS DE CAJA BLANCA Y CAJA NEGRA EMPLEANDO LA METODOLOGÍA RUP. Ing. Susana González Espinosa 1, Ing. Rafael Bello Lara 2, Dania Durán Cutiño 3 1, 2,3 Universidad de

Más detalles

Introducción a Rational Unified Process (RUP)

Introducción a Rational Unified Process (RUP) Qué es un Proceso de Desarrollo de SW? Introducción a Patricio Letelier letelier@dsic.upv.es Departamento Sistemas Informáticos y Computación (DSIC) (UPV) - España Define Quién debe hacer Qué, Cuándo y

Más detalles

Pruebas de Compatibilidad de Aplicaciones con SQL Server 2008

Pruebas de Compatibilidad de Aplicaciones con SQL Server 2008 Pruebas de Compatibilidad de Aplicaciones con SQL Server 2008 Instrucciones Generales El objetivo de esta iniciativa es determinar si sus aplicaciones ejecutan apropiadamente en SQL Server 2008 y apoyar

Más detalles

Capítulo 4. Requisitos del modelo para la mejora de la calidad de código fuente

Capítulo 4. Requisitos del modelo para la mejora de la calidad de código fuente Capítulo 4. Requisitos del modelo para la mejora de la calidad de código fuente En este capítulo definimos los requisitos del modelo para un sistema centrado en la mejora de la calidad del código fuente.

Más detalles

Práctica de Integración de Sistemas Aplicación Web.NET: Sitio de Comentarios de Eventos Deportivos

Práctica de Integración de Sistemas Aplicación Web.NET: Sitio de Comentarios de Eventos Deportivos Práctica de Integración de Sistemas Aplicación Web.NET: Sitio de Comentarios de Eventos Deportivos 1. Introducción Curso académico 2009-2010 La práctica de Integración de Sistemas consiste en el diseño

Más detalles

Refactoring: otra práctica de la Programación extrema

Refactoring: otra práctica de la Programación extrema Hackers & Developers Magazine Año 0, Número 6 31 Refactoring: otra práctica de la Programación extrema EXTREME PROGRAMMING En ediciones anteriores estuvimos hablando de TDD, sus beneficios y forma de implementarlo.

Más detalles

Beneficios para el negocio con Visual Studio 2005 Team System

Beneficios para el negocio con Visual Studio 2005 Team System Beneficios para el negocio con Visual Studio 2005 Team System Alcanzar la productividad y la adaptabilidad de los negocios mediante una gestión integrada e intuitiva del ciclo de vida de las aplicaciones.

Más detalles

ENTORNO DE DESARROLLO MICROSOFT.NET 2010

ENTORNO DE DESARROLLO MICROSOFT.NET 2010 ENTORNO DE DESARROLLO MICROSOFT.NET 2010 UNIDAD 2 Estructura de contenidos: 1. Conociendo ASP 2. Sitio Web y Proyecto Web 3. WebForm 4. Características de los webforms 5. Entorno del.net 6. Controles básicos

Más detalles

Finalmente, aprenderá a interceptar y a manejar muchos de los eventos comunes que tienen los componentes y los formularios de Windows Form.

Finalmente, aprenderá a interceptar y a manejar muchos de los eventos comunes que tienen los componentes y los formularios de Windows Form. Sistemas expertos e Inteligencia Artificial,Guía 1 Facultad : Ingeniería Escuela : Computación Asignatura: Sistemas expertos e Inteligencia Artificial Tema: INTRODUCCIÓN AL IDE C#. Objetivo Identificar

Más detalles

XP- EXTREME PROGRAMMING

XP- EXTREME PROGRAMMING XP- EXTREME PROGRAMMING RUBBY CASALLAS DEPARTAMENTO DE SISTEMAS Y COMPUTACIÓN FACULTAD DE INGENIERÍA UNIVERSIDAD DE LOS ANDES Agenda Qué es XP? 12 Prácticas Actividades Principales: Planeación Diseño Codificación

Más detalles

GLOSARIO DE TÉRMINOS

GLOSARIO DE TÉRMINOS MINISTERIO DE EDUCACIÓN, CULTURA Y DEPORTE SECRETARÍA DE ESTADO DE EDUCACIÓN, FORMACIÓN PROFESIONAL Y UNIVERSIDADES DIRECCIÓN GENERAL DE FORMACIÓN PROFESIONAL INSTITUTO NACIONAL DE LAS CUALIFICACIONES

Más detalles

Integración Continua en Hudson

Integración Continua en Hudson Laboratorio de Redes y Sistemas operativos Integración Continua en Hudson 2/12/2013 Alumnos Diego Turchak Martín Cappa Integración Continua Introducción La Integración Continua es una práctica en desarrollo

Más detalles

Agile Testing. Sesión 8. Metodologías Ágiles de Desarrollo de Software Domingo Gallardo, DCCIA, Univ. Alicante

Agile Testing. Sesión 8. Metodologías Ágiles de Desarrollo de Software Domingo Gallardo, DCCIA, Univ. Alicante Agile Testing Sesión 8 Unas palabras previas de cautela Las pruebas no son una verificación formal de un programa, no pueden garantizar la corrección del software para todos los posibles casos de entrada

Más detalles

Programación en Capas.

Programación en Capas. Programación en Capas. Ricardo J. Vargas Del Valle Universidad de Costa Rica, Ciencias de Computación e Informática, San José, Costa Rica, 506 ricvargas@gmail.com Juan P. Maltés Granados Universidad de

Más detalles

Extreme Programming Practices. Pair-Programming, Collective Code Ownership, Frequent Integration

Extreme Programming Practices. Pair-Programming, Collective Code Ownership, Frequent Integration Extreme Programming Practices Pair-Programming, Collective Code Ownership, Frequent Integration 12 Prácticas de XP 4 Prácticas de Codificación: estándares, vocabulario, refactoring, diseño simple. 4 Prácticas

Más detalles

capacitación y guía para el desarrollo de software Pruebas de Software Pruebas de Software 1

capacitación y guía para el desarrollo de software Pruebas de Software Pruebas de Software 1 Pruebas de Software Pruebas de Software 1 PRUEBAS DE SOFTWARE... 3 INTRODUCCIÓN... 3 Definiciones [1]... 3 Filosofía y Economía... 4 Justificación... 4 PRINCIPIOS [1]... 7 NIVELES DE PRUEBAS... 8 TIPOS

Más detalles

Creando Cuentas Nuevas para Padres / Alumnos en el

Creando Cuentas Nuevas para Padres / Alumnos en el Creando Cuentas Nuevas para Padres / Alumnos en el Portal de Internet Aeries de YCJUSD El portal de Internet Aeries proporciona una manera segura para acceder a información sobre la asistencia y el progreso

Más detalles

Baires. Design - Test - Automate

Baires. Design - Test - Automate SERVICIOS DE CONTROL DE CALIDAD Y TESTING DE SOFTWARE Áreas con falta de Calidad y Testing La falta de control de calidad orgánico en una empresa tiene impactos que van más allá de la aparición de errores

Más detalles

1 GLOSARIO. Actor: Es un consumidor (usa) del servicio (persona, sistema o servicio).

1 GLOSARIO. Actor: Es un consumidor (usa) del servicio (persona, sistema o servicio). 1 GLOSARIO A continuación se definen, en orden alfabético, los conceptos básicos que se han abordado a lo largo del desarrollo de la metodología para la gestión de requisitos bajo la Arquitectura Orientada

Más detalles

Testing y Mocking: Probando Aplicaciones

Testing y Mocking: Probando Aplicaciones Testing y Mocking: Probando Aplicaciones 1 Introducción 2 Tipos de tests 3 Inyección de dependencias, DI 4 Mocking Outline 1 Introducción 2 Tipos de tests 3 Inyección de dependencias, DI 4 Mocking Outline

Más detalles

Plataforma de Desarrollo de Software

Plataforma de Desarrollo de Software Plataforma de Software Guía de introducción a la Plataforma de Desarrollo de Software Versión 1.07 Basado en plantilla: xxxxx - Plantilla básica v2.01 2014-02-07 Página 1 de 9 Control de cambios Fecha

Más detalles

NUEVAS TENDENCIAS EN LA CALIDAD DEL SOFTWARE IGNACIO BAYUGAR

NUEVAS TENDENCIAS EN LA CALIDAD DEL SOFTWARE IGNACIO BAYUGAR NUEVAS TENDENCIAS EN LA CALIDAD DEL SOFTWARE IGNACIO BAYUGAR Ignacio.bayugar@mercadolibre.com, i id nachobayugar@gmail.com NUEVAS TENDENCIAS EN LA CALIDAD DEL SOFTWARE El desarrollo ágil El nuevo rol de

Más detalles

Criterios de clasificación

Criterios de clasificación Criterios de clasificación Usualmente clasificamos para agrupar elementos con características comunes, simplificando la realidad y analizando un conjunto de elementos desde distintos puntos de vista. Sobre

Más detalles

MANUAL EASYCHAIR. A) Ingresar su nombre de usuario y password, si ya tiene una cuenta registrada Ó

MANUAL EASYCHAIR. A) Ingresar su nombre de usuario y password, si ya tiene una cuenta registrada Ó MANUAL EASYCHAIR La URL para enviar su propuesta a la convocatoria es: https://easychair.org/conferences/?conf=genconciencia2015 Donde aparece la siguiente pantalla: Se encuentran dos opciones: A) Ingresar

Más detalles

Verificación y Validación de Software

Verificación y Validación de Software Verificación y Validación de Ingeniería en Sistemas de Información Departamento de Ciencias e Ingeniería de la Computación 2015 Administración y Gestión del Testing Administración y Gestión del Testing

Más detalles

07/07/2010. Estrategias de testing para desarrolladores. Buenas prácticas de equipo

07/07/2010. Estrategias de testing para desarrolladores. Buenas prácticas de equipo Todo en la vida comienza con código VII Encuentro Desarrolladores Microsoft Buenas prácticas de equipo Luis Alfonso Rey Servicios Profesionales VII Encuentro Desarrolladores Microsoft Todo en la vida comienza

Más detalles

Entornos de Testing. CES Centro de Ensayos de Software. Jorge Triñanes. http://www.ces.com.uy 19-08-04 CES JIAP 2005 1

Entornos de Testing. CES Centro de Ensayos de Software. Jorge Triñanes. http://www.ces.com.uy 19-08-04 CES JIAP 2005 1 Entornos de Testing Jorge Triñanes CES Centro de Ensayos de Software http://www.ces.com.uy 19-08-04 CES JIAP 2005 1 Consorcio entre CUTI y FJR (InCo-FING) Autoridades: Directorio Consorcio Gerente CES

Más detalles

Iniciar flujo a partir de un archivo XML

Iniciar flujo a partir de un archivo XML How to Iniciar flujo a partir de un archivo XML Versión: 2.0 Fecha de publicación 30-03-2011 Aplica a: Q-flow 3.0y Q-flow 3.1 Índice Introducción... 3 Pre-requisitos... 3 Componentes de la solución...

Más detalles

Quieres diseñar una página web y no sabes por dónde empezar? Puedes decantarte por utilizar Visual Web Developer.

Quieres diseñar una página web y no sabes por dónde empezar? Puedes decantarte por utilizar Visual Web Developer. Crear una página Web básica en Visual Web Developer Quieres diseñar una página web y no sabes por dónde empezar? Puedes decantarte por utilizar Visual Web Developer. Visual Web Developer es una herramienta

Más detalles

Mi primer proyecto en Dev-C++

Mi primer proyecto en Dev-C++ Mi primer proyecto en Dev-C++ Para realizar esta actividad deberás disponer de un ordenador en el que esté instalado el Dev-C++. Debes ir realizando cada uno de los pasos indicados, en el mismo orden en

Más detalles

Capítulo 11. Conclusiones y trabajo futuro

Capítulo 11. Conclusiones y trabajo futuro Capítulo 11. Conclusiones y trabajo futuro En esta tesis ha realizado un entorno de desarrollo Web que proporciona herramientas para la mejora de la calidad del código de los desarrolladores. Para conseguir

Más detalles

Administración de Proyectos de Software - PMI. Tema: Gestión de la Calidad del Proyecto. Autor: Mario Hernández

Administración de Proyectos de Software - PMI. Tema: Gestión de la Calidad del Proyecto. Autor: Mario Hernández Administración de Proyectos de Software - PMI Tema: Gestión de la Calidad del Proyecto Autor: Mario Hernández Procesos ligados a la Gestión de la Calidad del Proyecto La gestión de la calidad del proyecto

Más detalles

Un modelo de proceso es una representación abstracta de un proceso. Presenta una descripción de un proceso desde una perspectiva particular.

Un modelo de proceso es una representación abstracta de un proceso. Presenta una descripción de un proceso desde una perspectiva particular. El proceso software Un conjunto estructurado de actividades y resultados asociados que conducen a la creación de un producto de software Especificación: Definir la funcionalidad y las restricciones en

Más detalles

Programación orientada a

Programación orientada a Programación orientada a objetos con Java Pedro Corcuera Dpto. Matemática Aplicada y Ciencias de la Computación Universidad de Cantabria corcuerp@unican.es Objetivos Presentar los conceptos de la programación

Más detalles

UNIVERSIDAD UNION BOLIVARIANA CARRERA DE INGENIERIA DE SISTEMAS

UNIVERSIDAD UNION BOLIVARIANA CARRERA DE INGENIERIA DE SISTEMAS UNIVERSIDAD UNION BOLIVARIANA CARRERA DE INGENIERIA DE SISTEMAS METODOLOGIAS AGILES PROCESO UNIFICADO AGIL (AUP) MATERIA : INGENIERIA SOFTWARE DOCENTE : LIC. ERVIN FLORES ESTUDIANTE : JORGE LUIS CORDERO

Más detalles

IBM Rational for Power i. The business-driven development lifecycle

IBM Rational for Power i. The business-driven development lifecycle IBM Rational for Power i The business-driven development lifecycle Agenda Business Driven Development Rational Development Lifecycle DEMO 2 The business-driven development lifecycle Prioritize Plan Manage

Más detalles

Historia de revisiones

Historia de revisiones Herbert Game Documentación Técnica Versión 1.4 Historia de revisiones Fecha Versión Descripción Autor 6/11/2011 1.0 Primer versión de la Documentación Técnica Hernán Albano 06/11/2011 1.1 Revisión del

Más detalles

Refactorizar (v) Reestructurar el software aplicando una secuencia de refactorizaciones.

Refactorizar (v) Reestructurar el software aplicando una secuencia de refactorizaciones. Refactorización Definición Refactorización (n) Cambio realizado a la estructura interna del software para hacerlo más fácil de comprender y más fácil de modificar sin cambiar su comportamiento observable.

Más detalles

Estrategias de Automatización en el contexto de un Development Pipeline

Estrategias de Automatización en el contexto de un Development Pipeline Estrategias de Automatización en el contexto de un Development Pipeline Elementos de Una Estrategia de Automatización Definir los niveles de Tests Automatizados: Tests Unitarios. Tests de Integración.

Más detalles

IBM Software Development Platform

IBM Software Development Platform IBM Group IBM Development Platform Seminario. antonio.alonso@es.ibm.com IBM Group software Agenda 1. Introducir plataforma de desarrollo de IBM. 2. DEMO: Construcción de aplicaciones J2EE con RAD. 3. Café

Más detalles

Guía de instalación de Citrix EdgeSight for Load Testing. Citrix EdgeSight for Load Testing 3.7

Guía de instalación de Citrix EdgeSight for Load Testing. Citrix EdgeSight for Load Testing 3.7 Guía de instalación de Citrix EdgeSight for Load Testing Citrix EdgeSight for Load Testing 3.7 Copyright El uso del producto descrito en esta guía está sujeto a la aceptación previa del Contrato de licencia

Más detalles

Testing. Tipos, Planificación y Ejecución de Pruebas

Testing. Tipos, Planificación y Ejecución de Pruebas Testing Tipos, Planificación y Ejecución de Pruebas Contenido Definiciones del Testing de Software Objetivos, conceptos Tipos de Test Testing a-la RUP Rol del Testing en el proceso Artefactos Trabajadores

Más detalles

IBM Rational Statemate ayuda a los ingenieros de sistemas a enfrentarse a los retos del mercado de sistemas integrados complejos

IBM Rational Statemate ayuda a los ingenieros de sistemas a enfrentarse a los retos del mercado de sistemas integrados complejos ZP09-0207, con fecha 2 de junio de 2009 IBM Rational Statemate ayuda a los ingenieros de sistemas a enfrentarse a los retos del mercado de sistemas integrados complejos Índice 1 Resumen de características

Más detalles

JUNIT MATERIAL ELABORADO POR: RUBBY CASALLAS/JUAN PABLO QUIROGA/GLORIA CORTÉS DEPARTAMENTO DE SISTEMAS Y COMPUTACIÓN UNIVERSIDAD DE LOS ANDES

JUNIT MATERIAL ELABORADO POR: RUBBY CASALLAS/JUAN PABLO QUIROGA/GLORIA CORTÉS DEPARTAMENTO DE SISTEMAS Y COMPUTACIÓN UNIVERSIDAD DE LOS ANDES JUNIT MATERIAL ELABORADO POR: RUBBY CASALLAS/JUAN PABLO QUIROGA/GLORIA CORTÉS DEPARTAMENTO DE SISTEMAS Y COMPUTACIÓN UNIVERSIDAD DE LOS ANDES 1 Objetivo del caso JUnit 2 Poder utilizar JUnit para realizar

Más detalles

Título: Optimización de Procesos de Negocio con SOA / BPM Nombre y Apellido: Mario Bolo Email: bolo@ar.ibm.com Fecha: 15/08/2012

Título: Optimización de Procesos de Negocio con SOA / BPM Nombre y Apellido: Mario Bolo Email: bolo@ar.ibm.com Fecha: 15/08/2012 Título: Optimización de Procesos de Negocio con SOA / BPM Nombre y Apellido: Mario Bolo Email: bolo@ar.ibm.com Fecha: 15/08/2012 El problema: las aplicaciones tradicionales no le proveen la agilidad necesaria

Más detalles

Guía de instalación de Citrix EdgeSight for Load Testing. Citrix EdgeSight for Load Testing 3.6

Guía de instalación de Citrix EdgeSight for Load Testing. Citrix EdgeSight for Load Testing 3.6 Guía de instalación de Citrix EdgeSight for Load Testing Citrix EdgeSight for Load Testing 3.6 Copyright El uso del producto descrito en esta guía está sujeto a la aceptación previa del Contrato de licencia

Más detalles

Tras el desarrollo de la aplicación se evidenció las ventajas que provee TDD tales como:

Tras el desarrollo de la aplicación se evidenció las ventajas que provee TDD tales como: DESARROLLO DIRIGIDO POR TEST (TDD) UTILIZANDO EL FRAMEWORK JUNIT EN UN SISTEMA WEB DE ASIGNACIÓN DE AULAS DE LOS LABORATORIOS GENERALES DE COMPUTACIÓN DE LA ESPE, APLICANDO LA METODOLOGÍA AGILE UNIFIED

Más detalles

Trainning in.net technology. Formacion.Net Advanced Fernando Lencinas

Trainning in.net technology. Formacion.Net Advanced Fernando Lencinas Trainning in.net technology Formacion.Net Advanced Fernando Lencinas Página Page 1 1 Introduccion a la plataforma.net 1.1 Arquitectura de la plataforma.net 1.2 Common Language Runtime CLR, Microsoft Intermediate

Más detalles

BOLETÍN DE NOVEDADES Barcelona, junio de 2008

BOLETÍN DE NOVEDADES Barcelona, junio de 2008 BOLETÍN DE NOVEDADES Barcelona, junio de 2008 Introducción El objeto de este documento es presentar y describir brevemente las principales actuaciones en los últimos meses de Carver en algunos de sus clientes,

Más detalles

Desarrollo y servicios web Sesión 18

Desarrollo y servicios web Sesión 18 Desarrollo y servicios web Sesión 18 Luisa Fernanda Rincón Pérez 2014-2 Qué son los patrones arquitectónicos? Definen la estructura de la solución al mas alto nivel. Por esto es lo primero que se tiene

Más detalles

GUÍA DE TRABAJO N 3 C# Ing. Néstor Raúl Suarez Perpiñan Página 1 de 10. Tema: APLICACIONES WINDOWS FORMS LENGUAJE C#

GUÍA DE TRABAJO N 3 C# Ing. Néstor Raúl Suarez Perpiñan Página 1 de 10. Tema: APLICACIONES WINDOWS FORMS LENGUAJE C# Página 1 de 10 Tema: APLICACIONES WINDOWS FORMS LENGUAJE C# Objetivo: Conocer y aplicar correctamente las diferentes estructuras de programación que hacen parte del lenguaje de Programación C# en una Aplicación

Más detalles

EL SECRETO DE UN SOFTWARE EXITOSO

EL SECRETO DE UN SOFTWARE EXITOSO EL SECRETO DE UN SOFTWARE EXITOSO Por Br. Carlos Soria, carlmanmagnifico@gmail.com RESUMEN El presente artículo nos muestra el impacto del software en el negocio, y él énfasis que se debe hacer en desarrollarlo

Más detalles

Lenguaje Ruby y su entorno

Lenguaje Ruby y su entorno Lenguaje Ruby y su entorno Curso de Ruby IV: Rspec Pedro Navajas Modelo Laboratorio de Software Libre Escuela Politécnica Superior Universidad de Córdoba 24 de Marzo de 2011 Pedro Navajas Modelo (UCO)

Más detalles

IntegracionContinua. Departamento de Sistemas y Computación Universidad de los Andes, Bogotá

IntegracionContinua. Departamento de Sistemas y Computación Universidad de los Andes, Bogotá IntegracionContinua Departamento de Sistemas y Computación Universidad de los Andes, Bogotá Referencias http://www.martinfowler.com/articles/continuo usintegration.html (10 September 2000: Original version

Más detalles