Está en la página 1de 54

Mohamed Abderrahim, Universidad Carlos III de Madrid

INFORMTICA INDUSTRIAL I
Ingeniera Electrnica Industrial y Automtica 3er curso

0. PRESENTACION
Profesor: Mohamed Abderrahim / Departamento de Ingeniera de Sistemas y Automtica
Informtica Industrial Ingeniera de Sistemas y Automtica

Mohamed Abderrahim, Universidad Carlos III de Madrid

Presentacin de la asignatura

CREDITOS: 6 HORAS/SEMANA: 4h
15 clases (Teora y revisin C) 10 clases Prcticas

Profesores
Coordinador: Mohamed Abderrahim (1.3B02) Teora: M. Abderrahim y Fares Abu-Dakka Prcticas: Carlos Alonso, Avinash, Ioannis Douratsos Coordinador de Prcticas: Javier Gonzalez-Quijano (1.3B13)

Informtica Industrial

Ingeniera de Sistemas y Automtica

Mohamed Abderrahim, Universidad Carlos III de Madrid

Calendario
Lunes Lunes 9:00-11:00 15.00-17.00 Teora Teora Aula 2.3.D04 G21 Aula 2.3D01 G24

Semana 1 Semana 2 Semana 3

Sept 9-sep T-1 16-sep T-3 23-sep T-5 Octubre 30-sep T-7 7-oct T-9 14-oct T-10 21-oct T-11 28-oct T-12

Semana 13
10-sep 17-sep 24-sep 11-sep 18-sep 25-sep 12-sep 19-sep 26-sep 13-sep T-2 Pr 20-sep T-4 Pr 27-sep T-6 Pr

Diciembre 2-dic P-8 Semana 14 9-dic P-9 Semana 15 16-dic Semana 16 Semana 17 23-dic 30-dic

3-dic 10-dic 17-dic

4-dic 11-dic

5-dic 12-dic

18-dic 19-dic Recuperaciones 24-dic 25-dic 26-dic 31-dic 1-ene 2-ene

6-dic FN 13-dic P-10 20-dic 27-dic 3-ene

Fin Clase

Defensa de Trabajos

Semana 4 Semana 5 Semana 6 Semana 7 Semana 8

1-oct 8-oct 15-oct 22-oct 29-oct

2-oct 9-oct 16-oct 23-oct 30-oct

3-oct 10-oct 17-oct 24-oct 31-oct

4-oct T-8 Pr 11-oct FL 18-oct P-1 25-oct P-2 1-nov FN

Enero Semana 17
Parcial 1

1-ene 6-ene 13-ene 20-ene 7-ene 14-ene 8-ene

2-ene

3-ene

Semana 18

Semana 9

Noviembre 4-nov T-13 Semana 10 11-nov T-14 Semana 11 18-nov T-15 Semana 12 25-nov P-6

5-nov 41590 19-nov 26-nov

6-nov 41591 20-nov 27-nov

7-nov 41592 21-nov 28-nov

8-nov P-3 41593 P-4 22-nov P-5 29-nov P-7

27-ene

15-ene Examenes 21-ene 22-ene 23-ene Examenes 28-ene 29-ene 30-ene 2 Cuatrimestre -clases-

9-ene 10-ene Examenes 16-ene 17-ene 24-ene 31-ene

Informtica Industrial

Ingeniera de Sistemas y Automtica

Mohamed Abderrahim, Universidad Carlos III de Madrid

Normativa

Clases tericas (asistencia no obligatoria) Prcticas y Repaso Programacin bsica (asistencia


obligatoria)

Evaluacin continua Realizar Trabajo

Evaluacin
0.4 examen final + 0,6 evaluacin continua 0.15 Parcial 1 0.15 Parcial 2 0.30 Trabajo Examen final (Nota mnima 3,5)

Informtica Industrial

Ingeniera de Sistemas y Automtica

Mohamed Abderrahim, Universidad Carlos III de Madrid

Temario (1)

