PDF de programación - Prácticas de Programación - Tema 1. Introducción al análisis y diseño de programas

Imágen de pdf Prácticas de Programación - Tema 1. Introducción al análisis y diseño de programas

Prácticas de Programación - Tema 1. Introducción al análisis y diseño de programasgráfica de visualizaciones

Publicado el 14 de Enero del 2017
1.405 visualizaciones desde el 14 de Enero del 2017
281,6 KB
10 paginas
Creado hace 14a (16/02/2010)
Prácticas de Programación

Tema 1. Introducción al análisis y diseño de programas

Tema 2. Clases y objetos
Tema 3. Herencia y Polimorfismo
Tema 4. Tratamiento de errores
Tema 5. Aspectos avanzados de los tipos de datos
Tema 6. Modularidad y abstracción: aspectos avanzados
Tema 7. Entrada/salida con ficheros
Tema 8. Verificación y prueba de programas

Prácticas de Programación

© M. Aldea y M. González

11/05/09

Tema 1. Introducción al análisis y diseño de programas

Tema 1. Introducción al análisis y diseño de

programas



1



Ingeniería del software

1.1.
1.2. Actividades en el desarrollo del software
1.3. Modelo clásico: desarrollo en cascada
1.4. Objetivos de los nuevos modelos
1.5. Modelo de desarrollo evolutivo
1.6. Modelo de desarrollo en espiral
1.7.
1.8. Diagrama de Clases en UML
1.9. Análisis orientado a objetos
1.10. Diseño orientado a objetos
1.11. Programación orientada a objetos
1.12. Resumen
1.13. Bibliografía

Introducción al análisis de requisitos

© M. Aldea y M. González

11/05/09

2

Prácticas de Programación

Tema 1. Introducción al análisis y diseño de programas

1.1 Ingeniería del software
Meta: desarrollo costeable de sistemas software
Surge en 1968 debido a la “crisis del software”
• el aumento de potencia de los computadores

hacía pensar que sería posible abordar
problemas cada vez más complejos

• pero las aplicaciones se finalizaban con

retraso, costando mucho más de lo
presupuestado y con muchos errores

1.1 Ingeniería del software

100

HardWare

e
t
s
o
c


%
0
1955

SoftWare

actualidad

Principal aportación de la Ingeniería del Software:

• Definición de modelos de proceso de desarrollo del software:
conjunto de actividades y resultados asociados utilizados para
concebir, desarrollar, instalar y mantener un producto software
La Ingeniería del Software todavía es una disciplina en evolución

Prácticas de Programación

© M. Aldea y M. González

11/05/09

3

Tema 1. Introducción al análisis y diseño de programas

1.2 Actividades en el desarrollo del software

1.2 Actividades en el desarrollo del software
No existe un proceso de desarrollo universal

• depende de la naturaleza del producto y de la empresa
Todos los procesos incluyen las siguientes actividades:

• Análisis de requisitos: estudio de la naturaleza del problema y

definición de qué debe hacer el sistema software

• Diseño e implementación: comienza con el diseño de la

estructura general del software para, tras sucesivas etapas de
refinamiento, alcanzar la fase de escritura del código

• Pruebas e integración: suelen ser fases cíclicas, en las que de
forma incremental se van probando e integrando las diversas
partes del sistema

• Mantenimiento: reparación de problemas, adaptación a nuevas

condiciones, mejoras, etc.

Prácticas de Programación

© M. Aldea y M. González

11/05/09

Tema 1. Introducción al análisis y diseño de programas

1.3 Modelo clásico: desarrollo en cascada
Se basa en una secuencia de pasos que son optimizados uno a
uno a nivel individual

1.3 Modelo clásico: desarrollo en cascada

Tiempo

Análisis de
requisitos

Diseño

Avance

Codificación y
Depuración

Eliminación
de errores

Pruebas e
Integración

Operación y
Mantenimiento

Eliminación
de errores de
alto coste

Implementación

Prácticas de Programación

© M. Aldea y M. González

11/05/09

Tema 1. Introducción al análisis y diseño de programas

Resultados de las etapas
Cada etapa se basa en los resultados de la anterior

1.3 Modelo clásico: desarrollo en cascada

Requisitos
Informales

Análisis de
requisitos

Documento de

requisitos

Documento de
Arquitectura

Diseño de la
Arquitectura

Resultados de
las Pruebas

Programa

final

Prácticas de Programación

código

Pruebas e
Integración

Codificación y
Depuración

© M. Aldea y M. González

11/05/09

4

5

6

Tema 1. Introducción al análisis y diseño de programas

1.3 Modelo clásico: desarrollo en cascada

Limitaciones del modelo de desarrollo en cascada
La calidad del proceso se ve limitada ya que este modelo:

• Exige la toma de decisiones en fases iniciales, sin conocer su

efecto en fases sucesivas

• Considera que los requisitos del programa están definidos

antes de que éste haya sido diseñado

• Se basa en criterios tales como la experiencia del programador,

y es difícil de automatizar

• Hace muy difícil y costoso el proceso de mantenimiento del

software

Sin embargo, su uso reporta muchos beneficios con respecto a un
proceso desordenado, en el que no se siga una metodología clara

Prácticas de Programación

Tema 1. Introducción al análisis y diseño de programas

© M. Aldea y M. González

11/05/09

7

1.4 Objetivos de los nuevos modelos

1.4 Objetivos de los nuevos modelos
Los nuevos modelos de desarrollo tratan de:

• Proporcionar a los usuarios un objeto ejecutable en las etapas

