trabajo de sistemas de software

22
SISTEMAS DE SOFTWARE - GER_INF PRESENTADO A ING: EDUARDO RUEDA FAJARDO TRABAJO REALIZADO POR JHON JAIRO PÉREZ DIAZ UNIVERSIDAD REMINGTON ESPECIALIZACION EN GERENCIA INFORMATICA SAN JOSÉ DE CÚCUTA 2015

Upload: jhonjairoperez

Post on 23-Feb-2017

338 views

Category:

Presentations & Public Speaking


0 download

TRANSCRIPT

Page 1: Trabajo de sistemas de software

SISTEMAS DE SOFTWARE - GER_INF

PRESENTADO A

 ING: EDUARDO RUEDA FAJARDO

TRABAJO REALIZADO PORJHON JAIRO PÉREZ DIAZ

UNIVERSIDAD REMINGTON ESPECIALIZACION EN GERENCIA INFORMATICA

SAN JOSÉ DE CÚCUTA2015

Page 2: Trabajo de sistemas de software

Según Sommerville (2005), para muchas personas el software son solo programas de computadora, sin embargo nos comenta que son todos aquellos documentos asociados a la configuración de datos que se necesitan para hacer que estos programas operen de manera adecuada. Estos productos de software se desarrollan para algún cliente en particular o para un mercado en general. Para el diseño y desarrollo de proyectos de software se aplican metodologías, modelos y técnicas que permiten resolver los problemas. En los años 50 no existían metodologías de desarrollo, el desarrollo estaba a cargo de los propios programadores. De ahí la importancia de contar con analistas y diseñadores que permitieran un análisis adecuado de las necesidades que se deberían de implementar. 

Modelos o Metodologías en la IS

Page 3: Trabajo de sistemas de software

La informática aporta herramientas y procedimientos que se apoyan en la ingeniería de software con el fin de mejorar la calidad de los productos de software, aumentar la productividad y trabajo de los ingenieros desarrolladores de software, facilitar el control del proceso de desarrollo de software y suministrar a los desarrolladores las bases para construir software de alta calidad en una forma eficiente,El objetivo principal que busca la ingeniería de software es convertir el desarrollo de software en un proceso formal, con resultados predecibles, que permitan obtener un producto final de alta calidad y satisfaga las necesidades y expectativas del cliente.

Page 4: Trabajo de sistemas de software

Una parte importante de la ingeniería de software es el desarrollo de metodologías y modelos. En la actualidad ha habido muchos esfuerzos que se han encaminado al estudio de los métodos y técnicas para lograr una aplicación más eficiente de las metodologías y lograr sistemas más eficientes y de mayor calidad con la documentación necesaria en perfecto orden y en el tiempo requerido. Existen diferentes modelos y metodologías que han sido en los últimos años herramientas de apoyo para el desarrollo del software. Someerville (2005), menciona que:• Modelo de desarrollo de software: es una representación simplificada del proceso para el desarrollo de software, presentada desde una perspectiva específica. 

• Metodología de desarrollo de software: es un enfoque estructurado para el desarrollo de software que incluye modelos de sistemas, notaciones, reglas, sugerencias de diseño y guías de procesos.

Page 5: Trabajo de sistemas de software

Modelos para el desarrollo de software

 Un modelo para el desarrollo de software es una representación abstracta de un proceso. Cada modelo representa un proceso desde una perspectiva particular y así proporcione información parcial sobre el proceso. Éstos modelos generales no son descripciones definitivas de los procesos del software más bien son abstracciones de los procesos que se pueden utilizar para el desarrollo del software. Puede pensarse en ellos como marcos de trabajo del proceso y que pueden ser adaptados para crear procesos más específicos. Los modelos que mencionaremos son seis:

Page 6: Trabajo de sistemas de software

Fue un modelo propuesto en los años 70 (Winston Royce), cuyos principios se basan en que el proyecto de software se divide en fases (análisis, diseño, desarrollo, pruebas, implementación), que deben ser secuenciales y hasta que no se termine la fase es imposible dar inicio a la siguiente. El desarrollo de dicha metodología, debe basarse en la planificación de todo el proyecto desde principio a fin, estableciendo tiempos, presupuestos y personal, ya que ante un error es difícil devolverse a fases anteriores. Se conoce como cascada haciendo alusión a una caída de agua.