Introduccin al desarrollo de sistemas informticos Ingeniera de requisitos El lenguaje unificado de modelado UML y Anlisis Orientado a Objetos
Modelado estructural Modelo dinmico/comportamiento

Diseo Orientado a Objetos Bases de datos relacionales y SQL Introduccin a los sistemas de tiempo real
Ingeniera de Sistemas y Automtica

Informtica Industrial

Mohamed Abderrahim, Universidad Carlos III de Madrid

Temario (2)

Repaso de C Introduccin a la programacin orientada a objetos en C++ Sintaxis del lenguaje C++ Conceptos bsicos de clases, objetos y mtodos Jerarqua de clases y herencia Polimorfismo Concepto de plantillas Manejo de Entrada y Salida Manejo de excepciones
Ingeniera de Sistemas y Automtica

Informtica Industrial

Mohamed Abderrahim, Universidad Carlos III de Madrid

Bibliografa

Francisco Javier Ceballos. "Programacin orientada a objetos con C++". Cuarta Edicin. Ra-ma. 2007. Francisco Javier Ceballos. "Enciclopedia del lenguaje C++". Segunda Edicin. Ra-ma. 2009. Jorge Badenas, Jos Luis Llopis, scar Coltell. "Curso prctico de programacin en C y C++". Segunda Edicin. Publicacions de la Universitat Jaume I. 2001. Bjarne Stroustrup. "The C++ Programming Language". Tercera Edicin. Addison-Wesley. 1997. (Pgina web del autor) Bjarne Stroustrup. "El Lenguaje de programacin C++". Edicin Especial. Addison-Wesley. 2002.
Ingeniera de Sistemas y Automtica

Informtica Industrial

Mohamed Abderrahim, Universidad Carlos III de Madrid

Bibliografa

Stanley B. Lippman, Jose Lajoie. "C++ Primer". Tercera Edicin. Addison-Wesley. 1998. Enrique Hernndez Orallo, Jos Hernndez Orallo, M Carmen Juan Lizandra. "C++ estndar. Programacin con el Estndar ISO y la Biblioteca de Plantillas (STL)". Paraninfo. 2002. (Pgina web del autor) Luis Joyanes. "Programacin en C++. Algoritmos, estructuras de datos y objetos". Segunda Edicin. McGraw-Hill. 2006.
Ingeniera de Sistemas y Automtica

Informtica Industrial

Mohamed Abderrahim, Universidad Carlos III de Madrid

Bibliografa

Aprendiendo UML En 24 Horas, Joseph Schmuller, Prentice Hall PTR, ISBN-13: 9789684444638 The Unified Modeling Language, James Rumbaugh, Ivan Jacobson, Grady Brooch, Addison-Wesley.

Informtica Industrial

Ingeniera de Sistemas y Automtica

Mohamed Abderrahim, Universidad Carlos III de Madrid

1. INTRODUCCION AL DESARROLLO DE SISTEMAS INFORMATICOS

Informtica Industrial

Ingeniera de Sistemas y Automtica

Mohamed Abderrahim, Universidad Carlos III de Madrid

AGENDA

Ingeniera del Software Ciclo de vida del Software Modelos de ciclo de vida para el desarrollo

Informtica Industrial

Ingeniera de Sistemas y Automtica

Mohamed Abderrahim, Universidad Carlos III de Madrid

Definicin de Software

Para nosotros ser el conjunto de informacin:


capaz de producir en las mquinas el comportamiento deseado, de forma eficaz y eficiente, para que los usuarios puedan utilizar el sistema de forma eficiente. al que los desarrolladores puedan dar mantenimiento de forma eficaz y eficiente.

Informtica Industrial

Ingeniera de Sistemas y Automtica

Mohamed Abderrahim, Universidad Carlos III de Madrid

La Importancia del Software

Nuestra sociedad depende en gran medida de la informtica.


Parece impensable que los sistemas informticos dejasen de trabajar, ya que son soporte de muchos sistemas. Ejemplos de sistemas bsicos son: El sistema de control de los semforos de la ciudad Sistemas de transporte areo Sistemas bancarios Sistemas de produccin (fabricas), hospitales UVI, etc..

