jueves, 9 de diciembre de 2010

ASISTENCIA POR COMPUTADORA.

Ingeniería asistida por computadora o por ordenador (CAE, del inglés Computer Aided Engineering) es el conjunto de programas informáticos que permiten analizar y simular los diseños de ingeniería realizados con el ordenador, o creados de otro modo e introducidos en el ordenador, para valorar sus características, propiedades, viabilidad y rentabilidad. Su finalidad es optimizar su desarrollo y consecuentes costos de fabricación y reducir al máximo las pruebas para la obtención del producto deseado.

La mayoría de ellas se presentan como módulos o extensiones de aplicaciones CAD, que incorporan:
  • Análisis cinemático.
  • Análisis por el método de elementos finitos (FEM, Finite Elements Method).
  • Maquinado por control numérico CNC (Computered Numeric Control).
  • De exportación de ficheros "Stl" (Estereolitografía) para máquinas de prototipado rápido.
http://es.wikipedia.org/wiki/Ingenier%C3%ADa_asistida_por_computadora

http://www.innovavirtual.org/campus/file.php/178/archivos_curso/CAP_12_2006_I_SI905/CAP_12_2006_I_SI905_VA7_M.pdf 

Todo el mundo conoce la historia de los hijos del zapatero: el zapatero esta tan ocupado haciendo zapatos para otros que sus hijos van descalzos. Durante los últimos 20 años, muchos de los ingenieros de software han sido los “hijos del zapatero”. Aunque han construidos sistemas complejos que automatizan el trabajo de otros, ellos mismos no han aplicado estas técnicas. De hecho hasta hace poco, la ingeniería de software era fundamentalmente una actividad manual en la que las herramientas se utilizaban únicamente en las etapas
finales.

Hoy en día, los ingenieros de software han recibido su primer par de zapatos la ingeniería de software asistida por computadora (sus siglas en ingles CASE). No hay tanta variedad de zapatos como nos gustaría. Sin embargo, constituyen una pieza indispensable del guardarropa del ingeniero y, con el tiempo, se harán mas confortables, mas fáciles de usar y mas  adaptables a las necesidades de cada usuario.

Orígenes del CASE:
 
En 1955, los ingenieros mecánicos y eléctricos trabajan con herramientas manuales: libros y tablas que contenían formulas y los algoritmos necesarios para el análisis de un problema; calculadoras (mecánicas) para realizar los cálculos necesarios y asegurar que el producto iba a funcionar; bolígrafos y lápices, mesas de dibujo y reglas que permita al ingeniero crear los modelos del producto que iba a construir. Se hizo un buen trabajo, pero se hizo a mano.

Paso una década y el mismo grupo de ingeniería comenzó a experimentar con la ingeniería basada en computadora. Muchos se resistieron a utilizar computadoras. Una excusa habitual era: “no me fió de los resultados”. Sin embargo, otros se lanzaron hacia delante. El proceso estaba cambiando.  

Pasamos a 1975. Las formulas y los algoritmos que el ingeniero necesitaba se incorporaron a programas de computadora que se utilizaban para analizar una gran variedad de problemas de ingeniería. La gente confiaba en los resultados de estos programas. De hecho, la mayoría de su trabajo no podía realizarse sin ellos. Las estación es de trabajo graficas, conectadas a potentes computadoras, estuvieron en uso y sustituyeron a las mesas de dibujo y otras herramientas para la creación de modelos de ingeniería. Se estaba construyendo un puente entre la ingeniería y el trabajo de manufactura, creando el primer enlace el diseño asistido por computadora (CAD) y la fabricación asistida por computadora (CAM.) 

Volviendo al futuro, encontramos ingeniería asistida por computadora (CAE), diseño asistido por computadora y fabricación integrada por computadora (CIM, sucesor de CAM) como actividades usuales en la mayoría de las empresas.

¿Qué es el CASE?

Las herramientas CASE son usadas en algunas de las fases de desarrollo de sistemas de información, incluyendo análisis, diseño y programación. Su objetivo fundamental es proveer un lenguaje para describir el sistema general que sea lo suficientemente explícito para generar todos los programas necesarios.

La CASE supone la aplicación de principios científicos a través de una metodología que ayude a producir software de alta calidad en un tiempo mucho más reducido. 

