Está en la página 1de 32

PROGRAMACIÒN SEMANAL DE LOS

CONTENIDOS

• Enfoques de Desarrollo de Software.


Estructurado y Orientado a Objetos

Semana Contenido Actividades

5 •Requerimientos de Software • Casos laboratorio


•Validación y evolución
Asignatura:
DESARROLLO DE
SOFTWARE
Objetivos

• Identifica la gestión del análisis


Como una técnica diseñar e implantar
sistemas de información, así como
resuelve problemas donde esta
tecnología puede aportar soluciones en
el manejo de información
PROGRAMACIÓN SEMANAL DE LOS
CONTENIDOS

• Enfoques de Desarrollo de Software.


Estructurado y Orientado a Objetos

Semana Contenido Actividades

5 •Requerimientos de Software • Casos laboratorio


•Validación y evolución
Unidad 4

Contenido

• El diseño en la ingeniería de software


• Aplicación del diseño estructurado
– El proceso del diseño estructurado
– Fundamentos del diseño estructurado
• Introducción al diseño orientado a objetos
– Diseño estructurado frente al diseño orientado a
objetos
El diseño en la ingeniería de
software

• El diseño, en general, se puede definir como el


proceso de aplicar distintas técnicas y principios
con el propósito de definir un producto o sistema
de ingeniería con suficiente nivel de detalle como
para permitir su realización física.
• En lo que concierne al diseño del software, se
puede decir que esta en constante evolución
debido al surgimiento de nuevos métodos,
mejores análisis y perspectivas más amplias
• En la ingeniería de software, el propósito del
diseño es construir soluciones (modelos) que
satisfagan los requerimientos del software.
Aplicación del diseño estructurado

• Cada uno de los elementos del modelo del análisis proporciona


información necesaria para crear un modelo de diseño .

Descripción
de los Especificación
objetos de del proceso
datos Diagrama Diagrama Diseño
Entidad- de Flujo de Procedimental
Relación Datos
Diccionario
Diseño
de datos
de Interfaz

Diagrama de
Transición Diseño
de Estado Arquitectónico

Especificación Diseño
de control de Datos

El modelo del Análisis El modelo del Diseño

Transformación del modelo de análisis en el modelo del diseño


Unidad 4

El proceso del diseño estructurado

• El proceso del diseño estructurado es más


bien un proceso de muchos pasos que se
centra en cuatro atributos distintos de un
programa:

– Estructura de datos
– Arquitectura del software
– Representaciones de interfaz
– Detalle procedimental
Unidad 4

El proceso del diseño estructurado

• Existen tres características que sugieren como


directrices para la evaluación de un buen diseño:
– El diseño debe implementar todos los requisitos explícitos
contenidos en el modelo de análisis y debe acomodar
todos los requisitos implícitos que desea el cliente.
– El diseño debe ser una guía que puedan leer y entender
los que construyan el código y los que prueban y
mantienen el software.
– El diseño debería proporcionar una completa idea de lo
que es el software, enfocando los dominios de datos,
funcional y de comportamiento desde la perspectiva de
implementación.
Unidad 4

El proceso del diseño estructurado

• En el proceso del diseño la capacidad


creativa, la experiencia acumulada, el
sentido de un buen software y un
empeño global en la calidad son
factores críticos para el éxito del
diseño.

Ingeniería de software
Introducción al diseño orientado a
objetos
 Al igual que para el diseño estructurado, para el diseño orientado
a objetos también es posible definir una pirámide de diseño de
software.
• Capa de subsistema
– Contiene una representación de cada uno de los
subsistemas, necesarios para conseguir los requisitos
definidos por el cliente e implementar la
infraestructura que soporte los requerimientos.
Diseño
• Capa de clases y objetos de responsabilidades

– Contiene la jerarquía de clases, que permiten al


sistema ser creado usando generalizaciones y cada Diseño
de mensajes
vez especializaciones más acertadas.
• Capa de mensajes Diseño
de clases y objetos
– Contiene los detalles de diseño, que permiten a cada
objeto comunicarse con sus colaboradores. Diseño
• Capa de responsabilidades de subsistemas

– Contiene estructuras de datos y diseños algorítmicos


para todos los atributos y operaciones de cada objeto. El modelo del Diseño
Introducción al diseño orientado a objetos…
(2)

• Cada uno de los elementos del modelo del análisis proporciona


información necesaria para crear un modelo de diseño .

Modelo de
Modelo de objetos Diseño
tarjetas relacionales de responsabilidades
CRC
Atributos,
Casos de
operaciones, Diseño
colaboraciones
uso
de mensajes

