libro de diseño version final

52

Upload: adakarina-vera

Post on 31-Mar-2016

226 views

Category:

Documents


3 download

DESCRIPTION

 

TRANSCRIPT

Equipo Editorial:

Dirección Editorial: Adakarina Vera

Editora General: Carminy Angulo

Diseñador Gráfico: Erick Umanchuk

Efectos: Larysa Guerra Yesenia Borges Lógica Alfa 1 Ed.- Maracay: Alyce, 2013 6 P.; 210 X 297 Mm

EDITOR

En el mundo actual, el diseño de sistemas conserva la capacidad de formar mentes creativas y fusionarlas con las tecnologías más eficientes. Dando lugar, a la innovación no solo de espacios físicos sino de objetos de la vida cotidiana, permitiendo la transformación de las ideas en el tiempo y generando el impulso necesario a las nuevas generaciones del conocimiento. Tal y como lo demuestra, el software educativo de alfa lógica aquí reseñado en nuestra publicación Alyce.

CONTENIDO ABREVIADO

CONTENIDO

CONTENIDO

El Diseño de sistemas es el arte de definir la arquitectura de hardware y software, componentes, módulos y datos de un sistema de cómputo para satisfacer ciertos requerimientos.

El diseño de sistemas tiene un rol más respetado y crucial en la industria de procesamiento de datos.

Los métodos de Análisis y diseño orientado a objetos se están volviendo en los métodos más ampliamente utilizados para el diseño de sistemas. El UML se ha vuelto un estándar en el análisis. Es ampliamente utilizado para el modelado de sistemas de software y se ha incrementado su uso para el diseño de sistemas que no son software así como organizaciones.

El diseño de datos consiste en descubrir y la definir completamente de los procesos y características de los datos de la aplicación.

07

Este proceso de perfeccionamiento gradual que abarca desde la cuestión más elemental, "¿Qué datos requiere la aplicación?", hasta los procesos y estructuras de datos precisos que proporcionan dichos datos. Si el diseño de datos es bueno, el acceso a los datos de la aplicación será rápido y fácil de mantener, y podrá aceptar sin problemas las futuras mejoras de los datos.

El proceso de diseño de datos incluye la identificación de los mismos, la definición de tipos de datos y mecanismos de almacenamiento concretos, y la tarea de garantizar la integridad de los

datos mediante el uso de reglas de empresa y otros mecanismos de exigencia en tiempo de ejecución.

Comprende el establecimiento de un marco de trabajo estructural básico para un sistema; alude a la estructura general del software y el modo en que la estructura ofrece una integridad conceptual al sistema.

De modo simple se puede considerar que está compuesta por la estructura jerárquica de los módulos, la manera en la que dichos componentes

08

interactúan y la estructura de datos que es usada por estos módulos.

Es el diseño de computadoras, aplicaciones,

máquinas, dispositivos de comunicación móvil, aplicaciones de software, y sitios web enfocado en la experiencia de usuario y la interacción.

Normalmente es una actividad multidisciplinar que involucra a varias ramas es decir al diseño y el conocimiento como el diseño gráfico, industrial, web, de software y la ergonomía; y está implicado en un amplio rango de proyectos, desde sistemas para computadoras, vehículos hasta aviones comerciales.

09

Su objetivo es que las aplicaciones o los objetos sean más atractivos y además, hacer que la interacción con el usuario sea lo más intuitiva posible, conocido como el diseño centrado en el usuario

También conocido como diseño basado en componentes, consiste en la traducción de cada uno de los elementos obtenidos en la especificación de procesos, datos y transición hacia elementos que se pueden implementar a través de computadoras.

El contexto del enfoque orientado a objetos (EOO) un objeto es una entidad que encapsula datos (atributos) y acciones o funciones que los manejan (métodos). También para el EOO un objeto se define como una instancia o particularización de una clase.

10

Los objetos de interés durante el desarrollo de software no sólo son tomados de la vida real (objetos visibles o tangibles), también pueden ser abstractos. En general son entidades que juegan un rol bien definido en el dominio del problema. Un libro, una persona, un carro, un polígono, son apenas algunos ejemplos de objeto.