Bloques que Componen el CASE.
 
La Ingeniería del Software Asistida por Computadora (CASE) puede ser tan simple como una herramienta que permite desarrollar una actividad específica, o tan compleja como un "entorno" que integre distintas herramientas, bases de datos, hardware, red, sistemas operativos, estándares y muchos otros componentes.




Cada bloque constituye la base del siguiente, con las herramientas situadas en la cima de la pila. Es interesante ver que el fundamento para un CASE efectivo tiene poco que ver con las herramientas de ingeniería del software en si mismas.

Herramientas CASE: se describe con mas profundidad en el capitulo 9.1 Marco de integración: Es un conjunto de programas especializados que permiten a cada herramienta CASE comunicarse con las demás.

Servicios de portabilidad: Este conjunto constituye un puente entre las herramientas CASE, su marco de integración y la arquitectura de entorno. De esta forma permiten que las herramientas CASE y su marco de integración puedan migrar a través de diferentes plataformas de hardware y sistemas operativos sin problemas de adaptación.

Sistema operativo: Gestiona el hardware, la red y las herramientas; mantiene el entorno unido.

Plataforma hardware: Son las estaciones de trabajo individuales interconectadas mediante la red para que los ingenieros del software puedan comunicarse de forma efectiva.

Arquitectura de entorno:
Es la base del CASE, en este bloque se construyen los entornos de la ingeniería del software, engloba los sistemas de software y hardware. Además considera los patrones del trabajo humano que se aplican durante el proceso de ingeniería del software.

 En la siguientes figuras se muestran los niveles de integración del CASE. En el nivel mas bajo del espectro de integración esta la herramienta individual (solución puntual). Cuando las herramientas proporcionan facilidades para el intercambio de datos el nivel de integración aumenta ligeramente. Estas herramientas generan una salida en un formato estándar compatible con otras herramientas que puedan leer ese formato. En algunos casos, los que
construyen herramientas CASE complementarias trabajan juntos para establecer un puente entre ellas (ejemplo: una herramienta de diseño y análisis que se une a un generador de código). La integración por fuente única se da cuando el constructor de herramientas CASE integra diferentes herramientas y las vende como un único paquete. Al final del espectro de integración esta el entorno de soporte de proyectos integrado (IPSE por sus siglas en ingles).

Herramientas CASE:
Clasificación de las herramientas case Siempre que se intenta clasificar las herramientas CASE se corren riesgos. Se suele suponer que para crear un entorno CASE efectivo, se deben incluir todas las categorías de herramientas – pero esto es sencillamente falso. Se puede dar lugar a una confusión al situar a una herramienta determinada dentro de una categoría cuando se podría pensar que pertenece a una categoría distinta. La categorización simple tiende a ser llana – esto es, no aparee una interacción jerárquica de las herramientas o de las relaciones entre ellas. Pero aun asumiendo todos estos riesgos, es necesario crear
una taxonomía – para comprender mejor el alcance del CASE, y para apreciar mejor donde se pueden aplicar estar herramientas.

Las herramientas CASE se pueden clasificar bajo diferentes enfoques:

Por su función.

♦ Por su papel como instrumentos para el personal técnico o los directivos.

♦ Por la arquitectura del entorno que las soporta (hardware y software).

♦ Origen

Tomando la funcionalidad como criterio principal se creó la siguiente clasificación:

Herramientas de planificación de sistemas de gestión:  Proporcionan un "metámodelo" del cual se pueden obtener sistemas de información específicos, mediante la modelización de los requisitos de información estratégica de una organización. El objetivo principal de las herramientas de esta categoría es ayudar a comprender mejor como se mueve la información.

Herramientas de gestión de proyectos: ueden hacer estimaciones útiles de esfuerzo, coste y duración del proyecto, definir una estructura de partición del trabajo, planificación del mismo y hacer el seguimiento de proyectos de forma continua. Además se pueden utilizar para recoger datos que permitan realizar una estimación de la productividad del desarrollo y la calidad del producto.

Herramientas de planificación de proyectos: las herramientas que caen dentro de esta categoría se centran en dos áreas fundamentales: el esfuerzo y coste de un proyecto de software; y la planificación del proyecto.

