0% encontró este documento útil (0 votos)
34 vistas5 páginas

Introducción a la Ingeniería de Software

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)
34 vistas5 páginas

Introducción a la Ingeniería de Software

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

UNIVERSIDAD AUTÓNOMA GABRIEL RENE MORENO

FACULTAD INTEGRAL DE LOS VALLES CRUCEÑOS

Resumen del Capítulo I


Docente: Lic. Gabriela Quiroga Heredia
Estudiante: Josue Email Quiroz Pinto

Vallegrande 2024
Resumen del Capítulo I: del Libro Ingeniería de
Software, un Enfoque Practico

El capítulo I del libro 'Ingeniería de Software: Un Enfoque Práctico' de Roger


Pressman, titulado 'El Proceso de Software', ofrece una introducción fundamental a los
conceptos esenciales de la ingeniería de software. A continuación, se presenta un
resumen detallado con los puntos más importantes y los subtítulos relevantes,
extendido para cubrir tres hojas en un documento de Word tamaño carta.

Ingeniería de Software: Un Enfoque

Esta sección introduce la disciplina de la ingeniería de software, destacando la


importancia de aplicar principios de ingeniería para el desarrollo de software.
Pressman explica que el software es un producto y un proceso, y aborda la necesidad
de desarrollar software de alta calidad de manera predecible y eficiente. Aquí se
subraya cómo el software difiere de otros productos industriales, especialmente en
términos de su naturaleza intangible y su capacidad para ser modificado rápidamente
en respuesta a cambios en los requisitos.

El Software

En esta sección, el autor define el software como un conjunto de programas, datos y


documentación asociados que cumplen una función específica. Pressman subraya
que, a diferencia de los productos físicos, el software no se desgasta con el uso, pero
puede volverse obsoleto si no se mantiene y actualiza adecuadamente. Se destacan
las características del software que lo diferencian de otros productos de ingeniería,
como su complejidad intrínseca, la flexibilidad y la necesidad de un mantenimiento
constante para adaptarse a nuevas necesidades o corregir defectos.

El Proceso de Software

El proceso de software es un conjunto de actividades, métodos, prácticas y


transformaciones que las personas usan para desarrollar y mantener el software. Esta
sección se enfoca en la importancia de un proceso de software bien definido y
controlado, como medio para lograr un software de alta calidad. Pressman enfatiza la
necesidad de la planificación y organización de estas actividades para minimizar los
riesgos asociados con el desarrollo de software.
Modelos de Procesos de Software

Aquí se describen varios modelos de procesos de software que han sido propuestos
para guiar el desarrollo del software. Entre los modelos mencionados, destacan:

Modelo en Cascada: Es un enfoque secuencial donde cada fase debe


completarse antes de que comience la siguiente. Es uno de los modelos más
tradicionales y se usa en proyectos donde los requisitos son bien entendidos
desde el principio. Pressman menciona que este modelo es apropiado para
proyectos con un alcance bien definido, como sistemas de administración de
inventarios.
Modelo Incremental: Este modelo combina elementos del modelo en cascada
y de prototipos. Se desarrolla una versión inicial del software y luego se mejora
en incrementos. Este enfoque permite al equipo de desarrollo entregar partes
funcionales del software más rápidamente, lo que puede ser crucial en
entornos competitivos.
Modelo Espiral: Es un modelo evolutivo que enfatiza el análisis de riesgos en
cada iteración, combinando elementos de prototipos y modelos secuenciales.
El modelo espiral es especialmente útil en proyectos grandes y complejos
donde los riesgos técnicos son altos.
Desarrollo Rápido de Aplicaciones (RAD): Un enfoque que prioriza el rápido
desarrollo de aplicaciones mediante la creación de prototipos y el uso de
herramientas de desarrollo visual. Este modelo es ideal para proyectos con
requisitos que pueden evolucionar durante el desarrollo y donde el tiempo de
entrega es un factor crítico.