Informtica Industrial

Ingeniera de Sistemas y Automtica

Mohamed Abderrahim, Universidad Carlos III de Madrid

Por qu es difcil desarrollar Software?


Lo cierto es que muchos proyectos de desarrollo de software fracasan Escalabilidad y complejidad Centraremos el tema mediante:
Una estadstica realizada sobre 8 proyectos de Software Estadounidenses. Caractersticas del Software. Aplicaciones del Software.

Informtica Industrial

Ingeniera de Sistemas y Automtica

Mohamed Abderrahim, Universidad Carlos III de Madrid

Estadstica
Realizada sobre 8 proyectos de Software Estadounidenses

Informtica Industrial

Ingeniera de Sistemas y Automtica

Mohamed Abderrahim, Universidad Carlos III de Madrid

Caractersticas del Software

Es inmaterial e invisible. El comprador lo puede evaluar cuando ya ha sido construido. El Software se desarrolla, no se fabrica. Es complejo. Los sistemas actuales estn formados por miles de funciones con interfaces complejas entre ellas.

Informtica Industrial

Ingeniera de Sistemas y Automtica

Mohamed Abderrahim, Universidad Carlos III de Madrid

El Software se desarrolla, no se fabrica.

En cualquier sistema de produccin podemos observar dos fases: la de desarrollo y la de fabricacin.


El desarrollo es lento y costoso. La fabricacin es en serie y con costes estables.

Con el Software ocurre lo mismo pero ...


Muchas aplicaciones se desarrollan a medida, sin usar componentes existentes. La fabricacin no se considera tal. Fase de pruebas/test

Ingeniera de Sistemas y Automtica

Informtica Industrial

Mohamed Abderrahim, Universidad Carlos III de Madrid

Aplicaciones del Software

Clasificacin segn:
La utilizacin que se hace de l. El tratamiento comercial que tiene. La funcionalidad que aporta a la mquina. La exigencia en eficiencia y los factores crticos que se le exigen. Requisitos

Informtica Industrial

Ingeniera de Sistemas y Automtica

Mohamed Abderrahim, Universidad Carlos III de Madrid

Aplicaciones del Software

Segn la utilizacin del software:

De Gestin.
Se trata del software que da soporte a los procesos comerciales y manejo de informacin que tienen por objetivo permitir a las empresas una mejor gestin.

Produccin y control de procesos.


Es el software que da soporte a los procesos productivos y conducentes a desarrollar las actividades propias de cada negocio.

Robtica.
Software que se centra en controlar y automatizar el comportamiento de sistemas electro-mecnicos que colaboran con los seres humanos en diversos campos, desde la ortopedia hasta la exploracin de otros planetas.

Informtica Industrial

Ingeniera de Sistemas y Automtica

Mohamed Abderrahim, Universidad Carlos III de Madrid

Aplicaciones del Software

Segn la utilizacin del software:

De Ingeniera y Cientfico.
Da soporte a los procesos creativos y de diseo de las personas, se caracteriza por clculos matemticos complejos. Ejemplo de ello son las herramientas CAD o el soporte a seguimiento de acontecimientos en el espacio (Telescopios, etc.)

Ofimtico.
Software que permite a las personas utilizar los ordenadores en las tareas que habitualmente se realizan en oficinas.

Informtica Industrial

Ingeniera de Sistemas y Automtica

Mohamed Abderrahim, Universidad Carlos III de Madrid

Aplicaciones del Software

Segn la utilizacin del software:

Formacin y divulgacin.
Software que tiene por objetivo el transferir conocimientos al ser humano, en esta categora entran toda la creacin de cursos, simuladores,

Domtico.
Software que se utiliza para controlar el hbitat del ser humano, a pequea escala. Va desde las alarmas hasta el control de temperaturas de un hogar.

Ocio y Juegos.
Aplicaciones que tienen por objetivo el que el ser humano pase algo de tiempo disfrutando con los ordenadores.

Informtica Industrial

Ingeniera de Sistemas y Automtica

