Práctica 2 - El Proceso de Software
Práctica 2 - El Proceso de Software
Práctica 2 - El Proceso de Software
Período académico:
2019-C2
Fecha de entrega:
Sábado, 18 de mayo 2019
Acción: Concepción
La concepción es el inicio del proyecto, ya sea por una reunión, o alguna conversación que
tuviste con alguien producto de las necesidades de algo. El conjunto de tareas para ésta acción
es:
Desarrollar bien la idea del proyecto y tener claro que es lo que se quiere lograr.
Investigar a que clientes éste proyecto suple sus necesidades.
Conocer el ámbito en que se desarrollaran.
Conocer el ambiente del tipo de cliente al que van dirigidos. Esas son las tareas principales de
la Concepción, conocer el sistema y el ámbito en que se desarrollará.
2. Investigue un poco sobre el PPS y haga una breve presentación que describa los
tipos de mediciones que se pide hacer a un ingeniero individual de software y
la forma en la que pueden usarse para mejorar la eficacia personal.
Es un proceso individual cuyo objetivo es ayudar a los ingenieros en software a medir y mejorar
su productividad personal.
PSP establece un conjunto de mediciones que permiten evaluar y mejorar el proceso de manera
individual. Esos registros se llevan como parte del proceso para capturar la información y
posteriormente realizar el análisis del comportamiento. Como resultado se pueden identificar
las áreas de atención para mejorar los resultados.
El ingeniero debe realizar varias actividades que lo ayudarán a satisfacer las mencionadas
mediciones que evaluarán su calidad y desempeño:
3. Conforme avanza hacia fuera por el flujo de proceso en espiral, ¿qué puede
decirse sobre el software que se está desarrollando o que está en
mantenimiento?
En cada vuelta el producto gana en “madurez” (aproximación al final deseado) hasta que en una
vuelta la evaluación lo apruebe y el bucle pueda abandonarse.
Si, un ejemplo sería para un sistema para una multinacional que posee requerimientos
específicos y amplios, podrías utilizar un modelo para el sistema en general (como el basado en
aspectos) y utilizaríamos otro modelo para las divisiones más pequeñas de software.
5. El modelo de proceso concurrente define un conjunto de "estados”. Describa
con sus propias palabras qué es lo que representan, y después indique cómo
entran en juego dentro del modelo de proceso concurrente.
Inactivo
En desarrollo
Cambios en espera
En evaluación
En revisión
Alcance mínimo
Terminado
La manera en que estos estados interactúan los unos con los otros en el proceso concurrente
puede ser explicado brevemente en el siguiente ejemplo:
El modelado concurrente define una clase de eventos que se ejecutan en la corrección del
modelo de análisis la cual cambiará el estado del proyecto de terminado a en espera.
Desventajas: falta de seguridad, errores de diseño y lógica, la satisfacción del cliente disminuye
proporcionalmente.
7. Vuelva a leer el "Manifiesto para el desarrollo ágil de software” al principio de
este capítulo. ¿Puede pensar en una situación en la que uno o más de los cuatro
"valores” pudieran causar problemas al equipo de software?
Al saber que las condiciones del mercado cambian con rapidez, las necesidades de los usuarios
finales cambian, se generaría un ambiente con problemas iniciando por no definir bien los
requerimientos y para esto se debería ser ágil y responder a esto, pues de lo contrario
estaríamos con un equipo sin control.
9. ¿Por qué un proceso iterativo hace más fácil administrar el cambio? ¿Es iterativo
todo proceso ágil analizado en este capítulo? ¿Es posible terminar un proyecto
en sólo una iteración y aún así conseguir que sea ágil? Explique sus respuestas.
Porque a comparación de otros modelos de procesos tradicionales este tipo iterativo no nos causara
demoras al tener una falla y retornar al inicio del proyecto, sino que como es iterativo se retornara a
verificar una iteración antes.
El capítulo trata de procesos ágiles por consiguiente estos tipos de procesos si son iterativos e
incrementales.
¿Es posible terminar un proyecto en solo una iteración y aun así conseguir que sea ágil?
Dependiendo de las condicionantes y los requerimientos del proyecto si pero teóricamente estos procesos
como Scrum es de un mes natural o hasta de 2 semanas si es necesario.
Generar la importancia del cliente para su software presentando iteraciones las cuales pueda
evaluar y examinar a su gusto.
11. ¿Por qué cambian tanto los requerimientos? Después de todo, ¿la gente no sabe
lo que quiere?
Debido a que las empresas van evolucionando es por que tratan de mejorar y ser más
competentes, tratan de adaptarse a las necesidades de un mercado cambiante entonces las
forma en la que realizan sus servicios debe adaptarse, es por esto que los requerimientos varios
constantemente.
Es muy importante que los requerimientos sean levantados estando es presencia del cliente, y cuando
se tomen decisiones relevantes durante el desarrollo del software, es muy importante que el equipo se
reúna, caso contrario podrían presentarse mal entendidos, si uno dice lo que el otro le dijo pueda ser
que no lo entienda de la manera original y se juegue al teléfono malogrado.
En caso que los desarrolladores estén lejos uno del otro, para comunicarse sobre cosas sencillas o hacer
preguntas, absolver consultas, podrían optar por comunicarse por correo, redes sociales, Skype, que
permiten comunicaciones privadas entre miembros de un grupo.
¡¡Muchas Gracias!!