Fases del Proceso de Software

Pressman detalla las fases del proceso de software, que incluyen:

Análisis de Requisitos: Se centra en entender qué necesita el cliente y


documentar estos requisitos de manera clara y detallada. Un ejemplo
práctico es el desarrollo de un sistema de gestión para un hospital, donde
es crucial comprender los flujos de trabajo y necesidades específicas de los
usuarios.
Diseño: Involucra la creación de una arquitectura y un diseño detallado del
software que satisfaga los requisitos especificados. Aquí, se puede mencionar

la creación de diagramas de clases y diagramas de secuencia en UML para


representar la estructura y el comportamiento del sistema.
Codificación: La fase en la que se escriben los programas que constituyen el
software. Pressman destaca la importancia de seguir estándares de
codificación y buenas prácticas para asegurar que el código sea mantenible y
eficiente.
Pruebas: Asegura que el software funcione según lo previsto y cumple con los
requisitos del cliente. Esta fase incluye pruebas unitarias, de integración, de
sistema y de aceptación, cada una con el objetivo de detectar y corregir errores
en diferentes niveles.
Mantenimiento: Involucra realizar cambios y mejoras después de que el
software ha sido entregado. Pressman subraya que el mantenimiento es una
de las fases más costosas y prolongadas del ciclo de vida del software, ya que
el software debe evolucionar para seguir siendo útil.

Atributos de la Calidad del Software

En esta sección, se discuten los atributos clave que deben evaluarse para determinar
la calidad del software, tales como:

Funcionalidad: La capacidad del software para proporcionar funciones que


satisfacen las necesidades declaradas y no declaradas bajo condiciones
especificadas.
Confiabilidad: La capacidad del software para mantener su nivel de
rendimiento bajo condiciones establecidas durante un período determinado.
Eficiencia: La capacidad del software para proporcionar el rendimiento
adecuado en relación con la cantidad de recursos utilizados bajo condiciones
especificadas.
Mantenibilidad: La facilidad con la que el software puede ser modificado para
corregir defectos, mejorar el rendimiento u otras características, o adaptarse a
un entorno cambiante.
Usabilidad: La facilidad con la que los usuarios pueden aprender a usar el
software y operar con él para lograr sus objetivos.
Desafíos en la Ingeniería de Software

Pressman describe los desafíos inherentes a la ingeniería de software, incluyendo:

Complejidad creciente de los sistemas: A medida que los sistemas de


software se vuelven más grandes y complejos, se hace más difícil entenderlos,
desarrollarlos y mantenerlos.
Naturaleza cambiante de los requisitos: Los requisitos del cliente a menudo
cambian durante el desarrollo, lo que puede llevar a retrasos y sobrecostos.
Necesidad de un desarrollo rápido: En muchos sectores, el tiempo para
comercializar es un factor crítico, lo que requiere métodos de desarrollo que
puedan acelerar la entrega sin sacrificar la calidad.

Ejemplos

Pressman ilustra los conceptos del proceso de software con ejemplos prácticos, como
el uso del modelo en cascada en un proyecto de desarrollo de sistemas de control
para una planta industrial. También se mencionan casos donde el modelo en espiral
es beneficioso, especialmente en proyectos donde los requisitos no están
completamente definidos desde el inicio. Por ejemplo, el desarrollo de un sistema de
reservas para una aerolínea podría beneficiarse del enfoque espiral debido a la
necesidad de integrar múltiples sistemas y considerar diferentes escenarios de uso.

Conclusión

El capítulo I establece las bases para entender la ingeniería de software como una
disciplina de ingeniería, destacando la importancia de seguir un proceso bien
estructurado y controlado para desarrollar software de alta calidad. Los modelos de
procesos, las fases del desarrollo y los atributos de calidad discutidos son esenciales
para el éxito en proyectos de software.

También podría gustarte