6
INGENIERÍA DE SOFTWARE Cuestionario 1 1. Haciendo referencia a la dist ribución de costos del soft war e ind icados en la Secc ión 1.1.6 , explique por qué es apropiado considerar que el software es más que programas que son ejecutados por los usuarios finales de un sistema. El sof twa re deb e con sid erarse más que un pro grama ya que su des arr oll o deb e bas ars e en especificaciones así como también en un proceso de diseño, desarrollo y evaluación del software  para que este se acomode a las necesidades del cliente, además de que el software no solo es el “progr ama” en si si no que también abar ca toda la docume nt ac n sobr e su desa rr ol lo y documentación que facilite la utilización del software por parte del cliente. 2. ¿Cle s so n las di fe re nc ias entr e el de sarr ol lo de un prod ucto de software ge rico y el desarrollo de un software personalizado? Los ingenieros de software desarrollan productos de software que se venden a un cliente. Existen 2 tipos de software: Productos genéricos. Son sistemas aislados que se venden al mercado abierto a cualquier cliente que le sea posible comprarlos. La organizaci6n que desarrolla el software controla su especificación Productos personalizados. Son sistemas requeridos por un cliente en particular. El contratista de software desarrolla el software especialmente para ese cliente. Las especificacione s son desarrollada s y controladas por la organización que compra el software. Los desarrolladores de software deben trabajar con esas especificacione s. 3. ¿Cuá les son los cu atro atributo s import antes que to dos los pro ducto s de softw are deben tener? Sugiera otros cuatro atributos que pueden ser significativos. Mantenibilida d: el software debe cumplir las necesidades de cambio. Eficiente: Que utilice los recursos necesarios para su funcionamiento adecuado. Amigable: Que tenga una interfaz amigable y de fácil acceso para el cliente. Seguro: Que sea un software que cumpla con las políticas de seguridad que necesite el cliente. 4. ¿Cuál es la diferencia entr e un mod elo del pro ceso del software y un proceso del software? Sugiera dos formas en las que un modelo del proceso del software ayuda en la identificación de posibles mejoras del proceso. Un proceso del software es un conjunto de actividades y resultados asociados que producen un  producto de software, como especificaci ones, desarrollo, validación, y evolución del software, mientras que el modelo de proceso de software es una descripción simplificada de un proceso del software que presenta una visión de ese proceso. Modelo de flujo de trabajo . Muestra la secuencia de actividades en el proceso junto con sus entradas, salidas y dependencias.

c Uestion a Rios

Embed Size (px)

Citation preview

7/16/2019 c Uestion a Rios

http://slidepdf.com/reader/full/c-uestion-a-rios-5633855f847e7 1/6

INGENIERÍA DE SOFTWARE

Cuestionario 1

1. Haciendo referencia a la distribución de costos del software indicados en la Sección 1.1.6,explique por qué es apropiado considerar que el software es más que programas que son

ejecutados por los usuarios finales de un sistema.

El software debe considerarse más que un programa ya que su desarrollo debe basarse en

especificaciones así como también en un proceso de diseño, desarrollo y evaluación del software

 para que este se acomode a las necesidades del cliente, además de que el software no solo es el

“programa” en si sino que también abarca toda la documentación sobre su desarrollo y

documentación que facilite la utilización del software por parte del cliente.

2. ¿Cuáles son las diferencias entre el desarrollo de un producto de software genérico y eldesarrollo de un software personalizado?

Los ingenieros de software desarrollan productos de software que se venden a un cliente.

Existen 2 tipos de software:

Productos genéricos. Son sistemas aislados que se venden al mercado abierto a cualquier cliente que

le sea posible comprarlos. La organizaci6n que desarrolla el software controla su especificación

Productos personalizados. Son sistemas requeridos por un cliente en particular. El contratista de

software desarrolla el software especialmente para ese cliente. Las especificaciones son desarrolladas

y controladas por la organización que compra el software. Los desarrolladores de software deben

trabajar con esas especificaciones.

3. ¿Cuáles son los cuatro atributos importantes que todos los productos de software deben tener?Sugiera otros cuatro atributos que pueden ser significativos.

Mantenibilidad: el software debe cumplir las necesidades de cambio.

