Ciclo de vida de la ingeniería de software en cascada
El modelo en cascada es un enfoque clásico, popular y lineal del ciclo de vida de la ingeniería de software. Define una secuencia de fases, cada una con objetivos claros. Como el agua que baja por una pendiente, el modelo estricto avanza sin volver atrás.
El enfoque en cascada es estricto y ofrece poco margen para revisar lo anterior. Las pruebas se tratan como una fase separada, en lugar de llevarse a cabo de manera continua junto al desarrollo. Como resultado, el modelo no permite detectar defectos temprano en el desarrollo.
Ciclo de vida de la ingeniería de software en cascada
Las fases siguen este orden.
- Recopilación de requisitos. Documenta los requisitos del cliente y prepara la documentación necesaria.
- Diseño del sistema. Usa los requisitos para definir la arquitectura y las necesidades de hardware y software del sistema.
- Implementación. Empieza a programar a partir del diseño. Divide el programa en unidades pequeñas e independientes, prueba cada unidad frente a sus especificaciones e intégralas en el sistema completo.
- Pruebas de integración. Combina las unidades probadas y comprueba si el sistema completo presenta defectos.
- Despliegue. Corrige los defectos encontrados en la integración y repite las pruebas para comprobar que se han resuelto. El sistema queda listo para salir al mercado e instalarse en el entorno del cliente.
- Mantenimiento. Publica parches o versiones nuevas para resolver los defectos y problemas que se detecten después de la entrega.
Las fases avanzan en cascada. Cada fase empieza solo cuando la anterior ha terminado satisfactoriamente.
Usa el modelo en cascada si los requisitos están claros, el producto es estable y cada fase cuenta con recursos suficientes. En la práctica, se debe usar únicamente en proyectos pequeños y manejables. Evítalo cuando los requisitos impliquen un riesgo moderado o alto.
Especificación y análisis de requisitosEl desarrollo de software depende de un único factor, la calidad con la que se recopilan y documentan los requisitos. El proceso de identificarlos y documentarlos se denomina especificación y análisis de requisitos.
El cliente, el equipo directivo y el equipo de soporte técnico analizan los requisitos en detalle. Los estudian, revisan y documentan hasta que estén claros y completos.
Especificación de requisitos del usuario
Usa el formato que exija la empresa, como documentos de Word, diagramas de flujo o dibujos. El resultado es un registro detallado de lo que el cliente quiere, que ayuda al equipo a entender bien sus necesidades. Todo lo que no cumple los requisitos del cliente es un defecto. Si se recopilan requisitos incorrectos, el proyecto empieza con una base equivocada.
Especificación de requisitos del usuarioEste documento no técnico describe las expectativas de los usuarios y las necesidades de la empresa. Lo redactan los usuarios finales, y los requisitos se comprueban durante las pruebas de aceptación de usuario. Sirve de base para las siguientes actividades de requisitos y para el diseño del sistema.
Especificación de requisitos de softwareLa especificación de requisitos de software (SRS, por sus siglas en inglés) define cómo quiere el usuario que funcione el software. Cumple las siguientes funciones.
- Registrar el acuerdo entre el cliente y el proveedor sobre las funciones detalladas del software.
- Servir de base para el diseño del software.
- Simplificar el desarrollo y las pruebas mediante requisitos claros.
- Ayudar a programar las actividades y estimar los costos.
- Servir de base para la verificación y la validación.
Especificación de requisitos de software
Diseño de software
El diseño de software tiene dos niveles.
- Diseño de software de alto nivel
- Diseño detallado de software
Diseño de software
Diseño de software de alto nivel
El diseño de alto nivel (HLD, por sus siglas en inglés) describe el diseño de la base de datos y la arquitectura funcional. Orienta al equipo de desarrollo y responde preguntas sobre el flujo del diseño. Para prepararlo, se necesita una SRS clara.
Diseño detallado de softwareEl diseño detallado o de bajo nivel (LLD, por sus siglas en inglés) divide el HLD en partes más pequeñas y registra la lógica que define la especificación del programa. Proporciona información detallada del sistema y depende de que el HLD esté listo.
Procesos de diseño de softwareLos procesos de diseño pueden seguir cualquiera de estos enfoques.
- Diseño descendente
- Diseño ascendente
El diseño descendente parte de un esquema del sistema y deja los detalles de los subsistemas para más adelante. Recorre cada subsistema con un nivel de detalle cada vez mayor hasta llegar a sus elementos básicos.
Enfoque de diseño ascendenteEl diseño ascendente parte de elementos básicos ya definidos en detalle. Únelos en subsistemas y combina los subsistemas hasta formar todo el sistema. Imagínate que plantas una semilla y poco a poco crece un árbol.
¡Te garantizamos que con tu formación gratuita en línea aprobarás el examen de certificación en pruebas de software!
-
01
Inscríbete en línea
Elige tu certificación acreditada y completa la inscripción.
-
02
Recibe tu código de acceso
Recibirás tu código personal de acceso al examen de inmediato por correo electrónico.
-
03
Prepárate y haz el examen
Estudia con tu formación gratuita y responde en línea a 50 preguntas de opción múltiple.
-
04
Obtén tu credencial de por vida
Recibe tu certificado válido en todo el mundo y una insignia digital verificable.
TU FORMACIÓN PRÉMIUM GRATUITA EN LÍNEA
Ya tienes disponible la segunda edición de Software Testing Revealed.
Preparamos esta formación con un grupo de reconocidos líderes empresariales y de equipos, formadores, mentores, expertos y referentes en pruebas de software de todos los sectores principales. Cualquier persona que visite International Software Test Institute™ puede acceder a ella. Encuentra los materiales en las secciones Tu libro gratuito de pruebas de software y Tu formación prémium gratuita en pruebas de software del menú superior.
Estos materiales son propiedad intelectual de International Software Test Institute™ y están protegidos por derechos de autor. Los compartimos gratuitamente con todos porque poner nuestra experiencia al alcance de los profesionales de pruebas de software ayuda a que el sector avance.
Tu examen de certificación consta de preguntas de opción múltiple. Estudia la formación en línea para adquirir los conocimientos que necesitas para aprobar el examen y obtener tu certificación en pruebas de software.
¡Te garantizamos que con tu formación prémium gratuita en línea aprobarás el examen de certificación en pruebas de software!
