Ing.Software

Archive for the ‘Rapid ApplicationDevelopment (RAD), Entorno integrado de desarrollo (IDE) Ingeniería de Software Asistida por computador (CASE)’ Category

Rapid ApplicationDevelopment (RAD), Entorno integrado de desarrollo (IDE) Ingeniería de Software Asistida por computador (CASE)

Autor:

Lohanny Carreño

El desarrollo rápido de aplicaciones o RAD (acrónimo en inglés de rapid application development) es un proceso de desarrollo de software, desarrollado inicialmente por James Martin en1980. El método comprende el desarrollo interactivo, la construcción de prototipos y el uso de utilidades CASE (Computer Aided Software Engineering). Tradicionalmente, el desarrollo rápido de aplicaciones tiende a englobar también la usabilidad, utilidad y la rapidez de ejecución.

En este orden de Ideas para complementar el concepto anterior podemos decir que Las herramientas CASE son un complemento de la caja de herramientas del ingeniero del software. CASE proporciona al ingeniero la posibilidad de automatizar actividades manuales y de mejorar su visión general de la ingeniería. Al igual que las herramientas de ingeniería y de diseño asistidos por computadora que utilizan los ingenieros de otras disciplinas, las herramientas CASE ayudan a asegurar que la calidad sea algo diseñado antes de llegar a construir el producto.

Por otro lado Un entorno de desarrollo integrado, llamado también IDE (sigla en inglés de integrated development environment), es un programa informático compuesto por un conjunto de herramientas de programación. Un IDE es un entorno de programación que ha sido empaquetado como un programa de aplicación; es decir, que consiste en un editor de código, un compilador, un depurador y un constructor de interfaz gráfica (GUI). Los IDEs pueden ser aplicaciones por sí solas o pueden ser parte de aplicaciones existentes

Ventajas y desventajas de usar estas herramientas de ingeniería de software.

VENTAJAS

  1. Comprar puede ahorrar dinero en comparación con construir.
  2. Los entregables pueden ser fácilmente trasladados a otra plataforma.
  3. El desarrollo se realiza a un nivel de abstracción mayor.
  4. Visibilidad temprana.
  5. Mayor flexibilidad.
  6. Menor codificación manual.
  7. Mayor involucramiento de los usuarios.
  8. Posiblemente menos fallas.
  9. Posiblemente menor costo.
  10. Ciclos de desarrollo más pequeños.
  11. Interfaz gráfica estándar.
DESVENTAJAS

  1. Comprar puede ser más caro que construir.
  2. Costo de herramientas integradas y equipo necesario.
  3. Progreso más difícil de medir.
  4. Menos eficiente.
  5. Menor precisión científica.
  6. Riesgo de revertirse a las prácticas sin control de antaño.
  7. Más fallas (por síndrome de “codificar a lo bestia”).
  8. Prototipos pueden no escalar, un problema mayúsculo.
  9. Funciones reducidas (por “timeboxing”).
  10. Dependencia en componentes de terceros: funcionalidad de más o de menos, problemas legales.

 

Ingeniería de Software Asistida por computador (CASE) ApplicationDevelopment (RAD), Entorno integrado de desarrollo (IDE)

Autor: Jenny Prado

CASE Computer Aided Software Engineering o Computer Aided Systems Engineering, es: “el software que se utiliza en cualquiera o en todas las fases de desarrollo de un sistema de información, incluyendo el análisis, diseño y programación. Las herramientas CASE proporcionan métodos automáticos para diseñar y documentar las técnicas tradicionales de programación estructurada. (Freedman, 1993).En pocas palabras, son aplicaciones informáticas que automatizan una o más fases del ciclo de vida de desarrollo de sistema, destinadas a aumentar la productividad en el desarrollo de software.

Tipos: La siguiente clasificación es la más habitual basada en las fases del ciclo de desarrollo que cubren:

  * Upper CASE (U-CASE), herramientas que ayudan en las fases de planificación, análisis de requisitos y estrategia del desarrollo, usando, entre otros diagramas UML.

*  Middle CASE (M-CASE), herramientas para automatizar tareas en el análisis y diseño de la aplicación.

