TRABAJO COLABORATIVO 1

PRESENTADO POR DEISSY SALAS ROVIRA LUZ ALEJANDRA MORAN LIZARAZO

TUTOR INGENIERO: JAIRO MARTINEZ BANDA

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA GRUPO Nº 301404_1

PROGRAMA INGENIERIA DE SISTEMAS

CURSO DE INGENIERIA DEL SOFTWARE NOVIEMBRE DE 2010

y así fue que apareció la disciplina de Ingeniería del Software que ya ordenaba los procesos. se tratarán modelos existentes y los pasos de cada uno. junto a una. herramientas. para esas personas con brillante futuro. Con el tiempo aparecieron métodos que tomaban importancia al usuario y cuando el desarrollador y usuario se interrelacionaban obtenían un producto satisfactorio. cuando se les pedía construir un sistema basado en computadora la realización del software. deberes y responsabilidades que cumplir. con derechos. por suerte. etc. . que sólo algunos conocían que a menudo eran programadores solitarios. etc.INTRODUCCION Con el siguiente trabajo se pretende desarrollar un tema importante dentro del proceso de desarrollo de software. Desde la aparición de la computadora el hombre comenzó a programar. esta actividad en sus inicios era como un arte oculto. métodos. que se debían de seguir para obtener software de calidad. reconocida consideración social en el mundo empresarial y. el cual viene a ser introducción a la ingeniería de software. El Ingeniero del Software comienza a ser una profesión implantada en el mundo laboral internacional. llevaba mucho tiempo y donde el cliente tenía poco contacto con el producto y el desarrollador.

abrieron un nuevo mundo de aplicaciones y nuevos niveles de sofisticación de hardware y software los sistemas de tiempo real podían. a cientos e incluso a miles de usuarios La tercera era de la evolución de los sistemas de las computadoras se extiende desde la mitad de la década de los sesenta y continúo más allá de una década.ACTIVIDAD 1: LINEA DE TIEMPO DE LA EVOLUCION DEL SOFTWARE Durante los primeros años de la computadora. En estos primeros años lo normal era que el hardware fuera de propósito general. La cuarta era de la evolución de los sistemas informáticos se aleja de las computadoras individuales y de los programas de computadoras. Esta era se caracterizó también por el establecimiento del software ya se desarrollaba para tener una amplia distribución en un mercado multidisciplinario. el énfasis estaba en expresar algoritmos conocidos eficazmente en algún lenguaje de programación. Losprogramdistribuían para computadoras grandes y para minicomputadoras. en redes globales y locales. A medida que la cuarta generación progresa. La programación de computadoras era un "arte de andar por casa" para el que existían pocos métodos Sistemáticos. Por otra parte. y con un esfuerzo heroico. a menudo resultaban con éxito. cada una ejecutando funciones concurrentes y comunicándose con alguna otra. Las decisiones tomadas por gigantes de la industria tales como Microsoft arriesgan billones de dólares. las comunicaciones digitales de alto ancho de banda y la creciente demanda de acceso “instantáneo” a los datos. La multiprogramación y los sistemas multiusuario introdujeron nuevos conceptos de interacción hombre . el software se contemplada como un añadido. los programadores trataban de hacer las cosas bien. El uso personal era extraño. Los problemas a ser resueltos eran principalmente de una naturaleza técnica.máquina las técnicas interactivas. los avances en los dispositivos de almacenamiento en línea condujeron a la primera generación de sistemas de gestión de base de datos. El sistema. dirigiéndose al impacto colectivo de las mismas y del software. controlando así los procesos y produciendo salidas en mil segundos en lugar de minutos. Potentes maquinas personales controladas por sistemas operativos sofisticados. La industria del software ya es la cuna de la economía del mundo. incremento notablemente la complejidad de los sistemas informáticos. el software se diseña a medida para cada aplicación y tenía una distribución relativamente pequeña La segunda era de la evolución de los sistemas de las computadoras se extiende desde la mitad de la Década de los sesenta hasta finales de los setenta. hasta que los planes comenzaron a romperse y los costes a correr. distribuidas múltiples computadoras. acompañadas por aplicaciones de software avanzadas se han convertido en la norma. El desarrollo del software se realizaba virtualmente sin ninguna planificación. Aún más. supusieron una fuerte presión entre los desarrolladores del software. los sistemas y el software que lo permitían continuaron residiendo dentro de la industria y de la academia. han comenzado a surgir nuevas tecnologías. Las redes de área local y de área global. Las tecnologías orientadas a objetos están desplazando rápidamente los enfoques de desarrollo de software más convencionales en muchas áreas de aplicaciones 1950 1970 1990 Siglo XXI . recoger analizar y transformar datos de múltiples fuentes.