Modelo de
comportamiento Diseño
de objetos de clases y objetos

Diseño
de subsistemas

El modelo del Análisis El modelo del Diseño

Transformación del modelo de análisis en el modelo del diseño


Diseño estructurado frente al diseño orientado
a objetos

• El diseño del software ha evolucionado del


paradigma de programación estructurada al
paradigma orientado a objetos.
• Las características en comunes entre ambos
paradigmas son:
– Un mecanismo para la transformación de un modelo
de análisis en una representación del diseño
– Una notación para representar componentes
funcionales y sus interfaces
– Heurísticas para el refinamiento y la partición, y
– Consejos para valorar la calidad.
Diseño estructurado frente al diseño orientado a objetos

• Las fases de obtención de requisitos se corresponden en ambos


paradigmas.
• Las clases del paradigma orientado a objetos, obtenidas en la fase de
análisis, se corresponden con el diseño arquitectónico del paradigma
estructurado.
– Esto es así ya que las clases se toman como los módulos principales del
software.
• A partir del diseño detallado se requiere tener conocimiento del ambiente de
implementación para llevar a cabo las consideraciones de rendimiento y
control, así, el diseño orientado a objetos se corresponde con el diseño
detallado.
Enfoques de Desarrollo de
Software
Problemas de la Producción de
Software
• Si la organización tiene una mala administración
una computadora no hará mas que empeorarla
• Componente humano en la implementación:
– Excesivas expectativas
– Fallas de diseño e implementación
– Resistencia al cambio
• Fallas al medir costos y beneficios
• Tiempos ocultos en el desarrollo
• Detección tardía de errores
• Envejecimiento del software
Que enfoques existen para encarar
los desarrollos?

Los enfoques son:

– Ciclo de Vida Clásico


– Prototipación
– Técnicas de cuarta generación
– Orientación a objetos
Ciclo de Vida Clásico
Establecimiento
de requerimientos

Análisis

Diseño

Programación

Prueba

Mantenimiento

Documentación
Principales actividades del Proyecto

Inicio del Beneficios Entrega del


Esbozar Esperados Sistema
Proyecto
Especificaciones

Informe de Sistema
viabilidad Aceptado

Plan de Prueba
de validez Prueba de Validez
Especificac. Análisisde
Detalladas Necesidades
Sistema
es
Especific. del Usuario n ual Verificado
Ma

Plan de Prueba Prueba Integración


Diseño Técnico del Sistema

Especif. del sistema


Construcción del Sistema Módulos
Consideraciones sobre el ciclo de
vida clásico

Ventajas:
– Facilita el adecuado desarrollo ya que
obliga a ordenar las tareas.
Desventajas
– Es dificil seguir la secuencia
– El cliente no puede establecer todos los
requermientos al inicio.
– Esta metodologia insume un tiempo
considerable.
Prototipos

Establecimiento
de requerimientos

Diseño rapido

Construcc. Prot

Eval y Refinam.

Producto Final
Consideraciones sobre la técnica
de prototipos

Ventajas:
– Acorta tiempo desarrollo
– Mayor participación del usuario
Desventajas:
– Puede tomarse como el sistema definitivo
– Puede quedar incompleto
Técnicas de cuarta generación

Requerimientos

Estrateg. Diseño

Implementación

Producto
Consideraciones sobre las técnicas
de cuarta generación

Ventajas:
– Acorta tiempo desarrollo
– Mejora la productividad de desarrollo
Desventajas:
– Aplicación limitada a aplicac.comerciales
– En desarrollos importantes no se pueden
reducir los tiempos de analisis diseño y
prueba.
Orientación a Objetos

• Def.: Conjunto complejo de datos y


programas reunidos en un todo.

DATOS + COMPORTAMIENTO
Objetos - características

• Encapsulamiento: el método
seleccionado pertenece al objeto
seleccionado
• Herencia: facilidad de extender las
características de un objeto a otro
nuevo.
• Rehusabilidad
Consideraciones sobre la técnica
de objetos
Ventajas:
– Disminuye tiempo desarrollo
– Mejora calidad y productividad
Desventajas:
– No existen muchas aplicaciones
desarrolladas con esta metodología.
– Falta de expertos
Perspectivas de la programación

• Tendencia hacia lenguajes mas


naturales
• La separación entre usuarios y
programadores será cada vez menor
• Generación de programas a partir de
las descripción del problema.
RUP (Rational Unified Process )
RUP (Rational Unified Process )
RUP (Rational Unified Process )
RUP (Rational Unified Process )

También podría gustarte