jueves, 9 de diciembre de 2010

Herramientas de Programación.

Engloba los compiladores, los editores y los depuradores que se utilizan con los lenguajes de programación convencionales.

Herramientas de codificación convencionales: durante casi 30 años las únicas herramientas disponibles para los programadores eran las herramientas convencionales de programación y por esto, cada problema de ingeniería de software era como un problema de programación. Hoy en día las herramientas convencionales siguen existiendo como una primera línea del desarrollo de software, pero están respaldadas por todas las herramientas CASE.

Herramientas de codificación de cuarta generación: los sistemas de consulta a bases de datos, los generadores de código y los lenguajes de cuarta generación han cambiado la forma de desarrollar sistemas. Idealmente, estas herramientas de generación de código no solo traducirían la descripción de un sistema a un programa operativo sino que también ayudaran a verificar la corrección de la especificación del sistema. De tal forma que la salida resultante
satisfaga los requisitos del usuario.

Herramientas de programación orientadas a objetos: es una de las tecnologías más actuales de la ingeniería de software. Los entornos de programación orientados a objetos suelen estar unidos a lenguajes de programación específicos como: C++, Eiffel, Objetive-C, Smalltalk o Java. Un entorno O-O típico incorpora características de las interfaces de tercera generación (ventanas, ratón, menús desplegables, operaciones sensibles al contexto, multimedia, etc.) con funciones especializadas como la del “inspector” –una función que permite al ingeniero de software examinar todos los objetos contenidos en las bibliotecas de objetos para determinar si pueden o no se utilizadas en la aplicación actual.

Herramientas de creación de prototipos.

La realización de prototipos es un paradigma de la ingeniería de software ampliamente utilizado, todas las herramientas de creación de prototipos se sitúan en algún lugar del espectro de implementación que se muestra en la figura.

Herramientas de ingeniería inversa: utiliza como entrada el programa fuente para extraer y analizar su arquitectura, su estructura de control, el flujo lógico y la estructura y flujo de datos. Otras herramientas que pertenecen a esta categoría aplican una técnica conocida como partición de programas. Las herramientas de ingeniería inversa han sido denominadas herramientas de “visualización de código”, permitiendo que el ingeniero visualice el programa, y a su vez ayudan a controlar la cantidad de cambios y la productividad de la gente que los realiza. 

Herramientas de reingeniería: pueden dividirse en dos subcategorías – de reestructuración de código, que aceptan como entrada código fuente si estructurar y realizan el análisis de ingeniería inversa reestructurando el código y agostándolo a los conceptos modernos de programación estructurada; de revisión de datos, que analizan las definiciones de los datos o una base de datos descrita en un lenguaje de programación o en lenguaje de descripción de base de datos, traducen esta descripción a una notación grafica que puede ser analizada por el ingeniero de software. Al trabajar con las herramientas de reingeniería, se puede modificar la estructura lógica de la base de datos, normalizar los archivos resultantes y generar automáticamente un nuevo diseño físico de la base de datos. 

Integración de Herramientas.

Todos los entornos CASE implementan mecanismos de ejecución y mecanismos de comunicación. Para ilustrar las características de estos mecanismos se seguirá el Entorno de Herramientas Portables Comunes (por su siglas en ingles, PCTE), uno de los diferentes
estándares para entornos CASE. 

Los mecanismos de ejecución y de comunicación se denominan mecanismos básicos – se definen funciones para manipular entidades que existen dentro del contexto de desarrollo de software. Estas entidades incluyen objetos (datos, código fuente, documentos, dispositivos) y herramientas que operan sobre los objetos. 

Los mecanismos de ejecución constituyen una forma de ejecutar un proceso desde su contexto estático independientemente que se trate de un programa ejecutable o interpretable; a su vez los mecanismos de comunicación gestionan la comunicación entre procesos, estableciendo colas de mensajes que permiten comunicarse a las diferentes herramientas, por ejemplo: la realización de una tarea a cargo de la herramienta CASE “A” puede generar un “suceso” que
active la herramienta CASE “B”, para ejecutar B se debe utilizar un mecanismo de arranque, pero para pasar información de A a B se requiere un mecanismo de comunicación.

Ejemplos de herramientas CASE.

A continuación se muestra una lista de herramientas CASE, solo se muestran las que se consideraron mas comunes, algunos de nosotros ya hemos trabajado con una o mas de estas herramientas, pero ahora sabemos que son las herramientas CASE, y también sabemos lo útiles y la gran ayuda que podemos obtener de ellas.


Eclipse:
es una plataforma abierta para la integración de herramientas de desarrollo construidas por una comunidad abierta y proveedores de herramientas. Trabaja y se desarrolla con los criterios de código abierto y licencia libre.

ORACLE: es una de las principales compañías fabricantes de herramientas CASE. Entre sus productos mas utilizados se encuentran: JDeveloper, Designer y Forms Developer.

SYBASE- Powersoft's: PowerDesigner 7.0: herramienta CASE de Análisis y Diseño incluye capacidades de generación relacional y con orientación a objetos.

VISIO - MICROSOFT: Descripción visual de procesos y ayuda a la reingeniería de procesos.

Software Engineering Lab:
ASADAL - Herramienta CASE especializada en Sistemas de Tiempo Real.

IMB Software Racional ClearCase : Herramienta para el manejo de versiones.

Emutool y EmuDump: EmuTool y EmuDumpGenTool - Simulador de APZ para centrales telefónicas AXE utilizadas y desarrolladas por Ericsson.





1 comentario:

  1. Está muy generalizado pero si hay información útil que se puede extraer, muchas gracias por tu aporte.

    ResponderEliminar