formado por seis fases. Para los capítulos 2 y 3. Este presenta una estructura secuencial. Tras haber traducido el programa a un lenguaje comprensible para el ordenador. Codificación: Es la traducción del diseño a un formato que sea comprensible para la maquina. se procede a la fase de diseño de la arquitectura global del software. Una vez entregado el software al cliente. la fase de mantenimiento comprenderá las actualizaciones y las correcciones de errores que sean necesarias en el programa.Actividad 2. Las etapas que incluye son las siguientes: Ingeniería del Sistema: Analiza características y el comportamiento del sistema al que el software va a formar parte. Análisis: comprende los datos que se van a manejar función. rendimiento y demás. Prueba: comprueba que no se haya producido errores . ya que un error no detectado a tiempo podría perjudicar gravemente la fecha de entrega del software a nuestro cliente. se comprueban los elementos de forma individual y más tarde de manera homogénea. Análisis del sistema Análisis de requisitos de software Diseño Codificación Prueba Mantenimiento Las fases incluyen dentro de sí mismas determinadas tareas que se clasifican de una forma clara el trabajo a realizar. las estructura interna de los programas e interfaces. Una vez se el análisis tanto del sistema como de los requisitos del software demandado por el cliente. Paradigma Ventajas y Desventajas Modelo Lineal o Modelo en Cascada Sugiere un enfoque sistemático. Diseño: aplica 4 características del software: la estructura de los datos. interfaces requeridas. El modelo en cascada no permite retroceder por lo que se hace estrictamente necesario que al final de cada fase el analista o programador verifique y valide todo el trabajo realizado. secuencial para el desarrollo de software. la arquitectura de las aplicaciones. el equipo de trabajo estudiara los paradigmas de la ingeniería del software (Modelos de Proceso de Software) y responderá de manera participativa y organizada a cada uno de los siguientes supuestos: PARADIGMAS DE LA INGENIERIA DEL SOFTWARE Modelo lineal o modelo en cascada.

implementación de un subconjunto de actividades solicitadas. MODELO INCREMENTAL.. Mantenimiento: el software sufre cambios de su vida útil. implicando el inicio del proyecto con altos costos MODELO DRA Paradigma ventajas y desventajas Los ciclos comunes que determinan el proceso de software (mantenimiento. La incertidumbre natural en los comienzos es luego difícil de acomodar.  No todas las utilizaciones son convenientes para este modelo. definición y desarrollo) son ajustables en el software.  Funciona para modelos lineales.  No es muy eficiente para la práctica que notifique la aceptación de nuevas tecnologías porque la aplicación puede perjudicar el cronograma del proyecto. La novedad de este modelo respecto al anterior. No es frecuente que el cliente o usuario final explicite clara y completamente los requisitos. para modelos de evolución e incluso para modelos concurrentes o de ensamblaje de componente.  Notifica a los clientes y desarrolladores expuestos. Es una evolución del modelo de cascada.  Permite la producción del modelo de software a construir.  El problema es distinguir el modelo de desarrollo adecuado para la ingeniería de software que debe adaptarse en el proyecto. para modelos interactivos e increméntales.  Modelo aplicable a la construcción de sistemas de información fácilmente acoplar. o que produzcan cambio a cualquier componente del sistema.  No es apropiado cuando los riesgos altos. viene a suplir el problema de no poder retroceder en las fases de desarrollo del software. es la . Es por tanto un modelo secuencial. realización de toda la función preferida pero que tenga propiedad para mejorar. comienza con el análisis de los requisitos tras el cual se prepara un primer diseño.  El prototipo puede favorecer tres modelos posibles: Explicación de las interacciones hombre –máquina en papel o PC. La ECP (estructura común de proceso) es inalterable y se emplea como base para toda actividad del software. El funcionamiento es muy sencillo. Un error detectado por el cliente puede ser desastroso. Utilización: El software se entrega al cliente y comienza la vida útil del mismo. El cliente debe tener paciencia ya que el software no estará disponible hasta muy avanzado.  El defecto para proyectos considerable que notifica abundantemente procesos humanos. durante este tiempo el cliente detecta errores. Los cambios introducidos durante el desarrollo confunden al equipo profesional en las etapas tempranas del proyecto.

