0% encontró este documento útil (0 votos)
85 vistas18 páginas

Clasificación de Herramientas CASE en Software

El documento clasifica y describe diferentes tipos de herramientas CASE utilizadas en el desarrollo de software, incluyendo herramientas de modelado, análisis y diseño. Explica que las herramientas CASE ayudan a aumentar la productividad al automatizar tareas y apoyar diferentes fases del ciclo de vida de desarrollo de software. Además, clasifica las herramientas CASE según su función, características, fases del ciclo de vida que cub
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
85 vistas18 páginas

Clasificación de Herramientas CASE en Software

El documento clasifica y describe diferentes tipos de herramientas CASE utilizadas en el desarrollo de software, incluyendo herramientas de modelado, análisis y diseño. Explica que las herramientas CASE ayudan a aumentar la productividad al automatizar tareas y apoyar diferentes fases del ciclo de vida de desarrollo de software. Además, clasifica las herramientas CASE según su función, características, fases del ciclo de vida que cub
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

Instituto Tecnológico de la Laguna

ing. en Sistemas Computacionales


5° Semestre Ene-jun 2024.

Ingeniería de Software
docente: Ing. Michelle Padilla Torres

Unidad 2
Clasificación Herramientas Case
Pablo Iván Amaya Aldaba 21130914
Carlos Roberto Rocha Trejo 22130517
Angel Gabriel Romero Monreal 22130520
Francisco Javier Chavez De Santiago 22130521
Jesús Octavio Cervantes Contreras 22130530
Las herramientas CASE (Computer Aided Software Engineering,
Ingeniería de Software Asistida por Computadora)

• Son diversas aplicaciones informáticas destinadas a aumentar la


productividad en el desarrollo de software reduciendo el costo de las
mismas en términos de tiempo y de dinero.
La estructura Case se basa en la siguiente terminología
CASE de alto nivel son aquellas herramientas que se automatizan o apoyan las fases finales o superiores
del ciclo de vida del desarrollo de sistemas como la planificación de sistemas, el
análisis de sistemas y el diseño de sistemas.

CASE de bajo nivel son aquellas herramientas que automatizan o apoyan las fases finales o inferiores del
ciclo de vida como el diseño detallado de sistemas, la implantación de sistemas y el
soporte de sistemas

CASE cruzado de ciclo de vida


se aplica a aquellas herramientas que apoyan actividades que tienen lugar a lo largo d
e todo el ciclo de vida, incluyen actividades como la gestión de proyectos y la
estimación
Herramientas de gestión Encargadas de la estimación, planificación y seguimiento del proyecto.

Herramientas técnicas Se dividen tradicionalmente en XASE frontales o superiores que abarcan las primeras
fases de análisis y diseño.
y CASE dorsales o inferiores cuyo objetivo suele ser el diseño detallado y la
generación de código.

Herramientas de soporte Como el sistema de repositorio/diccionario, control y configuración, seguridad, etc.

herramientas de análisis y diseño Ayuda a la definición de los requisitos del sistema y sus propiedades.
ejemplos de herramientas son: DESIGNER/2000 de Oracle, EASY CASE Evergreen,
ROSE de Rational, etc.
Herramientas de Prueba Las herramientas de prueba se conocen también por las siglas CAST
(Computer Aided Software Testing), y tal como se conocen ahora es una área
bastante reciente dentro de la tecnología CASE.
Definen requisitos y objetivos de prueba.
Construyen entonos de ejecución de pruebas.
Ejecutan y evalúan pruebas.

Herramientas de Gestión de Configuración Es una herramienta capaz de gestionar la configuración de los sistemas
incorporada en entornos de desarrollo complejos.