iniciales del proceso para clarificar los requisitos

• Posibilitar que el usuario actúe como analista
• Minimizar los errores cometidos en las etapas iniciales del

desarrollo

• Facilitar el mantenimiento
• Mantener actualizada la documentación
• Analizar y reducir el riesgo

Se pueden utilizar en combinación con el modelo clásico, o una
combinación de varios de ellos

Prácticas de Programación

Tema 1. Introducción al análisis y diseño de programas

© M. Aldea y M. González

11/05/09

8

1.5 Modelo de desarrollo evolutivo

1.5 Modelo de desarrollo evolutivo
Se basa en evolucionar un prototipo hasta lograr el sistema final

• se crea un prototipo inicial al comienzo del proyecto

(posiblemente con funcionalidad reducida)

• se entrega al usuario

- lo que le permite definir más claramente sus requisitos:

“sabré lo que quiero cuando lo vea”

• el prototipo se va refinando en sucesivas versiones

Cuando el prototipo alcanza un nivel adecuado se puede:

• Transformar en el sistema completo

- Se corre el peligro de que tenga una estructura deficiente

• Iniciar un nuevo proceso de desarrollo en cascada basándose

en la experiencia adquirida
- Más costoso, pero normalmente más seguro

Prácticas de Programación

© M. Aldea y M. González

11/05/09

9

Tema 1. Introducción al análisis y diseño de programas

Esquema del modelo de desarrollo evolutivo

1.5 Modelo de desarrollo evolutivo

Lista de cambios

propuesta por el usuario

Desarrollo del sistema final
por evolución del prototipo

requisitos
del sistema
(informales e
incompletos)

Requisitos
del prototipo

Prototipo

Sistema
Final

Arquitectura
del prototipo

Desarrollo del sistema final

por método en cascada

Requisitos
acordes a los
deseos del
usuario

Diseño de la
Arquitectura

Codificación

Sistema
Final

Prácticas de Programación

Tema 1. Introducción al análisis y diseño de programas

© M. Aldea y M. González

11/05/09

10

1.6 Modelo de desarrollo en espiral
Trata de aunar las ventajas de los modelos clásico y evolutivo
• realiza el desarrollo del producto a través de varias etapas
• añade un elemento nuevo: el análisis de riesgos

1.6 Modelo de desarrollo en espiral

Cada etapa se compone de las siguientes fases:

• Planificación: determinación de objetivos, alternativas, y
restricciones, de acuerdo con la etapa actual. Salvo en la
primera etapa, se tendrán en cuenta las valoraciones del cliente
• Análisis de riesgo: análisis de las alternativas, e identificación

y valoración de riesgos. Como resultado se eligen las
alternativas de menor riesgo, o si el riesgo es demasiado alto
se abandona el proyecto

• Implementación: desarrollo del producto del siguiente nivel
• Evaluación del cliente: valoración de los resultados por parte

del cliente

© M. Aldea y M. González

11/05/09

11

Prácticas de Programación

Tema 1. Introducción al análisis y diseño de programas

Esquema del modelo de desarrollo en espiral

1.6 Modelo de desarrollo en espiral

Planificación

Análisis de riesgo

Recolección inicial de
requisitos y planificación
inicial del proyecto

Planificación basada en
los comentarios del
cliente

Evaluación del cliente

Hacia el sistema final

Evaluación del cliente

Implementación

Análisis de riesgo basado
en los requisitos iniciales

Análisis de riesgo basado
en la reacción del cliente

Decisión de seguir o no

Prototipo inicial

Prototipo del siguiente nivel

1ª versión sistema completo

Prácticas de Programación

© M. Aldea y M. González

11/05/09

12

Tema 1. Introducción al análisis y diseño de programas

1.7 Introducción al análisis de requisitos

1.7 Introducción al análisis de requisitos

Análisis

de requisitos

Resultado final del análisis

Diseño

Codificación

Pruebas

Operación

Documento de

Requisitos

Para construir algo lo primero que debemos saber es qué es ese
“algo”
Análisis de requisitos:

• proceso de entender y documentar lo que queremos hacer
• generalmente se centra en qué debe hacer el sistema
• no en cómo debe hacerlo
• Requisito (requerimiento o requirement): necesidad o

restricción que debe satisfacer un producto software para
contribuir a la solución de un problema real

Prácticas de Programación

Tema 1. Introducción al análisis y diseño de programas

© M. Aldea y M. González

11/05/09

13

1.7 Introducción al análisis de requisitos

Requisitos del cliente y del desarrollador
Existen dos tipos de requisitos:

• Requisitos del cliente (C-requisitos): lo que el cliente quiere y

necesita, expresado en un lenguaje claro para él

• Requisitos del desarrollador (D-requisitos): más detallados que

los C-requisitos y expresados en un lenguaje más formal y
estructurado

Escritos por el Cliente
Con colaboración y revisión del desarrollador

Escritos por el Desarrollador
Con colaboración y revisión del cliente

Descripción breve
del proyecto y
principales
características

Prácticas de Programación

C-requisitos

D-requisitos

Audiencia principal: cliente y usuario
Audiencia secundaria: desarrollador

Audiencia principal: desarrollador
Audiencia secundaria: cliente

© M. Aldea y M. González

11/05/09

14

Tema 1. Introducción al análisis y diseño de programas

1.7 Int
  • Links de descarga
http://lwp-l.com/pdf978

Comentarios de: Prácticas de Programación - Tema 1. Introducción al análisis y diseño de programas (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad