Está en la página 1de 27

UNIDAD 1:

Conceptos Generales
AGENDA

1. Ingeniería Software

2. Ciclo de vida

3. Modelos del ciclo de vida del software


Ingeniería de software

Es la disciplina que se interesa por todos los


aspectos de la producción de software, desde las
primeras etapas de la especificación del sistema
hasta el mantenimiento del sistema después de que
se pone en operación.
Importancia ingeniería de software

Cada vez con mayor frecuencia las empresas


se apoyan en los avanzados sistemas de
A menudo resulta más barato a largo plazo software, por lo que esto sugiere producir
usar métodos y técnicas de ingeniería de económica y rápidamente sistemas
software para los sistemas de empresas que confiables
sólo pensar en los programas como si fuera
un proyecto de programación personal.
Tipos de programas

Los ingenieros de software están interesados por el desarrollo de productos de programas que puedan
venderse a un cliente:

Consisten en sistemas independiente que se producen por una organización de desarrollo y se


venden en el Mercado abierto a cualquier cliente que desee comprarlo

Productos Genéricos

Son sistemas que están destinados para un cliente en particular. Un contratista de software
desarrolla el programa especialmente para dicho cliente.

Productos personalizados
( o a la medida)
Definición de ciclo de vida

Ciclo de Vida

Enfoque sistemático que se usa en la ingeniería de software.

Es la estructura que contiene los procesos, actividades y


tareas relacionadas con el desarrollo y mantenimiento de un
producto de software, abarcando la vida completa del sistema,
desde la definición de los requisitos hasta la finalización de su
uso.
Fases del Ciclo de Vida
Comunicación

Este es el momento en el que un cliente solicita un producto de software


determinado. Se contacta con un contratista en desarrollo de software
para plasmar sus necesidades concretas y presenta su solicitud de
desarrollo de software.
Planificación y análisis

Se fijan en los requisitos que piden los clientes para estudiar


cuales están poco claros, incompletos, ambiguos o
contradictorios.
Planificación y análisis

Los requisitos se agrupan en requisitos del usuario, requisitos


funcionales y requisitos no funcionales.
Planificación y análisis

La recolección de todos los requisitos se lleva a cabo: estudiando


el software actual que tengan, entrevistando a usuarios y
desarrolladores, consultando bases de datos o mediante
cuestionarios.
Estudio de viabilidad

Se analiza que parte del software cubre los requisitos de


cada usuario. Se investiga la viabilidad financiera y
tecnológica. Se utilizan algoritmos para saber si el proyecto
de software es factible o no.
Análisis del sistema

En este paso el equipo del proyecto asigna recursos y planifica el


tiempo de duración del proyecto. Se buscan limitaciones del
producto y se identifican los impactos del proyecto sobre toda la
organización en su conjunto.
Diseño

Se hace un diseño lógico y otro físico. Se crean


metadatos, diagramas o pseudocódigos. La duración
de esta fase varía de un proyecto a otro.
Codificación

Esta fase también denominada “fase de programación” o “fase de


desarrollo” es en la que elige el lenguaje de programación más
conveniente, y se desarrollan programas ejecutables y sin errores de
manera eficiente.
Integración

El Software puede necesitar estar integrado con bibliotecas,


bases de datos o con otros programas. Esta fase del ciclo de
vida integra el software con las entidades del mundo exterior.
Pruebas

Esta fase junto con la fase de desarrollo entra en un ciclo


continuo hasta que se completan el desarrollo y las pruebas.
Probamos, probamos y luego volvemos a probar tanto como
sea necesario hasta que la funcionalidad sea del 100%.
Implementación

Aquí se instala el software, se evalúa la integración, la


adaptabilidad, la portabilidad y se instalan las
configuraciones posteriores necesarias.
Formación

La adopción del usuario es muy importante y para ello se


capacitación inicial para cada usuario. Es importante comprobar el
nivel de uso, la experiencia de usuario y resolver cualquier dificultad
que pueda surgir a la hora de enfrentarse a un nuevo sistema o
plataforma.
Mantenimiento y Funcionamiento

En esta fase se minimizan pequeños errores, se confirma el buen


funcionamiento del software, su eficiencia y estabilidad. El proyecto ya
está completado y necesitamos monitorear y mantener de forma
continua para garantizar que el proyecto siga ejecutándose bien.
Modelos del ciclo de vida del software

La ingeniería del software se vale de una serie de modelos que establecen y muestran las distintas etapas y
estados por los que pasa un producto software

Describe las fases principales de desarrollo de


software.

Define las fases primarias esperadas de ser


Pero NO importa el modelo ejecutadas durante esas fases.
todos deben de:
Ayuda a administrar el progreso del desarrollo.

Provee un espacio de trabajo para la definición de


un proceso detallado de desarrollo de software.
Las principales diferencias entre distintos modelos de ciclo de vida están en:

1. El alcance del ciclo dependiendo de hasta dónde llegue el


proyecto correspondiente.

2. Las características (contenidos) de las fases en que dividen el


ciclo.

3. La estructura y la sucesión de las etapas


Modelo Cascada

Es un enfoque metodológico que ordena

rigurosamente las etapas del ciclo de vida del

software, de forma que el inicio de cada etapa

debe esperar a la finalización inmediatamente

anterior. No se puede avanzar hasta que la

etapa anterior este aprobada


Modelo Incremental

Se basa en la filosofía de construir

incrementando las funcionalidades del

programa. Este modelo aplica secuencias

lineales de forma escalonada mientras

progresa el tiempo en el calendario. Cada

secuencia lineal produce un incremento del

software.
Modelo Espiral

Las actividades de este modelo se conforman en una

espiral, cada bucle representa un conjunto de

actividades. Las actividades no están fijadas a priori,

sino que las siguientes se eligen en función del análisis

de riesgos, comenzando por el bucle anterior.


Modelo de prototipos

El prototipo debe ser construido en poco tiempo, usando


los programas adecuados y no se debe utilizar muchos
recursos.

Es evaluado por el cliente para una retroalimentación;


gracias a esta se refinan los requisitos del software que
se desarrollará

También podría gustarte