Herramientas de seguimiento de requisitos: el objetivo de estas herramientas es de proporcionar un enfoque sistemático para aislar requisitos, comenzando con las especificaciones del cliente. La extracción de requisitos puede ser tan sencilla como encontrar cada ocurrencia del verbo “deber”.




Herramientas de gestión y medida: las herramientas de medidas actuales se centran a las características del producto y del proceso. Las herramientas orientadas a la gestión parten de medidas específicas del proyecto que proporcionan una indicación global de la productividad y de la calidad.

Herramientas de soporte.

La categoría de herramientas de soporte engloba las herramientas de aplicación y de sistemas que complementan el proceso de ingeniería de software. Estas incluyen herramientas de documentación, herramientas para gestión de redes y software del sistema, herramientas de control de calidad y herramientas de gestión de bases de datos y de configuración del software.

Herramientas de documentación: Las herramientas de producción de documentación y autoedición se utilizan en casi todos los aspectos de la ingeniería del software y representan una oportunidad muy interesante para todos los que desarrollan software. No es raro que una empresa emplee el 20 o el 30 por ciento de su esfuerzo de desarrollo en la documentación. Por esta razón, estas herramientas constituyen una opción importante para aumentar la productividad. Las herramientas de documentación suelen estar unidas a otras herramientas CASE por medio de una interfaz de datos suministrada por el vendedor. Muchas herramientas de análisis y diseño están unidas a uno o varios sistemas de autoedición, de tal forma que los
modelos y textos creados durante el análisis y el diseño puedan ser transmitidos a una herramienta de documentación y añadidos a la especificación creada utilizando la misma herramienta de documentación.

Herramientas para software de sistemas: El CASE es una tecnología de estaciones de trabajo. Por esto, el entorno CASE debe soportar software de redes de comunicación de alta calidad, correo electrónico, boletines electrónicos y otras posibilidades de comunicación.

Herramientas de control de calidad: La mayoría de las herramientas CASE que se venden como orientadas al control de calidad, son en realidad herramientas de medida que comprueban el código fuente para determinar su compatibilidad con lenguajes estándar. Otras herramientas extraen métricas técnicas como base para medir la calidad del software que se está desarrollando.

Herramientas de bases de datos y de GCS: El software de gestión de bases de datos sirve como base para el establecimiento de una base de datos CASE (almacén). Poniendo énfasis en los objetos de la configuración, las herramientas de gestión de bases de datos para CASE pueden evolucionar de los sistemas relacionales a los sistemas basados en objetos.

Las herramientas CASE pueden ayudar en las cinco tareas principales de la configuración del software, identificación y control de versiones, control de cambios, auditoria y gestión de estados. Las base de datos CASE proporciona un mecanismo para identificar cada elemento de la configuración y relacionarlo con otros elementos. “La utilización de bases de datos, herramientas de gestión y configuración y herramientas de inspección de componentes, es el
primer paso hacia una biblioteca de software que estimulará la reutilización de componentes de software.”

 Herramientas de análisis y diseño.
 
Las herramientas de análisis y diseño permiten al ingeniero de software crear un modelo del sistema que se va a construir. El modelo contiene una representación de los datos y del flujo de
control, del contenido de los datos, representaciones de los procesos, especificaciones de control y otras representaciones del modelo. Las herramientas de análisis y diseño también permiten la evaluación de la calidad del modelo y ayudana eliminar errores antes de que se propaguen al diseño, o al código.

Herramientas de AE/DE: la mayoría de las herramientas de diseño y análisis se basan en el método de análisis y diseño estructurado (AE/DE). El AE/DE es una técnica que permite al ingeniero de software crear progresivamente modelos más complejos de un sistema, comenzando en el nivel de requisitos y concluyendo con un diseño de arquitectura.

Herramientas PRO/SIM: las herramientas de creación de prototipos y de simulación (PRO/SIM) proporcionan al ingeniero de software la capacidad de predecir el comportamiento de un sistema en tiempo real antes de que sea construido. Muchas herramientas tienen la capacidad de generar código.
Herramientas para el diseño y desarrollo de interfaces: las herramientas de diseño y desarrollo de interfaces son, en realidad un conjunto de componentes de software, tales como menús, botones, estructuras de ventanas iconos, mecanismos de visualización, controladores de dispositivos y otros elementos de este tipo.




No hay comentarios:

Publicar un comentario