4.2 Explique por qué
los programas que se desarrollan utilizando el desarrollo evolutivo tienden a
ser difíciles de mantener.
Al tener que hacer cambios puede tener algún efecto
negativo en lo que es la estructura del software
4.3 Explique cómo el modelo en
cascada para el proceso del software y el de construcción de prototipos pueden
encajar en el de proceso en espiral.
El modelo espiral es
ya para sistemas de muchos procesos, se podría incluir características de ambos
modelos para así poder mejorar la calidad del sistema.
4.5 Explique por qué es importante
hacer distinción entre el desarrollo de los requerimientos del usuario y el de
los requerimientos del sistema en el proceso de ingeniería de requerimientos.
Se debe saber cual es
cada cual para que así no presente problemas a la hora de la implementación del
sistema. Los
requerimientos del usuario son las ideas de lo que es el sistema, y los
requerimientos del sistema es mucho más detallado de lo que en realidad es.
4.6 Describa las principales
actividades en el proceso de diseño del software y las salidas de estas
actividades.
1. Diseño arquitectónico
Los subsistemas que forman el sistema y sus relaciones
se identifican y documentan.
2. Especificación abstracta.
Para cada subsistema se produce una especificación abstracta de sus
servicios y las restricciones bajo las cuales debe funcionar.
3. Diseño de la interfaz.
Para cada subsistema se diseña y documenta su interfaz con otros subsistemas. Esta especificación de la interfaz
debe ser inequívoca ya que permite que
el subsistema se utilice sin conocimiento de su funcionamiento.
4. Diseño de componentes.
Se asignan servicios a los
componentes y se diseñan sus interfaces.
5. Diseño de la
estructura de datos.
Se diseña en detalle y especifica la estructura de datos utilizada en la
implementación del sistema.
6. Diseño de algoritmos.
Se diseñan en detalle y especifican los algoritmos utilizados
para proporcionar los servicios.
4.7 ¿Cuáles son los cinco componentes
de un método de diseño? Considere cualquier método que conozca y describa sus
componentes. Evalúe la integridad del método elegido.
l. Un modelo que objetos que muestra las
clases de objetos utilizadas en el sistema y sus dependencias.
2. Un modelo de secuencias que
muestra cómo interactúan los objetos en el sistema cuando éste se ejecuta.
3. Un modelo del estado de
transición que muestra los estados del sistema y los disparadores de las
transiciones desde un estado a otro.
4. Un modelo estructural en el cual se documentan los
componentes del sistema y sus agregaciones.
5. Un modelo de flujo de datos en el que el sistema
se modela utilizando la transformación de datos que tiene lugar cuando se
procesan.
4.12 Históricamente, la introducción
de la tecnología ha causado profundos cambios en el mercado laboral Y, al menos
temporalmente, elimina personas de los puestos de trabajo. Comente si es
probable que la introducción de tecnología CASE avanzada pueda tener las mismas
consecuencias para los ingenieros de software. Si piensa que no es así,
explique por qué no. Si piensa que reducirá las oportunidades de trabajo, ¿es
ético para los ingenieros afectados resistirse, pasivamente o activamente, a la
introducción de esta tecnología?
Pienso que en toda
situación por mas perfecto que sea se va a necesitar ayuda de ser humano y la
tecnología CASE son software por lo tanto los software necesitan mantenimiento
al igual que los convencionales por lo tanto podemos decir que esto puede hasta
aumentar la cantidad de oportunidades de trabajo.