Mohamed Abderrahim, Universidad Carlos III de Madrid

Aplicaciones del Software

Segn el tratamiento comercial que tiene


Software de estantera: COTS (Commercial off the shelf) - Software reutilizable desde un tercero Paquetes parametrizables
> El usuario los adapta

Software a medida
> Especfico para el usuario desde una tercera persona

Software personal
> Hecho para una tarea especfica por el usuario

Informtica Industrial

Ingeniera de Sistemas y Automtica

Mohamed Abderrahim, Universidad Carlos III de Madrid

Aplicaciones del Software

Funcionalidad que aporta a la mquina:


Software de sistemas
Ej. control de un proceso productivo

Comunicaciones
Ej. Chats, navegadores, control de puertos

Empotrado
Ej. Ordenadores de abordo de un vehculo

De usuario
Ej. GUIs, Juegos, etc

Informtica Industrial

Ingeniera de Sistemas y Automtica

Mohamed Abderrahim, Universidad Carlos III de Madrid

Aplicaciones del Software

Exigencia en eficiencia y factores crticos


Software de tiempo real


Requerimientos de alto rendimiento, respuesta rpida.

Transaccional
Alta seguridad

Monousuario y PC
Manejo de cuentas de usuario, etc

Informtica Industrial

Ingeniera de Sistemas y Automtica

Mohamed Abderrahim, Universidad Carlos III de Madrid

Ingeniera de Software

Software Ingeniera

"Es el establecimiento y uso de principios (mtodos) slidos de ingeniera con el fin de obtener sistemas programados de forma econmica, confiable y que trabajen en mquinas reales [computadores]" F.L. Bauer, 1972. La aplicacin prctica del conocimiento cientfico en el diseo y construccin de programas para computadores y la asociada requerida para documentacin desarrollarlos, operarlos y mantenerlos". B. Boehm, 1976.
Ingeniera de Sistemas y Automtica

Informtica Industrial

Mohamed Abderrahim, Universidad Carlos III de Madrid

Ingeniera de Software: origen

Su origen se debe a que el entorno de desarrollo de sistemas software adoleca de:


Retrasos considerables en la planificacin Poca productividad Elevadas cargas de mantenimiento Demandas cada vez ms desfasadas con las ofertas Baja calidad y fiabilidad del producto Dependencia de los realizadores

Informtica Industrial

Ingeniera de Sistemas y Automtica

Mohamed Abderrahim, Universidad Carlos III de Madrid

Ingeniera de Software: crisis del software

Primera Fase. Los albores (1945-1955)


Programar no es una tarea diferenciada del diseo de una mquina Uso de lenguaje mquina y ensamblador

Segunda Fase. El florecimiento (1955-1965)


Aparecen multitud de lenguajes Era posible hacer casi todo

Tercera Fase. La crisis (1965-1970)


Desarrollo inacabable de grandes programas Ineficiencia, errores, coste impredecible Nada es posible

Cuarta Fase. Innovacin conceptual (1970-1980)


Fundamentos de programacin Verificacin de programas Metodologas de diseo

Quinta Fase. El diseo es el problema (1980-?)


Entornos de programacin Especificacin formal Programacin automtica

Informtica Industrial

Ingeniera de Sistemas y Automtica

Mohamed Abderrahim, Universidad Carlos III de Madrid

Ingeniera de Software: crisis del software

Ello ha venido originado por una falta de:


Formalismo y metodologa Herramientas de soporte Administracin eficaz

Las nuevas metodologas suponen un enfoque integral del problema, abarcando todas las fases
"Ingeniera del Software: el tratamiento sistemtico de todas las fases del ciclo de vida del software

Informtica Industrial

Ingeniera de Sistemas y Automtica

Mohamed Abderrahim, Universidad Carlos III de Madrid

Ciclo de Vida del Software

Ciclo de vida del software: El periodo de tiempo


