Este documento presenta varios modelos de desarrollo de software, incluyendo el modelo en cascada, el modelo de prototipos, el modelo en espiral, el desarrollo por etapas y el desarrollo iterativo e incremental. También describe brevemente el RAD (desarrollo rápido de aplicaciones) y explica que la ingeniería de software comprende métodos y técnicas para desarrollar y mantener software aplicables a muchas áreas como negocios, medicina e Internet.
Modelos de desarrollo de software e ingeniería de software
1. UNIVERSIDAD NACIONAL PEDRO RUIZ GALLO
ESCUELA PROFESIONAL DE INGENIERÍA CIVIL
Curso:
PROGRAMACION BASICA
Docente:
Responsable:
PARIAHUACHE PUELLES CHRISTIAN PAUL (105611 K)
2. I.- Elabore usted un ejemplo de logaritmo utilizando una partida que usemos en la
ejecución de cualquier obra
APLICACIÓN DE LOGARITMOS EN LA CONSTRUCCION DE UNA CASA
Paso 1. Conseguir un terreno adecuado
Paso 2. Conseguir licencia de la construcción de la obra
Paso 3. Realizar el estudio de suelo
Paso 4. Diseñar los planos correspondientes de la obra
Paso 5. Comprar los materiales de construcción.
Paso 6. Conseguir personal para la construcción del proyecto
Paso 7. Realizar la excavación de la cimentación
Paso 8. Iniciar la construcción de la casa.
Paso 9. Culminar con los acabados o decorados externos e internos de la casa.
II.- Investigue modelos de desarrollo de software existentes con e jemplos aplicativos.
La ingeniería de software tiene varios modelos de desarrollo en los cuales se puede apoyar para la
realización de software, de los cuales podemos destacar a éstos por ser los más utilizados y los más
completos:
Modelo en cascada o Clásico (modelo tradicional)
En Ingeniería de software el desarrollo en cascada, también llamado modelo en cascada, es el enfoque
metodológico que ordena rigurosamente las etapas del proceso para el desarrollo de software, de tal
forma que el inicio de cada etapa debe esperar a la finalización de la inmediatamente anterior.
3. Un ejemplo de una metodología de desarrollo en cascada es:
Análisis de Requisitos
Diseño del Sistema
Diseño del Programa
Codificación
Pruebas
Implantación
Mantenimiento
Modelo de prototipos
El Modelo de prototipos que pertenece a los modelos de desarrollo evolutivo, El prototipo debe ser
construido en poco tiempo, usando los programas adecuados y no se debe utilizar mucho dinero pues a
partir de que éste sea aprobado nosotros podemos iniciar el verdadero desarrollo del software.
El diseño rápido se centra en una representación de aquellos aspectos del software que serán visibles
para el cliente o el usuario final. Este diseño conduce a la construcción de un prototipo, el cual es
evaluado por el cliente para una retroalimentación; gracias a ésta se refinan los requisitos del software
que se desarrollará. La interacción ocurre cuando el prototipo se ajusta para satisfacer las necesidades
del cliente. Esto permite que al mismo tiempo el desarrollador entienda mejor lo que se debe hacer y el
cliente vea resultados a corto plazo.
4. Modelo en espiral
El desarrollo en espiral es un modelo de ciclo de vida del software definido por primera vez por Barry
Boehm en 1988, utilizado generalmente en la Ingeniería de software. Las actividades de este modelo
se conforman en una espiral, en la que cada bucle o iteración representa un conjunto de actividades.
Las actividades no están fijadas a prioridad, sino que las siguientes se eligen en función del análisis de
riesgo, comenzando por el bucle interior.
Desarrollo por etapas
El modelo de desarrollo de software por etapas es similar al Modelo de prototipos ya que se muestra al
cliente el software en diferentes estados sucesivos de desarrollo, se diferencia en que las
especificaciones no son conocidas en detalle al inicio del proyecto y por tanto se van desarrollando
simultáneamente con las diferentes versiones del código.
Pueden distinguirse las siguientes fases:
Especificación conceptual
Análisis de requerimientos
Diseño inicial
Diseño detallado, codificación, depuración y liberación.
Estas diferentes fases se van repitiendo en cada etapa del diseño.
5. Desarrollo iterativo y creciente o Iterativo e Incremental
Desarrollo iterativo y creciente (o incremental) es un proceso de desarrollo de software, creado en
respuesta a las debilidades del modelo tradicional de cascada.
La idea principal detrás de mejoramiento iterativo es desarrollar un sistema de programas de manera
incremental, permitiéndole al desarrollador sacar ventaja de lo que se ha aprendido a lo largo del
desarrollo anterior, incrementando, versiones entregables del sistema. El aprendizaje viene de dos
vertientes: el desarrollo del sistema, y su uso (mientras sea posible). Los pasos claves en el proceso son
comenzar con una implementación simple de los requerimientos del sistema, e iterativamente mejorar
la secuencia evolutiva de versiones hasta que el sistema completo esté implementado. En cada
iteración, se realizan cambios en el diseño y se agregan nuevas funcionalidades y capacidades al
sistema.
El proceso en sí mismo consiste de:
Etapa de inicialización
Etapa de iteración
Lista de control de proyecto
RAD (Rapid Application Development)
El desarrollo rápido de aplicaciones o RAD (acrónimo en inglés de rapid application development) es
un proceso de desarrollo de software, desarrollado inicialmente por James Martin en 1980. El método
comprende el desarrollo interactivo, la construcción de prototipos y el uso de utilidades CASE
(Computer Aided Software Engineering). Tradicionalmente, el desarrollo rápido de aplicaciones tiende
a englobar también la usabilidad, utilidad y la rapidez de ejecución.
6. III.- Que comprende la Ing. de software y las aplicaciones en la actualidad.
Ingeniería de software es la disciplina o área de la Ingeniería que ofrece métodos y técnicas para
desarrollar y mantener software. La creación del software es un proceso intrínsecamente creativo y la
Ingeniería del Software trata de sistematizar este proceso con el fin de acotar el riesgo del fracaso en la
consecución del objetivo creativo por medio de diversas técnicas que se han demostrado adecuadas en
base a la experiencia previa. Esta ingeniería trata con áreas muy diversas de la informática y de
las ciencias de la computación, tales como construcción de compiladores, sistemas operativos, o
desarrollos Intranet/Internet, abordando todas las fases del ciclo de vida del desarrollo de cualquier
tipo de sistemas de información y aplicables a infinidad de áreas: negocios, investigación científica,
medicina, producción, logística, banca, control de tráfico, meteorología, derecho, Internet, Intranet
Hoy en día el software juega un papel central en casi todos los aspectos de la vida cotidiana: gobierno,
finanzas, educación, transporte, medicina, et
VI. De acuerdo al desarrollo y diseño de algoritmos trate de establecer la traducción de
algoritmo de su actividad en todo lo que implica desarrollo y diseño del mismo, se solicita tener
cuidado en el enunciado de los trabajos a desarrollarse según la partida seleccionada por el
grupo.