Cada objeto puede ser considerado como un proveedor de servicios utilizados por otros objetos que son sus clientes. Cada objeto puede ser a la vez proveedor y cliente. De allí que un programa pueda ser visto como un conjunto de relaciones entre proveedores clientes. Los servicios ofrecidos por los objetos son de dos tipos:

1. Los datos, que llamamos atributos.

2. Las acciones o funciones, que llamamos métodos.

El proceso orientado a objetos se mueve a través de una espiral evolutiva que comienza con la comunicación con el usuario- En esta parte se define el dominio del problema y se identifican las clases básicas del problema.

11

La planificación y el análisis de riesgos establecen una base para el plan de proyecto OO.

El trabajo técnico asociado con la ingeniería del software OO sigue las siguientes tareas:

Identificar clases candidatas

Buscar clases en biblioteca

Extraer nuevas clases si existen

Desarrollar las clases sino existen

Añadir las nuevas clases a la biblioteca

Construir n-ésima iteración del sistema.

12

Objeto: Los datos están cuantificados en entidades discretas y distinguibles.

Clase: Significa que los objetos con la misma estructura de datos (atributos) y comportamiento (operaciones) se agrupa para formar una clase.

Atributo: Describen la clase o el objeto de alguna manera

Mensajes: Medio por el cual interactúan los objetos

Polimorfismo: Significa que una misma operación puede comportarse de modos distintos en distintas clases.

Herencia: Compartir atributos y operaciones entre clases tomando como base una relación jerárquica.

El análisis y diseño orientado a objetos

constituye una nueva forma de pensar acerca de problemas empleando modelos que son útiles para comunicarse con expertos en esa aplicación, modelar empresas, preparar documentacion,

13

documentación, diseñar programas y bases de datos.

Un modelo es una abstracción de algo, cuyo objetivo es comprenderlo antes de construirlo.

Dado que los modelos omiten los detalles no esenciales, es más sencillo manipularlos que manipular la entidad original. La abstracción es una capacidad humana que nos permite enfrentarnos a la complejidad.

Los ingenieros, artistas y artesanos han estado construyendo modelos durante miles de años para probar los diseños antes de ejecutarlos. El desarrollo de sistemas hardware y software no es una excepción.

La metodología OMT fue creada por James Rumbaugh y Michael Blaha en 1991, mientras James dirigía un equipo de investigación de los laboratorios General Electric. Cabe resaltar que Rumbaugh se unió a Rational Software en1994, y trabajó allí con Ivar Jacobson y Grady Booch ("los Tres Amigos") para desarrollar UML. Más tarde fusionaron sus metodologías de desarrollo de software, OMT, OOSE y Booch en el Proceso Unificado Racional (RUP), una de las metodologías más utilizadas en la actualidad.

14

En su momento, OMT fue una de las metodologías de análisis y diseño orientada a objetos, más maduras y eficientes. La gran virtud aportada por esta metodología fue su carácter de abierta (no propietaria), que le permitió ser de dominio público y, en consecuencia, sobrevivir con enorme vitalidad. Lo que facilitó su evolución para acoplarse a las necesidades futuras de la ingeniería de software.

1. Análisis de objetos: se centra en entender y modelar el problema en el dominio de la aplicación.

2. Diseño del sistema: se determina la arquitectura del sistema en términos de subsistemas.

15

3. Diseño de objetos: se refina y optimiza el análisis de objetos para implementarlo.

4. Implementación: se codifica y prueba lo ya diseñado.

Ciclo de vida OMT

En primer lugar, se describe el problema. Se obtienen unos requisitos que no den lugar a dudas (rendimiento, funcionalidad, contexto).

16

En segundo lugar, se hacen los diagramas de objetos. En él se define la estructura de los objetos y clases así como las relaciones que los unen. Comprende tanto un diagrama de clases como un diccionario de datos que las explique.

Luego, se crea un modelo dinámico para describir los aspectos de control y evolución del sistema. Incluye un diagrama de flujo de sucesos del sistema y un diagrama de estado por cada clase que tenga un comportamiento dinámico.

