ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

Ing-Software


Enviado por   •  7 de Mayo de 2013  •  7.290 Palabras (30 Páginas)  •  381 Visitas

Página 1 de 30

Ingeniería de software:

Software: programas, archivos de configuración, manuales de instalación, documentación, etc. Pueden ser productos genéricos (de venta en el mercado) o personalizados (desarrollados específicamente para el cliente). El valor del software es el valor que este le genera al cliente.

Crisis del software: son problemas que aparecen al desarrollar, mantener y atender la demanda. Comprende todos los aspectos de la producción de software desde las iniciales al mantenimiento. La ingeniería de software trata de ser una respuesta a esta crisis, formulando el problema, analizándolo, buscándole una solución adecuada y especifica.

Las actividades de desarrollo implican búsqueda de requerimientos, análisis, diseño e implementación, además de revisiones, pruebas y la administración del proyecto.

Participan todas las personas involucradas en el proyecto: clientes, desarrolladores, gerentes y usuarios finales.

Capas del desarrollo de software según Pressman:

• Herramientas: ayudan a organizar las tareas de trabajo, controlar y supervisar los progresos y administrar la calidad técnica. Proporcionan un soporte automático o semiautomático.

• Métodos: indican como realizar los pasos necesarios del ciclo de vida.

• Proceso: conjunto de actividades, métodos, prácticas y tecnologías aplicables a todos los procesos del software. Un proceso básico incluye análisis, diseño, codificación, pruebas y mantenimiento.

• Un enfoque de calidad: los cimientos deben estar enfocados hacia la calidad.

Rol: papel que se le asigna a una persona durante el desarrollo del sistema. Un mismo participante puede cumplir varios roles.

Sistema: realidad subyacente.

Modelo: abstracción de la realidad.

Actividad: conjunto de tareas con un propósito específico.

Tarea: unidad de trabajo elemental capaz de ser administrada. Tiene recursos.

Recursos: bienes necesarios para realizar el trabajo. (Ej: tiempo).

Objetivos: Principios de alto nivel para guiar el proyecto y evaluarlos al final.

Requerimientos: “Características” del sistema. Pueden ser:

a) Funcionales: definen el área de funcionalidad del sistema.

b) No Funcionales: restricción al funcionamiento del sistema.

c) De Dominio: normas, decretos, etc.

Restricciones: Ej: lenguaje de programación, plataforma, etc.

Notación: reglas gráficas o de texto para representar un modelo.

Método: técnica repetible para resolver un problema. (Ej: algoritmo)

Metodología: colección de métodos para la resolución de una clase de problemas.

“Abarca las teorías, métodos y herramientas para el desarrollo profesional de software”

Ciclos de vida del software

Describe las fases del desarrollo de software y lo que se espera ejecutarse en esas fases.

Ayuda a administrar el progreso de desarrollo de software detalladamente.

Tipos:

1) Cascada: desarrollo en fases con metas bien definidas y cada una con un resultado. Es difícil de aplicarle cambios. Principios:

a. Planear el proyecto antes de empezarlo.

b. Definir el comportamiento externo antes que la arquitectura interna.

c. Documentar los resultados de cada actividad.

d. Diseñar el sistema antes de codificarlo.

e. Testear el sistema antes de construirlo.

2) Incremental: Reduce riesgos, incrementa subconjuntos de requerimientos.

a. Construye un sistema pequeño, lo cual es menos riesgoso.

b. Si aparece un error, solo descarta el avance hecho.

c. Evita que los requerimientos del usuario cambien.

3) Evolutivo: Asume que los requerimientos no se conocen bien al principio y solo toma los seguros, para ir agregando funcionalidad a medida que aparece. Cada paso debe ser registrado, cada cambio controlado. Es caro. Produce documentos por iteración.

4) Prototipado: Es una implementación parcial del sistema que es dada a evaluar a los usuarios para obtener cierta retroalimentación. Debe ser creado rápidamente. Se debe tener la tecnología necesaria para llevarlo a cabo. Hay falta de visibilidad y bajo riesgo para nuevas aplicaciones.

5) Espiral: Desarrollo iterativo. Cuando uno termina comienza otro inmediatamente. Es fundamental determinar que se quiere hacer antes de hacerlo, y los riesgos dispuestos a tolerar. Buena visibilidad del sistema, un documento por iteración. El equipo debe tener experiencia. Sigue 4 pasos:

1. Determinar que se quiere lograr.

2. Armar rutas para lograrlo con sus pros y sus contras.

3. Seguir la ruta elegida.

4. Establecer que es lo que hay terminado.

• Siempre se recomienda usar espiral más los necesarios para el sistema a crear.

• El prototipado se recomienda para realizar la especificación de requerimientos.

• Como hay cambios constantes hoy en día, el enfoque es ideal hacerlo evolutivo.

• Se deben combinar los paradigmas para explotar las ventajas particulares de estos.

Modelo IPO

Esquema de funcionamiento del modelo de resolución de problemas de la informática.

• I = Input: datos y hardware de captura.

• P= Proceso: algoritmos, lenguajes de programación.

• O= Output: emisión y generación de información, bases de datos.

Proceso Unificado (UDP)

Metodología de desarrollo de sistemas orientada a objetos. Rescata sintaxis y semántica de UML. Posee 3 conceptos fundamentales:

1) Centrado en los casos de uso: comprendidos por todos los usuarios, intuitivo. Debe expresar todas las funciones y actores, y su suma ser el todo.

2) Centrado en la arquitectura del sistema a desarrollar: deben ser incluidos la plataforma de software y hardware, los marcos de trabajo y los casos de uso.

3) Desarrollo iterativo e incremental: se divide el sistema en miniproyectos y cada uno es una iteración en una fase incremental.

a. Fase Inicio: describe el producto final y presenta análisis de negocio. Da una visión general de los requerimientos del proyecto.

b. Fase elaboración: análisis del dominio. Establece base de la arquitectura del sistema. Parte de los casos de uso más significativos para luego completar flujos. Lista riesgos.

c. Fase construcción: Desarrollar incrementalmente el producto. Se completan casos de uso requeridos por el usuario y luego se hace una primera entrega a este. Se crea la documentación de usuario.

d. Fase transición: Periodo “beta” del producto. Algunos usuarios

...

Descargar como (para miembros actualizados) txt (54 Kb)
Leer 29 páginas más »
Disponible sólo en Clubensayos.com