Sunteți pe pagina 1din 8

.

El Diseo a Nivel de Componentes , llamado tambin Diseo Procedimental , tiene lugar despus de haber establecido los Diseos de Datos , Interfaces y Arquitectura . El objetivo es convertir el Modelo de Diseo en un Software Operacional . Sin embargo, el nivel de abstraccin del Modelo de Diseo existente es relativamente alto y el nivel de abstraccin del Software Operacional es bajo. Cuando el modelo de diseo se convierte en cdigo fuente, deber seguirse una serie de principios que lleven a cabo una conversin que << no introduzca errores desde el principio . Diseo a Nivel Componentes

4. Este diseo consiste en convertir el diseo de datos, interfaces y arquitectura en un software operacional . Para poderlo llevar a cabo, el diseo se deber representar a un nivel de abstraccin cercano a un cdigo. El diseo a nivel de componentes establece los datos algortmicos que se requieren para manipular las estructuras de datos , efectuar la comunicacin entre los componentes del software por medio de las interfaces . Quin lo hace? Un ingeniero del software. Diseo a Nivel Componentes

5. Por qu es importante? Para determinar si el programa funcionar antes de construirlo. El diseo a nivel de componentes representa el software que permite revisar los datos del diseo para su correccin y consistencia con las representaciones de diseo anteriores (diseo de datos, interfaces y arquitectura). Con este diseo se proporciona un medio de evaluar el funcionamiento de las estructuras de datos, interfaces y algoritmos. Diseo a Nivel Componentes

6. Cules son los pasos? Las representaciones de los diseos de datos, arquitectura e interfaces forman la base del diseo a nivel de componentes . Para representar este diseo se utilizan las notaciones grficas, tabulares y basadas en texto. Cul es el producto obtenido? El diseo procedimental de cada componente

representado en forma de notacin grfica, tabular o basada en texto es el primer producto durante el diseo a nivel de componentes. Diseo a Nivel Componentes 7. Cmo puedo estar seguro de que lo he hecho correctamente? Mediante una revisin estructurada y una inspeccin. El examen del diseo se realiza para determinar si las estructuras de los datos, las secuencias del proceso y las condiciones lgicas son correctas. Mediante la utilizacin de un lenguaje de programacin es posible representar el diseo a nivel de componentes. Diseo a Nivel Componentes 8. En esencia, el programa se crea empleando como gua el modelo de diseo. Tambin se puede representar utilizando algo que se pueda transformar fcilmente en cdigo fuente. Independientemente del mecanismo que se utilice para representar el diseo a nivel de componentes, la definicin de las estructuras de datos, interfaces y algoritmos debern ajustarse a las lneas generales del diseo procedimental establecidas. Diseo a Nivel Componentes 9. Los fundamentos del diseo a nivel de componentes proceden de los aos sesenta, con Edsgar Dijkstra y sus colaboradores, que propusieron usar un conjunto de construcciones lgicas restringidas para formar cualquier programa. Las construcciones son secuenciales , condicionales y repetitivas . La construccin secuencial implementa el proceso en pasos esenciales para especificar cualquier algoritmo . La condicional proporciona las funciones a partir de una condicin lgica . Diseo a Nivel Componentes Programacin Estructurada 10. La repetitiva proporciona los bucles . Las tres construcciones son fundamentales para la programacin estructurada -tcnica importante de diseo a nivel de componentes-. Las construcciones estructuradas se propusieron para restringir el diseo del software a un nmero reducido de operaciones predecibles . La utilizacin de

construcciones estructuradas reduce la complejidad del programa y mejora la capacidad de comprender, comprobar y mantener. Diseo a Nivel Componentes Programacin Estructurada 11. La utilizacin de un nmero limitado de construcciones lgicas contribuye al proceso de comprensin humana denominado: fragmentacin ( troceado o chunking ). Para entender este proceso, consideremos cmo leemos esta diapositiva. Las letras no se leen individualmente: ms bien, se reconocen formas o trozos de letras que forman palabras o frases. Las construcciones estructuradas son fragmentos lgicos que permiten al lector reconocer elementos procedimentales de un mdulo en lugar de leer el diseo o el cdigo lnea a lnea. Diseo a Nivel Componentes Programacin Estructurada 12. Las herramientas grficas => diagramas de flujo o de cajas , proporcionan formas gr ficas excelentes para representar fcilmente datos procedimentales . El diagrama de flujo es una imagen bastante sencilla. Usando una caja se indica un paso del proceso. Un rombo representa una condicin lgica y las flechas indican el flujo de control. Una secuencia se puede representar como cajas de procesamiento conectadas por una lnea (flecha) de control. Diseo a Nivel Componentes Notacin Grfica del Diseo 13. La condicin, llamada tambin si-entonces-si - no , se representa mediante el smbolo del rombo de decisin que, si es cierto, provoca el procesamiento de la parte entonces , y, si es falso, invoca el procesamiento de la parte si-no . La repeticin se representa mediante dos formas ligeramente diferentes. El mientras-hacer prueba una condicin y ejecuta una tarea de bucle repetidamente siempre que la condicin siga siendo verdad. Un repetir-hasta primero ejecuta la tarea de bucle, despus prueba la condicin y repite la tarea hasta que la condicin falla. Diseo a Nivel Componentes Notacin Grfica del Diseo

14. Las construcciones estructuradas pueden anidarse unas en otras. Anidando construcciones de esta manera, se puede desarrollar un esquema lgico complejo. Cualquier bloque puede hacer referencia a otro mdulo, logrando as una estratificacin procedimental. Diseo a Nivel Componentes Notacin Grfica del Diseo