Después se crea un modelo funcional que describa las funciones, los valores de entrada y salida, e imponga las restricciones pertinentes. Se suelen usar los diagramas de flujo de datos orientados a objetos.

Por último, se verifican todos los modelos creados y se itera para conseguir un refinamiento de los tres modelos

17

Los pasos para construir el modelo de objetos son los siguientes:

Identificación de objetos y/o clases.

Crear un diccionario de datos.

Identificación de las asociaciones y agregaciones entre los objetos.

Identificación de atributos y enlaces.

Organización y simplificación de las clases empleando herencia.

Verificación de las vías de acceso necesarias para llevar a cabo las probables consultas.

Realizar las iteraciones necesarias para el refinamiento del modelo.

Agrupar las clases en módulos.

En él se describen las clases que se descubrieron para el sistema analizado en términos del dominio del problema. Además se especifican los atributos y operaciones que distinguen a cada una de las clases y las relaciones con las que podemos conocer su responsabilidad en el sistema.

Modelo de objetos = Diagrama de modelo de objetos + diccionario de datos.

18

Notación: dentro del diagrama de clases, una clase se representa mediante un rectángulo, donde pueden existir tres separaciones, en la primer parte se coloca el nombre de la clase, en la segunda y tercera parte se pueden agregar los atributos y las operaciones, pero si no se desea

agregar ninguno de ellos, es porque no son tan importantes para la comprensión del sistema, entonces el rectángulo solo se queda con el nombre de la clase.

Atributos: Es un dato que distingue a una clase y que puede almacenar valores para el mismo en cada instancia que genere la clase. Debe tener un nombre y el tipo de dato que va a recibir. Los atributos se colocan en la segunda parte del rectángulo de la clase, primero se coloca el nombre del atributo, después precedido de dos puntos (:) el tipo de dato que recibirá y

en algunos casos se podrá especificar el valor inicial que recibe precedido por un signo de igual (=).

Relaciones (asociaciones): Representan los enlaces entre las instancias dentro del diagrama. Se representan mediante una línea que conecta a las instancias junto con el nombre de la asociación que por lo general es un verbo.

Clase 1

Nombre_Asociación Clase 2

19

Tipos de Asociaciones

Los pasos para construir el modelo dinámico son los siguientes:

Preparación de escenarios de secuencias típicas de iteración.

Identificación de sucesos que actúan entre objetos.

20

Preparar un seguimiento de sucesos para cada escenario.

Construcción de un diagrama de estado para cada objeto.

Comparación de los sucesos intercambiados entre objetos para verificar la congruencia.

Una traza de eventos es una lista ordenada de eventos entre diferentes objetos (actores) asignados a columnas en una tabla. Se utiliza para identificar mensajes entre los actores de un cierto problema; de esta forma se pueden ver qué eventos afectan directamente a cada actor. Este diagrama muestra la ocurrencia de los eventos a través del tiempo, e indica un escenario que luego deberá ser incluido en el diagrama de estado. Los estados en este diagrama

son los intervalos que ocurren entre cada evento; por lo que ayuda bastante en la identificación de los estados.

Modelo dinámico = Diagrama global de flujo de sucesos + Diagrama de estados

21

Relaciona sucesos y estados. Un diagrama de estados se representa mediante estados, restricciones, condiciones y acciones.

Estados: Los estados representan las respuestas de los objetos a varios sucesos en determinado tiempo dentro del sistema. Dicha respuesta puede cambiar el estado del objeto. Se

representan mediante cuadros redondeados que contienen un nombre.

Transiciones: Se representan mediante flechas que salen del estado receptor hasta el estado destino y el nombre que se coloca en la flecha es el nombre del suceso que dio lugar a dicha transición, cada transición que sale de un estado corresponde a un suceso distinto, lo cual indica que no deben de existir sucesos duplicados dentro de un estado.

Los pasos para construir el modelo funcional son los siguientes:

Identificación de los valores de entrada y de salida.

Construcción de diagramas de flujo de datos que muestren las dependencias funcionales.

Evento/[condición]/acción

22

Descripción de las funciones.

Identificación de restricciones.

Especificación de los criterios de optimización.

