Documentos de Académico
Documentos de Profesional
Documentos de Cultura
CICLO DE VIDA DE UN SISTEMA Resumen IV
CICLO DE VIDA DE UN SISTEMA Resumen IV
Desarrollo cascada:
procedimiento secuencial que permite representar un proyecto en base a unas fases
que se suceden entre sí
Características:
• Se encuentra bien documentada por lo claro de cada proceso
• Se puede estimar desde el inicio el costo del mismo
• Cuenta con una estructura sencilla
• No se puede regresar
Desarrollo ágil
trabajo es realizado mediante la colaboración de equipos autoorganizados y
multidisciplinarios, inmersos en un proceso compartido de toma de decisiones a corto
plazo.
Métodos de ingeniería del software basados en el desarrollo iterativo e incremental,
donde los requisitos y soluciones evolucionan con el tiempo según la necesidad del
proyecto
Características
• Los requisitos u objetivos no se puedan definir desde el principio
• Que las características del mercado requieran de cambios rápidos y constantes
• Se necesite de resultados rápidamente
• Proyectos muy complejos que requieran de mucho tiempo de desarrollo y/o grandes equipos
Etapas:
1. Planificación
2. Análisis
3. Diseño
4. Implementación
5. Pruebas
6. Instalación o despliegue
7. Uso y mantenimiento
1. Planificación:
Etapas previas que se realizan para que el proyecto se lleve a cabo de la
mejor manera. Las tareas iniciales se realizan en esta fase tales como:
• Delimitación del ámbito del proyecto: se analizan las cuestiones a resolver y cuales se
dejan fuera
• Estudio de viabilidad: Identificar los principales factores que hacen fracasar proyectos
de desarrollo de software y los ingredientes clave que pueden ayudar a reducir el índice
de fracasos. Requiere tiempo y dinero. Se debería evaluar la viabilidad económica
técnica y legal. El estudio debería ajustarse a la realidad
ERRORES COMUNES
• Abreviar las etapas iniciales del proceso de desarrollo de software
• No gestionar adecuadamente los cambios que inevitablemente ocurren durante el
proyecto
• Reducir la interacción con el cliente
• continuas interrupciones
• Hacer trabajar horas extra
• No informar de pequeños retrasos
• Confiar excesivamente
2. Análisis:
Proceso donde se descubre que es lo que se necesita y se llega a un
entendimiento adecuado de los requerimientos del sistema y sus
características. Es esencial ya que si no se conoce lo necesario ningún
proceso de desarrollo nos permitirá obtenerlo. Es importante tenerlo claro
desde el principio sino el costo puedo aumentar debido a los errores.
No es posible determinar todos los requerimientos de un sistema de
informaciónLa inestabilidad de los requerimientos de un sistema es
inevitable. Se estima que un 25% de los requerimientos iniciales cambian
antes de que el sistema comience a utilizarse.
Diseño descendente:
Inicia con el panorama general y luego se va a detalles.
Se ocupan de las funciones principales que el sistema debe proporcionar y las
dividen en actividades más y más pequeñas que se pueden tratar de forma
separada.
Es más fácil encontrar errores de código.
Evita cambios indeseables en el programa.
Diseño Ascendente
El equipo comienza con los detalles, luego se dirigen al panorama general para
una
revisión por el administrador del equipo.
Se enfoca en ciertas partes específicas que el usuario requiere conforme al
diseño.
Si el diseño pasa la inspección, el desarrollo comienza.
Modelos de Funcionamiento
Prototipos: modelo el cual podemos utilizar para generar y diseñar una actividad que nos
permita crear un diseño rápido en la construcción de un software. ara explorar la vista y
percepción de las pantallas en relación con los usuarios.
Aplicaciones
Herramientas de ingeniería de software de computadora.
Especiales para crear esos prototipos rápidamente, así como para crear
diagramas, escribir código y administrar el esfuerzo de desarrollo
Arquitecturas Multicapa
La división de un sistema en distintas capas o niveles de abstracción es una de las
técnicas más comunes empleadas para construir sistemas complejos
forma más de la técnica de resolución descomponer un problema complejo en
una serie de problemas más sencillos
Facilita el diseño modular
4. Implementación y Desarrollo
Esta consiste en la realización de una especificación técnica o algoritmos como
un programa, componente software, u otro sistema de cómputo, para poner en
funcionamiento a los responsables para que se realicen las acciones (actividades
y operaciones), destinadas a cumplir las metas previstas en el plan y el sistema
funcione
Es necesario:
- El código debe ser posible de descifrar
- Seleccionar herramientas adecuadas
- Facilitar la interpretación visual del código mediante el uso de sangrías y líneas
en blanco que separen distintos bloques de código.
*Conversion:
Es un proceso en el cual se cambia un antiguo sistema por uno nuevo.
Se debe de manejar con cuidado para no perder o corromper datos y decepcionar
a los usuarios. Hay 4 tipos de conversión:
▪ Conversión directa: todos los usuarios abandonan al mismo tiempo el sistema antiguo
y comienzan a utilizar el nuevo.
▪ Conversión en paralelo: se utilizan tanto el antiguo como el nuevo sistema, aunque
hay una cantidad creciente de información que se procesa en el nuevo sistema.
▪ Conversión en fases: los usuarios comienzan a utilizar el nuevo sistema parte por
parte, no directamente.
▪ Conversión piloto: el personal utiliza el nuevo sistema en un sitio piloto y la
organización hace el cambio luego
5. Pruebas
Son una etapa de prueba en la que se determinan los errores o fallas que se pudieron
haber cometido anteriormente en otras fases. Es importante pensar que, al momento
de haber una falla o error, se considera una prueba de éxito (contrario a lo que uno
esperaría que sucediera)
Prueba alfa:
Primera revisión del sistema finalizado.
El sistema cumple con la mayoría de los requisitos, pero se revisa si se puede
mejorar.
Se realizan en el seno de la organización que desarrolla el sistema (no es público)
Realizadas desde el punto de vista de un usuario final, para identificar aspectos
de la interfaz que se deban pulir
Prueba Beta:
Se realizan cuando el sistema no es un producto a medida (características
indicadas por el cliente), sino que se venderá como un producto en el
mercado(todos son clientes).
Estas pruebas las hacen usuarios finales del sistema ajenos al equipo de
desarrollo.
Pueden resultar vitales para que un producto tenga éxito en el mercado
Test de aceptación:
Es una etapa previa a la liberación del proyecto, si esta se supera con éxito,
marca el final del proceso de prueba y se continúa con la etapa de
mantenimiento
6. Instalación y despliegue
7. Uso y mantenimiento:
• Consume alrededor del 40 al 80% de recursos de una empresa en cuestiones de un
crecimiento de software. El mantenimiento es como un "un ciclo de vida" ya que es de
comprender lo que ya existe y el desarrollo que se le añade, esto hace referencia a que
el mantenimiento de un sistema es más difícil que su desarrollo
• Existen 3 etapas diferentes:
1. Mantenimiento correctivo: Elimina los "defectos" para que sera más útil
2. Mantenimiento adaptativo: Se usa para adaptar a las nuevas necesidades
3. Mantenimiento perfectivo: Es una mejora constante para poder tener un mejor
rendimiento en las aplicaciones