Eficiente: Que utilice los recursos necesarios para su funcionamiento adecuado.

Amigable: Que tenga una interfaz amigable y de fácil acceso para el cliente.

Seguro: Que sea un software que cumpla con las políticas de seguridad que necesite el cliente.

4. ¿Cuál es la diferencia entre un modelo del proceso del software y un proceso del software?Sugiera dos formas en las que un modelo del proceso del software ayuda en la identificación deposibles mejoras del proceso.

Un proceso del software es un conjunto de actividades y resultados asociados que producen un producto de software, como especificaciones, desarrollo, validación, y evolución del software,

mientras que el modelo de proceso de software es una descripción simplificada de un proceso del

software que presenta una visión de ese proceso.

Modelo de flujo de trabajo . Muestra la secuencia de actividades en el proceso junto con sus

entradas, salidas y dependencias.

7/16/2019 c Uestion a Rios

http://slidepdf.com/reader/full/c-uestion-a-rios-5633855f847e7 2/6

Modelo de rollacción . Representa los roles de las personas involucrada en el proceso del software y

las actividades de las que son responsables.

5. Explique por qué los costos de pruebas de software son particularmente altos para productosde software genéricos que se venden a un mercado amplio.

Ya que los productos genéricos se desarrollan para un mercado general por lo que deben ser sistemasrobustos y por esta razón se deben realizar pruebas minuciosas antes de sacarlo al mercado por lo

que el costo de pruebas y desarrollo del software son altos en comparación con los costos de las

especificaciones.

6. Los métodos de la ingeniería del software se empezaron a utilizar cuando latecnología CASE estuvo disponible para apoyarlos. Mencione cinco tipos de métodos de ayudaque proporcionen las herramientas CASE.

Módulos de análisis que verifican el modelo del sistema.

Generadores de informes que ayudan a crear la documentación del sistema.

Generador de códigos que automáticamente genera código fuente a partir del modelo del sistema.

Guías de procesos para los ingenieros de software.

Editor de diagramas de diseño.

7. Además de los retos de la heterogeneidad, la rápida entrega y la confianza, identifique otrosproblemas y retos que la ingeniería del software afrontara en el siglo XXI

Interfaz y manejo simple en programas de funciones complejas.

Que el hardware no fuera lo suficientemente potente y funcional para soportar el software.

Que debido a la variedad de software no fueran compatibles con hardware, sistemas operativos o con

otros programas.

Que el software quede obsoleto, por lo que constantemente se debe estar realizando actualizaciones y

mejoras al mismo

8. Comente si los ingenieros profesionales deben atestiguar de la misma forma que los doctores olos abogados

Claro que sí, ya que los ingenieros de software tienen responsabilidades profesionales y sociales por 

lo que la ingeniería de software se debe llevar a cabo dentro de un marco legal y social, por lo que

los ingenieros de software deben comportarse de una forma ética y moral responsable.

9. Para cada una de las clausulas del Código de Ética de la ACM/IEEE que semuestra en la Figura 1.6, sugiera un ejemplo apropiado que ilustre esa clausula

Publico: El software debe ser amigable para que sea de fácil utilización por parte de los usuarios por 

ejemplo un motor de búsqueda de internet como GOOGLE que es de mucha ayuda y fácil de usar.

Cliente y Empleador: El software debe cumplir con los requerimientos del cliente, por ejemplo un

software que maneje la nomina y pago a los empleados de una empresa facilitando este proceso.

7/16/2019 c Uestion a Rios

http://slidepdf.com/reader/full/c-uestion-a-rios-5633855f847e7 3/6

Producto: Un claro ejemplo de ello es el sistema operativo Windows, que generalmente después de

haber suministrado su software al cliente permite la actualización y descarga gratuita de paquetes

que mejoran la funcionalidad y corrigen errores presentes en el producto.

Juicio: El ingeniero de software debe asumir su responsabilidad tanto de manera profesional como

ética y moral.

Gestión: Saber Administrar los tiempos en el desarrollo del producto para poder brindar una

sensación de confianza en sus productos.

Profesión: El ingeniero de software debe ser una persona responsable en el desarrollo y

mantenimiento del producto.

Colegas: Formar sociedades y grupos de apoyo para el desarrollo de software.