*  Lower CASE (L-CASE), herramientas que semi-automatizan la generación de código, crean programas de detección de errores, soportan la depuración de programas y pruebas. Además automatizan la documentación completa de la aplicación. Aquí pueden incluirse las herramientas de Desarrollo rápido de aplicaciones.

Imagen

Entre los beneficios que nos proporcionan el uso de estas herramientas tenemos: integración de actividades del ciclo de vida del sistema, aumento de productividad y eficacia, ya que con la automatización de tareas como por ejemplo la documentación, permite ahorrar tiempo y esfuerzo, soporte para el desarrollo de prototipos de sistemas, generación de código, mejora en la comunicación analista-usuario, entre otras.

Rapid Application Development (RAD): Es un proceso  de desarrollo de software que permite construir sistemas utilizables en poco tiempo,  comprende el desarrollo interactivo, la construcción de prototipos y el uso de utilidades CASE  ya definidas. El Desarrollo Rápido de Aplicacioneses una adaptación a “Alta velocidad” en el que se logra el desarrollo rápido utilizando un enfoque de construcción basado en componentes. Si se comprenden bien los requisitos y se limita el ámbito del proyecto, el proceso RAD permite al equipo de desarrollo crear un “sistema completamente funcional” dentro de periodos cortos de tiempo.

Entorno Integrado de Desarrollo (IDE):  aplicación compuesta por un conjunto de herramientas utiles para un programador, que  consiste en un editor de código, un compilador, un depurador y un constructor de interfaz gráfica (GUI). Los IDEs pueden ser aplicaciones por sí solas o pueden ser parte de aplicaciones existentes. Un entorno IDE puede ser exclusivo para un lenguaje de programación o bien, poder utilizarse para varios. Suele consistir de un editor de código, un compilador, un debugger y un constructor de interfaz gráfica GUI.

Un IDE debe tener las siguientes características:

  • Multiplataforma
  • Soporte para diversos lenguajes de programación
  • Integración con Sistemas de Control de Versiones
  • Reconocimiento de Sintaxis
  • Extensiones y Componentes para el IDE
  • Integración con Framework populares
  • Depurador
  • Importar y Exportar proyectos
  • Múltiples idiomas
  • Manual de Usuarios y Ayuda

  Referencias:

*Anna Grimán y Luis Eduardo Mendoza. Consideraciones Generales sobre las herramientas CASE [Documento en línea] Disponible:http://prof.usb.ve/lmendoza/Documentos/PS-6117%20%28Laboratorio%29/Transparencias%20PS6117%20%28Lab%29%20HC.pdf

* http://es.scribd.com/doc/90075566/Tipos-de-Herramientas-CASE

* http://www.alegsa.com.ar/Dic/ide.php

* http://es.wikipedia.org/wiki/Entorno_de_desarrollo_integrado

 

Rapid ApplicationDevelopment (RAD), Entorno integrado de desarrollo (IDE) Ingeniería de Software Asistida por computador (CASE)

autor Jeniree Ramirez
RAD

Desarrollado inicialmente por James Martin en 1980, es un enfoque orientado a objetos para el desarrollo de sistemas así como también herramientas de software, como meta se traza la reducción del tiempo que generalmente se necesita en los enfoques tradicionales entre el diseño y la implementación del sistema de información, además se enfoca en satisfacer más de cerca los requerimientos cambiantes de los negocios.  Si se comprenden bien los requisitos y se limita el ámbito del proyecto, el proceso RAD permite al equipo de desarrollo crear un “sistema completamente funcional” dentro de periodos cortos de tiempo. El método comprende el desarrollo interactivo, la construcción de prototipos y el uso de utilidades CASE (ComputerAided Software Engineering). Tradicionalmente, el desarrollo rápido de aplicaciones tiende a englobar también la usabilidad, utilidad y la rapidez de ejecución.

Fases de RADrad

Hay tres fases amplias del RAD que vinculan a usuarios y analistas en la evaluación, diseño e implementación. En la imagen a continuación se describen estas fases. Observe que el RAD involucra a los usuarios en cada parte del esfuerzo de desarrollo, con una intensa participación en la parte de negocios del diseño.

Cuando utilizar RAD