Procesos: se representan mediante una elipse, los procesos tienen como entrada de datos, los cuales serán transformados, por lo cual un

proceso es visto como un método de una operación aplicada a una clase de objetos.

Flujo de datos: un flujo de datos conecta la salida de un proceso a la entrada de otro. Se representa en el diagrama por medio de una flecha, la cual puede llevar el nombre o el tipo de dato. Además de trasladar los datos a otros procesos, los flujos de datos pueden usarse para

copiar un valor, realizar la composición de un agregado y así como su inverso.

Modelo Funcional = Diagrama de flujo de datos + restricciones

Proceso

23

Actores: los actores son objetos que consumen y producen datos generando operaciones por sí mismos, estos se encuentran siempre en las fronteras del diagrama indicando entradas y

salidas de datos. En el diagrama son representados mediante rectángulos.

Almacenes de datos: son objetos cuya tarea es permitir el almacenamiento y acceso de datos. Se

representan en el diagrama mediante unas líneas paralelas que tienen el nombre del almacén

El diseño del sistema es la estrategia de alto nivel para resolver el problema y construir una solución, incluye decisiones sobre la organización del sistema (arquitectura del sistema) en subsistemas, la asignación de subsistemas

ACTOR

Documento de Análisis = Definición del problema + modelo de objetos +modelo

dinámico + modelo funcional.

ALMACÉN DE DATOS

24

a componentes de hardware y software y decisiones conceptuales y de política que son las que constituyen el marco de trabajo para el diseño detallado.

Los pasos a seguir son:

Organizar el sistema en subsistemas.

Identificar la concurrencia inherente en el problema.

Asignar los subsistemas a procesadores y a tareas.

Seleccionar la estrategia básica de implementación de los almacenes de datos, en términos de estructuras de datos, archivos y bases de datos.

Identificar los recursos globales y determinar los mecanismos para controlar el acceso a tales recursos.

En el Diseño de Objetos se toman las decisiones necesarias para construir un sistema sin irse a los detalles particulares de un lenguaje o sistema de base de datos. Es un comienzo en el desplazamiento del mundo real, orientándose en la computadora, para así lograr una implementación práctica.

25

Entre sus etapas :

Obtención de las operaciones para el modelo de objetos a partir de los demás modelos.

Diseño de algoritmos para la implementación de las operaciones.

Optimización de las vías de acceso a los datos.

Implementar el control del software completando la aproximación seleccionada durante el diseño del sistema.

Diseño de la implementación de las asociaciones y su estructura de clases

Se determina la representación exacta de los atributos que son objetos.

Empaquetamiento de las clases y asociaciones en módulos.

Durante la implementación se codifican, tanto las estructuras en el dominio de la aplicación como las estructuras en el dominio de la solución. La base que la sustenta es el diseño de objetos.

El código puede ser una simple transición de las decisiones de diseño a las características propias de un lenguaje.

Aquí se den hacer pruebas para determinar si el sistema está siendo construido correctamente.

26

Es una herramienta de dibujo que trabaja como un editor de diagramas en línea, mediante una cuenta se puede acceder a sus sistema, tal y como se puede apreciar en la figura de la

izquierda. Entre sus características principales se encuentra, la facilidad con la que se trabaja, ya que al entorno amigable conduce al usuario a crear desde pantallas simples hasta portadas de trabajo de gran calidad.

Por ejemplo, si se desea realizar un software educativo aplicado a una materia y estudiar los distintos casos de usos como el inicio de una

sesión o las consultas del cronograma de actividades, se tendría una muestra como la siguiente. Asimismo, se puede apreciar que si quisiéramos cambiar los colores o agregar otros agregados importantes también es posible.

27

Además, cuenta con la posibilidad de obtener la captura de cada uno de los diseños de manera nítida, así como la fortuna que brinda al permitir más de un colaborador en cada hoja de trabajo, donde en tiempo real cada participante desarrollar una idea en paralelo con el otro e ir actualizándolo al instante.

En este ejemplo, se ingresa al sistema procediendo a realizar un diagrama de

descomposición funcional de un software educativo donde las tres participantes en este modelo comparten una conversación sobre los colores y el diseño de cada una de las partes.