Herramientas de Ingeniería Inversa Son capaces de extraer la información del código fuente que describe la
estructura de los elementos de datos, construyendo así diagramas E/R
partiendo de esquemas relacionales, jerárquicos o ficheros.
Aunque no es fácil y no existe una forma única de clasificarlas, las
herramientas CASE se pueden clasificar teniendo en cuenta los
siguientes parámetros:
Según su función.
Según sus características.
Según la plataforma que soportan.
Según licencia.
Según las fases del ciclo de vida del desarrollo de sistemas que
cubren.
La arquitectura de las aplicaciones que producen.
Repositorio (Diccionario) donde se almacenan los elementos definidos, creados por las herramienta, y
cuya gestión se realiza normalmente mediante el apoyo de un SGBD. Sistemas de Gestión de
Bases de Datos.
Metamodelo (no siempre visible), Que constituye el marco para la definición de las técnicas y metodologías
soportadas por la herramienta.

Generador de Informes Permite obtener la documentación que describe el sistema de información desarrollado;
documentación que esta asociada a las técnicas y metodologías empleadas.

Carga/Descarga de Datos Facilidades que permiten cargar el repositorio de la herramienta CASE con datos provenientes
de otros sistemas, o bien generar esquemas de bases de datos, programas, etc., que pueden
alimentar otros sistemas.
Comprobación de Errores Facilidades que periten llevar a cabo un análisis de la exactitud, integridad y consistencia de
los esquemas generados.

Interfaz de Usuario Consta de editores de texto y herramientas de diseño grafico que permitan definir los
diagramas, matrices, etc.
Clasificación de Herramientas CASE
Según su función
Herramienta Concepto Característica Función Ventaja Desventaja Ejemplos
Herramientas Son programas • Capacidad de Las herramientas • Detección Temprana • Curva de Aprendizaje: Erwin Data
de Modelado informáticos que permiten Modelado Visual: CASE de modelado de Errores: Facilitan la Aprender a utilizarlas Modeler, IBM
a los desarrolladores de Permite a los tienen como identificación temprana puede requerir tiempo y Data Architect,
software crear desarrolladores crear función general de errores de diseño o esfuerzo. Adobe XD,
representaciones visuales y representaciones gráficas ayudar en la lógica. Lucidchart,
abstractas de sistemas, de sistemas de software. creación de • Complejidad de Microsoft Visio,
procesos, datos o cualquier representaciones • Visualización Clara y Modelos: En proyectos MySQL
otro aspecto relacionado • Edición y Manipulación visuales de sistemas Comunicación Efectiva: grandes y complejos, la Workbench.
con el software que se está Intuitiva: Permiten a los de software y sus Permiten crear creación y el
desarrollando. usuarios crear y editar componentes. representaciones mantenimiento de
modelos de manera visuales claras y modelos detallados puede
intuitiva. comprensibles de complicarse y consumir
sistemas de software. tiempo.
Herramientas Son aplicaciones y recursos • Captura de Requisitos: Apoyan a los • Gestión de Requisitos • Sobrecarga de IBM Rational
de Análisis diseñados para examinar, Permiten capturar y analistas y Mejorada: Facilitan la Documentación: Los DOORS, Sparx
evaluar y mejorar diversos documentar los desarrolladores de captura, el seguimiento analistas pueden gastar Systems
aspectos de un sistema de requisitos funcionales y software a y la gestión de demasiado tiempo en la Enterprise
software. Su objetivo no funcionales del comprender, requisitos de manera creación y el Architect, Jama
principal es garantizar la sistema. documentar y más efectiva. mantenimiento de Connect, iRise,
calidad, la seguridad, el gestionar los documentos. Axure RP.
rendimiento y la eficiencia • Informes y Análisis requisitos y • Reducción de
del software y facilitar la Avanzados: Ofrecen procesos Errores: Se reducen los • Excesiva Abstracción:
detección y corrección de generación de informes relacionados con errores de requisitos difíciles de
problemas y errores. análisis avanzados de proyectos de interpretación y se entender para aquellos que
datos relacionados a los software. asegura la consistencia no conocen las notaciones
requisitos y procesos de y la integridad de los utilizadas.
análisis. requisitos y modelos.
Herramientas Son programas y utilidades • Modelado Visual: Proporcionan un • Ahorro de Tiempo: • Posible Rigidez en el IBM Rational
de Diseño informáticas que asisten a Ofrecen un entorno de conjunto de Agilizan el proceso de Diseño: Las herramientas Software
los profesionales del modelado visual que capacidades que diseño al permitir la CASE pueden llevar a un Architect:
desarrollo de software en permite a los diseñadores ayudan a los reutilización de enfoque excesivamente Ofrece una
la creación de diseños crear diagramas y diseñadores de componentes. rígido en el diseño. amplia gama de
detallados y representaciones gráficas software a crear características
representaciones visuales de la arquitectura y los modelos detallados
de sistemas de software, componentes del y precisos que • Diseño Colaborativo: • Posible Falta de de modelado y
incluyendo herramientas sistema. representen la Permiten la Flexibilidad: Algunas diseño.
de diseño de diagramas arquitectura y el colaboración en tiempo herramientas CASE pueden Adobe XD:
UML, herramientas de • Modelado de comportamiento real entre múltiples ser inflexibles en cuanto a Diseñado
diseño de interfaces de Interfaces de Usuario: del sistema que diseñadores y equipos la adaptación a enfoques y específicamente
usuario, herramientas de Permiten el diseño de están geográficamente metodologías específicas para
diseño de bases de datos, interfaces de usuario, desarrollando. dispersos, lo que utilizadas en la diseñadores de
entre otras. incluyendo la creación de mejora la calidad del organización, lo que podría experiencia de
maquetas, prototipos y diseño. limitar la creatividad en el usuario (UX).
diagramas de flujo de diseño.
navegación.

