Descarga la aplicación para disfrutar aún más
Vista previa del material en texto
1/4/24, 10:48 BiologiaUniversodad about:blank 1/4 3.1. Explique por qué la entrega e implementación rápidas de nuevos sistemas es con frecuencia más importante para las empresas que la funcionalidad detallada de dichos sistemas. R//: Los nuevos sistemas como son las tecnologías agiles son mucho mas eficientes que otros métodos tomando los requerimientos e inmediatamente poniendo el diseño y la implementación en el centro del desarrollo del software haciendo que la entrega sea mucho más rápida y la corrección de errores sea menos costosa. 3.2. Señale cómo los principios subyacentes a los métodos ágiles conducen al acelerado desarrollo e implementación del software. R//: Al encontrar nuevas formas de desarrollar software mucho más rápidas y eficientes esto lleva a las empresas a utilizar cada vez mas software ya que les permite optimizar el trabajo a un bajo costo de dinero y tiempo con la promesa de mantenimiento continuo. 3.3. ¿Cuándo desaconsejaría el uso de un método ágil para desarrollar un sistema de software? R//: Cuando el proyecto no lo requiere o no lo soporta si se evidencia que este se esta atascando o presentando fallas por el uso de las tecnologías agiles se debe abortar estas y usar una más tradicional. 3.4. La programación extrema expresa los requerimientos del usuario como historias, y cada historia se escribe en una tarjeta. Analice las ventajas y desventajas de este enfoque para la descripción de requerimientos. R//: Al hacer esto se agiliza el proceso del levantamiento de requerimientos, sin embargo, esto puede llevar a que estos sean ambiguos y poco específicos. 1/4/24, 10:48 BiologiaUniversodad about:blank 2/4 3.5. Explique por qué el desarrollo de la primera prueba ayuda al programador a diseñar una mejor comprensión de los requerimientos del sistema. ¿Cuáles son las dificultades potenciales con el desarrollo de la primera prueba? R//: Al escribir las pruebas antes de el desarrollo se puede tener una visión mas clara de que camino tomar al programar y que obstáculos se pueden presentar sin embargo al hacer esto se puede quedar alguna prueba faltante que no se tenga en cuenta por hacerlas antes del desarrollo 3.6. Sugiera cuatro razones por las que la tasa de productividad de los programadores que trabajan en pares llega a ser más de la mitad que la de dos programadores que trabajan individualmente. R//: Al rectificarse el uno al otro los errores se presentan menos. En un atasco se le puede apoyar en el otro para la obtención de ideas. El trabajo se divide haciéndolo menos pesado para los programadores. Fomenta el trabajo en equipo y la comunicación. 3.7. Compare y contraste el enfoque de Scrum para la administración de proyectos con enfoques convencionales basados en un plan, estudiados en el capítulo 23. Las comparaciones deben basarse en la efectividad de cada enfoque para planear la asignación de personal a los proyectos, estimar el costo de los mismos, mantener la cohesión del equipo y administrar los cambios en la conformación del equipo del proyecto. R//: Tradicional: Normalmente se realiza una preasignación de los responsables del proyecto. Se basa en el ordenamiento de las tareas técnicas y sus dependencias. Los hitos suelen estar bastante distanciados y no son regulares. Los costos varían según el tiempo que dure el proyecto Scrum: La autogestión del equipo es uno de los pilares principales de las metodologías ágiles. La prioridad de las tareas las decide el cliente, considerando el valor del ítem en función del resultado final 1/4/24, 10:48 BiologiaUniversodad about:blank 3/4 Son muy regulares y frecuentes, los sprints deben coordinarse para que tengan la misma duración. Los costos son fijos ya que el tiempo no suele variar 3.8. Usted es el administrador de software en una compañía que desarrolla software de control crítico para una aeronave. Es el responsable de la elaboración de un sistema de apoyo al diseño de software, que ayude a la traducción de los requerimientos de software a una especificación formal del software (que se estudia en el capítulo 13). Comente acerca de las ventajas y las desventajas de las siguientes estrategias de desarrollo: a) Recopile los requerimientos para tal sistema con los ingenieros de software y los participantes externos (como la autoridad de certificación reguladora), y desarrolle el sistema usando un enfoque basado en un plan. Ventaja: los requerimientos van a tener mayor solides. Desventajas: esto tomara más tiempo y costos. b) Diseñe un prototipo usando un lenguaje de script, como Ruby o Python, evalúe este prototipo con los ingenieros de software y otros participantes; luego, revise los requerimientos del sistema. Vuelva a desarrollar el sistema final con Java. Ventajas: es un lenguaje bastante robusto y con un gran repertorio de bibliotecas y bastante confiable. Desventajas: la programación y el código suele ser lento y ya se está quedando anticuado. c) Desarrolle el sistema en Java usando un enfoque ágil, con un usuario involucrado en el equipo de diseño. Ventajas: el desarrollo de este va a hacer mucho más rápido y se reducirán los costos. Desventajas: al involucrar a alguien con pocos conocimientos de desarrollo se puede ver afectado los requerimientos. 1/4/24, 10:48 BiologiaUniversodad about:blank 4/4 3.9. Se ha sugerido que uno de los problemas de tener un usuario estrechamente involucrado con un equipo de desarrollo de software es que “se vuelve nativo”; esto es, adopta el punto de vista del equipo de desarrollo y pierde la visión de las necesidades de sus colegas usuarios. Sugiera tres formas en que se podría evitar este problema y discuta las ventajas y desventajas de cada enfoque. R//: No sugerirle ideas al usuario para que no cambie su punto de vista. Tomar cada idea sin descartarla solo hasta el final del proceso. Que sus requerimientos se hagas sin la supervisión de un desarrollador. Ventajas: las ideas tendrán mas la identidad del usuario Desventajas: estas estarán menos especificadas y desarrolladas. 3.10. Con la finalidad de reducir costos y el impacto ambiental del cambio, su compañía decide cerrar algunas oficinas y ofrecer apoyo al personal para trabajar desde casa. Sin embargo, el gerente que introdujo la política no está consciente de que el software se desarrolla usando métodos ágiles, que se apoya en el trabajo cercano del equipo y de la programación en pares. Analice las dificultades que causaría esta nueva política y cómo podría solventar estos problemas. R//: Los principales problemas que se pueden presentar son de la comunicación y el trabajo en equipo. Se pueden solventar con reuniones virtuales y plataformas de desarrollo compartidos como son el Google, colab Google docs, etc.
Compartir