1. El modelo en cascada

Page 7: Trabajo de sistemas de software

Ventajas.Realiza un buen funcionamiento en equipos débiles y productos maduros, por lo que se requiere de menos capital y herramientas para hacerlo funcionar de manera óptima. Es un modelo fácil de implementar y entender. Está orientado a documentos. Es un modelo conocido y utilizado con frecuencia. Promueve una metodología de trabajo efectiva: Definir antes que diseñar, diseñar antes que codificar.

Desventajas En la vida real, un proyecto rara vez sigue una secuencia lineal, esto crea una mala implementación del modelo, lo cual hace que lo lleve al fracaso. El proceso de creación del software tarda mucho tiempo ya que debe pasar por el proceso de prueba y hasta que el software no esté completo no se opera. Esto es la base para que funcione bien. Cualquier error de diseño detectado en la etapa de prueba conduce necesariamente al rediseño y nueva programación del código afectado, aumentando los costos del desarrollo. Una etapa determinada del proyecto no se puede llevar a cabo a menos de que se haya culminado la etapa anterior.

Page 8: Trabajo de sistemas de software

2. Modelo incremental

Es un modelo basado en la metodología anterior que consiste en trabajar por fases utilizando mini-cascada (análisis, diseño, desarrollo, pruebas), revisando el proceso para determinar si se va bien hasta ese momento, donde en la siguiente evolución e incremento de requerimientos, se inicia nuevamente con la cascada. Ver video sobre Modelo incremental, donde se muestra de forma gráfica, cada una de sus fases, ventajas y desventajas para la construcción de productos de software.

Page 9: Trabajo de sistemas de software

VENTAJAS

En este modelo los usuarios no tienen que esperar hasta que el sistema completo se entregue para hacer uso de él. El primer incremento cumple los requerimientos más importantes de tal forma que pueden utilizar el software al instante.

Los usuarios pueden utilizar los incrementos iniciales como prototipos y obtener experiencia sobre los requerimientos de los incrementos posteriores del sistema.

Existe muy pocas probabilidades de riesgo en el sistema. Aunque se pueden encontrar problemas en algunos incrementos, lo normal es que el sistema se entregue sin inconvenientes al usuario.

Ya que los sistemas de más alta prioridad se entregan primero, y los incrementos posteriores se integran entre ellos, es muy poco probable que los sistemas más importantes sean a los que se les hagan más pruebas. Esto quiere decir que es menos probable que los usuarios encuentren fallas de funcionamiento del software en las partes más importantes del sistema.6

Page 10: Trabajo de sistemas de software

DESVENTAJAS

En el desarrollo de este modelo se da la retroalimentación muy temprano a los usuarios.

Permite separar la complejidad del proyecto, gracias a su desarrollo por parte de cada iteración o bloque.

El producto es consistente y puntual en el desarrollo.

Los productos desarrollados con este modelo tienen una menor probabilidad de fallar.

Se obtiene un aprendizaje en cada iteración que es aplicado en el desarrollo del producto y aumenta las experiencias para próximos proyectos.

Page 11: Trabajo de sistemas de software

3. Prototipo

Consisten en una metodología, permite realizar versiones Demos, con el fin de mostrarle al cliente posiblemente el tipo de producto que se le va a construir. Normalmente un prototipo no es funcional, en el sentido que no cubre requerimientos del software por no ser definitivo. Actualmente es muy utilizado para levantar requerimientos, ya que le da una idea al cliente de lo que posiblemente puede esperar del producto definitivo. Ver video sobre Modelo de Prototipo, donde se muestra de forma gráfica, cada una de sus fases, ventajas y desventajas para la construcción de productos de software.

Page 12: Trabajo de sistemas de software

Ventajas

Este modelo es útil cuando el cliente conoce los objetivos generales para el software, pero no identifica los requisitos detallados de entrada, procesamiento o salida.También ofrece un mejor enfoque cuando el responsable del desarrollo del software está inseguro de la eficacia de un algoritmo, de la adaptabilidad de un sistema operativo o de la forma que debería tomar la interacción humano-máquinaSe puede reutilizar el código.

