Está en la página 1de 9

Principio de Diseo

Resumen obtenido de:


Roger
S.
Pressman,
Ingeniera
de
Software. Un enfoque prctico, quinta
edicin, 2002

Introduccin al Diseo de
Software
 Qu es el diseo?
 Representacin ingenieril de algo que se
va a hacer. El plano del software.

 reas que lo conforman:


 Datos,
Arquitectura,
Componentes.

Interfaces

Introduccin al Diseo de
Software
 Resultados:
 Varios modelos para las diferentes reas.

 Proceso:
 Empieza con la descripcin de los
requerimientos y se construye, poco a
poco, siguiendo los principios de diseo,
hasta obtener la especificacin del
diseo.

Conversin de un Modelo de Anlisis


en un Diseo de Software

Diagrama
Entidad
Relacin

Diagrama
de Flujo de
Datos

Diccionario
de Datos
Diagrama de
transicin de
Estados

Diseo a
nivel de
Componentes
Diseo de Interfaces
Diseo Arquitectnico
Diseo de Datos

13.1 Diseo de Software (DS) e


Ingeniera de Software
 DS se encuentra en el ncleo tcnico
de la IS.
 Diseo de Datos.
 transforma el dominio de informacin en
estructuras de datos.

 Diseo arquitectnico.
 define la relacin entre
estructurales del software.

elementos

13.1 Diseo de Software e


Ingeniera de Software
 Diseo de Interfaz manera
comunicarse del software:

de

 Dentro de s.
 Con otros sistemas.
 Con las personas.

 Diseo de Componentes.
 Transforma elementos estructurales en
descripciones procedimentales.

13.2 El Proceso de Diseo


 Es un proceso iterativo.
 Inicialmente se presenta en un nivel de
abstraccin alto y cada vez se refina ms.
 La calidad de su evolucin se evala
mediante Revisiones Tcnicas Formales
(RTF).
 Gua para la evaluacin de un buen diseo:
 Deber implementar todos los requerimientos.
 Ser legible y comprensible para poder codificar.
 Proporcionar imagen completa de todos los
elementos de un DS.

Directrices para la calidad del


Diseo
 Deber
presentar
arquitectnica que:

una

estructura

 Creada con patrones de diseo reconocibles.


 Formada por componentes de calidad
funcionalmente independientes.
 Con interfaces que faciliten las conexiones.
 Que se pueda implementar evolutivamente.

 Ser modular.
 Contener diferentes representaciones.
 Derivarse del anlisis de forma controlada.

13.3 Principio de Diseo de


Software (DS)
 El DS es una secuencia de pasos, no es una
receta pues intervienen:
 La creatividad, experiencia y un compromiso con
la calidad.

 Existen factores
externos.

de

calidad

internos

 Externos.
Propiedades
que
pueden
ser
observadas por los usuarios.
 Internas. Son buscados por el Ingeniero de
Software.

13.3 Principio de Diseo (segn


Alan Davis)
1. En el proceso deben
tomarse
enfoques
alternativos.
2. Deber rastrearse hasta
el anlisis.
3. Se debe reutilizar.
4. Tratar
de
imitar
el
dominio del problema.
5. Uniformidad
e
integracin.

6. Deber estructurase para


admitir cambios.
7. Debe
prever
la
adaptacin
a
circunstancias inusuales.
8. No codificar.
9. Evaluarse en funcin de
calidad mientras est
creciendo.
10.Minimizar
errores
conceptuales.

13. 4 Conceptos de Diseo


1. Abstraccin.
 Existen diferentes niveles, cada paso del
proceso software es un refinamiento.
 Alto. En el lenguaje del entorno del problema.
 Inferiores. Orientacin procedimental.

 Tipos de abstraccin:
 Procedimental.
Secuencia
nombrada
de
instrucciones que tiene una funcin especfica y
limitada.
 De datos. Coleccin nombrada de datos que
describe un objeto de datos.
 De control. Explicita el mecanismo de control de
programa sin especificar los datos internos.

13. 4 Conceptos de Diseo


(1. Abstraccin)
 Ejemplo de tipos de abstraccin para una
Modelar una puerta:
 Procedimental. Operacin: Abrir
 Acercarse a la puerta;
 Localizar mecanismo de apertura;
 Accionar mecanismo de apertura;
 Pasar por la puerta (jalar, empujar, esperar
apertura).
 De datos. La Puerta.
 Tipo
de
puerta
(madera,
metal,
etc),
Mecanismo de apertura, Peso, Dimensiones.

13. 4 Conceptos de Diseo


(2. Refinamiento)
 Debe hacerse paso a paso.
 El refinamiento hace que el diseador:




trabaje sobre la sentencia original,


proporcionando cada vez ms detalles
a
medida
que
van
teniendo
lugar
sucesivamente todos y cada uno de los
refinamientos

13. 4 Conceptos de Diseo


(3. Modularidad)
 Se trata de dividir el software en
componentes nombrados y abordados
por separado llamados mdulos, que se
integran para resolver los requisitos del
problema.
 Segn G. Meyers, la modularidad es el
nico atributo del software que permite
gestionar un programa intelectualmente
 Un software monoltico (programa grande
formado por un nico mdulo) no puede
ser entendido fcilmente por el lector.

13. 4 Conceptos de Diseo


(3. Modularidad)
Costo de esfuerzo

Costo total del software

Costo de integracin

Regin de Costo mnimo

Costo/mdulo

Nmero de mdulos
Aunque la modularidad es buena y est basada en la premisa de divide
y vencers, no debe exagerarse el nmero de mdulos

13. 4 Conceptos de Diseo


(3. Modularidad)
 Criterios para evaluar una metodologa de
diseo respecto a su habilidad de definir un
sistema modular efectivo:
 Capacidad para descomposicin modular.
 Capacidad
de
empleo
de
componentes
modulares
 Capacidad de comprensin modular
 Continuidad modular
 Proteccin modular

13. 4 Conceptos de Diseo


(4. Arquitectura de Software)
 Alude a la estructura global del software y a
las formas en que sta proporciona la
integridad conceptual de un sistema.
 Sirve como marco de trabajo desde donde
se llevan a cabo actividades de diseo ms
detalladas.
 Mediante patrones de arquitectura el
Ingeniero de Software podr reutilizar.
 Existen LDA (Lenguajes de Descripcin
Arquitectnica)
para
describir
la
arquitectura de software.

13. 4 Conceptos de Diseo


(4. Arquitectura de Software)
 Propiedades de un diseo arquitectnico:



Estructurales.
Define
los
componentes
(mdulos, objetos, interfaces), la manera en
que se empaquetan e interactan.
Extra-funcionales.
Cmo
consigue
los
requerimientos
no
funcionales.
Ejemplos:
rendimiento, capacidad, fiabilidad, seguridad,
etc.
Familias de sistemas relacionadas. Debe poder
utilizar bloques de construccin arquitectnicos.

También podría gustarte