comprendido desde la definicin de los requisitos hasta el fin del su uso. Procesos: Actividades y tareas implicadas en el desarrollo operacin y mantenimiento de un sistema de software. La aplicacin de los procesos, tanto en el desarrollo como en el posterior mantenimiento y operacin del software, se dibuja a travs de unos patrones fijos que configuran el esquema de mapa de situacin, relacin y continuidad entre los diferentes procesos, actividades y tareas.Ingeniera de
Informtica Industrial Sistemas y Automtica

Mohamed Abderrahim, Universidad Carlos III de Madrid

Modelos del Ciclo de Vida


Lineal o secuencial Cascada Evolutivo Espiral Incremental

Informtica Industrial

Ingeniera de Sistemas y Automtica

Mohamed Abderrahim, Universidad Carlos III de Madrid

Modelos del Ciclo de Vida

Lineal o secuencial
Lineal o secuencial

Requisitos Diseo Codificacin Pruebas

Sucesin escalonada de las etapas que lo componen: requisitos, diseo, codificacin, pruebas e integracin.
Informtica Industrial

Integracin Operacin y mantenimiento

Ingeniera de Sistemas y Automtica

Mohamed Abderrahim, Universidad Carlos III de Madrid

Modelos del Ciclo de Vida

Lineal o secuencial
Requisitos Diseo Codificacin Pruebas Integracin

Operacin y mantenimiento

Es necesario terminar por completo cada etapa para pasar a la siguiente Este modelo, identificado ya a principios de la dcada de los 50, resulta muy rgido porque cada fase requiere como elemento de entrada el resultado completo de la anterior
No hay Realimentacin!!!
Ingeniera de Sistemas y Automtica

Informtica Industrial

Mohamed Abderrahim, Universidad Carlos III de Madrid

Modelos del Ciclo de Vida

Lineal o secuencial

En situaciones reales su rigidez genera problemas:


Ej: Dificultad para disponer de requisitos completos o del diseo pormenorizado del sistema en las fases iniciales, creando una barrera que impide avanzar o mejorar el sistema en desarrollos futuros.

Resulta apropiado para: Desarrollar nuevas versiones de sistemas ya veteranos en los que el desconocimiento de las necesidades de los usuarios, o del entorno de operacin no plantea riesgos. Sistemas pequeos, sin previsin de evolucin a corto plazo.
Ingeniera de Sistemas y Automtica

Informtica Industrial

Mohamed Abderrahim, Universidad Carlos III de Madrid

Modelos del Ciclo de Vida

Cascada
Cascada

Requisitos Diseo Codificacin Pruebas El modelo en cascada refleja la necesidad impuesta por la realidad de retornar con frecuencia desde una fase hacia las anteriores con la informacin generada al avanzar el desarrollo.
Informtica Industrial

Integracin Operacin y mantenimiento

Ingeniera de Sistemas y Automtica

Mohamed Abderrahim, Universidad Carlos III de Madrid

Modelos del Ciclo de Vida

Cascada
Cascada

Requisitos Diseo Codificacin Pruebas Integracin Operacin y mantenimiento

Informtica Industrial

Ingeniera de Sistemas y Automtica

Mohamed Abderrahim, Universidad Carlos III de Madrid

Modelos del Ciclo de Vida

Cascada

Dos representaciones
La primera parece indicar que el retorno posible se da solamente entre una fase y la anterior. Mientras que en la segunda se refleja mejor el hecho de que en cualquier fase puede surgir un retorno para modificar cualquiera de las anteriores.

Este modelo reconoce la importancia de disponer de unos requisitos y un diseo previo antes de comenzar con la codificacin del sistema

Informtica Industrial

Ingeniera de Sistemas y Automtica

Mohamed Abderrahim, Universidad Carlos III de Madrid

Modelos del Ciclo de Vida

Cascada

De nuevo: disponer de documentacin elaborada de requisitos y diseo antes de empezar a codificar puede actuar como una barrera que bloquee el comienzo de la siguiente fase El modelo no se ha hecho muy popular, y los equipos que lo aplican pueden caer en la tentacin de comenzar con el diseo o incluso con la codificacin, sin tener un conocimiento suficiente de los requisitos. Resulta apropiado para:

Desarrollar nuevas versiones de sistemas ya veteranos en los que