Page 13: Trabajo de sistemas de software

Desventajas

El usuario tiende a crearse unas expectativas cuando ve el prototipo de cara al sistema final. A causa de la intención de crear un prototipo de forma rápida, se suelen desatender aspectos importantes, tales como la calidad y el mantenimiento a largo plazo, lo que obliga en la mayor parte de los casos a reconstruirlo una vez que el prototipo ha cumplido su función. Es frecuente que el usuario se muestre reacción a ello y pida que sobre ese prototipo se construya el sistema final, lo que lo convertiría en un prototipo evolutivo, pero partiendo de un estado poco recomendado.

En aras de desarrollar rápidamente el prototipo, el desarrollador suele tomar algunas decisiones de implementación poco convenientes (por ejemplo, elegir un lenguaje de programación incorrecto porque proporcione un desarrollo más rápido). Con el paso del tiempo, el desarrollador puede olvidarse de la razón que le llevó a tomar tales decisiones, con lo que se corre el riesgo de que dichas elecciones pasen a formar parte del sistema final...

Page 14: Trabajo de sistemas de software

4. Modelo Espiral

El modelo espiral, significó una gran evolución para dichas metodologías, ya que se incorporan elementos como la evaluación de cada proceso, donde se tienen en cuenta los riesgos que pueden afectar el proceso de ingeniería de software. Dicha metodología divide el proyecto en segmentos y trabaja en forma de espiral, permitiendo la evaluación de dichos riesgos en cada iteración, donde pasa por diferentes fases que corresponden a un mismo ciclo como son: en primer lugar la determinación de los objetivos, alternativas, y desencadenantes de la iteración; en segundo lugar la Evaluación de alternativas que permite identificar y resolver los riesgos; en tercer lugar el desarrollo y verificación de los resultados de la iteración, y en cuarto lugar el plan de la próxima iteración o vuelta del espiral. El conjunto de fases se repite ciclo a ciclo hasta que termine todo el proceso de construcción. Ver video sobre Modelo espiral, donde se muestra de forma gráfica, cada una de sus fases, ventajas y desventajas para la construcción de productos de software.

Page 15: Trabajo de sistemas de software

Ventajas

El análisis del riesgo se hace de forma explícita y clara. Une los mejores elementos de los restantes modelos.

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

Además es posible tener en cuenta mejoras y nuevos requerimientos sin romper con la metodología, ya que este ciclo de vida no es rígido ni estático.

Desventajas

Genera mucho tiempo en el desarrollo del sistema Modelo costoso Requiere experiencia en la identificación de riesgos

Page 16: Trabajo de sistemas de software

5. Modelo RUP (Proceso Unificado de Rational)

