Práctica 2

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 5

Presentación

Sustentado por
Ronald Sanchez 2017-5325

Periodo Académico
2019-C2

Fecha de Entrega

18/05/2019

Profesor

Ing. Leandro Fondeur

Trabajo
Práctica 2 - El proceso de Software
Práctica 2 - El proceso de Software
Luego de leer los capítulos 2 y 3 del libro de texto (Libro - Ingeniería del Software; un
enfoque práctico 7ma. Edición), subrayar los conceptos centrales e investigar otras fuentes
para ampliar las ideas, realice las siguientes actividades:

1. Trate de desarrollar un conjunto de acciones para la actividad de comunicación.


Seleccione una acción y defina un conjunto de tareas para ella.

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.

En esta parte le explicare las mediciones a consideración en este tipo de procesos y a


su vez la eficacia que dé puede tener a l nivel personal y al nivel profesional para
realizar cualquier proyecto tanto individual como grupal.

Planeación

Esta actividad aísla los requerimientos y desarrolla las estimaciones tanto


del tamaño como de los recursos. Además, realiza la estimación de los defectos (el
número de defectos proyectados para el trabajo). Todas las mediciones se registran en
hojas de trabajo o plantillas. Por último, se identifican las tareas de desarrollo y se crea
un programa para el proyecto.

En sentido general este el modelo para todas las planeaciones para un proyecto
individual en la cual mediante a esto un ingeniero aprenderá de manera autónoma la
forma personal de como planear un proyecto, en lo cual le servirá para cuando se
encuentre en proyectos grupales y tenga siempre un criterio personal por la cual se
sienta más familiarizado.
Diseño de alto nivel

Se desarrollan las especificaciones externas para cada componente que se va a


construir y se crea el diseño de componentes. Si hay incertidumbre, se elaboran
prototipos. Se registran todos los aspectos relevantes y se les da seguimiento.

Así mismo cada ingeniero debe aprender de como poder diseñar un proyecto de alto
nivel de esta manera se encontrará mejor preparado tanto como proyectos pequeños,
tanto como proyectos aún más grandes.

Revisión del diseño de alto nivel

Se aplican métodos de verificación formal para descubrir errores en el diseño. Se


mantienen las mediciones para todas las tareas y resultados del trabajo importantes.

Un ingeniero de manera autónoma investigar diferentes tipos de diseños de proyecto


que sea de dominio público e ir buscando fallas o buscando mejores soluciones a
diferentes problemas que posean ese diseño y/o mejora el mismo, de esta manera
podrá mejorar considerablemente a la hora de diseñar un proyecto desde cero.

Desarrollo

Se mejora y revisa el diseño del componente. El código se genera, revisa, compila y


prueba. Las mediciones se mantienen para todas las tareas y resultados de trabajo de
importancia.

En esta parte de la medición de un ingeniero para este proceso siempre debe estar
comprometido con el proyecto que, aunque pueda fácilmente desenvolverse en las
otras mediciones mencionadas siempre pueden ocurrir imprevisto que puedan
retrasar un proyecto o volverlo mucho más complejo de lo esperado.

Post mórtem

Se determina la eficacia del proceso por medio de medidas y mediciones obtenidas


(ésta es una cantidad sustancial de datos que deben analizarse con métodos
estadísticos). Las medidas y mediciones deben dar la guía para modificar el proceso a
fin de mejorar su eficacia.

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?

Que siempre estarán en evolución a medida que el proceso avanza ya que el


modelo espiral es un enfoque realista para el desarrollo de sistemas y de software
a gran escala. Como el software evoluciona a medida que el proceso avanza, el
desarrollador y cliente comprenden y reaccionan mejor ante los riesgos en cada
nivel de evolución.

4. ¿Es posible combinar modelos de proceso? Justifique su respuesta y dé ejemplos.

Si es posible, el modelo de espiral es un buen ejemplo porque lleva la secuencia del


modelo de cascada, al finalizar el ciclo hay un prototipo y luego empieza
nuevamente haciendo un bucle hasta obtener el software con todos los
requerimientos deseados por el cliente.

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.

Es la representación de un estado que puede cambiar de procedimiento en


cualquier momento y volver a generar un estado si es que el cliente requiere de un
cambio al software de tal manera que puede generar un mismo estado ciertas
cantidad de veces necesarias al requerimiento del cliente.

Y a su vez el modelado concurrente proporciona un panorama apropiado del


estado actual del proyecto. Cada actividad, acción o tarea de la red existe
simultáneamente con otras actividades, acciones o tareas.

6. ¿Cuáles son las ventajas y desventajas de desarrollar software en el que la


calidad no es "suficientemente buena”? Es decir, ¿qué pasa cuando se pone el
énfasis en la velocidad de desarrollo sobre la calidad del producto?

Ventajas: La entrega rápida del software.

Desventajas: la calidad del software puede quedar comprometida, debido a


la agilidad del proceso, entre los cuales se pueden encontrar: errores del
sistema tanto de diseños como lógicos, la insatisfacción del cliente al ver la
calidad más baja de lo esperado entre otras.

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?

Siempre es necesario contar de un contrato con el cliente donde se especifiquen las


características del software que se va a desarrollar, porque después podrían generarse
problemas de inconformidad por parte del cliente, además de esto incluir al cliente en
el proceso de desarrollo del software para poder tener la misma visión que el cliente.
Es muy importante que el equipo tenga que adaptarse a los cambios, pero siempre se
debe tener un plan por si las cosas no resultan bien.

8. Describa con sus propias palabras la agilidad (para proyectos de software).

La agilidad en los proyectos de software consiste en desarrollar el software de la


manera más rápida posible, así poder satisfacer las necesidades del cliente, y así
vez poder realizar un proceso en el cual todos los involucrados interactúen para
concluir de una manera exitosa.

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 aun así conseguir que sea ágil? Explique sus respuestas.

Ya que el trabajo iterativo consiste en planificar diversos bloques temporales, y al


ser entregado al usuario de manera incremental se hace más fácil el control los
errores que pudieran existir y adaptarse a los cambios que ocurran.

Si, por que todos estos procesos descritos se basan en el desarrollo ágil de
software.

No, porque en una sola iteración se entrega una parte del proyecto ya funcional,
pero faltaría revisar los errores o fallas que tenga el software; además completarlo

10. Proponga un "principio de agilidad” más que ayudaría al equipo de ingeniería de


software a ser aún más maniobrable.

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.

12. 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?

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.

También podría gustarte