0% encontró este documento útil (0 votos)
151 vistas9 páginas

Unidad 1 - Informe

Este documento resume los conceptos fundamentales de la ingeniería de software, incluyendo definiciones de software, orígenes de la ingeniería de software, procesos de desarrollo de software, metodologías como el modelo de cascada y el modelo de espiral, y conclusiones. Explica que la ingeniería de software surgió para evitar fallos de software costosos y que incluye procesos, metodologías, herramientas y un enfoque de calidad. También resume dos modelos clave de desarrollo, el modelo de cascada lineal y el modelo
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
151 vistas9 páginas

Unidad 1 - Informe

Este documento resume los conceptos fundamentales de la ingeniería de software, incluyendo definiciones de software, orígenes de la ingeniería de software, procesos de desarrollo de software, metodologías como el modelo de cascada y el modelo de espiral, y conclusiones. Explica que la ingeniería de software surgió para evitar fallos de software costosos y que incluye procesos, metodologías, herramientas y un enfoque de calidad. También resume dos modelos clave de desarrollo, el modelo de cascada lineal y el modelo
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd

ÍNDICE

Introducción 3
Conceptos de Software 4
Fallos de Software 5
Origen de la Ingeniería de Software 6
Proceso de desarrollo de software: 7
Metodologías para el desarrollo de software: 7
Herramientas de desarrollo de software: 7
Proceso para el desarrollo de software: 7
Modelos de desarrollo de software 8
Modelo de cascada 8
Modelo de espiral 8
Conclusión 10
Bibliografía 11
INTRODUCCIÓN

En este trabajo observaremos el resumen de la primera unidad la cual nos enseña sobre
los fundamentos principales de la ingeniería de software, donde observaremos de la
historia, las herramientas de software que debemos seguir, la hora para desarrollar un
sistema y sus diferentes conceptos de software que debemos aprende.
Conceptos de Software

Según la IEEE Software es el conjunto de los programas de cómputo,


procedimientos, reglas, documentación y datos asociados que forman parte de
las operaciones de un sistema de computación.

Sommerville. (2004). El software no son solo programas, sino todos los


documentos asociados y la configuración de datos que se necesitan para hacer
que estos programas operen de manera correcta. Un sistema de software consiste
en diversos programas independientes, archivos de configuración que se utilizan
para ejecutar estos programas, un sistema de documentación que describe la
estructura del sistema, la documentación para el usuario que explica cómo
utilizar el sistema y sitios web que permitan a los usuarios descargar la
información de productos recientes.

El software es un conjunto de elementos que forman una “configuración” que


incluye:
 Programas
 Documentos
 Data, etc.
Y sus características son:
• Abstracto
• No se desgasta
• Personalizable

Fallos de Software
Algunos de los fallos que a sucedido en los software han sido

• La Agencia Espacial Europea (ESA) gastó 10 años y US$ 7B en producir el cohete


Ariane 5. Explotó apenas 40 segundos después de su despegue en su primer lanzamiento
el 4 de junio de 1996. El cohete destruido y su flete fueron valorados en US$ 500M. Se
determinó que la causa del fallo fue un error de software (asignación de un valor de una
dimensión mayor al tipo de la variable).
 Problemas en sistema de manejo de equipaje de aeropuerto de Denvern
1. Atrasó apertura más de un año
2. Costó a rededor de US $1.1 millones por día de atraso
• Trenes de Seattle controlados por computadora
1. Más de 12 choques
2. Daños por encima de los US $7 millones
3. Se recomendó gastar más de US $3 millones para volver a
control manual

Con la Ingeniería de Software se pretende evitar que los fallos de software se presenten
tomando a consideración diferentes aspectos entre ellos:
- A través del razonamiento poder justificar las decisiones a tomar.
- Manejando la complejidad a través de modelos.
- Tratando de buscar soluciones alcanzables dentro de restricciones de
presupuesto, personal y tiempo.

Origen de la Ingeniería de Software


Cuando aparecieron las primeras computadoras digitales en la década de 1940,8 el
desarrollo de software era algo tan nuevo que era casi imposible hacer predicciones de
las fechas estimadas de finalización del proyecto y muchos de ellos sobrepasaba los
presupuestos y tiempo estimados.. Los desarrolladores tenían que volver a escribir todos
sus programas para correr en máquinas nuevas que salían cada uno o dos años, haciendo
obsoletas las ya existentes.
El concepto de ingeniería del software surgió en 1968, tras una conferencia en Garmisch
(Alemania) que tuvo como objetivo resolver los problemas de la crisis del software. El
término crisis del software se usó desde finales de 1960 hasta mediados de 1980 para
describir los frecuentes problemas que aparecían durante el proceso de desarrollo de
nuevo software.
Los estractos de la ingenieria de software son:
 Herramienta
 Metodologia
 Procesos
 Un enfoque de calidad
La ingeniería de software comprende:
Proceso de desarrollo de software (especificación, implementación, diseño,
etc.)
Metodologías para el desarrollo de software (RUP, patrones, framework,
etc.)
Herramientas de desarrollo de software
Proceso de desarrollo de software:

El proceso de ingeniería de software es el conjunto de etapas parcialmente ordenadas


con la intención de lograr un objetivo, en este caso, la obtención de un producto de
Software de calidad.

Jacobson, (1998). El proceso de desarrollo de software “es aquel en que las necesidades
del usuario son traducidas en requerimientos de software, estos requerimientos
transformados en diseño y el diseño implementado en código, el código es probado,
documentado y certificado para su uso operativo”. Concretamente “define quién está
haciendo qué, cuándo hacerlo y cómo alcanzar un cierto objetivo”.

Metodologías para el desarrollo de software:

La metodología para el desarrollo de software es un enfoque estructurado para


desarrollar software cuyo objetivo es facilitar la producción de productos software de
alta calidad a un costo razonable. Indican cómo construir técnicamente el software. Los
métodos abarcan un amplio espectro de tareas que incluyen: planificación y estimación
de proyectos, análisis de los requerimientos del sistema y del software, diseño de
procedimientos algorítmicos, codificación, prueba y mantenimiento.

Herramientas de desarrollo de software:


Las herramientas de desarrollo de software suministran un soporte automático o
semiautomático para los métodos. Cuando se integran las herramientas de forma que la
información creada por una herramienta pueda ser usada por otra, se establece un
sistema para el soporte del desarrollo del software llamado ingeniería de software
asistido por computadora (Computer Aided Software Engineering o CASE).

Proceso para el desarrollo de software:


Según Wikipedia, El Proceso para el desarrollo de software, también denominado ciclo
de vida del desarrollo de software es una estructura aplicada al desarrollo de un
producto de software. Hay varios modelos a seguir para el establecimiento de un
proceso para el desarrollo de software, cada uno de los cuales describe un enfoque
diferente para diferentes actividades que tienen lugar durante el proceso.

Modelos de desarrollo de software


Hay varios modelos para perfilar el proceso de desarrollo, cada uno de las cuales cuenta
con pros y contras. El proyecto debería escoger el más apropiado para sus necesidades.
En ocasiones puede que una combinación de varios modelos sea apropiado.
Modelo de cascada
El modelo de cascada define las siguientes etapas que deben cumplirse de forma
sucesiva:
 Especificación de requisitos
 Diseño del software
 Construcción o Implementación del software
 Integración
 Pruebas (o validación)
 Despliegue (o instalación)
 Mantenimiento
Siguiendo el modelo de cascada de forma estricta, sólo cuando se finaliza una fase,
comienza la otra. En ocasiones se realiza una revisión antes de iniciar la siguiente fase,
lo que permite la posibilidad de cambios (lo que puede incluir un proceso de control
formal de cambio).

Modelo de espiral
La principal características del modelo en espiral es la gestión de riesgos de forma
periódica en el ciclo de desarrollo. Este modelo fue creado en 1988 por Barry Boehm,
combinando algunos aspectos clave de las metodologías del modelo de cascada y del
desarrollo rápido de aplicaciones, pero dando énfasis en un área que para muchos no
jugó el papel que requiere en otros modelos: un análisis iterativo y concienzudo de los
riesgos, especialmente en el caso de sistema complejos de gran escala.

La espiral se visualiza como un proceso que pasa a través de algunas iteraciones con el
diagrama de los cuatro cuadrantes representativos de las siguientes actividades:
 Crear planes con el propósito de identificar los objetivos del software,
seleccionados para implementar el programa y clarificar las restricciones
en el desarrollo del software.
 Análisis de riesgos: una evaluación analítica de programas
seleccionados, para evaluar cómo identificar y eliminar el riesgo.
 La implementación del proyecto: implementación del desarrollo del
software y su pertinente verificación.

Desarrollo iterativo e incremental

El desarrollo iterativo recomienda la construcción de secciones reducidas de software


que irán ganando en tamaño para facilitar así la detección de problemas de importancia
antes de que sea demasiado tarde. Los procesos iterativos pueden ayudar a desvelar
metas del diseño en el caso de clientes que no saben cómo definir lo que quieren.1
Desarrollo ágil

El desarrollo ágil de software utiliza un desarrollo iterativo como base para abogar por
un punto de vista más ligero y más centrado en las personas que en el caso de las
soluciones tradicionales. Los procesos ágiles utilizan retroalimentación en lugar de
planificación, como principal mecanismo de control. La retroalimentación se canaliza
por medio de pruebas periódicas y frecuentes versiones del software.
CONCLUSIÓN

En este trabajo pude analizar, leer y resumir los temas ya mencionados con la finalidad
de expresar explícitamente claro los temas para expresar las funciones que debemos
realiza la ingeniería de software para la creación de un sistema. Con sus características,
modelos, desarrollo y ciclo de vida de software.
Bibliografía
1- Unidad 1 Fundamentos de Ingeniería de Software
2- [Link]
3- [Link]
4- [Link]

5- [Link]
6- [Link]

También podría gustarte