Herramientas Son programas • Editor de Código La función principal • Aumento de la • Sobre dependencia de la Visual Studio,
de informáticos que ayudan a Avanzado: Proporcionan de estas Productividad: Facilitan Generación de Código: Eclipse, IntelliJ
Programación los desarrolladores de un editor de código herramientas es la escritura de código y pueden llevar a una sobre IDEA, PyCharm,
software en la codificación avanzado con resaltado simplificar y proporcionan funciones dependencia de la Netbeans,
eficiente, la depuración y la de sintaxis, mejorar el proceso como el generación de código Xcode, Android
gestión del código fuente. autocompletado y otras de desarrollo de autocompletado y el automática lo que podría Studio, PyDev,
Estas herramientas se características que software, desde la resaltado de sintaxis, lo disminuir la habilidad de Code::Blocks,
agrupan en varias mejoran la productividad. escritura de código que acelera el proceso los programadores para Sublime Text,
categorías, incluyendo hasta la entrega de de desarrollo. escribir código. Atom, Visual
editores de código, • Depuración Integrada: un producto final de Studio Code.
entornos de desarrollo Ofrecen capacidades de alta calidad. • Mayor Calidad del • Posible Rigidez en el
integrados, depuradores y depuración integradas Código: Ayudan a Código: Riesgo de se
generadores de código. que permiten a los mejorar la calidad del puedan fomentar un
programadores corregir código al ofrecer enfoque excesivamente
errores en el código de herramientas de rígido en la generación de
manera eficiente. depuración, análisis código.
estático y
refactorización.
Herramientas Son aplicaciones o • Control de Versiones: Facilitar el control y • Control de Versiones • Complejidad de Git, Subversion
de Gestión de programas informáticos Permiten el control de la administración de Preciso: Permiten un Configuración: Configurar y (SVN),
Configuración que permiten a los equipos versiones, lo que significa los activos de control de versiones personalizar Mercurial,
de desarrollo de software que rastrean y registran software a lo largo preciso y detallado. adecuadamente una Perforce,
controlar, rastrear y cambios en el código de su ciclo de vida. herramienta CASE de GitLab, Jenkins,
gestionar los elementos y fuente y otros activos de Esto incluye rastrear • Resolución de gestión de configuración Bitbucket,
componentes del software, software. cambios, gestionar Conflictos Eficaz: puede ser un proceso Apache
así como las versiones y versiones, asegurar Ayudan a resolver complejo y llevar tiempo. Subversion
cambios asociados a lo • Auditoría y Seguridad: la integridad del conflictos de fusión y Edge.
Ofrecen características de código y permitir la proporcionan
largo del ciclo de vida del auditoría para supervisar colaboración herramientas para • Requisitos de Recursos:
proyecto. quién accede y realiza efectiva en equipos gestionar cambios. pueden requerir hardware
cambios en los activos de de desarrollo. y recursos adicionales,
software. como servidores y
almacenamiento, lo que
aumenta los costos.
Según sus características
Herramienta Concepto Característica Función Ventaja Desventaja Ejemplos
Herramientas Son programas • Variedad de Tipos de Facilitar la creación, • Comunicación • Sobre ingeniería: En proyectos Microsoft
de Diagramas informáticos que Diagramas: Proporcionan edición y gestión de Visual: pequeños o simples, la creación Visio,
permiten a los una amplia variedad de representaciones Proporcionan una de diagramas detallados puede LucidChart,
profesionales del tipos de diagramas, como visuales de forma visual y clara resultar en una sobrecarga de LucidSpark,
desarrollo de software diagramas de flujo, sistemas, procesos de representar documentación y procesos. [Link], Dia,
crear y manipular diagramas de clases, entre o modelos sistemas, procesos y Gilffy, Cacoo,
representaciones visuales otros. conceptuales. Estos conceptos. • Complejidad Excesiva: Para SmartDraw,
de sistemas, procesos, diagramas son una sistemas extremadamente son algunos
estructuras y relaciones • Editor de Diagramas forma efectiva de • Modelado de complejos, la creación de ejemplos.
con el software. Intuitivo: Ofrecen un comunicar ideas, Sistemas diagramas puede ser un desafío
entorno de edición diseñar sistemas, Complejos: Ayudan en sí mismo debido a la
intuitivo que permite a los documentar en la representación dificultad de representar todas
usuarios crear y modificar procesos y de sistemas las interacciones y componentes
diagramas de manera colaborar en complejos, lo que de manera clara.
eficiente. proyectos. permite
descomponerlos en
componentes más
manejables y
comprender su
estructura.
Herramientas Se refiere a software que • Edición de Texto Fomentar la • Eficiencia en la • Limitaciones de Formato: A LaTex, Notion,
de Texto facilitan la creación, enriquecido: Permiten la creación, edición y Creación de pesar de ofrecer edición de Confluence,
edición y gestión edición de texto gestión de Documentos: texto enriquecido pueden tener Quip.
eficiente de documentos, enriquecido con formato, documentos y Facilitan la creación limitaciones en cuanto al
código fuente, lo que incluye opciones de contenido de texto rápida y eficiente de formato y la presentación
documentación técnica, estilización relacionado con documentos avanzados en comparación con
requisitos, informes y proyectos de técnicos y de procesadores de texto.
otros tipos de texto • Gestión de Documentos: desarrollo de documentación.
relacionados con el Facilitan la creación y la software y otros • Problemas de Estilo y Diseño:
desarrollo de software. gestión de documentos proyectos técnicos. • Colaboración en Estas herramientas a menudo se
técnicos, manuales de Estas están Equipo: Permiten la centran más en el contenido
usuario, otros tipos de diseñadas para colaboración en que en el diseño y el estilo
documentación optimizar y agilizar tiempo real entre visual.
relacionada con proyectos. el proceso de múltiples usuarios
creación en que pueden trabajar
en el mismo
documentos documento
técnicos. simultáneamente.
Herramientas Son herramientas que • Detección de Errores de Su función principal • Cumplimiento de • Falsos Positivos y Negativos: SonarQube,
de Análisis examinan el código Programación: Identifican es identificar Estándares: Las herramientas de análisis Checkmarx,
Estático fuente o modelos de errores de programación problemas en una Garantizan el estático pueden generar falsos Coverity,
software sin ejecutarlo y comunes, como variables etapa temprana del cumplimiento de positivos (informes de FindBugs,
buscan posibles no inicializadas, divisiones desarrollo, antes de estándares de problemas que no son Klocwork,
problemas, como errores por cero, acceso a la ejecución del codificación y realmente errores) y falsos Cppcheck.
de sintaxis, violaciones de memoria no válido, entre programa, directrices internas negativos (omisión de
reglas de codificación, otros. proporcionando una de la organización. problemas reales).
posibles vulnerabilidades evaluación objetiva
de seguridad y problemas • Análisis de Código y automatizada del • Detección • Necesidad de Configuración y
de calidad del código. Estático: Realizan un código fuente, lo Temprana de Aprendizaje: Configurar y
análisis exhaustivo del que permite a los Errores: Identifican ajustar las herramientas para
código fuente y otros equipos de errores y problemas adaptarlas a las necesidades
artefactos estáticos, sin desarrollo en el código fuente
ejecutar el programa. identificar y corregir antes de que se
problemas. ejecuten, lo que
permite una
detección temprana
y la corrección de
problemas.
Herramientas Son herramientas que se • Ejecución y Pruebas en Su función es • Identificación de • Complejidad de JUnit,
de Análisis utilizan para evaluar el Tiempo Real: Realizan evaluar y analizar el Problemas de Configuración: Configurar y Selenium,
Dinámico comportamiento del pruebas reales del comportamiento en Rendimiento: Estas ajustar las herramientas de TestNG,
software en tiempo de software en tiempo real tiempo de ejecución herramientas análisis dinámico puede ser una Postman,
ejecución. Realizan mientras se ejecuta, lo que de un programa de pueden identificar tarea compleja y requerir JUnit5, Apache
pruebas y seguimiento permite evaluar su software. Esto se cuellos de botella y experiencia en su uso. JMeter,
del programa mientras se comportamiento en logra a través de la problemas de Cucumber.
ejecuta para identificar situaciones de uso real. ejecución de rendimiento • Requiere Pruebas
problemas. pruebas reales en el durante la Exhaustivas: Para obtener
• Identificación de software en un ejecución. resultados precisos, se
Problemas en Ejecución: entorno de prueba requieren pruebas exhaustivas
Detectan problemas y o producción • Detección de que abarquen una amplia gama
errores que solo se simulado. Errores en Tiempo de escenarios y situaciones.
manifiestan durante la Real: Las
ejecución. herramientas de
análisis dinámico
permiten la
detección y
corrección de
errores en tiempo
real.
Según la plataforma
Herramienta Concepto Ventaja Desventaja Ejemplos
Herramientas Son programas de software • Independencia de la Conexión a • Limitaciones de Colaboración: Las herramientas Visual Studio,
de Escritorio diseñados para ayudar a los Internet: No es necesario tener una de escritorio pueden dificultar la colaboración en Eclipse, IntelliJ
profesionales del desarrollo de conexión a Internet constante para equipo, ya que los proyectos y datos suelen estar IDEA, PyCharm,
software en computadoras utilizar estas herramientas. almacenados localmente en la computadora de Netbeans, Xcode,
personales o de escritorio. Estas cada usuario. Android Studio,
herramientas se utilizan para • Mayor Control sobre los Datos: Al PyDev,
crear, diseñar, codificar y ejecutarse en el equipo local, las • Dificultad para Mantener Versiones Code::Blocks,
gestionar proyectos de desarrollo herramientas CASE de escritorio Actualizadas: Mantener todas las instancias de una Sublime Text,
de software en diferentes permiten un mayor control sobre los herramienta de escritorio actualizadas con la Atom, Visual Studio
entornos. datos y la información del proyecto. última versión del software puede ser un desafío. Code.

