Download - GESTION DE PROYECTOS INFORMATICOS
El producto software.
Profesora:Yasmin Ruiz
instituto universitario de tecnología de Maracaibo extensión sub región guajira
El producto software (EOG tema2) 1
Objetivos a tratar
Definiremos el producto final de la ingeniería del software: EL SOFTWARE.
Importancia que tiene en la sociedad. Complejidad del desarrollo del mismo. Áreas en las que se aplica. Áreas temáticas de la informática.
El producto software (EOG tema2) 2
Definición de software.
Para nosotros será el conjunto de información: capaz de producir en las maquinas
el comportamiento deseado, de forma eficaz y eficiente,
que los usuarios puedan utilizar el sistema de forma eficiente.
Al que los desarrolladores puedan dar mantenimiento de forma eficaz y eficiente.
El producto software (EOG tema2) 3
La importancia del Software.
Nuestra sociedad depende en gran medida de la informática. Parece impensable que los sistemas informáticos
dejasen de trabajar, ya que son soporte de muchos sistemas.
Ejemplos de sistemas básicos son: el sistema para el control de semáforos ciudad,medios de transporte aéreo, los bancos,los sistemas de producción (fabricas),
hospitales.
El producto software (EOG tema2) 4
Desde la perspectiva histórica, ...
todo esto a pesar de que la informática es una ciencia muy joven (50 años) Los primeros años se centraron en la
construcción de maquinas capaces de dar soporte a estos sistemas.
En la actualidad el Software ha superado al Hardware como clave del éxito de muchos sistemas informáticos.
El producto software (EOG tema2) 5
Además aun queda mucho por hacer.
Empresas, de todo tipo, plantean nuevos problemas a ser resueltos. Problemas inabordables hace unos
años por el coste de los ordenadores, Por otra parte la ciencia sigue
evolucionando, con lo que problemas mas sofisticados pueden ser abordados con las técnicas de la Inteligencia Artificial, comunicaciones, multimedia, etc.
El producto software (EOG tema2) 6
¿Porque es difícil desarrollar Software?
Es complicado explicar los motivos que hacen tan difícil desarrollar Software.
Lo cierto es que muchos proyectos de desarrollo de software fracasan
El producto software (EOG tema2) 7
Características 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 están
formados por miles de funciones con interfaces complejas entre ellas.
Es excesivamente maleable.
El producto software (EOG tema2) 8
El Software se desarrolla, no se fabrica.
En cualquier sistema de producción podemos observar dos fases la de desarrollo y la de fabricación.
El desarrollo es lento y costoso.La fabricación en serie y con costes estables.
Con el Software ocurre lo mismo pero ...Muchas aplicaciones se desarrollan a
medida, sin usar componentes existentes.
El producto software (EOG tema2) 9
El software es excesivamente maleable.
Todo el mundo exige que se realicen cambios sobre el Software como respuesta a pequeños cambios del entorno.
Además no es fácil comprender su comportamiento, según Pressman:
El producto software (EOG tema2) 10
Clasificaciones del software desde diversos puntos de
vista: La utilización que se hace de el. El tratamiento comercial que tiene. En relación con la funcionalidad que
aporta a la maquina. Exigencia en eficiencia y los factores
críticos que se le exigen.
El producto software (EOG tema2) 11
Según la utilización del software:
De Gestión. Producción y control de procesos. Robótica. De ingeniería y Científico. Ofimático. de Formación y divulgación. Domótica. Ocio y Juegos.
El producto software (EOG tema2) 12
De Gestión.
Se trata del software que da soporte a los procesos comerciales y manejo de información que tienen por objetivo permitir a las gestiones una mejor gestión.
El producto software (EOG tema2) 13
Producción y control de procesos.
Es el software que da soporte a los procesos productivos y conducentes a desarrollar las actividades propias de cada negocio.
El producto software (EOG tema2) 14
Robótica.
Software que se centra en controlar y automatizar el comportamiento de engendros mecánicos que colaboran con los seres humanos en diversos campos, desde la ortopedia hasta la exploración de otros planetas.
El producto software (EOG tema2) 15
De ingeniería y Científico.
Da soporte a los procesos creativos y de diseño de las personas, se caracteriza por cálculos matemáticos complejos. Ejemplo de ello son las herramientas CAD o el soporte a seguimiento de acontecimientos en el espacio (Telescopios, etc.)
El producto software (EOG tema2) 16
Ofimático.
Software que permite a las personas utilizar los ordenadores en las tareas que habitualmente se realizan en oficinas.
El producto software (EOG tema2) 17
de Formación y divulgación.
Software que tiene por objetivo el transferir conocimientos al ser humano, en esta categoría entran toda la creación de cursos, simuladores,…
El producto software (EOG tema2) 18
Domótico.
Software que se utiliza para controlar el hábitat del ser humano, a pequeña escala. Va desde las alarmas hasta el control de temperaturas de un hogar.
El producto software (EOG tema2) 19
Ocio y Juegos.
En esta categoría entran un gran conjunto de aplicaciones que tienen por objetivo el que el ser humano pase algo de tiempo disfrutando con los ordenadores. Están muy difundidos los videojuegos, pero también deberíamos incluir los foros y conferencias que se puedan plantear en Internet, etc.
El producto software (EOG tema2) 20
En relación con la funcionalidad que aporta a la
maquina: Software de sistemas, Comunicaciones, Empotrado, De usuario.
El producto software (EOG tema2) 21
Software empotrado.
El producto software (EOG tema2) 22
Exigencia en eficiencia y los factores críticos que se le
exigen. Software de tiempo real, Transaccional, Monousuario y PC.
El producto software (EOG tema2) 23
Abstracción
Dadas diversas realidades, se analizan y se extrae el conocimiento Se aventuran hipótesis, Se construyen modelos, Se realizan predicciones, Se llevan a cabo experimentos, Se obtienen resultados, Se demuestra que la hipótesis era correcta.
El producto software (EOG tema2) 24
Diseño
Es la forma de trabajar en la ingeniería. Se obtienen los requisitos, Se obtienen las especificaciones, se prepara e implementa el diseño, se prueba y evalúa el diseño realizado.
El producto software (EOG tema2) 25
El contexto social
La sociedad reclama unas pautas de comportamiento para los informáticos, los productos que crean y el uso que se hace de la información que manejan.
Consideraciones: Eticas Legales
El producto software (EOG tema2) 26
Proceso para el desarrollo de software
Un proceso para el desarrollo de software, también denominado ciclo de vida del desarrollo de software es una estructura aplicada al desarrollo de un producto de software.
27
Actividades del desarrollo de software Planificación
La importante tarea a la hora de crear un producto de software es obtener los requisitos o el análisis de los requisitos.
Una vez que se hayan recopilado los requisitos del cliente, se debe realizar un análisis del ámbito del desarrollo. Este documento se conoce como especificación funcional.
28
Implementación La implementación es parte del proceso en el que los ingenieros
de software programan el código para el proyecto.
pruebas Las pruebas de software son parte esencial del proceso de
desarrollo del software. Esta parte del proceso tiene la función de detectar los errores de software lo antes posible.
documentación La documentación del diseño interno del software con el objetivo
de facilitar su mejora y su mantenimiento se realiza a lo largo del proyecto. Esto puede incluir la documentación tanto interna como externa.
29
Despliegue El despliegue comienza cuando el código ha sido
suficientemente probado, ha sido aprobado para su liberación y ha sido distribuido en el entorno de producción.
mantenimiento
El mantenimiento y mejora de un software puede requerir más tiempo que el desarrollo inicial del software. Es posible que haya que incorporar código que no se ajusta al diseño original con el objetivo de solucionar un problema o ampliar la funcionalidad para un cliente. Si los costes de mantenimiento son muy elevados puede que sea oportuno rediseñar el sistema para poder contener los costes de mantenimiento.
30
Plan de fase
En la ingeniería del software el término fases de desarrollo expresa cómo ha progresado el desarrollo de un software y cuánto desarrollo puede requerir.
Cada versión importante de un producto pasa generalmente a través de una etapa en la que se agregan las nuevas características (etapa alfa), después una etapa donde se eliminan errores activamente (etapa beta), y finalmente una etapa en donde se han quitado todos los bugs importantes (etapa estable).
31
Alpha / Alfa
Es la primera versión del programa, la cual es enviada a los verificadores para probarla.
Algunos desarrolladores utilizan el término alfa informalmente para referirse a una fase donde un producto todavía es inestable, aguarda todavía a que se eliminen los errores o a la puesta en práctica completa de toda su funcionalidad, pero satisface la mayoría de los requisitos.
32
BetaUna versión beta o lanzamiento beta representa generalmente la primera versión completa del programa informático o de otro producto, que es posible que sea inestable pero útil para las de inspección previa
Esta etapa comienza a menudo cuando los desarrolladores anuncian una congelación de las características del producto, indicando que no serán agregadas más características a esta versión y que solamente se harán pequeñas ediciones o se corregirán errores.
Las versiones beta Los desarrolladores lanzan el producto a un grupo de probadores beta (a veces el público en general) para una prueba de usuario. Los probadores divulgan cualquier error que encuentran y características, a veces de menor importancia, que quisieran ver en la versión final
33
Versión candidata a definitiva (RC)
Una versión candidata a definitiva, candidata a versión final o candidata para el lanzamiento, comprende un producto final, preparado para publicarse como versión definitiva a menos que aparezcan errores que lo impidan.
En esta fase el producto implementa todas las funciones del diseño y se supone que se encuentra libre de cualquier error.
34
Versión de disponibilidad general (RTM)
La versión de disponibilidad general (también llamada "dorada") de un producto es la versión final. Normalmente es casi idéntica a la versión candidata final, con sólo correcciones de última hora.
Esta versión es considerada muy estable y relativamente libre de errores con una calidad adecuada para una distribución amplia y usada por usuarios finales.
35
Desarrollo iterativo y creciente (o incremental)
El modelo consta de diversas etapas de desarrollo en cada incremento, las cuales inician con el análisis y finalizan con la instauración y aprobación del sistema.
Los pasos claves en el proceso son:
comenzar con una implementación simple de los requerimientos del sistema, e iterativamente
mejorar la secuencia evolutiva de versiones hasta que el sistema completo esté implementado.
En cada iteración, se realizan cambios en el diseño y se agregan nuevas funcionalidades y capacidades al sistema.
36
Concepto de desarrollo iterativo y creciente
Se planifica un proyecto en distintos bloques temporales que se le denominan iteración. En una iteración se repite un determinado proceso de trabajo el cual brinda un resultado más completo para un producto final, de forma de que quien lo utilice reciba beneficios de este proyecto de manera creciente.
cada requerimiento debe tener un completo desarrollo en una única iteración que debe de incluir pruebas y una documentación para que el equipo pueda cumplir con todos los objetivos que sean necesarios y esté listo para ser dado al cliente. Así se evita tener riesgosas actividades en el proyecto finalizado.
Lo que se busca es que en cada iteración los componentes logren evolucionar el producto dependiendo de los completados de las iteraciones antecesoras.
37
Ciclo de vida
Básicamente este modelo se basa en dos premisas:
Los usuarios nunca saben bien que es lo que necesitan para satisfacer sus necesidades.
En el desarrollo, los procesos tienden a cambiar.
El proceso en sí mismo consiste de:
Etapa de inicialización
Etapa de iteración
38
Etapa de inicialización
Se crea una versión del sistema. La meta de esta etapa es crear un producto con el que el usuario pueda interactuar, y por ende retroalimentar el proceso. Debe ofrecer una muestra de los aspectos claves del problema y proveer una solución lo suficientemente simple para ser comprendida e implementada fácilmente. Para guiar el proceso de iteración se crea una lista de control de proyecto, que contiene un historial de todas las tareas que necesitan ser realizadas.
Etapa de iteración
Esta etapa involucra el rediseño e implementación de una tarea de la lista de control de proyecto, y el análisis de la versión más reciente del sistema.
39