Tras recoger los requisitos tanto del cliente como del sistema.  Reduce costos y aumenta la probabilidad del éxito. El prototipo es una versión reducida del programa completo es una fachada virtual que mostramos al cliente. Este modelo no secuencial basado en la construcción de simuladores o modelos ejecutables de aplicaciones más extensos. la participación directa del cliente en la construcción del software requerido.  El cliente ve funcionando lo que para el es la primera función del prototipo que ha sido construido y puede decepcionarle al indicarle que el sistema aun no ha sido construido. persigue un objetivo principal. Las fases son similares a las del modelo en cascada es necesario un análisis previo de los requisitos tanto del sistema como del cliente.  Exige disponer de las herramientas adecuadas.  Reduce el riesgo de construir productos que no satisfagan las necesidades de los usuarios. Es decir este modelo ofrece la posibilidad de comenzar un diseño. MODELO DE CONSTRUCCIÓN DE PROTOTIPOS. MODELO ESPIRAL. se concibe la arquitectura del sistema y se realiza el diseño del software. Este modelo también no secuencial es algo más complejo que los anteriores aunque incluye un elemento muy útil.introducción de interacciones para bifurcar diseños.  No presenta calidad ni robustez. El modelo en espiral concreta cuatro fases Planificación Análisis-análisis de riesgo Ingeniería (construcción del prototipo) . Que de no ser aprobado por el cliente es rechazado y se comienza con una segunda iteración sin necesidad de realizar un nuevo análisis de requisitos. se construye el producto de ingeniería.  El desarrollo puede caer en la tentación de aumentar el prototipo para construir el sistema final sin tener en cuenta las obligaciones de calidad y de mantenimiento que tiene con el cliente. arquitectura del software. Sin embargo se incluye un elemento hasta ahora no utilizado que consiste en el diseño rápido de un prototipo que se mostrara al cliente para que evalué el trabajo realizado. Pueden realizarse tantas iteraciones como sean necesarias. Paradigma ventajas y desventajas Modelo de Construcción de Prototipos  No identifica el flujo del cicla de vida. se comienza con el diseño rápido del prototipo el diseño final obedece al diseño de previo de pequeños prototipos específicos para funciones individuales.  Una vez identificados todos los requisitos mediante el prototipo. el análisis de riesgos.

verificando que los pedazos pequeños trabajan. una línea a la vez.      Comprender lo requisitos de un producto de tratamiento de texto Desarrollar un componente de corrección ortográfica y gramática avanzado para el procesador de texto Generar un código para un modulo de programa que determine el sujeto. Hay varias relaciones con teoría del caos. Si esta última fase es afirmativo el modelo continuo con la estructura del ciclo de vida clásico. y ser integrados. El modelo del caos fue definido por L. se cubre otra banda de la espiral y se vuelve a la primera fase. Raccoon. del proyecto entero a las líneas individuales del código.B. El comportamiento de un sistema complejo emerge del comportamiento combinado de los bloques de edificio más pequeños. o se debe pensar en pedazos. Entonces se acumulan de allí.S. Modelo del caos es una estructura de desarrollo del software eso amplía modelo espiral y modelo de la cascada. predicado y objeto de una oración El proyecto entero debe ser definido. Supuesto 1. Los sistemas deben ser definidos. Un cambio importante en perspectiva es si los proyectos se pueden pensar en cómo unidades entera. ser puestos en ejecución. Nadie escribe diez de millares de líneas de código en uno que se sienta. Las funciones deben ser definidas. ser puestos en ejecución. y ser integradas. Si el cliente no está satisfecho con el resultado.- Evaluación por el cliente. El modelo del caos sugiere que un bucle de resolución de problemas se puede aplicar en cualquier grado de resolución. se ponen en ejecución y se integran. . ser puesto en ejecución. Los módulos deben ser definidos. y ser integrados. y ser integrado.  El modelo del caos puede ayudar a explicar porqué el software tiende para ser tan imprevisible. ser puestas en ejecución. Indague sobre este modelo y explique la forma en que se aplicaría el modelo para:     MODELO DEL CAOS En el computar. Las líneas del código se definen. Escriben los pedazos pequeños. El modelo del caos observa que las fases del ciclo vital se aplican a todos los niveles de proyectos.

Investigue la literatura y proporcione un resumen de una herramienta típica CASE que soporte DRA. El Adelanto dinámico de utilidades (DRA) es un modelo de proceso del desarrollo del software lineal secuencial que destaca un ciclo de desarrollo extremadamente corto. como mercado libre  Sistema de almacenes  Sistema para tiendas de autoservicio  Sistema para consultar citas medicas Supuesto 3 El modelo DRA a menudo se une a herramientas CASE.  Explica porqué los conceptos de alto nivel tienen gusto arquitectura no puede ser tratado independientemente de líneas bajas del código. Siendo el lenguaje Modelado Unificado (UML) una herramienta CASE especial para el Desarrollo rápido de Aplicaciones. El modelo DRA es una transformación a «alta velocidad» del modelo lineal secuencial en el que se consigue el desarrollo rápido empleando una construcción fundamentada en elementos. Proporciona un gancho para explicar qué hacer después. Supuesto 2 Proponer (4) propuestas de proyectos de desarrollo de software que sean adecuados para construir prototipos. . en términos de estrategia del caos. Justificar las propuestas desde la teoría estudiada adecuados para construir prototipos  Sistema para un negocio de venta por internet.

Editorial: McGraw-Hill.buenastareas.CONCLUSIONES ¿Qué paradigmas de ingeniería del software de los presentados en este capítulo piensa que sería el más eficaz? ¿Por qué? El modelo de métodos formales.pdf .uclm. el producto o el proceso? En definitiva el proceso. Autor: Pressman Roger S.pdf http://www. lo incompleto y la inconsistencia se descubren y se corrigen más fácilmente. Modulo de ingeniería de software WEBGRAFIA http://www. http://alarcos. La ambigüedad.  Nos ayudó a determinar que es un proceso de software  Identificamos los procesos que se pueden aplicar al desarrollo del softwar BIBLIOGRAFIA Libro: Ingeniería del software.inf.es/doc/ISOFTWAREI/Tema03. pero si no tiene un buen proceso de fabricación el producto puede resultar con fallas o errores  Al finalizar este trabajo nos dimos cuenta que la ingeniería del software facilita el control del proceso de desarrollo de software.cl/~visconti/ili236/Documentos/01-IntroISw. ¿Qué es más importante. hablando desde un enfoque de elaboración.utfsm. Cuando se utilizan métodos formales durante el desarrollo.com/ensayos/Ingenieria-De-Software/822962.inf-cr. proporcionan un mecanismo para eliminar muchos de los problemas que son difíciles de superar con paradigmas de la ingeniería del software.  Suministra a los desarrolladores las bases para construir software de alta calidad en una forma eficiente. la meta es el producto.

Sign up to vote on this title
UsefulNot useful