Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
UNIDAD I
El producto y el proceso
15/03/2012
Software
Qu es? Es el producto que disean y construyen los ingenieros del software. Abarca programas, documentos y datos. Quin lo hace? Los ingenieros del software lo construyen, y virtualmente cualquier persona en el mundo industrializado. Por qu es importante? Porque afecta muy de cerca a cualquier aspecto de nuestra vida, est muy extendido en nuestro comercio, cultura y actividades cotidianas.
Analisis de Sistemas - U.N.P. 2
Software
Cules son los pasos? Construir software de computadora aplicando un proceso que conduce a un resultado de alta calidad que satisface las necesidades de la gente que usar el producto aplicando un enfoque de ingeniera de software. Cul es el producto obtenido? Desde el punto de vista de un ingeniero de software, el producto obtenido son los programas, documentos y datos. Desde el punto de vista de los usuarios el producto obtenido es la informacin resultante que facilita la labor de los usuarios. Cmo puedo estar seguro de que lo he hecho correctamente? Cuando el software obtenido sirva para los fines para los cuales fue creado.
8/23/2012 Analisis de Sistemas - U.N.P. 3
Grandes aumentos de memoria y capacidad de almacenamiento Gran variedad de opciones de entrada y salida Libros populares publicados durante los aos 70 y 80 proporcionan una visin histrica til dentro de la percepcin cambiante de las computadoras y del software, y de su impacto en nuestra cultura. Osborne hablaba de una nueva revolucin industrial Toffler llam a la llegada de componenetes microelectrnicos la tercera ola del cambio en la historia de la humanidad Naisbitt predijo la transformacin de la sociedad industrial a una sociedad de informacin
Feingenbaum y McCorduck sugirieron que la informacin y el conocimiento controlados por computadora seran el foco de poder del siglo XXI Stoll argument que la comunidad electrnica creada mediante redes y software es la clave para el intercambio de conocimiento alrededor del mundo Al comienzo de los aos 90 Toffler describi un cambio de poder en el que las viejas estructuras de poder (gubernamentales, educativas, industriales, econmicas y militares) se desintegraran a medida que las computadoras y el software nos llevaran a la democratizacin del conocimiento
8/23/2012
Yourdon predijo el declive y la cada del programador americano Hammer y Champy argumentaron que las tecnologas de informacin iban a desempear el papel principal en la reingeniera de la compaa Al final de los 90 Yourdon volvi a evaluar las perspectivas del software profesional y sugiri la resurreccin y elevacin del programador americano Al final del siglo XX tuvo lugar el impacto de la bomba de relojera Y2K Hoy da la computacin ha producido una generacin de aplicaciones con conexin a la web
El programador solitario de antao ha sido reemplazado por un equipo de especialistas de software, cada uno centrado en una parte de la tecnologa requerida para entregar una aplicacin concreta
EL SOFTWARE
El software es un elemento del sistema que es lgico, en lugar de fsico Caractersticas del software:
1. El software se desarrolla, no se fabrica en un sentido clsico
La fase de construccin del hardware puede introducir problemas de calidad que no existen (o son fcilmente corregibles) en el software
2. El software no se estropea
Durante su vida, el software sufre cambios (mantenimiento). Conforme se hacen los cambios, es bastante probable que se introduzcan nuevos defectos. El software se va deteriorando debido a los cambios
Analisis de Sistemas - U.N.P. 10
3. Aunque la industria tiende a ensamblar componentes, la mayora del software se construye a medida
A medida que la disciplina del software evoluciona, se crea un grupo de componentes de diseo estndar. La reutilizacin de componentes hace que el ingeniero pueda concentrarse en los elementos de diseo que representan algo nuevo.
11
12
Software de tiempo real: El software que coordina, analiza, controla sucesos del mundo real conforme ocurren, se denomina de tiempo real. Aquellos que responden a informacin recibida del entorno externo. Software de gestin: El proceso de la informacin comercial constituye la mayor de las reas de aplicacin del software Software de ingeniera y cientfico: Est caracterizado por los algoritmos de manejo de nmeros. Software empotrado: Reside en memoria de solo lectura y se utiliza para controlar productos y sistemas de los mercados industriales y de consumo
13
Software de computadoras personales: Incluye procesadores de texto, hojas de clculo, los grficos por computadora, multimedia, entretenimientos, gestin de bases de datos, aplicaciones financieras, de negocios y personales y redes o acceso a base de datos externas. Software basado en web: Las pginas web son software que incorporan instrucciones ejecutables. La red viene a ser una gran computadora que proporciona un recurso software casi ilimitado.
14
15
16
8/23/2012
17
18
8/23/2012
19
8/23/2012
20
8/23/2012
21
8/23/2012
22
Mtodos
Procesos
Enfoque de Calidad
23
1- Fase de definicin: se centra sobre el qu. En esta fase se deben identificar qu informacin ha de ser procesada, qu funcin y rendimiento se desea, qu comportamiento del sistema, qu interfaces van a ser establecidas, qu restricciones de diseo existen, y qu criterios de validacin se necesitan para definir un sistema correcto. Por tanto han de identificarse los requisitos clave del sistema y del software.
8/23/2012
24
2- Fase de desarrollo: se centra en el cmo. Durante el desarrollo se intenta definir cmo han de disearse las estructuras de datos, cmo han de implementarse la funcin dentro de una arquitectura de software, cmo han de implementarse los detalles procedimentales, cmo han de caracterizarse las interfaces, cmo ha de traducirse el diseo en un lenguaje de programacin y cmo ha de realizarse la prueba.
8/23/2012
25
3- Fase de mantenimiento: se centra en el cambio que va asociado a la correccin de errores, a las adaptaciones requeridas a medida que evoluciona el entorno del software y a cambios debido a las mejoras producidas por los requisitos cambiantes del cliente.
Durante la fase de mantenimiento se encuentran cuatro tipos de cambios:
8/23/2012
26
8/23/2012
27
Software
Marco de trabajo comn del proceso
Tareas
8/23/2012
28
8/23/2012
30
Definicin de problemas
Desarrollo
8/23/2012
31
8/23/2012
32
8/23/2012
33
Llamado ciclo de vida bsico o modelo en cascada el modelo lineal secuencial sugiere un enfoque sistemtico, secuencial, para el desarrollo del software que comienza en un nivel de sistemas y progresa con el anlisis, diseo, codificacin, pruebas y mantenimiento. Este enfoque en cascada asume que se va entregar un sistema completo una vez que la secuencia lineal se haya finalizado.
8/23/2012
34
Se disea para ayudar al cliente (o al que desarrolla) a comprender los requisitos. En general, no se disea para entregar un sistema de produccin.
8/23/2012
35
3.Modelo DRA
4.Modelos Evolutivos:
Los modelos evolutivos son iterativos. Se caracterizan por la forma en que permiten a los ingenieros del software desarrollar versiones cada vez ms completas del software.
Modelo incremental
El modelo incremental combina elementos del modelo lineal secuencial (aplicados repetidamente) con la filosofa interactiva de construccin de prototipos.
8/23/2012
37
Modelo incremental
incremento 1 Prueba incremento
,
Cdigo Prueba
2." incremento
Diseo
Cdigo
incremento
Anlisis
Prueba
incremento
El modelo incremental entrega el software en partes pequeas pero utilizables, llamadas incrementos. En general, cada incremento se construye sobre aqul que ya ha sido entregado.
8/23/2012
38
Modelo espiral
Proyecto de mantenimiento de productos. Proyecto de mejora de productos. Proyecto de desarrollo de nuevos productos. Proyecto de desarrollo de conceptos.
8/23/2012
39
8/23/2012
40
8/23/2012
41
8/23/2012
42
8/23/2012
43