La creatividad y el ingenio son dos de las principales cualidades que un ingeniero debe desarrollar a lo largo de su profesión, ambas garantizan el avance de sus proyectos y el cumplimiento de sus metas.

Dentro del ciclo de vida de un diseño, se encuentra inmiscuido el proceso de creación de las pantallas o las interfaces requeridas para que el usuario final tenga una muestra de lo que

28

el producto final pretende lograr.

En términos generales, una excelente opción es recurrir al programa de Adobe Photoshop ya que al ser un editor gráfico permite realizar cualquier montaje de manera simple y en pocos minutos.

Sus funciones en cuanto a la potencia y los efectos que suministra para la edición de los videos como es su versión CS6, la cual viene incluida por defecto la cual viene incluida por defecto y fomenta al máximo la calidad de cada proyecto que inicie.

En el ejemplo, se observa el progreso de un software educativo diseñado para una materia de lógica matemática para una universidad

29

Romper paradigmas es un arte que consiste en innovar y reorganizar las normas de trabajo, y aunque funciona con casi cualquier rama del mundo.

Para lo cual, se insta al diseñador a usar un instrumento con calidad, funcionalidades diversas y fácil manejo, en la actualidad uno de los más conocidos es el Camtasia Studio que cumple con creces los estándares del mercado.

Ventajas de trabajo:

Permite la grabación de voz.

Capturar cualquier imagen de la pantalla para luego ser modificada.

Completa los proyectos al dar la opción de publicar en formatos Flash. QuickTime, AVI, e incluso prepararlo para plataformas web u otros.

30

Vender una idea en un espacio como el internet, es ahora sencillo y funcional, lo que ha renovado la creencia de que todo lo imaginable es absolutamente mercancía disponible.

En esta oportunidad, se escogieron dos vertientes una es la de Webnode y Weebly, cada una mediante un entorno de plantillas sugiere a los usuarios los pasos a seguir para crear al gusto una página web con todas las características necesarias.

Webnode Weebly Es un sistema de alta calidad con

múltiples funciones en su versión

gratuita.

Es intuitivo, fácil de utilizar

pero cuenta con la desventaja

de no tener soporte en habla

hispana.

Su forma de trabajo puede ser

algo engorrosa en usuarios

principiantes.

Es flexible mediante su

creación y cuenta con una vista

general para los dispositivos

móviles.

Posee una tienda online dedicada

al comercio online, lo que llama

la atención de los usuarios

profesionales.

Tiene gran capacidad en

referencia a las

funcionalidades que su blog

presenta al público en general. 31

El objetivo de la ingeniería inversa es obtener información o un diseño a partir de un producto accesible al público, con el fin de determinar de qué está hecho, qué lo hace funcionar y cómo fue fabricado.

El método se denomina así porque avanza en dirección opuesta a las tareas habituales de ingeniería, que consisten en utilizar datos técnicos para elaborar un producto determinado.

33

En general, si el producto u otro material que fue sometido a la ingeniería inversa fue obtenido en forma apropiada, entonces el proceso es legítimo y legal.

El proceso de normalización de bases de datos consiste en aplicar una serie de reglas a las relaciones obtenidas tras el paso del modelo entidad-relación al modelo relacional.

34

Las bases de datos relacionales se normalizan para:

Evitar la redundancia de los datos.

Evitar problemas de actualización de los datos en las tablas.

Proteger la integridad de los datos.

Es un campo de las ciencias de la computación referido al proceso que intenta descubrir patrones en grandes volúmenes de conjuntos de datos.

Utiliza los métodos de la inteligencia artificial, aprendizaje automático, estadística y sistemas de bases de datos.

El objetivo general del proceso de minería de datos consiste en extraer información de un conjunto de datos y transformarla en una estructura comprensible para su uso posterior.

35

Es la representación gráfica del algoritmo o proceso. Se utiliza en disciplinas como programación, economía, procesos industriales y psicología cognitiva.

Diagrama de actividad para inicio de sesión.

37

