Está en la página 1de 7

Ingeniería de software

Actividad 2

Unipanamericana Fundación Universitaria


Facultad de Ingeniería
Ingeniería de sistemas
Bogotá 2020
1. A partir de la lectura de la sección 2.11 de la tesis doctoral de José Luis Cendejas
Valdés y utilizando un editor de texto como Microsoft Office Word, redacte un
documento en el cual dé respuesta, con sus palabras, a cada uno de los siguientes
interrogantes:

 ¿Cómo eran los procesos de desarrollo de software antes de la década del 70?
El proceso de desarrollo implicó una lucha y crecimiento constante a lo que se conoce
hoy en día; Retomando un poco la historia al comienzo las labores de desarrollo se
ejecutaban de manera “arcaica”, dando a este término el hecho de no tener en claro
liberación o publicación del mismo, ni planeación de las actividades requeridas para
alcanzar el objetivo, por lo cual el desarrollador era autónomo en aplicar la técnica o
estrategia propia; Otro factor relevantes se enfoca hacia la documentación del código y
del software, por lo cual el mantenimiento u operación del mismo se tonaba tedioso.

Es de resaltar el hecho de la complejidad en la que se estructuraban los códigos de los


software, más aún por el hecho que al principio no se reconocía la ingeniería del
software como columna vertebral de los sistemas, por el contrario se le asociaba como
parte del Hardware de los equipos.

• ¿Existe diferencia entre un modelo para desarrollo de software y una


metodología para desarrollo de software o son lo mismo?

Los dos términos se relacionan entre sí, pero realmente cada uno cumple con una
característica primordial; El modelo define la estructura general del desarrollo en si las
partes que lo componen, mientras que la metodología corresponde a la manera como
se desarrollará el software.

• ¿Cómo se relacionan los modelos para desarrollo de software con las


metodologías para el desarrollo de software?

Es en la relación de estos conceptos que se puede alcanzar los objetivos trazados,


dado que uno es el camino alcanzar la meta, y el otro son la formas como se puede
llegar; Para el caso del desarrollo de software en la primera parte se encuentra el
esquema general con sus partes, y en la segunda la manera que se va a utilizar para
cumplir con el requerimiento, los cuales han venido evolucionando con el fin de
optimizar tiempos y reducir costos de operación.

• ¿Por qué es importante conocer los modelos para desarrollo de software?

El fin del desarrollo es cumplir con una necesidad particular o global de un usuario (s)
final, apoyado de métodos que clarifique la ejecución en cada una de las etapas
correspondientes (requerimientos, diseño, desarrollo, prueba, implantación y
mantenimiento), por lo cual es importante conocer los modelos de desarrollo no solo
por la ejecución, si no a la vez ofrece a los participantes o involucrados en el mismo a
tener un panorama general de las actividades y entregas, permitiendo tomar medidas
en caso de alguna falla u falencia del mismo, a la vez que se convierte en oportunidad
de mejora en caso de que aplique.

• ¿Cuáles son las principales características de los modelos para desarrollo de


software presentados en el documento?

 Lograr el objetivo planteado


 Implementar modelos que se ajusten tanto a los equipos de desarrollo, como a
los propósitos de las compañía
 Fomentar el uso de algún modelo en el desarrollo del software.
 Optimizar tiempos y costos de operación y desarrollo.
 Brindar alternativas a los usuarios y equipos de software.
 Dar a conocer a las compañía o corporaciones, los diferentes caminos que se
pueden utilizar para llegar a cumplir con lo solicitado.

2. Realice una consulta que le permita establecer si existen otros modelos para
desarrollo de software aparte de los mencionados en la lectura. Dentro del mismo
documento en el cual respondió las preguntas del punto anterior, incluya la
explicación acerca de si existen (y cuáles son) o no otros modelos para desarrollo
de software.

Existen otros modelos para el desarrollo de software, a continuación se citan algunos


de ellos.

a. Desarrollo iterativo y creciente o Iterativo e Incremental:

Este tipo de modelo se aplica para los desarrollos de programación extrema,


en la cual se liberan programas de manera incremental, de esta manera se
puede mejorar la funcionalidad del mismo, a la vez que permite corrección de
errores en los códigos liberados; Inicia en la fase del análisis y finaliza en la
etapa de aprobación del sistema.

Se caracteriza por incluir interacciones, lo cual corresponde a distintos bloques,


dichas interacciones se repiten en cada ciclo del desarrollo, permitiendo aplicar
mejoras de manera creciente del software.

b. RAD (Desarrollo de aplicaciones rápidas)

Permite del desarrollo ágil y rápido basado en componentes, implica


implementar los usos principales, dejando de lado los secundarios, de esta
manera se logra liberar el desarrollo en un corto tiempo; Para lograr lo anterior
es indispensable comprender bien los requisitos para que los desarrolladores
logren el objetivo en un tiempo corto.

Es de resaltar que los lenguajes utilizados componentes de programación ya


existentes o crear componentes reutilizables, en cualquier caso se utiliza
herramientas automáticas para facilitar el desarrollo del software.

c. Desarrollo concurrente

Se distingue por la utilización de casos de uso, debido a que hace uso de


interacciones incrementales y por ser interactivo e incremental, puede ser
adaptable a proyectos específicos u organizaciones.
Este método se caracteriza por contar con 4 fases: Inicio, Elaboración,
Construcción y Transición, cada una de ellas se divide en una serie de
interacciones, cada una de ellas añade o adiciona nuevas funcionalidades al
sistema en desarrollo.

d. RUP (Proceso unificado relacional )

Se distingue por la utilización de casos de uso, debido a que hace uso de


interacciones incrementales y por ser interactivo e incremental, puede ser
adaptable a proyectos específicos u organizaciones.

Este método se caracteriza por contar con 4 fases: Inicio, Elaboración,


Construcción y Transición, cada una de ellas se divide en una serie de
interacciones, cada una de ellas añade o adiciona nuevas funcionalidades al
sistema en desarrollo.
1

3. Dentro del mismo documento en el que ha desarrollado los dos puntos anteriores,
construya una tabla en la cual establezca similitudes y diferencias entre los modelos
para desarrollo de software presentados en la lectura. Puede utilizar un modelo de
tabla como el siguiente:

Característica Modelos en Modelo en espiral Modelo de


Cascada desarrollo
Fase de modelo Contiene 5 fases Contiene 3 fases Contiene 3 fases
Tiempos de Requiere mucho El tiempo es un Requiere un tiempo
desarrollo más tiempo, debido poco más corto muy corto.
a la cantidad de en comparación a
fases los demás
Modelos
Forma de Se realiza por fases Se realizan Se realiza análisis
aplicación específicas, al final entregan en de los
se entrega el fases componentes y se
resultado ajustan al
correspondiente requerimiento
correspondiente.
Ventajas Las fases Reduce riesgos Favorece en
garantizan que todo del proyecto mejoras
este organizado. implementado en
nuevas versiones.
Son ideales en Integra el Se reproduce una
proyectos rígidos desarrollo con el versión completa
mantenimiento en forma
incremental.
Desventajas Un proyecto rara Modelo costoso Para proyectos
vez sigue en si las grandes, debe
fases contar con los
correspondientes recursos
suficientes.
El proceso de Genera mucho Debe contar con la
creación del tiempo el integración y
software tarda desarrollo participación
mucho tiempo. permanente entre
las partes
interesadas.
2

Referencias:

https://www.consultor-it.com/articulo/70107/application-lifecycle-management-
alm/otros/guia-de-software-application-lifecycle-management-alm

También podría gustarte