Personal: La aparición de nuevas tecnologías de desarrollo de software hace que los profesionales de

desarrollo se mantengan en continua actualización

10. Para contrarrestar al terrorismo, muchos países están planeando el desarrollo

de sistemas informáticos que sigan la pista de un gran número de sus ciudadanos y de susacciones. Desde luego, esto tiene implicaciones sobre la privacidad. Comente la ética dedesarrollar este tipo de sistema

Los ingenieros que desarrollan este tipo de sistemas deben ser muy cuidadosos con la manipulación

de la información que manejan porque esta es información muy delicada por lo que debe ser 

manejada con responsabilidad y total discreción, por lo que las partes involucradas en el desarrollo

del software deben tener un acuerdo de confidencialidad, además los sistemas deben ser seguros y

robustos para que la información no sea accedida por personal no autorizado.

CUESTIONARIO 2

1. Explique qué otros sistemas dentro del entorno del sistema pueden tener efectos no previstosen su funcionamiento.

Dentro de los sistemas hay factores que se escapan de las manos entre los que encontramos factores

como: los desastres naturales, la no compatibilidad de los recursos tecnológicos disponibles con los

requerimientos del sistema. Por último fallas de sistemas internos como descargas eléctricas, mala

instalación y funcionamiento del cableado( Eléctrico o de red).

2. Explique por qué especificar un sistema para ser utilizado por los servicios de emergencia enla gestión de desastres es un problema travieso.

Porque un desastre natural es algo impredecible y no habría especificaciones exactas para dar 

solución a un problema como ese. No podemos saber con exactitud cual es el daño que sufriránuestro sistema. El problema sólo se puede abordar una vez que ha pasado.

3. Mencione la manera en que los sistemas de software utilizados en un automóvil pueden ayudaral desmantelamiento (desechos) del sistema completo.

Todos los programas que interactúan en la funcionalidad de todos los dispositivos de un software, en

este caso el automóvil, como cualquier sistema debe ser constantemente en mantenimiento y

actualizados con el fin de poder acceder a futuras mejoras de los mismos.

7/16/2019 c Uestion a Rios

http://slidepdf.com/reader/full/c-uestion-a-rios-5633855f847e7 4/6

4. Explique por qué es importante presentar una descripción completa de una arquitectura delsistema en una etapa inicial del proceso de especificación del sistema.

Es importante presentar una descripción de la arquitectura del sistema, ya que nosotros como

ingenieros de sistemas estamos involucrados en la especificación del sistema, en la definición de su

arquitectura y en la integración de las diferentes partes para crear el sistema final de una forma

correcta y no haya excesivos cambios en su implementación

