PATRONES. Experto. Solución:
|
|
- Carlos Navarro Fidalgo
- hace 8 años
- Vistas:
Transcripción
1 PATRONES. Experto. Asignar una responsabilidad a la clase que tiene la información necesaria para cumplirla. Cuál es el principio fundamental en virtud del cual asignaremos las responsabilidades a los objetos? Durante el diseño OO, cuando se definen las interacciones entre los objetos, tomamos decisiones sobre la asignación de responsabilidades a las clases. Si se hacen de forma adecuada, los sistemas tienden a ser más fáciles de entender, mantener y ampliar, y se nos presenta la oportunidad de reutilizar componentes. Ejemplo: En la aplicación punto de venta, alguna clase necesita conocer el gran total de la venta. Se plantea esta pregunta: Quién es el responsable de conocer el gran total de la venta? Para calcular el total hay que conocer todas las instancias VentasLineadeProducto de una venta y la suma de sus subtotales. Y esto conoce únicamente la instancia Venta; desde el punto de vista del Experto, Venta es la clase correcta para asumir esta responsabilidad; es el experto en información. Para determinar el subtotal de la línea de productos se necesitan VentasLineadeProducto.cantidad y EspecificaciondeProducto.precio; desde la perspectiva del patrón Experto, VentasLineadeProducto debería calcular el subtotal; es el experto en información. VentasLineadeProducto no puede cumplir la responsabilidad de conocer y dar el subtotal, si no conoce el precio del producto. EspecificaciondeProcucto es un Experto en información para contestar su precio; por tanto, habrá que enviarle un mensaje preguntándole el precio.
2 Para cumplir con la responsabilidad de conocer y dar el total de la venta, se asignaron tres responsabilidades a las tres clases objeto: Clase. Venta: VentasLineasdeProducto: EspecificaciondeProducto: Responsabilidad. Conoce el total de la venta. Conoce el subtotal de la línea de producto. Conoce el precio del producto. Explicación: El Experto en Información se utiliza con frecuencia en la asignación de responsabilidades; es un principio de guía básico que se utiliza continuamente en el diseño de objetos. El Experto expresa la intuición común de que los objetos hacen las cosas relacionadas con la información que tienen. A menudo el cumplimiento de la responsabilidad requiere información que está dispersa por diferentes clases de objetos. Esto implica que hay muchos expertos en información parcial que colaborarán en la tarea. Contraindicaciones: En algunas ocasiones la solución que sugiere el Experto no es deseable debido a problemas de cohesión y acoplamiento. - Se conserva el encapsulamiento, ya que los objetos se valen de su propia información para hacer lo que se les pide. Esto soporta un bajo acoplamiento, lo que favorece al hecho de tener sistemas más robustos y de fácil mantenimiento. - El comportamiento se distribuye entre clases que cuentan con la información requerida, alentando con ello definiciones de clase sencillas y más cohesivas que son más fáciles de comprender y mantener. Así se brinda soporte a una alta cohesión. - Bajo Acoplamiento. - Alta Cohesión.
3 Creador. Asignarle a la clase B la responsabilidad de crear una instancia de clase A en uno de los siguientes casos: B agrega los objetos A. B contiene los objetos A. B registra las instancias de los objetos A. B utiliza específicamente los objetos A. B tiene datos de inicialización que serán transmitidos a A cuando este objeto sea creado (así que B es un Experto respecto a la creación de A). Quién debería ser responsable de crear una nueva instancia de alguna clase? B es un creador de los objetos A. Si se puede aplicar más de una opción, B es una clase que agrega o contiene objetos de A. Ejemplo: En la aplicación del punto de venta, quién debería encargarse de crear una instancia VentasLineadeProducto? Desde el punto de vista del patrón Creador, deberíamos buscar una clase que agregue, contenga y realice otras operaciones sobre ese tipo de instancias. Una Venta contiene (agrega) muchos objetos VentasLineadeProducto; por ello, el oatrón Creador sugiere que Venta es idónea para asumir la responsabilidad decrear las instancias VentasLineadeProducto. Esta asignación de responsabilidades requiere definir en Venta un método de hacerlineadeproducto. Explicación: La intención básica del patrón Creador es encontrar un creador que necesite conectarse al objeto creado en alguna situación. Eligiéndolo como creador se favorece el Bajo Acoplamiento. Algunas veces se encuentra un creador buscando las clases que contienen los datos de inicialización que se pasaran durante la creación. se brinda soporte a un bajo acoplamiento.
4 Bajo acoplamiento. Asignar una responsabilidad para mantener bajo acoplamiento. Cómo dar soporte a una dependencia escasa y a un aumento de la reutilización? El acoplamiento es una medida de fuerza con que una clase está conectada a otras clases, con las que conoce y con que recurre a ellas. Una clase con bajo acoplamiento no depende de muchas otras. Una clase con alto acoplamiento recurre a muchas otras. Presentan los siguientes problemas: - Los cambios de las clases afines ocasionan cambios locales. - Son más difíciles de entender cuando están aisladas. - Son más difíciles de reutilizar porque se requiere la presencia de otras clases de las que dependen. Explicación: El patrón Bajo Acoplamiento impulsa la asignación de responsabilidades de manera que su localización no incremente el acoplamiento hasta un nivel que nos lleve a resultados negativos. Ejemplo: Suponiendo que se necesita crear una instancia Pago y asociarla a Venta. Qué clase se encargará de hacer esto? Puesto que una instancia TPDV registra un Pago, el patrón Creador indica que TPDV es un buen candidato para producir el Pago. La instancia TPDV podría entonces enviarle a Venta el mensaje agregarpago, transmitiendo al mismo tiempo el nuevo Pago como parámetro. - No se afectan por cambios de otros componentes. - Fáciles de entender por separado. - Fáciles de reutilizar.
5 Alta cohesión. Asignar una responsabilidad de modo que la cohesión siga siendo alta. Cómo mantener la complejidad dentro de los límites manejables? La cohesión es una medida de cuán relacionadas y enfocadas están las responsabilidades de una clase. Un elemento con responsabilidades altamente relacionadas y que no hace una gran cantidad de trabajo tiene alta cohesión. Una clase con baja cohesión hace muchas cosas no relacionadas o demasiado trabajo. No convienen este tipo de clases pues presentan los siguientes problemas: - Son difíciles de comprender. - Son difíciles de reutilizar. - Son difíciles de conservar. - Son delicadas: les afectan constantemente los cambios. Las clases con baja cohesión a menudo representan un alto grado de abstracción o han asumido responsabilidades que deberían haber delegado a otros objetos. - Mejoran la claridad y la facilidad con que se entiende el diseño. - Se simplifican el mantenimiento y las mejoras en funcionalidad. - A menudo se genera un bajo acoplamiento. - La ventaja de una gran funcionalidad soporta una mayor capacidad de reutilización, porque una clase muy cohesiva puede destinarse a un propósito muy específico.
6 Controlador. Asignar la responsabilidad del manejo de un mensaje de los eventos de un sistema a una clase que represente una de las siguientes opciones: El sistema global: controlador de fachada. La empresa u organización global: controlador de fachada. Algo en el mundo real que es activo y que pueda participar en la tarea: controlador de tareas. Un manejador artificial de todos los eventos del sistema de un caso de uso: controlador de casos de uso. Quién debería encargarse de atender un evento del sistema? Un evento del sistema es un evento de alto nivel generado por un actor externo; es un evento de entrada externa. Se asocia a operaciones del sistema: las que emite en respuesta a los eventos del sistema. Un controlador es un objeto que no pertenece a la interfaz de usuario,responsable de manejar un evento del sistema. Define además el método de su operación. Ejemplo: Quién debería ser el controlador de eventos sistémicos como introducirproducto y terminarventa? De acuerdo con el patrón Controlador, disponemos de las siguientes opciones: - TPDV: representa el sistema global. - Tienda: representa la empresa u organización global. - Cajero: representa algo en el mundo real que está activo (por ejemplo, el papel de una persona) y que puede intervenir en la tarea. - ManejadordeComprarProductos: representa un manejador artificial de todas las operaciones del sistema de un caso de uso.
7 Explicación: La misma clase controlador debería utilizarse con todos los eventos sistémicos de un caso de uso, de modo que podamos conservar la información referente al estado del caso en el controlador. Esta información será útil para identificar los eventos del sistema fuera de la secuencia establecida. Puede emplearse varios controladores en los casos de uso. Un defecto frecuente al diseñar controladores consiste en asignarles demasiada responsabilidad. Normalmente un controlador debería delegar a otros objetos el trabajo que ha de realizarse mientras coordina la actividad. La primera categoría de controlador es un controlador de fachada que representa al sistema global. Es una clase que para el diseñador representa al sistema entero. Los controladores de fachada son adecuados cuando el sistema sólo tiene unos cuántos eventos o cuando es imposible redirigir los mensajes de los eventos del sistema a otros controladores. Si se elige un controlador de casos de uso entonces habrá un controlador diferente para cada caso de uso. No es un objeto del dominio; es una construcción artificial para dar soporte al sistema. Este controlador es una alternativa a tener en cuenta cuando la asignación de las responsabilidades a un controlador de fachada no conduce a diseños con baja cohesión o alto acoplamiento. Es una buena elección cuando hay muchos eventos del sistema repartidos por diferentes procesos; el controlador factoriza la gestión en clases separadas manejables. Resumiendo, el Controlador recibe la solicitud del servicio desde la capa de la IU y coordina su realización, normalmente delegando a otros objetos. - Mayor potencial de los componentes reutilizables. - Reflexionar sobre el estado del caso de uso.
8 Polimorfismo. Cuando por el tipo varían las alternativas o comportamientos afines, las responsabilidades del comportamiento se asignarán a los tipos en que el comportamiento presenta variantes. Cómo manejar las alternativas basadas en el tipo? De qué manera crear componentes software conectables? Alternativas basadas en el tipo. La variación condicional es un tema esencial en la programación. Si se diseña un programa mediante la lógica condicional if - then else o case, habrá que modificar la lógica del case cuando surja una variante. Este procedimiento dificulta extender un programa con otras variantes, porque se tiende a necesitar los cambios en varios lugares donde exista la lógica condicional. Componentes de software conectables. Viendo los componentes en las relaciones clienteservidor, cómo podemos reemplazar un componente por otro sin afectar al cliente? Explicación: Puesto que el comportamiento para la adaptación de un objeto varía según el objeto, según el patrón Polimorfismo deberíamos asignar la responsabilidad de la adaptación a los diferentes objetos de ese tipo, implementada con una operación polimórfica. Estos objetos no son externos, sino objetos software locales que representan a los externos. El Polimorfismo es un principio fundamental para diseñar cómo se organiza el sistema para gestionar variaciones similares. Según el Polimorfismo, un diseño basado en la asignación de responsabilidades puede ser extendido fácilmente para que realice nuevas variantes. Los objetos requerirán poca o nula modificación si soportan las operaciones polimórficas implementadas. Es fácil agregar las futuras extensiones para nuevas variaciones. Las nuevas implementaciones se pueden introducir sin afectar a los clientes.
9 Fabricación Pura. Problema que Asignar un conjunto altamente cohesivo de responsabilidades a una clase artificial que no representa nada en el dominio del problema: una cosa inventada para dar soporte a una alta cohesión, un bajo acoplamiento y reutilización. A quién asignar la responsabilidad cuando uno está desesperado y no quiere violar los patrones Alta Cohesión y Bajo Acoplamiento? Esa clase es una fabricación de la imaginación. En teoría, las responsabilidades que se asignan brindan soporte a una alta cohesión y a bajo acoplamiento, de modo que el diseño de fabricación sea muy limpio, o puro. Se dan muchas situaciones donde el asignar responsabilidades exclusivamente a las clases del dominio origina problemas por una mala cohesión o acoplamiento o bien por un escaso potencial de reutilización. Ejemplo: Supongamos que se necesita soporte para guardar las instancias Venta en una base de datos relacional. En virtud del patrón Experto, en cierto modo se justifica asignar esta responsabilidad a la clase Venta. Aunque en virtud del patrón Experto Venta es un candidato lógico para guardarse a sí misma en una base de datos, da origen a un diseño de baja cohesión, alto acoplamiento y bajo potencial de reutilización, precisamente el tipo de situación desesperada exige inventar algo. Una solución razonable consiste en crear una clase nueva que se encargue tan sólo de guardar los objetos en algún tipo de almacenamiento persistente: una base de datos relacional. Esta clase es una de Fabricación Pura, una mera abstracción de la imaginación. Crear una fabricación pura justifica su uso para lo siguiente: eliminar un diseño ineficiente, con mala cohesión y acoplamiento y cambiar por un buen diseño que ofrezca un mayor potencial de reutilización. Explicación: Para diseñar una Fabricación Pura debe buscarse ante todo un gran potencial de reutilización, asegurándose para ello de que sus responsabilidades sean pequeñas y cohesivas. Estas clases tienden a tener un conjunto de responsabilidades de grano fino. Una fabricación pura suele partirse atendiendo a su funcionalidad y, por lo mismo, es una especie de objeto de función central. No es crítico identificar una clase como Fabricación Pura. Algunas clases software se inspiran de acuerdo con las representaciones del dominio, y otras simplemente se crean por conveniencia del diseñador de objetos. Estas clases de conveniencia normalmente se crean para agrupar algún comportamiento común y por tanto, se inspiran según una descomposición de comportamiento en lugar de una descomposición de la representación.
10 Dicho de otro modo, una Fabricación Pura normalmente se organiza en base a funcionalidad relacionada. - Se brinda soporte a una Alta Cohesión porque las responsabilidades se dividen en una clase de gano fino que se centra exclusivamente en un conjunto muy específico de tareas afines. - Puede aumentar el potencial de reutilización debido a la presencia de clases de Fabricación Pura de grano fino, cuyas responsabilidades pueden utilizarse en otras aplicaciones.
11 Indirección. Problema que Se asigna la responsabilidad a un objeto intermedio para que medie entre otros componentes o servicios, y estos no terminen directamente acoplados. El intermedio crea una indirección entre el resto de los componentes o servicios. A quién se asignará las responsabilidades a fin de evitar el acoplamiento directo? De qué manera se desacoplarán los objetos de modo que se obtenga un Bajo Acoplamiento y se conserve un alto potencial de reutilización? Explicación: El motivo para la Indirección normalmente es el Bajo Acoplamiento; se añade un intermediario para desacoplar otros componentes o servicios. Bajo Acoplamiento. Variaciones Protegidas. Identifique los puntos de variaciones previstas o de inestabilidad; asigne responsabilidades para crear una interfaz estable alrededor de ellos. Cómo diseñar objetos, subsistemas y sistemas de manera que las variaciones o inestabilidades en estos elementos no tengan un impacto no deseable en otros elementos? Añadiendo un nivel de indirección, una interfaz, y utilizando el polimorfismo con varias implementaciones, se consigue proteger al sistema de las variaciones externas. Los objetos internos colaboran con una interfaz estable; las distintas implementaciones del adaptador ocultan las variaciones de los sistemas externos. Se añaden fácilmente las extensiones que se necesitan para nuevas variaciones. Se pueden introducir nuevas implementaciones sin afectar a los clientes. Se reduce el acoplamiento. Puede disminuirse el impacto o coste de los cambios.
12 Adaptador. Convierta la interfaz original de un componente en otra interfaz, mediante un objeto adaptador intermedio. Cómo resolver interfaces incompatibles, o proporcionar una interfaz estable para componentes parecidos con diferentes interfaces? Es un ejemplo del patrón Polimorfismo. Factoría. El Adaptador da lugar a un nuevo problema en el diseño: quién crea el adaptador? Cómo determinar qué clase de adaptador crear? Si los crea algún objeto del dominio, las responsabilidades de los objetos del dominio exceden la lógica pura de la aplicación y entran en otras cuestiones relacionadas con la conexión con componentes software externos. Además, hay que dividir en módulos o separar intereses distintos en áreas diferentes, de manera que cada una tenga un propósito cohesivo. Por tanto, la elección de un objeto del dominio para crear los adaptadores no está de acuerdo con el objetivo de separación de intereses, y disminuye su cohesión. Una alternativa típica es aplicar el patrón Factoría (o Factoría Concreta), en el que se define un objeto Fabricación Pura factoría para crear los objetos. Los objetos Factoría tienen varias ventajas: Separan la responsabilidad de la creación compleja en objetos de apoyo cohesivos. Ocultan la lógica de creación potencialmente compleja. Permiten introducir estrategias para mejorar el rendimiento de la gestión de la memoria, como objetos caché o de reciclaje. A menudo se accede a las factorías con el patrón Singleton.
13 Factoría Abstracta. Proporciones una interfaz para crear familias de objetos relacionados o que dependen entre sí, sin especificar sus clases concretas. Cómo crear familias de clases relacionadas que implementan una interfaz común? Contraindicaciones: Es difícil soportar nuevas clases de productos. Aísla a los clientes de las clases concretas de implementación. Favorece la consistencia entre productos. Singleton. Definir un método de clase o una función que no sea miembro y que devuelve el singleton. Permitir solo una instancia de una clase. Los objetos necesitan un solo punto de acceso. A veces conviene soportar la visibilidad global o un solo punto de acceso a una instancia individual de una clase y no a alguna otra forma de visibilidad. Puesto que la visibilidad ante las clases tiene un ámbito global, todo objeto puede llamar directamente el método clase que devuelva el elemento considerado Singleton. Permite el manejo de objetos únicos y que sean accesibles a otros objetos. Acceso controlado a la única instancia.
Diseño orientado al flujo de datos
Diseño orientado al flujo de datos Recordemos que el diseño es una actividad que consta de una serie de pasos, en los que partiendo de la especificación del sistema (de los propios requerimientos), obtenemos
Más detallesCLASE 10: MÁS PATRONES. Universidad Simón Bolívar. Ing. de Software. Prof. Ivette C. Martínez
CLASE 10: MÁS PATRONES Universidad Simón Bolívar. Ing. de Software. Prof. Ivette C. Martínez Polimorfismo Problema: Cómo manejar las alternativas basadas en el tipo? Cómo crear componentes conectables?
Más detallesLos mayores cambios se dieron en las décadas de los setenta, atribuidos principalmente a dos causas:
SISTEMAS DISTRIBUIDOS DE REDES 1. SISTEMAS DISTRIBUIDOS Introducción y generalidades La computación desde sus inicios ha sufrido muchos cambios, desde los grandes equipos que permitían realizar tareas
Más detallesARQUITECTURA DE DISTRIBUCIÓN DE DATOS
4 ARQUITECTURA DE DISTRIBUCIÓN DE DATOS Contenido: Arquitectura de Distribución de Datos 4.1. Transparencia 4.1.1 Transparencia de Localización 4.1.2 Transparencia de Fragmentación 4.1.3 Transparencia
Más detallesDISEÑO DE FUNCIONES (TRATAMIENTOS)
DISEÑO DE FUNCIONES (TRATAMIENTOS) Diseño Estructurado. Estrategias para Derivar el Diagrama de Estructura. Diseño de Módulos Programables. 1. DISEÑO ESTRUCTURADO El Diseño es el proceso por el cual se
Más detallesEXIGENCIA DE LA CLASIFICACIÓN POR LAS ADMINISTRACIONES PÚBLICAS
EXIGENCIA DE LA CLASIFICACIÓN POR LAS ADMINISTRACIONES PÚBLICAS EXIGENCIA DE LA CLASIFICACIÓN POR LAS ADMINISTRACIONES PÚBLICAS El artículo 54.1 de la Ley de Contratos del Sector Público (L.C.S.P.) exige,
Más detallesCapítulo 5. Cliente-Servidor.
Capítulo 5. Cliente-Servidor. 5.1 Introducción En este capítulo hablaremos acerca de la arquitectura Cliente-Servidor, ya que para nuestra aplicación utilizamos ésta arquitectura al convertir en un servidor
Más detallesCatoira Fernando Fullana Pablo Rodriguez Federico [MINERIA DE LA WEB] Proyecto Final - Informe Final
Catoira Fernando Fullana Pablo Rodriguez Federico [MINERIA DE LA WEB] Proyecto Final - Informe Final INTRODUCCION En principio surgió la idea de un buscador que brinde los resultados en agrupaciones de
Más detallesEstas visiones de la información, denominadas vistas, se pueden identificar de varias formas.
El primer paso en el diseño de una base de datos es la producción del esquema conceptual. Normalmente, se construyen varios esquemas conceptuales, cada uno para representar las distintas visiones que los
Más detalles1.4.1.2. Resumen... 1.4.2. ÁREA DE FACTURACIÓN::INFORMES::Pedidos...27 1.4.2.1. Detalle... 1.4.2.2. Resumen... 1.4.3. ÁREA DE
MANUAL DE USUARIO DE ABANQ 1 Índice de contenido 1 ÁREA DE FACTURACIÓN......4 1.1 ÁREA DE FACTURACIÓN::PRINCIPAL...4 1.1.1. ÁREA DE FACTURACIÓN::PRINCIPAL::EMPRESA...4 1.1.1.1. ÁREA DE FACTURACIÓN::PRINCIPAL::EMPRESA::General...4
Más detalles3.1 INGENIERIA DE SOFTWARE ORIENTADO A OBJETOS OOSE (IVAR JACOBSON)
3.1 INGENIERIA DE SOFTWARE ORIENTADO A OBJETOS OOSE (IVAR JACOBSON) 3.1.1 Introducción Este método proporciona un soporte para el diseño creativo de productos de software, inclusive a escala industrial.
Más detallesPRUEBAS DE SOFTWARE TECNICAS DE PRUEBA DE SOFTWARE
PRUEBAS DE SOFTWARE La prueba del software es un elemento crítico para la garantía de la calidad del software. El objetivo de la etapa de pruebas es garantizar la calidad del producto desarrollado. Además,
Más detallesDiseño orientado a los objetos
Diseño orientado a los objetos El Diseño Orientado a los Objetos (DOO) crea una representación del problema del mundo real y la hace corresponder con el ámbito de la solución, que es el software. A diferencia
Más detallesFundamentos del diseño 3ª edición (2002)
Unidades temáticas de Ingeniería del Software Fundamentos del diseño 3ª edición (2002) Facultad de Informática necesidad del diseño Las actividades de diseño afectan al éxito de la realización del software
Más detallesElementos requeridos para crearlos (ejemplo: el compilador)
Generalidades A lo largo del ciclo de vida del proceso de software, los productos de software evolucionan. Desde la concepción del producto y la captura de requisitos inicial hasta la puesta en producción
Más detallesPROGRAMACIÓN ORIENTADA A OBJETOS Master de Computación. II MODELOS y HERRAMIENTAS UML. II.2 UML: Modelado de casos de uso
PROGRAMACIÓN ORIENTADA A OBJETOS Master de Computación II MODELOS y HERRAMIENTAS UML 1 1 Modelado de casos de uso (I) Un caso de uso es una técnica de modelado usada para describir lo que debería hacer
Más detallesIntroducción. Ciclo de vida de los Sistemas de Información. Diseño Conceptual
Introducción Algunas de las personas que trabajan con SGBD relacionales parecen preguntarse porqué deberían preocuparse del diseño de las bases de datos que utilizan. Después de todo, la mayoría de los
Más detallesProgramación Orientada a Objetos en Java
Programación Orientada a Objetos en Java Curso 2006-2007 Tema 4 Herencia y Polimorfismo Gonzalo Méndez Pozo Dpto. de Ingeniería de Software e Inteligencia Artificial Universidad Complutense de Madrid Herencia
Más detallesINTRODUCCIÓN: Una Visión Global del Proceso de Creación de Empresas
INTRODUCCIÓN: Una Visión Global del Proceso de Creación de Empresas 1 INTRODUCCIÓN. Una visión global del proceso de creación de empresas Cuando se analiza desde una perspectiva integral el proceso de
Más detalles6.8 La Arquitectura del Sistema. [Proceso]
6.8 La Arquitectura del Sistema. [Proceso] En el Caso de Estudio se ha hecho énfasis en los objetos del Dominio del problema, ya que representan la esencia del sistema y definen su comportamiento. Sin
Más detalles5.1. Organizar los roles
Marco de intervención con personas en grave situación de exclusión social 5 Organización de la acción 5.1. Organizar los roles Parece que el modelo que vamos perfilando hace emerger un rol central de acompañamiento
Más detallesProceso Unificado de Rational PROCESO UNIFICADO DE RATIONAL (RUP) El proceso de desarrollo de software tiene cuatro roles importantes:
PROCESO UNIFICADO DE RATIONAL (RUP) El proceso de desarrollo de software tiene cuatro roles importantes: 1. Proporcionar una guía de actividades para el trabajo en equipo. (Guía detallada para el desarrollo
Más detallesPatrones para persistencia (I) Ingeniería del Software II
Patrones para persistencia (I) Ingeniería del Software II 1 Patrones para la construcción del esquema relacional En todos los ejemplos realizaremos transformaciones del siguiente diagrama de clases: Figura
Más detallesPráctica del paso de generación de Leads
Práctica del paso de generación de Leads La parte práctica de este módulo consiste en poner en marcha y tener en funcionamiento los mecanismos mediante los cuales vamos a generar un flujo de interesados
Más detallesCapítulo IV. Manejo de Problemas
Manejo de Problemas Manejo de problemas Tabla de contenido 1.- En qué consiste el manejo de problemas?...57 1.1.- Ventajas...58 1.2.- Barreras...59 2.- Actividades...59 2.1.- Control de problemas...60
Más detallesAnálisis de los datos
Universidad Complutense de Madrid CURSOS DE FORMACIÓN EN INFORMÁTICA Análisis de los datos Hojas de cálculo Tema 6 Análisis de los datos Una de las capacidades más interesantes de Excel es la actualización
Más detallesSINAUTO. (Captura Requirimientos) GRUPO 03
SINAUTO (Captura Requirimientos) GRUPO 03 Iker Jauregi ikerjauregivicente@hotmail.com Iñigo Arregui bateman2012@gmail.com Javier Arce arcjav@hotmail.com Jorge García. jgfand@gmail.com Patxi Campos.patxi948@wanadoo.es
Más detallesSISTEMA DE ESPECIICACION DE REQUERIMIENTOS
SISTEMA DE ESPECIICACION DE REQUERIMIENTOS Presentado por: Jefferson Peña Cristian Álvarez Cristian Alzate 10 CONTENIDO 1. INTRODUCCIÓN 1.1. PROPÓSITO 1.2. AMBITO DEL SISTEMA 1.3. DEFINICIONES, ACRÓNIMOS
Más detallesGUÍA TÉCNICA PARA LA DEFINICIÓN DE COMPROMISOS DE CALIDAD Y SUS INDICADORES
GUÍA TÉCNICA PARA LA DEFINICIÓN DE COMPROMISOS DE CALIDAD Y SUS INDICADORES Tema: Cartas de Servicios Primera versión: 2008 Datos de contacto: Evaluación y Calidad. Gobierno de Navarra. evaluacionycalidad@navarra.es
Más detallesEstructuras de Sistemas Operativos
Estructuras de Sistemas Operativos Definicion de Sistema Operativos Un sistema operativo es un programa que actua como inter entre el usuario y el hardware de un computador y su proposito es proporcionar
Más detallesEnterprise Resource Planning (ERP) SISTEMA DE PLANEACIÓN DE RECURSOS MASTER: ALFREDO CASTRO JIMENEZ
Enterprise Resource Planning (ERP) SISTEMA DE PLANEACIÓN DE RECURSOS MASTER: ALFREDO CASTRO JIMENEZ ERICK ANASTASIO FLORES 29/09/2010 UNIVERSIDAD AUTONOMA DE GUADALAJARA TECNOLOGIAS DE INFORMACION Qué
Más detallesCAPÍTULO 3 Servidor de Modelo de Usuario
CAPÍTULO 3 Servidor de Modelo de Usuario Para el desarrollo del modelado del estudiante se utilizó el servidor de modelo de usuario desarrollado en la Universidad de las Américas Puebla por Rosa G. Paredes
Más detallesMejores prácticas para el éxito de un sistema de información. Uno de los problemas de información dentro de las empresas es contar con datos
ANEXO VI. Mejores prácticas para el éxito de un sistema de información Uno de los problemas de información dentro de las empresas es contar con datos importantes del negocio y que éstos estén aislados
Más detalles2.2.- Paradigmas de la POO
2.2.- Paradigmas de la POO Los principios propios de la orientación a objetos son: 2.2.1.- Abstracción de Datos 2.2.2.- Encapsulamiento 2.2.3.- Ocultamiento 2.2.4.- Herencia 2.2.5.- Polimorfismo Cualquier
Más detallesOficina Online. Manual del administrador
Oficina Online Manual del administrador 2/31 ÍNDICE El administrador 3 Consola de Administración 3 Administración 6 Usuarios 6 Ordenar listado de usuarios 6 Cambio de clave del Administrador Principal
Más detalles- MANUAL TÉCNICO - Implantación de software de Marketing Online
- MANUAL TÉCNICO - Implantación de software de Marketing Online Rev. 01- MAYO 2013 Implantación de software de Marketing Online Teléfono Adeada: 945 253 388 Email Adeada: adeada@adeada.com REALIZADO POR:
Más detallesCAPITULO 4. Requerimientos, Análisis y Diseño. El presente capítulo explica los pasos que se realizaron antes de implementar
CAPITULO 4 Requerimientos, Análisis y Diseño El presente capítulo explica los pasos que se realizaron antes de implementar el sistema. Para esto, primero se explicarán los requerimientos que fueron solicitados
Más detallesNormalización de bases de datos
Normalización de bases de datos Se explican los conceptos de la normalización de bases de datos, mismos que son necesarios para un buen diseño de una base de datos. Fecha de creación: 29 May del 2003-12:31
Más detallesGedicoPDA: software de preventa
GedicoPDA: software de preventa GedicoPDA es un sistema integrado para la toma de pedidos de preventa y gestión de cobros diseñado para trabajar con ruteros de clientes. La aplicación PDA está perfectamente
Más detallesCaso práctico de Cuadro de Mando con Tablas Dinámicas
1 Caso práctico de Cuadro de Mando con Tablas Dinámicas Luis Muñiz Socio Director de SisConGes & Estrategia Introducción Hay una frase célebre que nos permite decir que: Lo que no se mide no se puede controlar
Más detallesQué se entiende por diseño arquitectónico? 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
Más detallesMANUAL COPIAS DE SEGURIDAD
MANUAL COPIAS DE SEGURIDAD Índice de contenido Ventajas del nuevo sistema de copia de seguridad...2 Actualización de la configuración...2 Pantalla de configuración...3 Configuración de las rutas...4 Carpeta
Más detallesApp para realizar consultas al Sistema de Información Estadística de Castilla y León
App para realizar consultas al Sistema de Información Estadística de Castilla y León Jesús M. Rodríguez Rodríguez rodrodje@jcyl.es Dirección General de Presupuestos y Estadística Consejería de Hacienda
Más detalles- MANUAL TÉCNICO - Software de diagnóstico de la seguridad de la información y autoimplantación de LOPD. Rev. 01- FEBRERO 2013
- MANUAL TÉCNICO - Software de diagnóstico de la seguridad de la información y autoimplantación de LOPD Rev. 01- FEBRERO 2013 Software de diagnóstico de la seguridad de la información y autoimplantación
Más detallesa) Cita y comenta brevemente los grados de acoplamiento. Clasifícalos y ordénalos en orden creciente al nivel de acoplamiento asociado.
Departamento de Informática y Automática INGENIERÍA DEL SOFTWARE PARTE II: CONCEPTOS TEÓRICOS Y PRÁCTICOS DNI Apellidos y nombre 1. Responde a las siguientes cuestiones (2 puntos): a) Cita y comenta brevemente
Más detallesCómo las herramientas en línea están revolucionando la implementación de ITIL e ISO 20000
Cómo las herramientas en línea están revolucionando la implementación de ITIL e ISO 20000 Informe 14 de marzo de 2014 Copyright 2014 20000Academy. Todos los derechos reservados. 1 Resumen ejecutivo Antes
Más detallesDISEÑO DE COMPONENTES DE SOFTWARE *
DISEÑO DE COMPONENTES DE SOFTWARE * NOTAS DEL CURSO Ingeniería de Software I DRA. MARIA DEL PILAR GÓMEZ GIL INAOEP * Resumen del capítulo 10 de libro de [Pressman 2010] V:18-11-2008 (c) P. Gomez-Gil, INAOE.
Más detalles11/06/2011. Alumno: José Antonio García Andreu Tutor: Jairo Sarrias Guzman
11/06/2011 Alumno: José Antonio García Andreu Tutor: Jairo Sarrias Guzman Introducción Gestión de tareas Unificar la vía por la que se requieren las tareas Solución única y global Seguimiento de las tareas
Más detallesTema 3. Medidas de tendencia central. 3.1. Introducción. Contenido
Tema 3 Medidas de tendencia central Contenido 31 Introducción 1 32 Media aritmética 2 33 Media ponderada 3 34 Media geométrica 4 35 Mediana 5 351 Cálculo de la mediana para datos agrupados 5 36 Moda 6
Más detallesLA LOGÍSTICA COMO FUENTE DE VENTAJAS COMPETITIVAS
LA LOGÍSTICA COMO FUENTE DE VENTAJAS COMPETITIVAS Los clientes compran un servicio basandose en el valor que reciben en comparacion con el coste en el que incurren. Por, lo tanto, el objetivo a largo plazo
Más detallesProcesos Críticos en el Desarrollo de Software
Metodología Procesos Críticos en el Desarrollo de Software Pablo Straub AgileShift Imagine una organización de desarrollo de software que consistentemente cumple los compromisos con sus clientes. Imagine
Más detallesFASCÍCULO. Decidir con inteligencia. Este es el momento.
Decidir con inteligencia. Este es el momento. Nos complace que sigas nuestras publicaciones para enterarte de cosas importantes para tu negocio. En el fascículo anterior vimos concretamente las funciones
Más detallesCreación y administración de grupos de dominio
Creación y administración de grupos de dominio Contenido Descripción general 1 a los grupos de Windows 2000 2 Tipos y ámbitos de los grupos 5 Grupos integrados y predefinidos en un dominio 7 Estrategia
Más detallesPlan de tarificación. Redes telefónicas. Requisitos a cumplir por el plan.
Redes telefónicas Plan de tarificación Plan de tarificación Requisitos a cumplir por el plan Métodos de tarificación Llamadas locales Llamadas a larga distancia Métodos de registro de llamadas Tarifas
Más detallesPor dónde empiezo a documentar? Ing. Fedra E. González
Por dónde empiezo a documentar? Ing. Fedra E. González Yo creo que esta es una de las preguntas más estresantes para quienquiera que tenga la responsabilidad de documentar un sistema de calidad. En el
Más detallesModelos de Help Desk
biblioteca foro helpdesk Mejores prácticas Modelos de Help Desk HUGO VILLADA FHD / BIBLIOTECA / MEJORES PRÁCTICAS Pág. 02 Modelos de Help Desk Composición de la demanda En el ambiente informático los problemas
Más detallesTema 4. Gestión de entrada/salida
Tema 4. Gestión de entrada/salida 1. Principios de la gestión de E/S. 1.Problemática de los dispositivos de E/S. 2.Objetivos generales del software de E/S. 3.Principios hardware de E/S. 1. E/S controlada
Más detallesPierre ALAUZET Ludovic JEANSON Chama EL-HASSOUNI Agnés LEBON Proyecto Practico de Construcción de un Software
SFI : Sociedad Ferroviaria Internacional Aplicación de gestión de billetes de tren Pierre ALAUZET Ludovic JEANSON Chama EL-HASSOUNI Agnés LEBON Proyecto Practico de Construcción de un Software 30/05/2008
Más detallesInternet Information Server
Internet Information Server Internet Information Server (IIS) es el servidor de páginas web avanzado de la plataforma Windows. Se distribuye gratuitamente junto con las versiones de Windows basadas en
Más detallesUNIDAD 2: Abstracción del Mundo real Al Paradigma Orientado a Objetos
2.1. Principios básicos del Modelado de Objetos UNIDAD 2: Abstracción del Mundo real Al Paradigma Orientado a Objetos Hoy en día muchos de los procesos que intervienen en un negocio o empresa y que resuelven
Más detallesMesa de Ayuda Interna
Mesa de Ayuda Interna Documento de Construcción Mesa de Ayuda Interna 1 Tabla de Contenido Proceso De Mesa De Ayuda Interna... 2 Diagrama Del Proceso... 3 Modelo De Datos... 4 Entidades Del Sistema...
Más detallesDesarrollo de un Sistema de Gestión de Proyectos mediante el framework GWT
Proyecto de Fin de Carrera Universidad Politécnica de Valencia Escuela Técnica Superior de Informática Desarrollo de un Sistema de Gestión de Proyectos mediante el framework GWT Realizado por: Dirigido
Más detallesCAPÍTULO 2 DEFINICIÓN DEL PROBLEMA
CAPÍTULO 2 DEFINICIÓN DEL PROBLEMA En el capítulo anterior se describió la situación inicial en la que se encontraba la Coordinación de Cómputo Académico (CCA) del Departamento de Ingenierías (DI) de la
Más detallesBase de datos en Excel
Base de datos en Excel Una base datos es un conjunto de información que ha sido organizado bajo un mismo contexto y se encuentra almacenada y lista para ser utilizada en cualquier momento. Las bases de
Más detallesSEGURIDAD Y PROTECCION DE FICHEROS
SEGURIDAD Y PROTECCION DE FICHEROS INTEGRIDAD DEL SISTEMA DE ARCHIVOS ATAQUES AL SISTEMA PRINCIPIOS DE DISEÑO DE SISTEMAS SEGUROS IDENTIFICACIÓN DE USUARIOS MECANISMOS DE PROTECCIÓN Y CONTROL INTEGRIDAD
Más detallesLa Tecnología líder en Simulación
La Tecnología líder en Simulación El software de simulación Arena, es un "seguro de vida" para las empresa: le ayuda a predecir el impacto en las organizaciones de nuevas ideas, estrategias y políticas
Más detalles1. Que es un nombre de dominio? Es un conjunto de caracteres alfanuméricos utilizados para identificar una computadora determinada en Internet.
Preguntas Frecuentes: 1. Que es un nombre de dominio? Es un conjunto de caracteres alfanuméricos utilizados para identificar una computadora determinada en Internet. Cada computadora en Internet tiene
Más detallesGuía Metodológica para el diseño de procesos de negocio
Guía Metodológica para el diseño de procesos de negocio La guía desarrollada para apoyar TBA, se diseñó con base en las metodologías existentes para el desarrollo BPM, principalmente en aquellas que soportan
Más detallesFICHEROS Y BASES DE DATOS (E44) 3º INGENIERÍA EN INFORMÁTICA. Tema 9. Reglas de Integridad
FICHEROS Y BASES DE DATOS (E44) 3º INGENIERÍA EN INFORMÁTICA Tema 9. Reglas de Integridad 1.- Introducción. 2.- Claves Primarias. 3.- Regla de Integridad de Entidades. 4.- Claves Ajenas. 5.- Regla de Integridad
Más detallesPlanificación, Gestión y Desarrollo de Proyectos
Planificación, Gestión y Desarrollo de Proyectos Conceptos básicos Planificación de un proyecto Gestión de un proyecto Desarrollo de un proyecto 1 Conceptos básicos: Proyecto Conjunto de actividades que
Más detallesA. Goñi, J. Ibáñez, J. Iturrioz, J.A. Vadillo OCW 2013
3.3: Realización de diagramas de secuencia: capas software y patrones GRASP A. Goñi, J. Ibáñez, J. Iturrioz, J.A. Vadillo OCW 2013 3.3.- Cómo realizar los diagramas de 30 secuencia a partir de los flujos
Más detallesSistema de detección de incendios. Sergio Menéndez Muñiz Consultor: Jordi Bécares Ferrés Fecha: Junio 2012
Sistema de detección de incendios Autor: Sergio Menéndez Muñiz Consultor: Jordi Bécares Ferrés Fecha: Junio 2012 Índice 1. Introducción del sistema 2-3. Aplicación y posibilidades del sistema 4-5. Posicionamiento
Más detallese-commerce, es hacer comercio utilizando la red. Es el acto de comprar y vender en y por medio de la red.
Comercio electrónico. (e-commerce) Las empresas que ya están utilizando la red para hacer comercio ven como están cambiando las relaciones de la empresa con sus clientes, sus empleados, sus colaboradores
Más detallesPatrones de Diseño Orientados a Objetos 2 Parte
Patrones de Diseño Orientados a Objetos 2 Parte Patrón Observador Observer (Patrón de Comportamiento) Patrón Observador Observer Observador (en inglés: Observer) es un patrón de diseño que define una dependencia
Más detallesBechtle Solutions Servicios Profesionales
Soluciones Tecnología Bechtle Solutions Servicios Profesionales Fin del servicio de soporte técnico de Windows Server 2003 No hacer nada puede ser un riesgo BECHTLE Su especialista en informática Ahora
Más detallesCONSTRUCCIÓN DEL PROCESO MESA DE AYUDA INTERNA. BizAgi Process Modeler
CONSTRUCCIÓN DEL PROCESO MESA DE AYUDA INTERNA BizAgi Process Modeler TABLA DE CONTENIDO PROCESO DE MESA DE AYUDA INTERNA... 3 1. DIAGRAMA DEL PROCESO... 4 2. MODELO DE DATOS... 5 ENTIDADES DEL SISTEMA...
Más detallesCurso de Java POO: Programación orientada a objetos
Curso de Java POO: Programación orientada a objetos Luis Guerra Velasco Curso INEM 02830. Programación en Java Marzo 2010 Índice 1 Introducción a la POO 2 Herencia y polimorfismo 3 Empaquetado de proyectos
Más detallesQue es normalización? Normalización de una base de datos Grados de normalización: Primera Forma Grados de normalización: Segunda Forma Grados de
Sergio Sánchez Que es normalización? Normalización de una base de datos Grados de normalización: Primera Forma Grados de normalización: Segunda Forma Grados de normalización: Tercera Forma Otras formas
Más detalles1 1 0 1 x 1 0 1 1 1 1 0 1 + 1 1 0 1 0 0 0 0 1 1 0 1 1 0 0 0 1 1 1 1
5.1.3 Multiplicación de números enteros. El algoritmo de la multiplicación tal y como se realizaría manualmente con operandos positivos de cuatro bits es el siguiente: 1 1 0 1 x 1 0 1 1 1 1 0 1 + 1 1 0
Más detallesMANUAL DE AYUDA MODULO TALLAS Y COLORES
MANUAL DE AYUDA MODULO TALLAS Y COLORES Fecha última revisión: Enero 2010 Índice TALLAS Y COLORES... 3 1. Introducción... 3 CONFIGURACIÓN PARÁMETROS TC (Tallas y Colores)... 3 2. Módulos Visibles... 3
Más detallesERP GESTION LOGÍSTICA
ERP GESTION LOGÍSTICA o Introducción El objetivo de este módulo reside en dar soporte informático al control de sus existencias para poder responder en cualquier momento a la cuestión Qué cantidad y cuánto
Más detallesCreación y administración de grupos locales
Creación y administración de grupos locales Contenido Descripción general 1 Introducción a los grupos de Windows 2000 2 Grupos locales 5 Grupos locales integrados 7 Estrategia para utilizar grupos locales
Más detallesDiseño de bases de datos Diapositiva 1
Diseño o de bases de datos Objetivos del Diseño Principios del Diseño de BD Proceso de Diseño Normalización Diseño de Tablas: Claves Relaciones Integridad referencial Convenciones de nomenclatura Diseño
Más detallesPROCEDIMIENTO ESPECÍFICO. Código G114-01 Edición 0
Índice 1. TABLA RESUMEN... 2 2. OBJETO... 2 3. ALCANCE... 2 4. RESPONSABILIDADES... 3 5. ENTRADAS... 3 6. SALIDAS... 3 7. PROCESOS RELACIONADOS... 3 8. DIAGRAMA DE FLUJO... 4 9. DESARROLLO... 5 9.1. PROYECTO
Más detallesMANUAL PARA EMPRESAS PRÁCTICAS CURRICULARES
MANUAL PARA EMPRESAS PRÁCTICAS CURRICULARES ÍNDICE 1. Introducción... 3. Registro y Acceso... 3.1. Registro Guiado... 4.1. Registro Guiado Datos Básicos... 5.1. Registro Guiado Contactos... 6 3. Creación
Más detallesGeneXus BPM Suite X. Última actualización: 01 de Setiembre de 2008
Última actualización: 01 de Setiembre de 2008 Copyright Artech Consultores S. R. L. 1988-2008. Todos los derechos reservados. Este documento no puede ser reproducido en cualquier medio sin el consentimiento
Más detallesGestión de la Configuración
Gestión de la ÍNDICE DESCRIPCIÓN Y OBJETIVOS... 1 ESTUDIO DE VIABILIDAD DEL SISTEMA... 2 ACTIVIDAD EVS-GC 1: DEFINICIÓN DE LOS REQUISITOS DE GESTIÓN DE CONFIGURACIÓN... 2 Tarea EVS-GC 1.1: Definición de
Más detallesGUIA PROGRAMACIÓN ORIENTADA A OBJETOS
GUIA PROGRAMACIÓN ORIENTADA A OBJETOS 1. Por qué la P.O.O? R= A medida que se van desarrollando los lenguajes, se va desarrollando también la posibilidad de resolver problemas más complejos. En la evolución
Más detallesFactores de las Nuevas Tecnologías
Factores de las Nuevas Tecnologías Los profundos cambios que experimenta nuestra sociedad, expresados a través de la aparición de las nuevas tecnologías de la información tanto en el proceso productivo
Más detalles1.- INTRODUCCIÓN 2.- PARÁMETROS
1.- INTRODUCCIÓN Hemos diseñado una aplicación que facilite el envío a las entidades bancarias de las de cobro por domiciliación. La entrada de esta aplicación pueden ser, tanto ficheros cuyos formatos
Más detallesDiseño de formularios
Universidad Complutense de Madrid CURSOS DE FORMACIÓN EN INFORMÁTICA Diseño de formularios Introducción a las bases de datos Tema 5 El aspecto de los formularios Se puede modificar a voluntad el aspecto
Más detallesAnálisis y diseño del sistema CAPÍTULO 3
Análisis y diseño del sistema CAPÍTULO 3 36 CAPÍTULO 3 Análisis y diseño del sistema En este capítulo se pretende realizar un análisis detallado de los requerimientos del software a desarrollar para la
Más detallesBPMN Business Process Modeling Notation
BPMN (BPMN) es una notación gráfica que describe la lógica de los pasos de un proceso de Negocio. Esta notación ha sido especialmente diseñada para coordinar la secuencia de los procesos y los mensajes
Más detallesCapitulo III. Diseño del Sistema.
Capitulo III. Diseño del Sistema. Para el desarrollo del sistema en la presente tesis se utilizo el paradigma orientado a objetos utilizando el lenguaje Java en su versión 1.2. Por medio de este lenguaje
Más detallesUNIDAD DIDACTICA 1: SISTEMAS GESTORES DE BASES DE DATOS
UNIDAD DIDACTICA 1: SISTEMAS GESTORES DE BASES DE DATOS Índice de contenido: 1. Concepto de base de datos (BD)... 3 2. Los sistemas gestores de bases de datos (SGBD)... 3 3. Arquitectura de los sistemas
Más detallesWINDOWS 2008 5: TERMINAL SERVER
WINDOWS 2008 5: TERMINAL SERVER 1.- INTRODUCCION: Terminal Server proporciona una interfaz de usuario gráfica de Windows a equipos remotos a través de conexiones en una red local o a través de Internet.
Más detallesGESTIÓN DOCUMENTAL PARA EL SISTEMA DE CALIDAD
GESTIÓN DOCUMENTAL PARA EL SISTEMA DE CALIDAD Manual de usuario 1 - ÍNDICE 1 - ÍNDICE... 2 2 - INTRODUCCIÓN... 3 3 - SELECCIÓN CARPETA TRABAJO... 4 3.1 CÓMO CAMBIAR DE EMPRESA O DE CARPETA DE TRABAJO?...
Más detallesGUÍA RÁPIDA DE TRABAJOS CON ARCHIVOS.
GUÍA RÁPIDA DE TRABAJOS CON ARCHIVOS. 1 Direcciones o Ubicaciones, Carpetas y Archivos Botones de navegación. El botón Atrás permite volver a carpetas que hemos examinado anteriormente. El botón Arriba
Más detallesLos estados financieros proporcionan a sus usuarios información útil para la toma de decisiones
El ABC de los estados financieros Importancia de los estados financieros: Aunque no lo creas, existen muchas personas relacionadas con tu empresa que necesitan de esta información para tomar decisiones
Más detallesServicio de groupware
Servicio de groupware El groupware, también conocido como software colaborativo, es el conjunto de aplicaciones que integran el trabajo de distintos usuarios en proyectos comunes. Cada usuario puede conectarse
Más detalles