En su función de análisis, necesita aprender tantos enfoques y herramientas como sea posible que lo ayuden a hacer mejor su trabajo. Ciertas aplicaciones  y trabajo de sistemas darán lugar a ciertas metodologías. Considere utilizar RAD cuando:

  • Su equipo incluya a programadores y analistas que tengan experiencia con el.
  • Haya razones de negocios urgentes para acelerar una parte del desarrollo de la aplicación.
  • Cuando los usuarios sean maduros y estén altamente comprometidos con las metas organizacionales.
  • Ahorra tiempo de desarrollo, posiblemente a expensas de dinero o de calidad del producto.
Entorno de Desarrollo Integrado (IDE).

Es un entorno de programación que ha sido empaquetado como un programa de aplicación, es decir, un conjunto de herramientas de programación consiste en:

  • Editor de código fuente: Editor de texto que sirve para editar el código fuente de aplicaciones informáticas.
  • Un compilador: Es un traductor de código fuente, lo traduce a un lenguaje que sea legible para las maquinas.
  • Un depurador: Es una aplicación que tiene como función probar y eliminar posibles errores en un programa en desarrollo.
  • Constructor de interfaz gráfica (GUI): Herramienta que sirve para crear y diseñar las interfaces con las cuales habrá interacción entre la aplicación y el usuario.

Los IDE proveen un marco de trabajo amigable, en donde se permite utilizar el lenguaje de programación en forma interactiva, sin necesidad de trabajo orientado a archivos de texto, están orientado para la mayoría de los lenguajes de programación tales como C++, PHP, Python, Java, C#, Delphi, etc.

Un IDE debe tener las siguientes características:

  • Multiplataforma
  • Soporte para diversos lenguajes de programación
  • Integración con Sistemas de Control de Versiones
  • Reconocimiento de Sintaxis
  • Extensiones y Componentes para el IDE
  • Integración con Framework populares
  • Depurador
  • Importar y Exportar proyectos
  • Múltiples idiomas
  • Manual de Usuarios y Ayuda

 Ventajas de los IDEs.

  • La curva de aprendizaje es muy baja.
  • Es más ágil y óptimo para los usuarios que no son expertos en manejo de consola.
  • Formateo de código.
  • Funciones para renombrar variables, funciones.
  • Warnings y errores de sintaxis en pantalla de algo que no va a funcionar al interpretar o compilar.
  • Poder crear proyectos para poder visualizar los archivos de manera gráfica.
  • Herramientas de refactoring como por ejemplo seria extraer una
    porción de código a un método nuevo.
  • No es recomendado pero posee un navegador web interno por si queremos probar las cosas dentro de la IDE.

Ingeniería del Software Asistida por Computadora (CASE)

Proporcionan la posibilidad de automatizar actividades manuales y de mejorar su visión general de la ingeniería, ayudando a garantizar que la calidad se diseñe antes de llegar a construir el producto. La ingeniería del software asistida por computadora puede ser tan sencilla como una única herramienta que preste su apoyo para una única actividad de ingeniería del software, o tan compleja como todo un entorno que abarque «herramientas», una base de datos, personas, hardware, una red, sistemas operativos, estándares, y otros mil componentes.  Las razones para el uso es el aumento en la productividad del analista, mejora de la comunicación analista-usuario, integración de las actividades del ciclo de vida del sistema proporcionando continuidad de una fase a la siguiente y nos permiten evaluar de manera precisa los cambios en el mantenimiento, puesto que, una herramienta CASE puede generar referencias cruzadas de cada pantalla, informe y archivo en el cual sea utilizado el elemento, dando un plan de mantenimiento integral.

 REFERENCIAS:

KenDall & Kendall, C. (2005). Analisis y Diseño de Sistemas (6tª ed). Mexico: Editorial Pearson.

InformaticaSONs. (2011),  Disponible en:http://www.sosinformatica.net/evi/VisualBasic/guia_rapida/vb_guia_bd01.htm, el 21 de Enero del 2013.

Wikipedia (2012), Disponible en: http: //es.wikipedia.org/wiki/Entorno_de_desarrollo_integrado, el 21 de Enero del 2013.

 Javier Ceballos Sierra(2006)Java 2 curso de programación.México:AlfaomegaGrupoEditor.Editor:3rd edición