el desconocimiento de las necesidades de los usuarios, o del entorno de operacin no plantean riesgos. Sistemas pequeos, sin previsin de evolucin a corto plazo.

Informtica Industrial

Ingeniera de Sistemas y Automtica

Mohamed Abderrahim, Universidad Carlos III de Madrid

Modelos del Ciclo de Vida

Evolutivo
Evolutivo
Requisitos Diseo Codificacin Pruebas Integracin Operacin Mantenim. Sistema

Requisitos

Diseo

Codificacin

Pruebas

Integracin

Operacin Mantenim.

Sistema

Requisitos

Diseo

Este modelo est compuesto por varios ciclos de desarrollo. Cada uno de ellos produce un sistema completo con el que se operar en el entorno de operacin. La informacin acumulada en el desarrollo de cada sistema, y durante su fase de operacin sirve para mejorar o ampliar los requisitos y el diseo del siguiente. En realidad es un ciclo de vida comn a todos los sistemas desarrollados que se mejoran a travs de versiones sucesivas.
Ingeniera de Sistemas y Automtica

Informtica Industrial

Mohamed Abderrahim, Universidad Carlos III de Madrid

Modelos del Ciclo de Vida

Evolutivo
Evolutivo
Requisitos Diseo Codificacin Pruebas Integracin Operacin Mantenim. Pruebas Sistema Operacin Mantenim. Requisitos

Requisitos

Diseo

Codificacin

Integracin

Sistema

Diseo

Las circunstancias en las que este modelo puede resultar apropiado son

Desconocimiento

inicial de todas las necesidades operativas que sern precisas, generalmente por tratarse del desarrollo de un sistema que operar en un entorno nuevo sin experiencia previa. Necesidad de que el sistema entre en operacin en tiempos inferiores a los que seran necesarios para disearlo y elaborarlo de forma exhaustiva. Necesidad de desarrollar sistemas en entornos cambiantes (sujetos a normas legislativas, mejora continua del producto para hacer frente a desarrollos de la competencia, etc.).

Aunque en su concepcin inicial contempla desarrollos internos en cascada, tambin podra plantearse, por ejemplo, un ciclo de vida evolutivo con desarrollos internos en espiral.
Ingeniera de Sistemas y Automtica

Informtica Industrial

Mohamed Abderrahim, Universidad Carlos III de Madrid

Modelos del Ciclo de Vida

Espiral
Espiral
DETERMINAR OBJETIVOS, ALTERNATIVAS Y RESTRICCIONES COSTE ACUMULADO EVALUAR ALTERNATIVAS, IDENTIFICAR Y RESOLVER RIESGOS

ANLISIS DE RIESGOS

ANLISIS DE RIESGOS

ANLISIS DE RIESGOS

PROTOTIPO OPERATIVO PROTOTIPO PROTOTIPO

SIMULACIONES, MODELOS REQUISITOS PLAN CICLO DESARROLLO DESCRIPCIN DE SISTEMA REQUISITOS DE SOFTWARE DISEO DEL SOFTWARE DISEO DETALLADO

PLAN DE DESARROLLO

VALIDACIN DE REQUISITOS

CODIFICACI N

PRUEBAS VALIDACIN Y VERIFICACIN DEL DISEO PRUEBAS INTEGRACIN

PLAN DE INTEGRACIN Y PRUEBAS

VERIFICACIN

PLANIFICAR FASES SIGUIENTES

IMPLEMENTACIN

DESARROLLAR Y VERIFICAR EL SIGUIENTE NIVEL

Informtica Industrial

Ingeniera de Sistemas y Automtica

Mohamed Abderrahim, Universidad Carlos III de Madrid

Modelos del Ciclo de Vida

Espiral

Definido por Boehm en 1988,


Desarrollo evolutivo, en contraste a la linealidad de los anteriores. Introduce como elemento distintivo la actividad de anlisis de riesgo para guiar la evolucin del proceso de desarrollo.

El ciclo de iteracin: una espiral:


Al representarse sobre ejes cartesianos muestra en cada cuadrante una clase particular de actividad: Planificacin, Anlisis de riesgo, Ingeniera y Evaluacin, Estas actividades pueden suceder de forma consecutiva a lo largo del ciclo de vida del desarrollo. La dimensin angular representa el avance relativo en el desarrollo de las actividades de cada cuadrante. En cada ciclo de la espiral se realiza una parte del desarrollo total, a travs de los cuatro tipos de actividades.

Informtica Industrial

Ingeniera de Sistemas y Automtica

Mohamed Abderrahim, Universidad Carlos III de Madrid

Modelos del Ciclo de Vida

Espiral

En la planificacin de cada vuelta se establece el contexto del desarrollo y se decide qu parte del mismo se abordar en el ciclo siguiente. Las actividades de anlisis de riesgo evalan las alternativas posibles para la ejecucin de la siguiente parte del desarrollo, seleccionando la ms ventajosa y previendo los riesgos posibles. Las actividades de ingeniera corresponden a las indicadas en los modelos lineales (secuencial y cascada): anlisis, diseo, codificacin, etc
Ingeniera de Sistemas y Automtica

Informtica Industrial

Mohamed Abderrahim, Universidad Carlos III de Madrid

Modelos del Ciclo de Vida

Espiral

Las actividades de evaluacin analizan los resultados de la fase de ingeniera, tomando el resultado de la evaluacin como punto de partida para el anlisis de la siguiente fase. Este modelo permite mltiples combinaciones ya que en la planificacin de cada ciclo se determina el avance que se va a ejecutar durante la vuelta. ste puede consistir en la obtencin y validacin de requisitos, o en el desarrollo del diseo, o el diseo junto con la codificacin, o en la obtencin de un subsistema completo (cascada de requisitos diseo codificacin pruebas integracin).
Ingeniera de Sistemas y Automtica

Informtica Industrial

Mohamed Abderrahim, Universidad Carlos III de Madrid

Modelos del Ciclo de Vida

Incremental
Incremental

REQUISITOS

Diseo

Codificacin

Pruebas

Integracin

Operacin Mantenim. Integracin

Sub-sistema Operacin Mantenim. Pruebas

Diseo

Codificacin

Pruebas

Sub-sistema

SISTEMA

Diseo

Codificacin

El modelo incremental mitiga la rigidez del modelo en cascada, descomponiendo el desarrollo de un sistema en partes; para cada una de las cuales se aplica un ciclo de desarrollo (en cascada en la representacin grfica).
Informtica Industrial Ingeniera de Sistemas y Automtica

Mohamed Abderrahim, Universidad Carlos III de Madrid

Modelos del Ciclo de Vida

Incremental

Ventajas : El usuario dispone de pequeos subsistemas operativos que


ayudan a perfilar mejor las necesidades reales del sistema en su conjunto. El modelo produce entregas parciales en periodos cortos de tiempo, comparados con el tiempo necesario para la construccin del sistema en su conjunto, y permite la incorporacin de nuevos requisitos que pueden no estar disponibles o no ser conocidos al iniciar el desarrollo.

Informtica Industrial

Ingeniera de Sistemas y Automtica

Mohamed Abderrahim, Universidad Carlos III de Madrid

Modelos del Ciclo de Vida

Incremental

Aunque en la representacin grfica de la figura anterior, los desarrollos de cada subsistema se solapan en el tiempo, en su aplicacin real, el segundo y siguientes subsistemas pueden comenzar una vez concluido el anterior. Resulta apropiado:
Desarrollo de sistemas en los que el cliente necesita disponer de parte de la funcionalidad antes de lo que costara desarrollar el sistema completo. Desarrollo de sistemas en los que por razones del contexto interesa realizar la obtencin de los requisitos de forma escalonada a travs de subsistemas.

Informtica Industrial

Ingeniera de Sistemas y Automtica

Mohamed Abderrahim, Universidad Carlos III de Madrid

Prototipos

El prototipado consiste en la construccin de modelos de prueba, que simulen el funcionamiento que se pretende conseguir en el sistema. Los prototipos pueden ser:

Ligeros:

dibujos de pantallas de interfaz con simulacin de funcionamiento por enlaces a otros dibujos Operativos: Mdulos de software con funcionamiento propio que se desarrollan sin cubrir las funcionalidades completas del sistema, normalmente en entornos RAD (rapid application development).

Esta forma de trabajo previo suele tener como principal objetivo la


experimentacin con un entorno similar al pretendido, para obtener retro-informacin del usuario o cliente que ayuda a los desarrolladores en la concrecin de los requisitos.

Informtica Industrial

Ingeniera de Sistemas y Automtica

Mohamed Abderrahim, Universidad Carlos III de Madrid

Prototipos
Aunque ofrece muchas ventajas, deben conocerse los riesgos que implica el uso de prototipado: Como puede parecer que se ha desarrollado un interfaz de usuario sofisticado y elaborado, el cliente puede llegar a pensar que ya se ha realizado el grueso del trabajo. Si se trata de un prototipo operativo, puede empezar a crecer al margen de la planificacin, ms all de los objetivos previstos, desbordando agendas y recursos. Si se trata de un prototipo ligero desarrollado fuera del departamento de desarrollo (ej. Marketing), puede mostrar al cliente funcionalidades no implementables. El prototipo puede llegar a ofrecer funcionalidades superiores a lo conseguible, por estar construido en un entorno diferente al de desarrollo, o no incluir toda la funcionalidad del sistema.
Informtica Industrial Ingeniera de Sistemas y Automtica

Mohamed Abderrahim, Universidad Carlos III de Madrid

Proceso Unificado de Desarrollo


Propuesto por los autores de UML (lenguaje unificado de desarrollo) Basado en componentes interconectados a travs de interfaces Utiliza UML para desarrollar los esquemas y diagramas de un sistema software Principales aspectos definitorios
dirigido por casos de uso centrado en la arquitectura iterativo e incremental

Informtica Industrial

Ingeniera de Sistemas y Automtica

Mohamed Abderrahim, Universidad Carlos III de Madrid

Proceso Unificado de Desarrollo


Caso de uso: Fragmento de funcionalidad que proporciona al usuario un resultado importante Modelo de casos de uso: Funcionalidad total del sistema
Qu debe hacer el sistema para cada usuario? Guan el proceso de desarrollo

Informtica Industrial

Ingeniera de Sistemas y Automtica

Mohamed Abderrahim, Universidad Carlos III de Madrid

Proceso Unificado de Desarrollo

Centrado en la arquitectura
Describe diferentes vistas del sistema Incluye los aspectos estticos y dinmicos ms significativos Es la forma del software La arquitectura y los casos de uso evolucionan en paralelo Responsable: el arquitecto Empieza por la parte que no es especfica de los casos de uso Trabaja con casos de uso claves Progresa con la especificacin de ms casos de uso

Informtica Industrial

Ingeniera de Sistemas y Automtica

Mohamed Abderrahim, Universidad Carlos III de Madrid

Proceso Unificado de Desarrollo

Iterativo e incremental
Se divide el trabajo en mini-proyectos Cada mini-proyecto es una iteracin que resulta en un incremento La iteracin Trata un conjunto de casos de uso Trata los riesgos ms importantes En cada iteracin se persiguen unos objetivos concretos Ejemplo de iteracin: 2 a 6 semanas
Ingeniera de Sistemas y Automtica

Informtica Industrial

Mohamed Abderrahim, Universidad Carlos III de Madrid

Proceso Unificado de Desarrollo

Beneficios de un proceso iterativo controlado:


Coste del riesgo a un solo incremento Reduce el riesgo de no sacar el producto en el calendario previsto Acelera el ritmo de desarrollo Se adapta mejor a las necesidades del cliente

Informtica Industrial

Ingeniera de Sistemas y Automtica

Mohamed Abderrahim, Universidad Carlos III de Madrid

Proceso Unificado de Desarrollo

Informtica Industrial

Ingeniera de Sistemas y Automtica

También podría gustarte