UNIVERSIDAD NACIONAL DE LOJA ÁREA DE LA ENERGÌA LAS INDUSTRIA Y LOS RECURSOS NATURALES NO RENOVABLES
CARRERA DE INGENIERIA EN SISTEMAS MÓDULO IX RESOLUCIÓN DE LAS PREGUNTAS DEL CAPÍTULO 3 – PRESSMAN PRESSMAN RESPONSABLE: Soraya Lara Tapia DOCENTE: Ing. Franco Salcedo PARALELO: “B” FECHA: 27/01/2015 1. Léase de nuevo el "Manifiesto para el desarrollo ágil de software" al principio de este capítulo. ¿El lector puede pensar en una situación en la que uno o más de los cuatro "valores" pueda meter a un equipo de software en problemas? Es necesario que en el contrato estipulado con el cliente, se especifique las características que tendrá el software a desarrollar, esto se debe hacer porque se pueden dar complicaciones futuras de inconformidad con el cliente, por lo cual se considera necesario la intervención del cliente en el proceso del desarrollo del software y así tener la misma visión del cliente. Además cada integrante del equipo debe adaptarse a los cambios, por p or lo cual siempre debe existir un plan B. 2. Descríbase agilidad (para proyectos de software) con palabras propias. La agilidad para proyectos de software se basa principalmente en la habilidad para adaptarse a los constantes cambios en procesos dentro de una organización, un grupo ágil auto organizado permite un desempeño orientado al crecimiento mediante una buena comunicación, planeación, modelado y entregas iterativas. iterativas. 3. ¿Por qué un proceso iterativo facilita más manejar el cambio? ¿Todos los procesos ágiles tratados en este capítulo son it erativos? ¿Es posible concluir un proyecto en sólo una iteración y aún así seguir siendo ágil? Explíquense las respuestas. Por qué en cada iteración se puede replantear el problema y además darle una mejoría al proceso haciendo que este evolucione y se oriente a cumplir la especificación del cliente y expectativas del cliente. Los procesos ágiles permiten la evolución de sistemas, un sistema para que pueda permanecer y subsistir debe estar abierto a cambios y extensiones que permitan su supervivencia o prolonguen su esperanza de vida. 4. ¿Podría cada uno de los procesos ágiles describirse recurriendo a las actividades genéricas del marco de trabajo mencionado en el capítulo 2? Constrúyase una tabla que coloque las actividades genéricas dentro de las actividades definidas para cada proceso ágil. Constrúyase una tabla que coloque las actividades genéricas dentro de las actividades definidas para cada proceso ágil. Las actividades del proceso general tiene una gran similitud con el proceso ágil, salvo en que esta última existe la evolución o interacción y además está diseñada para sistemas de gran envergadura.
5. Trátese de idear un "principio de agilidad" adicional que pudiera ayudar a un equipo de ingeniería del software a volverse aún más manejable. La validación y verificación facilitaría el testeo de datos (si so n correctos) de entrada y salida (es esto lo que realmente se requiere o demanda) de información del sistema. 6. Selecciónese un principio de agilidad de los enunciados de la sección 4.1 y trátese de determinar si cada uno de los modelos de proceso presentados en este capítulo muestran el principio. La simplicidad – es el arte de maximizar la cantidad de trabajo no realizado - es esencial. Simplificar sus procesos al máximo y adoptar una política minimalista. La prioridad más alta es satisfacer al cliente a través de la entrega pronta y continua de software valioso. Este principio si esta presente en estos modelos de procesos pues necesariamente tenemos que entregar avances de software que funcione y de igual manera su pronta entrega. 7. ¿Por qué cambian tanto los requisitos? Después de todo. ¿la gente no sabe lo que quiere? El mercado es salvaje en cierto modo, felizmente existen foros, gurús, tiendas y claro el buen concejo y experiencia de los amigos, un día podría estar de moda los celulares y al día siguiente podría estar de moda los tabletas, de ellas nace la necesidad emergente de comunicación, o contenido, creo que lo mejor es tratar de simplificar las cosas y trazarse los fines y luego evaluar qué requisitos cumplen con la mayoría de las expectativas, La gente solo sabe que tiene que surgir, trabajando día a día hasta que pueda sentirse satisfecha con su labor. 8. La mayoría de modelos de proceso ágil recomiendan la comunicación cara a cara. No obstante, los miembros del equipo de software y sus clientes tal vez estén alejados geográficamente. ¿Piensa usted que esto implica que debe evitarse la separación geográfica? ¿Se le ocurren formas de resolver este problema? La separación geográfica no debe de ser un impedimento en la comunicación y en la retroalimentación en el desarrollo del software, pero tampoco podemos mantener alejados a los clientes con los desarrolladores. Es por ello que hoy en día la tecnología presentan programas que nos permitirán comunicarnos sin importar la distancia entre ellos tenemos: SKYPE, MSN, FACEBOOK, TWITTER, etc. Los cuales nos permiten realizar videoconferencias en línea y así mantenerse comunicados. 9. Escriba una historia de usuario XP que describa la característica de “lugares favoritos” o “marcadores” disponible en la mayoría de navegadores web.
10. ¿Qué es una solución en punta en XP? La Solución en Punta XP es un prototipo operativo de diseño desarrollado para disminuir el riego cuando se inicie la implementación, debido a problemas presentados en la fase de diseño del software. 11. Describa con sus propias palabras los conceptos de rediseño y p rogramación en parejas de XP. El rediseño puede surgir en el momento en que nos damos cuenta que los sistemas que utilizamos en nuestra empresa ya no cumplen con todos los objetivos por los que habían sido formalizados,
lo primero que pensamos es solucionar el problema, quizá ideando adquirir un nuevo sistema, pero muchas ocasiones el rediseño es una mejor opción. Primeramente es importante identificar el nivel de usabilidad del sistema, lo que se refiere a la capacidad de un software de ser comprendido, aprendido, usado y ser atractivo para el usuario, en condiciones específicas de uso. Esto beneficia en la reducción de costos de asistencia, aprendizaje y ayuda al usuario, así como en la mejora de la calidad de vida de los usuarios, ya que reduce su estrés e incrementa la satisfacción y productividad del nuevo sistema que se va a construir. La programación en parejas resulta ser muy satisfactorio al momento de analizar, diseñar y construir un sistema, ya que permite establecer las funcionalidades de dicho sistema de forma sencilla y planificar las actividades en cada uno de los procesos de construcción rápidamente ya que al trabajar en un grupo pequeño de solo 2 integrantes, es màs fácil repartir el trabajo. 12. Haga otras lecturas y describa lo que es una caja de tiempo. ¿Cómo ayuda a un equipos DAS para que entregue incrementos de software en un corto periodo? Una caja de tiempo en un desarrollo adaptativo de software supone un tiempo límite de entrega de las iteraciones del proyecto. Ayuda al equipo de desarrollo a evaluar los tiempos destinados a cada iteración y así hacer más efectivas las entregas al cliente. 13. ¿Se logra el mismo resultado con la regla de 80% del MDSD y con el enfoque de la caja de tiempo del DAS? Si se logra el mismo resultado debido a que esta propone la regla de Pareto: 80 por ciento de una aplicación puede entregarse en 20 por ciento del tiempo que tomaría entregarla completa. Esto propone hacer las entregas en menos tiempo del que se plantearía la entrega total.
14. Con el formato de patrón de proceso presentado en el capítulo 2, desarrolle uno para cualquiera de los patrones Scrum presentados en la sección 3.5.2. ● Nombre del patrón: sprint ● Fuerzas: Lugar donde haremos las tareas del trabajo ● Tipo: ➢ Patrón de Etapa: Adaptación y modificación del problema ➢ Patrón de Tarea: Definir los requerimientos. ➢ Patrón de Fase: Modelos del trabajo. ● Contexto Inicial: Planeación y comunicación de la tarea. ● Problema: Ocurrencias estructurales de las tareas ● Solución: adaptar los problemas y modificarlos. ● Contexto Resultante: Será eficaz en proyectos de plazos de entrega muy apretados 15. ¿Por qué se le llama a Cristal familia de métodos ágiles? Es porque este fue creado con el fin de obtener un enfoque de desarrollo de software que premia la maniobrabilidad, también es un conjunto de ejemplos de procesos ágiles que han demostrado ser efectivos para todo tipo de proyectos. Además es una forma de compartir recursos limitados y comunicación con un objetivo único el cuales entregar software que funcione, siendo esta familia efectiva para diferentes tipos de proyectos. 16. Con el formato de característica DIC descrito en la sección 3.5.5, defina un conjunto de características para un navegador web. Luego desarrolle un conjunto de características para el primer conjunto.
el un
Navegador Web: ● Mejora la velocidad de otros navegadores. ● Actualiza su versión para ser más óptimo. ● Tiene vistas interactivas a diferencia de otros. 3.17. Visite el sitio oficial de modelación ágil y elabore la lista completa de todos los principios fundamentales y secundarios del MA. Principios fundamentales: ● Aceptar el cambio ● Cambio Incremental ● Modelo con un propósito ● Modelos Múltiples ● Trabajo de Calidad ● Retroalimentación rápida ● Trabajo Software es su objetivo principal Principios secundarios: ● Comunicación abierta y honesta ● El Contenido es más importante que la representación ● Conocer las herramientas 18. El conjunto de herramientas propuestas en la sección 3.6 da apoyo a muchos de los aspectos “suaves” de los métodos ágiles. Debido a que la comunicación es tan importante, recomiende un conjunto de herramientas reales que podría utilizarse para que los participantes de un equipo ágil se comuniquen mejor. ● Herramientas de comunicación electrónica que envían mensajes, archivos, datos o documentos entre personas y facilitan la compartición de información (colaboración asíncrona), como por ejemplo: ➢ Correo electrónico. ➢ Correo de voz. ➢ Publicación en web. ● Herramientas de conferencia que facilitan la compartición de información, de forma interactiva (colaboración síncrona), como por ejemplo: ➢ Conferencia de datos PC en red que comparten un espacio de presentación compartido que cada usuario puede modificar. ➢ Conferencias de voz teléfono que permiten interactuar a los participantes. ➢ Conferencias de video (o audio conferencia) PC en red que comparten señales de audio o video. ➢ Salas de chat o mensajería instantánea una plataforma de discusión que facilita el intercambio inmediato de mensajes. ➢ Sistemas para facilitar reuniones un sistema de conferencias integrado en una sala. Estas salas suelen disponer de un avanzado sistema de sonido y presentación que permite una mejor interacción entre participantes en una misma sala o entre salas separadas. Ejemplos de ello son los sistemas de soporte a decisiones.