Es un tipo de diagrama usado para modelar interacción entre objetos en un sistema según UML. Muestra la interacción de un conjunto de objetos en una aplicación a través del tiempo y se modela para cada caso de uso

Diagrama secuencial para inicio de sesión.

Es un diagrama que muestra interacciones organizadas alrededor de los roles. A diferencia de los diagramas de secuencia, los diagramas de colaboración, también llamados diagramas de comunicación, muestran explícitamente las relaciones de los roles.

38

Diagrama de colaboración para inicio de sesión.

Lenguaje Unificado de Modelado es un lenguaje gráfico para visualizar, especificar, construir y documentar un sistema.

Diagrama Caso de uso incicio de sesión

39

La descomposición funcional se refiere ampliamente al proceso de resolución de una relación funcional en sus partes constituyentes, de tal manera que la función original se puede reconstruir (es decir, recompuestos) de las partes en función de la composición.

En general, este proceso de descomposición se lleva a cabo ya sea con el fin de hacerse una idea de la identidad de los elementos constitutivos, o con el fin de obtener una representación comprimida de la función global, una tarea que sólo es posible cuando los procesos constitutivos poseen un cierto nivel de modularidad

Diagrama de descomposición funcional.

40

Es un conjunto de datos pertenecientes a un mismo contexto y almacenados sistemáticamente para su posterior uso.

Organización de datos en el almacenamiento secundario

Para que las computadoras puedan almacenar y procesar los datos, estos se organizan regularmente en ciertos elementos y se agrupa con sus similares, para formar otro elemento más complejo:

Base de datos: Está conformada por un conjunto de archivos interrelacionados. Diseño de la implementación de las asociaciones y su estructura de clases.

Archivo: Es un conjunto de registros relacionados.

Registro: Está conformado por la agrupación de campos relacionados.

Carácter: Es una letra, un número, signo de puntuación o signo especial.

Campo: Contiene un grupo de caracteres que agrupados conforman un dato o atributo de información.

41

Ejemplo de Bases de Datos

Son una herramienta para el modelado de datos de un sistema de información. Estos modelos expresan entidades relevantes para un sistema de información, sus inter-relaciones y propiedades.

Ejemplo de Modelo Entidad-Relación

42

El diseño de relaciones entre las tablas de una base de datos puede ser la siguiente:

Relaciones de uno a uno: una instancia de la

entidad A se relaciona con una y solamente una de la entidad B.

Relaciones de uno a muchos: cada

instancia de la entidad A se relaciona con varias instancias de la entidad B.

Relaciones de muchos a muchos: cualquier instancia de la entidad A se relaciona con cualquier instancia de la entidad B.

Una base de datos, a fin de ordenar la información de manera lógica, posee un orden que debe ser cumplido para acceder a la información de manera coherente. Cada base de datos contiene una o más tablas, que cumplen la función de contener los campos.

43

Diagrama de descomposición funcional.

44

Estructura de Datos

45

El tiempo es uno de los recursos que más utilizamos en nuestro día a día, por lo que cuando se plantean proyectos ya sea para diseñar una revista, programar un software e incluso salir al mercado se deben establecer unas pautas con respecto a como se maneja ese espacio de tiempo.

Por consiguiente, es necesario plantear :tres elementos en particular:

1.Establecer las prioridades de trabajo, empezando por lo más inmediato.

2.Aprender a delegar funciones , esto evitara sentir aturdido de cosas por hacer.

3.Estime un calendario de actividades, que le suministre la secuencia de labores a realizan y cuanto tiempo tardara en cada una.

47

Este tipo de diseño se centra en desarrollo de ideas fáciles y sencillas que permitan adaptarse a la situación de las personas. Se proyecta para obtener una mejor calidad de vida para todos los ciudadanos. Por ende, es buscar que todos por igual tenga un espacio de encuentro unificado. Se fundamenta en los siguientes principios:

IGUALDAD DE USO

FLEXIBILIDAD

USO SIMPLE Y FUNCIONAL

INFORMACIÓN COMPRENSIBLE

TOLERANCIA AL ERROR

BAJO ESFUERZO FÍSICO

ESPACIO Y TAMAÑO PARA EL ACERCAMIENTO Y USO

48

49