Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Cuál Es El Objetivo de La Etapa de Ing
Cuál Es El Objetivo de La Etapa de Ing
¿Cuál es
la Estructura de su salida?
Los objetivos y requisitos operacionales de mayor detalle son identificados gracias a la información
facilitada por el cliente. Los requisitos son analizados para valorar su claridad, completitud y
consistencia. Finalmente, los requisitos del sistema son gestionados para asegurar que los cambios se
controlan adecuadamente.
El producto final obtenido por la ingeniería de sistemas es una representación global del sistema. Se
puede realizar a través de un prototipo, una especificación o, incluso, un modelo simbólico, debiendo
comunicar la operativa, la funcionalidad y las características de comportamiento del sistema que se va
a construir o modificar e incorporarlo dentro del modelo que llamamos: proceso de negocio.
3. Liste las tres Actividades que se desarrollan en la Etapa de Análisis. Desarrolle cada una.
MODELADO
Los modelos se crean para entender mejor la entidad que se va a construir. El conjunto de modelos
que se obtienen con la etapa de análisis se denomina: Modelo de Análisis.
Debe ser capaz de modelar la información que transforma el software, las funciones que permiten que
ocurran las transformaciones y el comportamiento de sistema cuando ocurren estas transformaciones.
El proceso de modelado convierte los requisitos, sólo listados en la etapa anterior, en especificación de
requisitos.
ESPECIFICACION DE REQUISITOS
Se produce en la culminación de la tarea de análisis. La función y rendimiento asignados al software
como parte del sistema se refinan estableciendo una completa descripción de la información, una
descripción detallada de la función y el comportamiento, una indicación de los requisitos de rendimiento
y restricciones del diseño, criterios de validación apropiados y otros datos pertinentes a los requisitos.
Luego de determinados los requisitos en la Etapa de Ingeniería de Sistemas, esta Etapa comienza la
especificación de los mismos con el modelado y concluye con la creación de la Carpeta de
Especificación de Requisitos que contiene el Modelo de Análisis.
REVISION Y VALIDACION
La revisión es llevada a cabo tanto por el desarrollador del software como por el cliente. Como la
especificación forma el fundamento para el diseño y las subsiguientes actividades de la ingeniería, se
debería poner extremo cuidado al realizar esta actividad o proceso.
Inicialmente la revisión se lleva a cabo a nivel macroscópico. A este nivel, los revisores intentan
asegurarse que la especificación sea completa, consistente y correcta cuando la información general,
funcional y de los dominios del comportamiento son considerados. Asimismo, una exploración completa
de cada uno de estos dominios, la revisión profundiza en el detalle, examinando no solo las
descripciones superficiales, sino la forma en la que los requisitos fueron especificados.
Una vez que se ha completado la revisión, se firma la especificación de requisitos por el cliente y el
desarrollador. La especificación se convierte en un “contrato” para el desarrollo de software. Las
peticiones de cambios en los requisitos una vez que se ha finalizado y firmado la Carpeta de
Especificación, no se eliminarán o desecharán, pero el cliente debe saber que cada cambio a posteriori
significa una ampliación del ámbito del sistema, y por tanto, pueden aumentar los costos y prolongar
los plazos de planificación temporal del proyecto inicial.
Para lograr estos objetivos, el modelo de análisis producido durante el análisis estructurado contiene
los siguientes componentes.
DD: Diccionario de Datos: Se encuentra en el centro del modelo, es su núcleo. Es un almacén que
contiene definiciones de todos los objetos de datos consumidos y producidos por el software. Contiene
la especificación de los flujos de datos, elementos de dato, almacenes, etc.
de
Es Proc
s
pe es
tos eto
ci f o
Da e Obj
i ca ( E
cio P)
Diagrama Diagrama
d
ne
de Flujo
ión
de
sd
de
ipc
Entidad
e
Datos
scr
Relación Diccionario
De
de Datos
Diagrama de Transición
de Estados
Especificaciones de
Control (EC)
DFD – Diagrama de Flujo de Datos: Sirve para dos propósitos: (1) proporcionar una indicación de
cómo se transforman los datos a medida que se avanzan en el sistema, y (2) representar las funciones
que transforman el flujo de datos. El DFD proporciona información adicional que se usa durante el
análisis del dominio de información y sirve como base para el modelado de función.
DTE – Diagrama de Transición de Estados: Indica cómo se comporta el sistema como consecuencia
de sucesos externos. Para logra esto, el DTE representa los diferentes modos de comportamiento
(llamados estados) del sistema y la manera en que se hacen las transiciones de estado a estado. Sirve
como la base del modelado de comportamiento.
5. Desarrolle la Etapa de Mantenimiento (objetivos, tipos) y Ejemplifique cada uno de los tipos de
Mantenimiento.
Durante la fase de mantenimiento encontramos cuatro tipos de cambios en el software.
D
Mantenimiento Correctivo, Definición.
El mantenimiento correctivo cambia el software para corregir los defectos.
D
Mantenimiento Adaptativo, Definición.
El mantenimiento adaptativo produce modificaciones en el software para acomodarlo a los cambios de
su entorno.
6. ¿Cuáles son las generalidades y elementos de cada Etapa Genérica de Desarrollo de Software?
Seleccione una y desarrolle.
1. Objetivos.
2. Protagonistas con distintos roles.
3. Herramientas y Métodos.
4. Procesos y Procedimientos.
5. Documentación.
HERRAMIENTAS Y METODOS
Las herramientas y métodos, en general, suelen ser las mismas pero cada empresa de desarrollo
elegirá un conjunto propio y seguramente utilizará herramientas particulares. Las herramientas son
independientes del proceso, y por naturaleza, no pertenecen a ninguno de ellos, por el contrario una
herramientas puede ser utilizada en distintos procesos de desarrollo, al igual que los métodos.
7. ¿Qué es un Modelo de Proceso? ¿Para qué sirve? ¿Por qué surgen varios modelos?
Los modelos de proceso son muy importantes ya que las fases genéricas de desarrollo por sí solas no
son suficientes, hacen falta estrategias de aplicación para ellas, hace falta un modelo de proceso que
permita aplicarlas de manera exitosa.
Para resolver problemas reales de una industria, los ingenieros deben incorporar una estrategia de
desarrollo que acompañe al proceso de las fases genéricas, los métodos y capas de herramientas como
así también la calidad. Esta estrategia se llama modelo de proceso o paradigma de ingeniería de
software. Cada modelo representa un intento por ordenar una actividad inherentemente caótica. Es
importante recordar que cada uno de los modelos se ha caracterizado de forma que ayuden (con
esperanza) al control y la coordinación de un proyecto de software real. Y a pesar de eso, en el fondo,
todos los modelos exhiben características del “Modelo del Caos”.
Cada modelo de proceso que surgió desde aquellos años propuso estrategias distintas para el
desarrollo de software. Estas estrategias hacían que la configuración de los modelos de proceso
propuestos para el desarrollo de software se distinguiera el uno del otro. Cada cual ponía énfasis en
distintos detalles. Algunos modelos se centraron en las características del cliente, otros en los riesgos
del producto de software, otros surgieron como propuestas especializadas para sistemas de gran
escala, otros al contrario, en sistemas pequeños, otros se centraron en la calidad del producto y así las
diferencias siguen.
LINEALES O SECUENCIALES
Aplican las fases genéricas de forma lineal o también llamada secuencial. Significa que no se puede
iniciar una fase antes de concluir la otra. Y, luego de concluir una fase, ésta se da por terminada y no
se prevé volver hacia atrás.
Suponen una entrega de producto cuando éste ha sido completamente desarrollado y probado.
Son los primeros modelos aparecidos en la industria y son esencialmente caóticos y desastrosos. Sin
embargo, algunas pequeñas modificaciones sobre alguno de ellos, hoy por hoy, resultan muy
prometedoras.
ITERATIVOS EVOLUTIVOS
Parten de una filosofía centrada en la evolución y suponen que un producto siempre se puede mejorar
y no es posible entregar al cliente un producto sobre el que se diga: “está completamente concluido”.
La evolución hace que primero se llegue a una primera versión del software y luego, a través de
sucesivas iteraciones que aplican las fases genéricas de desarrollo de software una y otra vez, se van
consiguiendo nuevas y renovadas versiones del mismo producto que incluyen mejoras y nuevas
funciones.
La característica de iterativos, permite aplicar las fases genéricas una y otra vez al mismo producto
obteniendo así versiones nuevas con funciones que la versión anterior no contenía.
ITERATIVOS INCREMENTALES
Los modelos incrementales apuntan al desarrollo del producto final. La entrega contiene todas las
funciones requeridas, es un producto concluido funcionalmente.
Luego, las iteraciones sucesivas irán potenciando las nuevas versiones pero sin el agregado de nuevas
funciones, más bien perfeccionan la primera versión.
Esta filosofía indica que cualquier nueva función del producto lo transforma en otro producto, y no en
una nueva versión.
Los modelos incrementales obtienen en cada iteración un producto más potente o versiones más
potentes de un mismo producto.
Los modelos evolutivos obtienen en cada iteración un producto más funcional al usuario o una versión
con más funciones.
MODELO DE CASCADA
El mayor problema con el modelo de cascada Este modelo es posible prescribirlo sólo para el
es que no refleja la manera en que realmente desarrollo de sistemas muy pequeños, donde
se hace el desarrollo del código. Excepto para exista muy poco riesgo y los requisitos sean
los problemas perfectamente comprendidos, el perfectamente definibles por desarrollador y
software se desarrolla normalmente con un alto cliente. Es también indicado para productos de
grado de repetición. sistemas ampliamente conocidos,
generalmente de nivel transaccional
Aunque según su autor, está creado para el (facturación, stock, proveedores, clientes,
desarrollo de grandes sistemas [ROY70], la impuestos y bancos, ventas, compras, etc).
evolución de los procesos de software hace que
El Desarrollo Rápido de Aplicaciones (DRA) es atributos, de cada uno de los objetos y las
un modelo de proceso para el desarrollo de relaciones entre estos objetos. El modelado de
productos de software lineal secuencial que datos, coincide perfectamente con el modelado
enfatiza un ciclo de desarrollo extremadamente de datos propuesto por las fases genéricas.
corto. El modelo DRA es una adaptación de
“alta velocidad” del modelo de cascada en el Modelado de Procesos. Los objetos de datos
que se logra el desarrollo rápido utilizando una definidos en la fase de modelado de datos
construcción basada en componentes. quedan transformados para lograr el flujo de
información necesario para implementar una
Si se comprenden bien los requisitos y se limita función de gestión. Las descripciones del
el ámbito del proyecto, el proceso DRA permite proceso se crean para añadir, modificar,
al equipo de desarrollo crear un “sistema suprimir o recuperar un objeto de datos.
completamente funcional” dentro de períodos
cortos de tiempo que van de los 60 a los 90 días
[MAR91]1.
c. FASES PROPUESTAS
2. Modelado de Gestión.
3. Modelado de Datos.
4. Modelado de proceso.
5. Generación de aplicaciones.
6. Pruebas y Entrega.
La filosofía del prototipado es que cliente y cliente (por ejemplo enfoques de entrada y
desarrollador se entiendan con un modelo de formatos de salida).
sistema, inoperable, que muestre
prácticamente todas las interfaces de entrada y El diseño rápido lleva a la construcción de un
salida (o por lo menos las más importantes). De prototipo, también llamado maqueta. El
esta forma el desarrollador puede comprender prototipo es evaluado por cliente y usuario y se
bien lo que el sistema debe hacer para utiliza para refinar los requisitos del producto a
transformar entradas en salidas. Luego que los desarrollar.
requisitos fueron comprendidos, recién se
comienza con el desarrollo del producto real. El La primera iteración ocurre cuando el prototipo
prototipo se desecha después que el nuevo se pone a punto para satisfacer las
sistema está en operación. necesidades del cliente, permitiendo al mismo
tiempo que el desarrollador comprenda mejor lo
El uso y aplicación de prototipado ha cambiado que necesita hacer.
con el tiempo. Aunque el modelo de prototipos
ha sido comprendido como modelo en su La puesta a punto del prototipo significa que se
época, hoy sabemos que no reviste las completa con los procesos internos para la
características de un modelo, ya que, de la conversión de entradas en salidas.
forma en que se lo describe, sólo interviene en
una etapa o fase de otro modelo y sólo sirve Tomado de esta forma, el prototipado es
para el descubrimiento de los requisitos. fundamentalmente un modelo iterativo
incremental.
Lo que sucede es que el desarrollador jamás
estará de acuerdo en tirar a la basura un trabajo
ya realizado que, supuestamente, puede
reciclar y continuar sobre él la construcción del Construir y
sistema definitivo. Por otro lado, el cliente no Revisar
Escuchar al Maqueta
estará de acuerdo que se cambie la idea inicial Cliente
contenida en el prototipo, al cliente le gusta lo
que ya está hecho y no concibe pagar para que
se haga de nuevo, a lo que se le agrega, que
no comprende aún por qué eso que “ve” es
inoperable e inutilizable.
El Cliente
Prueba la
Ambas fuerzas (cliente y desarrollador), con el Maqueta
tiempo, han convertido el prototipado en un
completo modelo con serios riesgos. Figura 3: Modelo de Construcción de
Prototipos.
El modelo de prototipado surge con la
necesidad de reducir los riesgos que plantea la c. ETAPAS
comunicación insuficiente entre cliente y
desarrollador, pero si no se lo complementa, El modelo trabaja iterativamente en dos etapas
más que facilitarla, la confunde. Siendo así, hay con varias iteraciones cada una:
que observar el prototipado como una técnica
que colabora con algún modelo de proceso, En una primera etapa refina la
más que como un modelo. comunicación cliente/desarrollador
b. FASES PROPUESTAS completando los requisitos del cliente y
El modelo de prototipado comienza con la usuarios, una vez completada la vista
recolección de requisitos. El desarrollador y el externa del producto.
cliente encuentran y definen los objetivos
globales para el software, identifican los La siguiente etapa que se logra con
requisitos conocidos y las áreas del esquema otras varias iteraciones, completa la
en donde es obligatoria más definición. operatoria interna de procesos que
Entonces aparece un “diseño rápido” con la convertirán entradas en salidas. Esta
escucha del cliente. El diseño rápido se centra mecánica se aplica una y otra vez
en una representación de esos aspectos del hasta que el producto está en
software que serán visibles para el usuario y el operación completa.
Es incremental porque, por lo general, se entiende y pide que se apliquen “unos
trabaja sobre el producto de forma completa, es pequeños ajustes” para que se pueda
decir, sobre la totalidad de requisitos hacer del prototipo un producto final.
funcionales. Cada iteración completa De forma demasiado frecuente la
solamente los requisitos definidos inicialmente gestión del proyecto es demasiado
y no agrega otra función al producto. lenta para lograr lo que el cliente pide.
d. VENTAJAS Y
DESVENTAJAS El desarrollador, a menudo, hace
Un cliente, a menudo, define un conjunto de compromisos de implementación
objetivos generales para el software, pero no (poner en operación el producto) para
identifica los requisitos detallados de entrada, hacer que el prototipo funcione
proceso o salida. rápidamente. Sin embargo, lo que
sucede siempre es que se utiliza para
En otros casos el responsable del desarrollo la construcción del prototipo un sistema
puede no estar seguro de la eficacia de un operativo o lenguaje de programación
algoritmo, de la capacidad de adaptación, o de inadecuado simplemente porque está
la forma en que debería tomarse la interacción disponible y porque es conocido; un
hombre máquina. En estas y otras muchas algoritmo eficiente se puede
situaciones, un modelo de construcción de implementar simplemente para
prototipos puede ofrecer el mejor enfoque. demostrar la capacidad o, el desarrollo
de las interfaces entre la capa de
Lo ideal sería que el prototipo sirviera sólo para presentación (interfaces de usuario) y
la identificación de requisitos, sin embargo, la la capa de recursos (bases de datos)
construcción de prototipos suele ser resulta doblemente trabajoso porque
problemática por las siguientes razones: es sólo un prototipo y no se desarrolló
con el lenguaje que tuviera en cuenta
El cliente ve lo que parece ser una estas interfaces. Después de algún
versión final del producto, sin tener tiempo, el desarrollador debe
conocimiento de que el prototipo familiarizarse con estas selecciones, y
también está junto con “el chiclé y el olvidarse de las razones por las que
cable de embalar”, sin saber que con la son inadecuadas. La consecuencia es
prisa de hacer que funcione no se ha que la selección más inapropiada
tenido en cuenta la calidad del producto ahora es una parte integral del sistema.
global o la facilidad de mantenimiento a
largo plazo. Cuando se informa que el
producto se debe construir otra vez
para que puedan mantener los niveles
altos de calidad, el cliente no lo
MODELO INCREMENTAL
Incremento 1
Ingeniería de Sistemas
de Información
Pruebas y Entrega del 1º
Análisis Diseño Código
Entrega Incremento
Tiempo Calendario