En la práctica, para llevar a cabo varias de las etapas vistas en el punto anterior contamos
con herramientas informáticas, cuya finalidad principal es automatizar las tareas y ganar
fiabilidad y tiempo.
Esto nos va a permitir centrarnos en los requerimientos del sistema y el análisis del mismo,
que son las causas principales de los fallos del software.
Las herramientas CASE son un conjunto de aplicaciones que se utilizan en
el desarrollo de software con el objetivo de reducir costes y tiempo
del proceso, mejorando por tanto la productividad del proceso.
¿En qué fases del proceso nos pueden ayudar? En el diseño del proyecto, en la codificación de
nuestro diseño a partir de su apariencia visual, detección de errores…
El desarrollo rápido de aplicaciones o RAD es un proceso de desarrollo de software que comprende el desarrollo iterativo, la construcción de
prototipos y el uso de utilidades CASE. Hoy en día se suele utilizar para referirnos al
desarrollo rápido de interfaces gráficas de usuario o entornos de desarrollo integrado
completos.
La tecnología CASE trata de automatizar las fases del desarrollo de software para que mejore la calidad del proceso y del resultado final.
En concreto, estas herramientas permiten:
- Mejorar la planificación del proyecto.
- Darle agilidad al proceso.
- Poder reutilizar partes del software en proyectos futuros.
- Hacer que las aplicaciones respondan a estándares.
- Mejorar la tarea del mantenimiento de los programas.
- Mejorar el proceso de desarrollo, al permitir visualizar las fases de forma gráfica.
CLASIFICACIÓN
Normalmente, las herramientas CASE se clasifican en función de las fases del ciclo de vida del
software en la que ofrecen ayuda:
- U-CASE: ofrece ayuda en las fases de
planificación y análisis de requisitos.
- M-CASE: ofrece ayuda en análisis y diseño.
- L-CASE: ofrece ayuda en la programación del
software, detección de errores del código, depuración de
programas y pruebas, y en la generación de la documentación del proyecto.
Por funcionalidad se pueden diferenciar algunas como:
- Herramientas de generación semiautomática de código.
- Editores UML.
- Herramientas de refactorización de código.
- Herramientas de mantenimiento como los sistemas de control de versiones·
Ejemplos de herramientas CASE libres son: ArgoUML, Use Case
Maker, ObjectBuilder…