5. Considere un sistema de seguridad que es una versión extendida del sistema mostrado en laFigura 2.6, que está pensado para proteger contra (a intrusión y para detectar fuego. Contienesensores de humo, de movimiento y de puertas, videocámaras controladas por computadora,que se encuentran en varios lugares del edificio, una consola de operación donde se informa delestado del sistema, y facilidades de comunicación externa para llamar a los serviciosapropiados como la policía y los bomberos. Dibuje un diagrama de bloques de un posiblediseño de dicho sistema.

6.

Se construye un sistema de detección de inundaciones para avisar de posibles inundaciones enlugares que se ven amenazados por éstas. El sistema incluirá un conjunto de sensores paravigilar el cambio en los niveles del río, vínculos a un sistema meteorológico que proporciona laprevisión del tiempo, vínculos a los sistemas de comunicación de los servicios de emergencia(policía, guardacostas, etc.), monitores de vídeo instalados en lugares específicos, un cuarto decontrol equipado con consolas de operación y monitores de vídeo.Los consoladores pueden acceder a la información de la base de datos y emitir pantallas devídeo. El sistema de base de datos incluye información de los sensores, la ubicación de los sitiosen riesgo y las condiciones de amenaza para estos sitios (por ejemplo, marea alta, vientos del

suroeste, etc.), tablas de las mareas para los sitios costeros, el inventario y localización delequipo de control de inundaciones, detalle de los contactos de los servicios de emergencia,estaciones locales de radio, etc.Dibuje un diagrama de bloques de una posible arquitectura para dicho sistema. Debeidentificar los subsistemas principales y los vínculos entre ellos.

7/16/2019 c Uestion a Rios

http://slidepdf.com/reader/full/c-uestion-a-rios-5633855f847e7 5/6

7. Un consorcio de museos europeos va a desarrollar un sistema multimedia de museo virtual queofrece experiencias virtuales de la Grecia antigua. El sistema debe proporcionar a los usuariosla función de ver modelos 3-D de la Grecia antigua a través de un navegador web estándar ytambién debe apoyar una experiencia de realidad virtual. ¿Qué dificultades políticas yorganizacionales pueden surgir cuando el sistema se instale en los museos que forman elconsorcio

Por una parte, implica que la gente pierda su trabajo, existe el peligro de que los empleados se

resistan a la introducción del sistema. Además el diseño implica un cambio en las formas de trabajo

de los directivos con el fin de adaptarse al sistema informático. Los directivos sienten que su jerarquía en la organización se ve reducida por el sistema. Y los que saben cómo operar el sistema

tienen un gran poder para influir en las decisiones sobre el destino de la empresa.

8. Explique por qué los sistemas heredados pueden ser críticos en el funcionamiento de unnegocio.

Porque es demasiado arriesgado reemplazarlos. Las políticas y procedimientos organizacionales

 pueden depender de este sistema y habría un serio riesgo mayor si el sistema de recambio no

7/16/2019 c Uestion a Rios

http://slidepdf.com/reader/full/c-uestion-a-rios-5633855f847e7 6/6

funcionara adecuadamente. Además, los procedimientos existentes tendrían que cambiar, y esto

 puede molestar a las personas de la organización y causar dificultades

9. Explique por qué los sistemas heredados pueden causar dificultades para las compañías quedesean reorganizar sus procesos de negocio.

Porque estos sistemas no solamente incluyen hardware y software sino también procesos y procedimientos heredados. Antiguas formas de hacer cosas que son difíciles de cambiar porque

dependen de software heredado. Cambios que en una parte del sistema inevitablemente implicarán

cambios en otros componentes

10. ¿Cuáles son los argumentos a favor y en contra para considerar que la ingeniería de sistemases una profesión, como la ingeniería eléctrica o la de software?

Porque hay que considerar que los sistemas forman parte de muchas de las áreas. Y cada una de las

ramas se puede interrelacionar si existe un profesional que sepa dar un buen uso de cada una y la

organice para obtener un producto que vaya en beneficio de la comunidad. El ingeniero en sistemas

además de administrar debe diseñar, validar y mantener todo el conjunto de operaciones relacionadas

al sistema. No se la vería como profesión porque los ingenieros de software deben saber comofunciona también el hardware y sería innecesario otra persona que diga que hacer si tiene a un

ingeniero eléctrico para manipular por ejemplo un sistema de seguridad en el sentido técnico. El de

software únicamente lo implementaría y listo

11. Suponga que es un ingeniero relacionado con el desarrollo de un sistema financiero. Durante lainstalación, descubre que el sistema hará que se prescindan de muchas personas. La gente delentorno le niega el acceso a información esencial para completar La instalación del sistema.¿Hasta dónde debería, como ingeniero de sistemas, verse envuelto en esto? ¿Es responsabilidadsuya completar la instalación como lo estipula el contrato? ¿Debería abandonar el trabajohasta que la organización haya resuelto el problema?

Se vería envuelto en este caso si el jefe no dio la premisa de que esta situación podía ocurrir ya queel ingeniero actúa en base a lo estipulado en el contrato. Tal vez en los requerimientos del sistema no

se contemplaba la posibilidad de despidos con la automatización de ciertos procesos.

Cumpliría con su trabajo acabando la instalación pero esto no lo hace ver como un mal empleado o

compañero que permitió el desempleo de las personas ya que a él no se le informó las consecuencias

que conlleva dicha instalación.

 No debería porque su responsabilidad como buen empleado es mantenerse en la organización y

desarrollo del sistema, y estaría abandonando su trabajo sin ayudarlo a progresar. El problema es

algo que los directivos de la empresa deberían resolver y para esto la presencia del ingeniero también

 podría aportar dando ideas para que no haya que prescindir de los empleados