Es un modelo recoge elementos de los anteriores, creado finalizando los años 90, muy utilizado actualmente en la creación de productos de software, que contiene un proceso de estructuración orientado especialmente hacia la construcción de productos con orientación a objetos, dando una dinámica diferente a la forma de desarrollar software. El RUP se apoya en el Lenguaje Unificado de Modelado (UML), constituido como la metodología estándar más utilizada en el análisis, implementación, documentación de los sistemas orientados a objetos. El RUP, permite que cada organización adapte su metodología acorde a las necesidades de construcción. Las fases que maneja dicho modelo son: Inicio: (Documento visión, especificación de requisitos). Elaboración: (Diagramas de caso de uso) Construcción: (Documento arquitectura que trabaja con las siguientes vistas: Vista Lógica (Diagrama de clases, Modelo Relacional para el manejo de datos) Vista de Implementación (Diagrama de Secuencia, Diagrama de estados, Diagrama de Colaboración) Vista Conceptual (Modelo de dominio) Vista física (Mapa de comportamiento a nivel de hardware.) Transición: (Disponible para los usuarios finales, ajustar los errores y defectos encontrados en las pruebas de aceptación, capacitar a los usuarios y proveer el soporte técnico) Ver video sobre Modelo RUP, donde se muestra de forma gráfica, cada una de sus fases, ventajas y desventajas para la construcción de productos de software.

Page 17: Trabajo de sistemas de software

Ventajas del Modelo RUP

Es el proceso de desarrollo más general de los existentes  actualmente. Es una forma disciplinada de asignar tareas y responsabilidades en  una empresa de desarrollo (quién hace qué, cuándo y cómo).Ventajas del Modelo RUPEs el proceso de desarrollo más general de los existentes  actualmente. Es una forma disciplinada de asignar tareas y responsabilidades en  una empresa de desarrollo (quién hace qué, cuándo y cómo).

Page 18: Trabajo de sistemas de software

Modelo XP (Programación Extrema) Se orienta hacia procesos ágiles para la construcción de productos informáticos, con alta adaptabilidad a la previsibilidad, ya que considera que los cambios durante el proceso son incontrolables en el sentido de que siempre van a aparecer, por lo tanto el modelo permite incorporarlos en cualquier etapa del proceso de ingeniería del software. Este modelo considera la programación por pares lo que significa que para una misma actividad, se debe disponer do dos personas, siendo además indispensable el acompañamiento del cliente durante su desarrollo, considerando que es él quien tiene el conocimiento de cómo se realiza el proceso. Ver video sobre Modelo XP, donde se muestra de forma gráfica, cada una de sus fases, ventajas y desventajas para la construcción de productos de software.

Page 19: Trabajo de sistemas de software

Ventajas   Programación organizada.   Menor taza de errores.   Satisfacción del programador.   Solución de errores de programas   Versiones nuevas   Implementa una forma de trabajo donde  se adapte fácilmente a las

circunstancias .

Desventajas  Es recomendable emplearlo solo en proyectos a corto plazo Altas comisiones en caso de fallar Imposible prever todo antes de programar Demasiado costoso e innecesario

Page 20: Trabajo de sistemas de software

  ARGUMENTO

Windows XP es la versión con más características, por ejemplo, para el uso en equipos domésticos o caseros, sin más nada que para hacer tareas sencillas como escuchar música redactar documentos, ver videos y cositas simples que no ameritan manejo de redes de computadores además cada versión incluía más herramientas y porque no decirlo, más controles por cualquier falló imprevisto que se pudiera suceder con el paso del tiempo, mejor manejo para redes de varios equipos, e integración en redes de dominios.Windows, siempre ha sido una gran herramienta de sistema operativo para todos aquellos que no tienen mucha idea del mundo de la informática y de moverse a través de otros sistemas operativos que estén en el mercado, para adentrarse a Internet a través de ellos, ya en su momento nos pusimos muchos de todos nosotros hacer cursos para aprender a manejar Windows, que luego con las mejoras, ya se ha visto que a uno no le hace falta hacer ningún curso para saber manejar este sistema operativo que cada vez las cosas se han ido mejorando hasta el punto que su interfaz ya nos indica todo lo que tenemos que hacer y donde meternos para hacer unas cosas u otras. Por mi parte, hasta que pueda conocer un poco más como manejarme por otros sistemas operativos iguales o mejores que este del Windows xp, y hasta que me obliguen ya del todo ha cambiarme a nuevas versiones de Windows (que por intentarlo ya lo intentan obligándonos a comprar los ordenadores con las nuevas versiones posteriores al xp, que siguen sin tener tanto éxito como este del que os he hablado), de momento seguiré utilizando este sistema operativo, hasta que llegue alguna de esas cosas a mi vida.El mejor es de Windows xp 

Page 21: Trabajo de sistemas de software

Porque

- Es una metodología ligera de desarrollo de software que se basa en la simplicidad, la comunicación y la realimentación del código desarrollado. - Surgió como respuesta y posible solución a los problemas derivados del cambio en los requerimientos. - Se plantea como una metodología a emplear en proyectos de riesgos.

- Aumenta la productividad

- Programación organizada, menor taza de errores, satisfacción del programador.  - Soluciona errores de programas, versiones nuevas  Implementa una forma de trabajo donde  se adapte fácilmente a las circunstancias .

Page 22: Trabajo de sistemas de software