15. En muchas aplicaciones, puede ser necesario evaluar una combinacin compleja de condiciones y seleccionar acciones basadas en esas condiciones. Las tablas de decisin proporcionan una notacin que convierte acciones y condiciones en una forma tabular. Es difcil que la tabla se malinterprete. Se la puede usar como entrada legible para un algoritmo. Notacin Tabular del Diseo

16. El Lenguaje de Diseo de Programas (LDP) , Lenguaje Estructurado o Pseudocdigo , es un lenguaje rudimentario , pues usa el vocabulario de un idioma humano (ejemplo: Ingls ), y la sintaxis de un lenguaje estructurado de programacin >>. A primera vista LDP se parece a un lenguaje de programacin moderno. Con la diferencia del empleo de texto descriptivo (Ingls) insertado en las sentencias de LDP. Lenguaje de Diseo de Programas (LDP)

17. Como se utiliza texto descriptivo insertado directamente en una estructura sintctica, este lenguaje no se puede compilar. Sin embargo, las herramientas LDP actuales convierten LDP en un esquema de lenguaje de programacin, y/o representacin grfica (diagrama de flujo de diseo, tablas de referencia cruzadas, etc.). Lenguaje de Diseo de Programas (LDP)
Search

DISEO AL NIVEL DE COMPONENTES


El diseo a nivel de componentes se presenta a menudo despues que se ha terminado la primera iteracion del diseo arquitectonico. y el objetivo de esta fase es traducir el diseo en software operaciona. El diseo a nivel de componentes define las estructuras de datos, los algoritmos, las caracteristicas de la interfaz y los mecanismos de comunicacion asignados a cada componente de software. esta fase permite revisar si los detalles de diseo son correctos y consistentes con las representaciones iniciales de diseo QUE ES UN COMPONENTE? Es un bloque de construccion modular par el software de computo. una parte modular desplegable y reemplazable de un sistema que encapsula implementacion y expone un conjunto de interfaces. desde el punto de vista orientado a objetos un componente es un conjunto de clases ques se interrelacionan entre si. en el contexto convencional de ingenieria de software un componente es un elemento funcional que incorpora la logica del procesamiento y las estructuras internas de datos necesarios para implementar dicha logica y una interfaz que permita la invocacion del componente y el paso de los datos. los componentes pueden ser de tres tipos 1. componente de control que coordina la invocacion de todos los demas componentes del dominio del problema. 2. un componente del dominio del problema que implementa una funcion parcial o completa requerida por el cliente. 3. un componente de infraestructura responsable de funciones que soportan el procesamiento requerido en el dominio del problema. a continuacion se presenta un ejemplo de un diseo a nivel de componentes utilizando UML

DISEO DE COMPONENTES BASADOS EN CLASES cuando se elige un metodo de ingenieria de software basado en componentes el nivel de diseo de estos se concentra en la elaboracion de clases de analisis y la definicion y afinacion de clases de infraestructura. hay cuatro principios basicos basados en el nivel de diseo de componentes 1. El principio abierto ceraddo PAC un modulo debe estar abiero para extenciones pero cerrado para modificaciones. 2. Principio de sustitucion de Liskov PSL debe tenerse la opcion de sustituir las subclases con sus clases principales. 3. Principio de la inversion de la dependencia PID dependa de las abstracciones no de las concreciones, mientras un componentes dependa mas de de otros componentes concretos es mas dificil extenderlos. 4. Principio de la segregacion de la interfaz es mejor tener tener muchas interfaces especificas del cliente que una interfaz de proposito general. existen tambien principios de empaquetamiento los cuales son Principio de equivalencia entre reutilizacion y version, la esencia de la reutilizacion es la misma que la version Principio del cierre comun, las clases que cambian juntas deben mantenerse juntas Principio comun de la reutilizaicon PCR las clases que no se reutilizan juntas no deben mantenerse juntas Existen distintas lineas generales que se pueden seguir durante el diseo de componentes

1. los componentes deben definirse convensiones de asignacion de nombres, los cuales provengan del dominio del sistema y tener algun significado para los participantes 2. interfaces proporcionan informacion importante acerca de la comunicacion y colaboracion, aun que al tener muchas se puede crear confucion en el diagrama uml por lo que se recomienda entre otras cosas al tener demasiadas usar circulos en ves de rectangulos y mostrar solo las mas importantes 3. las dependencias de izquierda a derecha y las herencias la clase principal arriba y deribadas abajo COHESION Implica que un componente o una clase encapsula unicamente atributos y operaciones relacionadas estrechamente entre si y con la clase del propio componente. existen distintos tipos de cohesion Funcional, cuando un modulo realiza un solo calculo y devuelve el resultado De capa, cuando una capa superior tienen acceso a una inferior pero no al reves De comunicacion, todas las operaciones con acceso a los mismos datos se definen dentro de una clase. Secuencial, las operaciones estan agrupadas de manera que primero permita la entrada al siguiente y asis sucesivamente. Procedimental Temporal Utilitaria

ACOPLAMIENTO Es una medida cualitativa del grado al que las clases se conectan entre si a medida que las clases se vuelven mas interdependientes el acoplamiento aumenta. Acoplamiento comun Acoplamiento del contenido Acoplamiento de control Acoplamiento de estampa Acoplamiento de datos Acoplamiento de llamada a rutina Acoplamiento de uso de tipo Acoplamiento de incursion o aportacion Acoplamiento externo NOTACION GRAFICA DEL DISEO

Publicado por Paco en 15:21

S-ar putea să vă placă și