Está en la página 1de 44

Sistemas de Informacin I

Metodologas de desarrollo de SW.

Conceptos
Software
Producto. Nace como la solucin a una problemtica.

Sistema
Conjunto de elementos relacionados entre si, que trabajan por un fin comn.

Sistema Informtico
Sistema que apoya su funcionamiento en herramientas y tcnicas informticas.

Conceptos
Computacin
Ciencia del estudio de las Computadoras (HW y Software)

Informtica
Ciencia del estudio de la informacin

Visin de Sistemas

Roles
Ingeniero de Sistemas
Capaz de analizar problemas. Estimar soluciones. Determinar alcances investigar

Roles
Ingeniero de Software
Disea las soluciones
Logicamente Fisicamente

Estima las tecnologas. Reune a los especialistas.

Programador de aplicaciones
Construye y prueba.

Roles
Ingeniero de Sistemas

Ingeniero de Software

Programador de aplicaciones

Ciclo de vida del Software


Conjunto de etapas con entradas y salidas definidas.
Estructuradas para el diseo y construccin de un sistema informtico.

Definicin
Un marco de referencia que contiene los procesos, las actividades y las tareas involucradas en el desarrollo, la explotacin y el mantenimiento de un producto de software, abarcando la vida del sistema desde la definicin de los requisitos hasta la finalizacin de su uso

Ciclo de vida

Nace
Anlisis Diseo

Crece
Construccin Implantacin Pruebas

Muere
Obsolescencia Reemplazo

Anlisis de Requerimientos
Investigacin de la problemtica.
Investigacin del medioambiente. Definir caracteristicas funcionales y no funcionales. Conocer al Cliente. comprender qu quiere el cliente!

Analisis de Requerimientos
Tcnicas:
Cuestionarios, encuestas, listas de cotejo. Observaciones, entrevistas. Lluvia de Ideas. Estudios de factibilidad
Econmica. Tcnica. Tecnolgica Legal.

Anlisis de Requerimiento
Salida:
Informe de requerimientos. Detalle del problema. Solucin aceptada. Alcances de la solucin. Casos de uso generales.

Toda salida debe ser firmada por el cliente y el ingeniero de sistemas.

Anlisis de Requerimientos
Salida:
Planificacin
GANTT. PERT.

Estimacin
COCOMO. Puntos por funcin. Puntos por Caso de uso

Diseo
Diagramacin de la solucin
Modelado del sistema.
UML BPMN DFD

Modelado de la base de datos.


MER MR

Construccin
Codificacin
Pruebas de caja blanca.

Pruebas de integridad.
Documentacin de programas.

Implantacin e integracin
Instalacin del nuevo sistema.
Poblamiento de bases de datos.

Procesos migratorios de base de datos


Pruebas de integracin.

Pruebas
Pruebas de caja blanca.
Pruebas de caja negra. Pruebas modulares. Pruebas integrales. Pruebas crticas. Versiones AlphaTester, BetaTester.

Mantenimiento
Garanta.
Mantenimiento Preventivo
Mejoras programadas. Parches. Versiones. Cambios de plataforma.

Mantenimiento Correctivo.
Solucin de errores.

Metodologas
Estructuradas
Secuenciales Iterativas Evolutivas

Orientadas a Objetos
Orientadas a Componentes giles

Cascada
Anlisis de Requerimientos
Diseo

Construccin Pruebas

Mantenimiento

Cascada
Ventajas
Simplicidad. Cada fase est delimitada. Ideal para proyectos pequeos. Ideal para grupos de desarrollo inexpertos o pequeos.

Desventajas
Demasiado estricto en la secuencialidad. Los errores son encontrados tardamente. Puede inducir a errores de estimacin de costos.

Cascada (mejora 1)
Anlisis de Requerimientos
Diseo

Construccin Pruebas

Mantenimiento

Cascada (mejora 2)
Anlisis de Requerimientos Diseo

Construccin Pruebas Mantenimiento

Dcumentacin

Espiral

Espiral
Ventajas
Reduce riesgos del proyecto Incorpora objetivos de calidad Integra el desarrollo con el mantenimiento, etc.

Desventajas
Genera mucho tiempo en el desarrollo del sistema Modelo costoso Requiere experiencia en la identificacin de riesgos

Entrega por Etapas


Analisis Especificaciones Diseo Global Diseo detallado Construccin Pruebas

Implementacin

Etapa 1

Etapa 2

Etapa n

Entrega por Etapas


Ventajas.
Requiere poca sofisticacin para los directivos y desarrolladores. Permite modificaciones a medio camino. Requiere poco tiempo de gestin. Genera un sistema altamente fiable y con amplio desarrollo. Permite una funcionalidad til en manos del cliente sin tener la aplicacin finalizada. Proporciona signos tangibles de progreso.

Desventajas
Estar sometido a una planificacin predefinida. Trabaja con poca compresin sobre la arquitectura. Trabaja con poca identificacin de los requerimientos de diseo. Debe entregarse una etapa para continuar con la siguiente. Este modelo no es viable sin una planificacin adecuada

Prototipo
Producto

Recoleccin y refinamiento de requisitos Diseo rpido

Ajustes prototipo Evaluacin del cliente

Const. Prototipo

Prototipo
Ventajas
Este modelo es til cuando el cliente conoce los objetivos generales para el software. No identifica los requisitos detallados de entrada, procesamiento o salida. Tambin ofrece un mejor enfoque cuando el responsable del desarrollo del software est inseguro de:
La eficacia de un algoritmo La adaptabilidad de un sistema operativo La forma que debera tomar la interaccin humano-mquina.

Desventajas
El usuario tiende a crearse unas expectativas cuando ve el prototipo de cara al sistema final. A causa de la intencin de crear un prototipo de forma rpida, se suelen desatender aspectos importantes. Malas decisiones por definir prototipos mas rpidos.

Desarrollo Orientado a Objetos


Planificar
Crecimiento

Construir

Liberar

Actividades
Implementar Especificar Investigar planificar

Madurez

Planificar
Mejora 1

Construir

Liberar

Planificar
Mejora 2

Construir

Liberar

Revisar

Conceptos: Abstraccin

Conceptos:Encapsular

Conceptos:Modularidad

Conceptos: Jerarqua

Herencia

Polimorfismo
Clase Felino Hablar() Objeto GATO Ejecuta: Hablar()

MIAU!

Objeto LEON Ejecuta: Hablar()

Algunas otras metodologas


Mtodos giles

SCRUM

Usuarios

Roles
Scrum Manager
Project Owner TEAM Stakeholders

RUP

Investigar
Programacin Extrema
Crystal

Modelo Dominio Frontera


Metodologas giles

Zachman

También podría gustarte