Herramientas Son aplicaciones y recursos • Acceso Universal: Se pueden acceder • Dependencia de la Conexión a Internet: Para GitHub, GitLab,
Basadas en la informáticos diseñados para a través de un navegador web desde utilizar estas herramientas, es necesario tener BitbBucket, JIRA,
Web ayudar en el proceso de desarrollo cualquier dispositivo con acceso a acceso constante a Internet. La falta de Trello, Azure
de software y que se ejecutan en Internet, lo que facilita la colaboración y conectividad puede dificultar o incluso DevOps, Basecamp.
entornos en línea, a través de el trabajo en equipo. imposibilitar el acceso y el trabajo en proyectos.
navegadores web. Ofrecen
funcionalidades relacionadas con • Almacenamiento en la Nube: Los • Velocidad y Rendimiento: La velocidad y el
el diseño, la codificación, la proyectos y datos se almacenan en la rendimiento de estas herramientas pueden
colaboración, la gestión de nube, lo que facilita el acceso y la depender de la calidad de la conexión a Internet.
proyectos y otros aspectos del recuperación de datos desde cualquier
desarrollo de software, todo ello lugar y dispositivo con conexión a
accesible desde cualquier Internet.
dispositivo con conexión a
internet.
Herramientas Son sistemas completos de • Centralización de Recursos: Las • Complejidad: Al combinar múltiples IBM Rational Suite,
Integradas desarrollo de software que herramientas CASE integradas reúnen funcionalidades en una sola plataforma, las Microsoft Visual
combinan múltiples todas las funciones esenciales para el herramientas CASE integradas pueden volverse Studio, Sparx
funcionalidades y herramientas desarrollo de software en una sola complejas. Systems Enterprise
CASE en una única plataforma o plataforma. Architect,
entorno. Estas herramientas • Requisitos de Hardware y Recursos: Las suites MagicDraw,
ofrecen una amplia gama de • Flujo de Trabajo Continuo: Al integrar CASE integradas a menudo requieren sistemas Software AG Aris.
capacidades para todas las etapas diferentes etapas del desarrollo de informáticos potentes y recursos significativos, lo
del ciclo de vida del desarrollo de software, las herramientas CASE que puede aumentar los costos operativos.
software, desde la planificación y integradas permiten un flujo de trabajo
más fluido y coherente.
el diseño hasta la implementación
y el mantenimiento.
Según licencia
Herramienta Concepto Ventaja Desventaja Ejemplos
Herramienta Son aplicaciones y/o programas • Costo Cero o Bajo: Una de las • Menos Características Avanzadas: En • ArgoUML:
de Código informáticos diseñados para asistir en el ventajas más evidentes de las comparación con algunas herramientas Herramienta CASE de
Abierto proceso de desarrollo de software y que herramientas CASE de código abierto CASE comerciales, las herramientas de modelado UML. • Dia:
están disponibles para su uso, es que son gratuitas o tienen un costo código abierto pueden tener un conjunto Herramienta de dibujo
modificación y distribución por parte de muy bajo en comparación con las de características más limitado. de diagramas de
la comunidad de desarrolladores de herramientas comerciales. código abierto.
manera gratuita o bajo licencias de • Compatibilidad Limitada con
código abierto. • Comunidad Activa: Esto significa que Plataformas: pueden estar diseñadas para • DBDesigner: Una
se puede obtener soporte y contribuir plataformas o sistemas operativos herramienta de
con mejoras o correcciones de errores específicos. modelado de bases de
a la herramienta como un
desarrollador.
Herramientas Son aplicaciones, programas y/o recursos • Soporte Profesional: Suelen venir con • Costo Elevado: Una de las desventajas • IBM Rational
Comerciales informáticos diseñados para asistir en el soporte técnico profesional más evidentes es el costo asociado con las Software Architect:
proceso de desarrollo de software y que proporcionado por el proveedor. O sea herramientas CASE comerciales. Las Una herramienta CASE
se ofrecen bajo una licencia de pago. que se puede obtener asistencia y licencias y los costos iniciales de líder que ofrece
Estas herramientas se desarrollan y soluciones a problemas de manera más implementación pueden ser significativos. capacidades
mantienen por empresas o proveedores rápida y confiable. avanzadas de
de software que ofrecen licencias de uso • Complejidad Excesiva: En ocasiones, las modelado y diseño
a cambio de una tarifa. • Mayor Estabilidad y Fiabilidad: Las herramientas comerciales pueden ofrecer para sistemas y
herramientas comerciales suelen estar una cantidad abrumadora de software.
más probadas y depuradas. características y opciones.
• Microsoft Visio:
ampliamente utilizado
para diagramas de
flujo, entre otros.

También podría gustarte