Curso de Programación IV, que se imparte en la Universidad Latina de Costa Rica. Segunda presentación del curso, se ven temas como: Patrón de diseño, POO, Modelamiento, Abstracción, Encapsulamiento, Herencia, Polimorfismo, Clases, metodos, entre otros.
Este documento presenta el Modelo de Procesos para la Industria de Software (MoProSoft) desarrollado para cumplir con los objetivos del Programa para el Desarrollo de la Industria de Software en México. El MoProSoft define los procesos agrupados en cuatro categorías principales: gestión de negocio, gestión de procesos, gestión de proyectos y operación. El modelo se basa en un conjunto de procesos específicos para el desarrollo y mantenimiento de software que cumplen con las características deseadas para la ind
Caracterizar los conceptos y artefactos de la ingeniería de usabilidad para abordar el diseño de una experiencia de usuario mediante el análisis de requisitos.
IHM Unidad 2: Factores Humanos, Estilos y Dispositivos de interacciónFranklin Parrales Bravo
Este documento presenta información sobre factores humanos y estilos de interacción en la unidad 2 de un curso sobre interacción hombre-máquina. Explica conceptos como los canales sensoriales humanos, modelos de procesamiento de información, memoria, percepción visual y auditiva. También cubre temas como ergonomía, diversidad funcional, estilos de interacción y dispositivos de entrada y salida. El objetivo es identificar principios de diseño basados en el factor humano para mejorar interfaces.
Este documento describe el Modelo de Mejora de Procesos de Desarrollo de Software conocido como Moprosoft. Moprosoft fue desarrollado por expertos mexicanos para adaptarse a las necesidades de las pequeñas y medianas empresas desarrolladoras de software en México. El modelo contiene 9 procesos organizados en 3 categorías que reflejan los niveles de una organización. El modelo provee una guía para estandarizar y mejorar los procesos de desarrollo de software a través de niveles de madurez.
El documento describe el modelo de desarrollo de software basado en componentes. Este modelo involucra el ensamblaje de componentes de software prefabricados que encapsulan funcionalidades específicas. El desarrollo basado en componentes simplifica las pruebas, el mantenimiento y aumenta la reutilización y calidad del software.
Xamarin permite crear aplicaciones nativas para iOS, Android, Mac y Windows utilizando C# y aprovechando toda su potencia. Las aplicaciones tienen aspecto y sensación nativas. Xamarin ofrece soporte completo para las APIs de cada plataforma y está siempre actualizado con las últimas versiones. Esto mejora los tiempos de desarrollo y reduce costos al compartir gran parte del código entre plataformas. Además, Xamarin Test Cloud prueba automáticamente las apps en miles de dispositivos reales.
EORM es una metodología de desarrollo de aplicaciones web centrada en objetos que consta de 7 fases iterativas: análisis, diseño, construcción, conceptual, navegacional, interfaz abstracta e implementación, con énfasis en modelar relaciones semánticas entre objetos y definir estructuras de navegación.
El documento habla sobre diferentes tipos de software, incluyendo software de sistema, software de aplicación, y software de programación. También describe las etapas clave del desarrollo de software como el análisis de requisitos, especificación, diseño, programación, prueba y mantenimiento. Además, explica brevemente diferentes tipos de licencias de software como licencias libres, licencias públicas generales y licencias de copyleft. Por último, define qué son las máquinas virtuales y cómo estas emulan un ambiente de computación físico usando los recursos del
Este documento presenta el Modelo de Procesos para la Industria de Software (MoProSoft) desarrollado para cumplir con los objetivos del Programa para el Desarrollo de la Industria de Software en México. El MoProSoft define los procesos agrupados en cuatro categorías principales: gestión de negocio, gestión de procesos, gestión de proyectos y operación. El modelo se basa en un conjunto de procesos específicos para el desarrollo y mantenimiento de software que cumplen con las características deseadas para la ind
Caracterizar los conceptos y artefactos de la ingeniería de usabilidad para abordar el diseño de una experiencia de usuario mediante el análisis de requisitos.
IHM Unidad 2: Factores Humanos, Estilos y Dispositivos de interacciónFranklin Parrales Bravo
Este documento presenta información sobre factores humanos y estilos de interacción en la unidad 2 de un curso sobre interacción hombre-máquina. Explica conceptos como los canales sensoriales humanos, modelos de procesamiento de información, memoria, percepción visual y auditiva. También cubre temas como ergonomía, diversidad funcional, estilos de interacción y dispositivos de entrada y salida. El objetivo es identificar principios de diseño basados en el factor humano para mejorar interfaces.
Este documento describe el Modelo de Mejora de Procesos de Desarrollo de Software conocido como Moprosoft. Moprosoft fue desarrollado por expertos mexicanos para adaptarse a las necesidades de las pequeñas y medianas empresas desarrolladoras de software en México. El modelo contiene 9 procesos organizados en 3 categorías que reflejan los niveles de una organización. El modelo provee una guía para estandarizar y mejorar los procesos de desarrollo de software a través de niveles de madurez.
El documento describe el modelo de desarrollo de software basado en componentes. Este modelo involucra el ensamblaje de componentes de software prefabricados que encapsulan funcionalidades específicas. El desarrollo basado en componentes simplifica las pruebas, el mantenimiento y aumenta la reutilización y calidad del software.
Xamarin permite crear aplicaciones nativas para iOS, Android, Mac y Windows utilizando C# y aprovechando toda su potencia. Las aplicaciones tienen aspecto y sensación nativas. Xamarin ofrece soporte completo para las APIs de cada plataforma y está siempre actualizado con las últimas versiones. Esto mejora los tiempos de desarrollo y reduce costos al compartir gran parte del código entre plataformas. Además, Xamarin Test Cloud prueba automáticamente las apps en miles de dispositivos reales.
EORM es una metodología de desarrollo de aplicaciones web centrada en objetos que consta de 7 fases iterativas: análisis, diseño, construcción, conceptual, navegacional, interfaz abstracta e implementación, con énfasis en modelar relaciones semánticas entre objetos y definir estructuras de navegación.
El documento habla sobre diferentes tipos de software, incluyendo software de sistema, software de aplicación, y software de programación. También describe las etapas clave del desarrollo de software como el análisis de requisitos, especificación, diseño, programación, prueba y mantenimiento. Además, explica brevemente diferentes tipos de licencias de software como licencias libres, licencias públicas generales y licencias de copyleft. Por último, define qué son las máquinas virtuales y cómo estas emulan un ambiente de computación físico usando los recursos del
Este documento describe un prototipo de software educativo sobre la bilharziasis. Explica que un prototipo es un modelo preliminar de un producto que permite obtener retroalimentación de usuarios. Luego, detalla las características, etapas de desarrollo y estrategias para crear prototipos. Finalmente, especifica los objetivos, contenido y población objetivo de este prototipo educativo sobre la bilharziasis.
El lenguaje de máquina fue el primer lenguaje utilizado para programar las primeras computadoras, pero fue reemplazado por otros lenguajes más fáciles de usar y menos propensos a errores. El lenguaje de máquina utiliza instrucciones binarias compuestas de ceros y unos que son directamente ejecutadas por el procesador de la computadora.
El documento describe el proceso de desarrollo de software, que incluye análisis de requisitos, diseño, codificación, pruebas e instalación. También discute la importancia de usar una metodología adecuada y menciona algunas metodologías populares como RUP, XP y MSF. El desarrollo de software es fundamental para la informática y la sociedad moderna depende cada vez más del software.
Objetivo: Aplicar tecnologías y mecanismos para el desarrollo de aplicaciones distribuidas básicas, a través de la utilización de técnicas y librerías para sistemas distribuidos.
Patrón de diseño Modelo-Vista-Controlador (MVC)Jose R. Hilera
El patrón de diseño Modelo-Vista-Controlador (MVC) separa la representación de datos y la lógica de negocio (modelo) de las interfaces de usuario (vistas) y la lógica de control de eventos (controladores). El objetivo es independizar las interfaces de usuario de los datos subyacentes. El modelo representa los datos y la lógica de negocio, las vistas representan interfaces de usuario y los controladores coordinan las interacciones entre el modelo y las vistas.
Este documento trata sobre la administración del procesador en sistemas operativos. Explica diferentes algoritmos de planificación como FIFO, Round Robin, Shortest Job First y Shortest Remaining Time. También cubre conceptos como multiprocesamiento, paralelismo y la organización y funcionalidades de sistemas operativos multiprocesadores.
Técnicas de Recuperación Bases de DatosLork Ederwin
El método de recuperación restaura una copia de seguridad Antigua de la BD, que normalmente se archiva en cinta a partir de la copia de seguridad del registro
Unidad temática III: El significado como Unidad Cultura. El interpretante.Lingüística Uces
El documento discute el concepto de "interpretante" según Umberto Eco y Charles Sanders Peirce. Define al interpretante como la representación que garantiza la validez de un signo y permite su interpretación, dando lugar a un proceso semiótico infinito. Explica que un interpretante puede ser un significante equivalente en otro sistema semiótico, una definición, una asociación emotiva, o una propiedad intensional del contenido. Además, argumenta que la categoría del interpretante muestra cómo la significación y comunicación se producen a través de desplazamientos continu
Este documento presenta una tabla comparativa de los diversos tipos de licencias de software, incluyendo freeware, libre, shareware, adware, open source, propietario, dominio público, semilibre, comercial, copyleft, copifarleft, GPL, creative commons, trial y demo. Describe las definiciones, características, ventajas y desventajas de cada tipo de licencia.
O documento apresenta conceitos sobre usabilidade, incluindo:
(1) Uma introdução sobre usabilidade, definindo-a como a facilidade de uso de um produto;
(2) Uma breve história da usabilidade, mencionando o desenvolvimento da Interação Humano-Computador e do Design Centrado no Usuário nas décadas de 1980 e 1990;
(3) Metas de usabilidade importantes como utilidade, eficácia e eficiência.
Este documento describe la estructura básica del sistema operativo Linux. Explica que Linux se compone principalmente del núcleo, el shell, el sistema de archivos y las utilidades. Describe brevemente cada una de estas partes y algunos de sus componentes clave como los directorios principales y los comandos para manipular archivos.
El documento describe el procesamiento paralelo. Está basado en varios procesadores que realizan operaciones de manera simultánea. Existen dos modelos principales de organización de la memoria: memoria compartida, donde todos los procesadores comparten el mismo espacio de direcciones, y memoria distribuida, donde cada procesador tiene su propia memoria. También describe diferentes paradigmas y modelos de comunicación entre procesadores como paso de mensajes y memoria compartida.
El documento trata sobre la inteligencia artificial. Explica las habilidades cognoscitivas según la psicología como las teorías de la inteligencia de conductismo y Gardner. También describe el proceso de razonamiento según la lógica incluyendo axiomas, teoremas y demostración. Por último, presenta brevemente el modelo cognoscitivo y del agente inteligente así como el papel de la heurística.
El documento presenta un programa sobre arquitectura de computadoras. Se describen tres tipos de modelos de arquitectura: clásicas, segmentadas y de multiprocesamiento. También analiza los componentes principales de una computadora como la CPU, memoria y dispositivos de entrada/salida, describiendo sus arquitecturas, tipos, características y funcionamiento.
El cuadro compara los modelos de proceso de desarrollo de software: modelo en cascada, espiral, incremental, desarrollo unificado de procesos y proceso personal de software. El modelo en cascada se basa en fases secuenciales como análisis, diseño e implementación. El modelo espiral enfatiza la evaluación de riesgos a través de iteraciones. El modelo incremental divide el desarrollo en incrementos que se completan en orden. El desarrollo unificado de procesos integra perspectivas dinámicas, estáticas y de buenas práctic
Este documento presenta los conceptos básicos de la arquitectura de software. Explica que la arquitectura de software establece la estructura y la interacción entre las partes de un sistema informático. Luego describe algunos estilos arquitectónicos comunes como las arquitecturas centradas en datos, de flujo de datos, orientadas a objetos y en capas. El objetivo es que los desarrolladores compartan una línea de trabajo común al construir software.
Requerimientos, Ventajas y Desventajas de las aplicaciones webAlonzer Acid Nox
El documento describe varias metodologías para el desarrollo de aplicaciones web, incluyendo WSDM, SOHDM, RNA, OOHDM, UWE y W2000. Cada metodología propone un proceso diferente con énfasis en actividades como la captura de requisitos, el análisis de usuarios, el diseño conceptual y la implementación. El documento también discute enfoques como UWA, NDT y Design-driven Requirements Elicitation para la especificación y definición de requisitos.
Este documento trata sobre la administración de usuarios y grupos en Linux. Define Linux como un sistema multiusuario y explica que la administración de usuarios es importante para la seguridad y el funcionamiento del sistema. Detalla los comandos adduser, userdel y passwd que se usan para agregar, eliminar y cambiar contraseñas de usuarios respectivamente. Solo el usuario root puede administrar usuarios y grupos.
Este documento resume las figuras retóricas como una técnica creativa publicitaria efectiva. Explica que las figuras retóricas activan los circuitos cerebrales que generan recuerdos al plantear información conocida de manera novedosa. Se clasifican las figuras retóricas en figuras de significación, repetición y construcción. Además, se detalla cómo la metáfora creativa puede lograr ideas nuevas al establecer comparaciones inesperadas. Finalmente, señala que la aplicación de la retórica a la comunicación visual busca maximizar
Curso de Programación IV, que se imparte en la Universidad Latina de Costa Rica. Segunda presentación del curso, se ven temas como: Patrón de diseño, POO, Modelamiento, Abstracción, Encapsulamiento, Herencia, Polimorfismo, Clases, metodos, entre otros.
El documento discute conceptos clave de la programación orientada a objetos. Explica que la POO modela problemas del mundo real usando objetos con atributos y métodos. Los objetos son instancias de clases que definen su estructura y comportamiento. La POO promueve principios como encapsulamiento, herencia y polimorfismo para facilitar el diseño de software reutilizable y de alta calidad.
Este documento describe un prototipo de software educativo sobre la bilharziasis. Explica que un prototipo es un modelo preliminar de un producto que permite obtener retroalimentación de usuarios. Luego, detalla las características, etapas de desarrollo y estrategias para crear prototipos. Finalmente, especifica los objetivos, contenido y población objetivo de este prototipo educativo sobre la bilharziasis.
El lenguaje de máquina fue el primer lenguaje utilizado para programar las primeras computadoras, pero fue reemplazado por otros lenguajes más fáciles de usar y menos propensos a errores. El lenguaje de máquina utiliza instrucciones binarias compuestas de ceros y unos que son directamente ejecutadas por el procesador de la computadora.
El documento describe el proceso de desarrollo de software, que incluye análisis de requisitos, diseño, codificación, pruebas e instalación. También discute la importancia de usar una metodología adecuada y menciona algunas metodologías populares como RUP, XP y MSF. El desarrollo de software es fundamental para la informática y la sociedad moderna depende cada vez más del software.
Objetivo: Aplicar tecnologías y mecanismos para el desarrollo de aplicaciones distribuidas básicas, a través de la utilización de técnicas y librerías para sistemas distribuidos.
Patrón de diseño Modelo-Vista-Controlador (MVC)Jose R. Hilera
El patrón de diseño Modelo-Vista-Controlador (MVC) separa la representación de datos y la lógica de negocio (modelo) de las interfaces de usuario (vistas) y la lógica de control de eventos (controladores). El objetivo es independizar las interfaces de usuario de los datos subyacentes. El modelo representa los datos y la lógica de negocio, las vistas representan interfaces de usuario y los controladores coordinan las interacciones entre el modelo y las vistas.
Este documento trata sobre la administración del procesador en sistemas operativos. Explica diferentes algoritmos de planificación como FIFO, Round Robin, Shortest Job First y Shortest Remaining Time. También cubre conceptos como multiprocesamiento, paralelismo y la organización y funcionalidades de sistemas operativos multiprocesadores.
Técnicas de Recuperación Bases de DatosLork Ederwin
El método de recuperación restaura una copia de seguridad Antigua de la BD, que normalmente se archiva en cinta a partir de la copia de seguridad del registro
Unidad temática III: El significado como Unidad Cultura. El interpretante.Lingüística Uces
El documento discute el concepto de "interpretante" según Umberto Eco y Charles Sanders Peirce. Define al interpretante como la representación que garantiza la validez de un signo y permite su interpretación, dando lugar a un proceso semiótico infinito. Explica que un interpretante puede ser un significante equivalente en otro sistema semiótico, una definición, una asociación emotiva, o una propiedad intensional del contenido. Además, argumenta que la categoría del interpretante muestra cómo la significación y comunicación se producen a través de desplazamientos continu
Este documento presenta una tabla comparativa de los diversos tipos de licencias de software, incluyendo freeware, libre, shareware, adware, open source, propietario, dominio público, semilibre, comercial, copyleft, copifarleft, GPL, creative commons, trial y demo. Describe las definiciones, características, ventajas y desventajas de cada tipo de licencia.
O documento apresenta conceitos sobre usabilidade, incluindo:
(1) Uma introdução sobre usabilidade, definindo-a como a facilidade de uso de um produto;
(2) Uma breve história da usabilidade, mencionando o desenvolvimento da Interação Humano-Computador e do Design Centrado no Usuário nas décadas de 1980 e 1990;
(3) Metas de usabilidade importantes como utilidade, eficácia e eficiência.
Este documento describe la estructura básica del sistema operativo Linux. Explica que Linux se compone principalmente del núcleo, el shell, el sistema de archivos y las utilidades. Describe brevemente cada una de estas partes y algunos de sus componentes clave como los directorios principales y los comandos para manipular archivos.
El documento describe el procesamiento paralelo. Está basado en varios procesadores que realizan operaciones de manera simultánea. Existen dos modelos principales de organización de la memoria: memoria compartida, donde todos los procesadores comparten el mismo espacio de direcciones, y memoria distribuida, donde cada procesador tiene su propia memoria. También describe diferentes paradigmas y modelos de comunicación entre procesadores como paso de mensajes y memoria compartida.
El documento trata sobre la inteligencia artificial. Explica las habilidades cognoscitivas según la psicología como las teorías de la inteligencia de conductismo y Gardner. También describe el proceso de razonamiento según la lógica incluyendo axiomas, teoremas y demostración. Por último, presenta brevemente el modelo cognoscitivo y del agente inteligente así como el papel de la heurística.
El documento presenta un programa sobre arquitectura de computadoras. Se describen tres tipos de modelos de arquitectura: clásicas, segmentadas y de multiprocesamiento. También analiza los componentes principales de una computadora como la CPU, memoria y dispositivos de entrada/salida, describiendo sus arquitecturas, tipos, características y funcionamiento.
El cuadro compara los modelos de proceso de desarrollo de software: modelo en cascada, espiral, incremental, desarrollo unificado de procesos y proceso personal de software. El modelo en cascada se basa en fases secuenciales como análisis, diseño e implementación. El modelo espiral enfatiza la evaluación de riesgos a través de iteraciones. El modelo incremental divide el desarrollo en incrementos que se completan en orden. El desarrollo unificado de procesos integra perspectivas dinámicas, estáticas y de buenas práctic
Este documento presenta los conceptos básicos de la arquitectura de software. Explica que la arquitectura de software establece la estructura y la interacción entre las partes de un sistema informático. Luego describe algunos estilos arquitectónicos comunes como las arquitecturas centradas en datos, de flujo de datos, orientadas a objetos y en capas. El objetivo es que los desarrolladores compartan una línea de trabajo común al construir software.
Requerimientos, Ventajas y Desventajas de las aplicaciones webAlonzer Acid Nox
El documento describe varias metodologías para el desarrollo de aplicaciones web, incluyendo WSDM, SOHDM, RNA, OOHDM, UWE y W2000. Cada metodología propone un proceso diferente con énfasis en actividades como la captura de requisitos, el análisis de usuarios, el diseño conceptual y la implementación. El documento también discute enfoques como UWA, NDT y Design-driven Requirements Elicitation para la especificación y definición de requisitos.
Este documento trata sobre la administración de usuarios y grupos en Linux. Define Linux como un sistema multiusuario y explica que la administración de usuarios es importante para la seguridad y el funcionamiento del sistema. Detalla los comandos adduser, userdel y passwd que se usan para agregar, eliminar y cambiar contraseñas de usuarios respectivamente. Solo el usuario root puede administrar usuarios y grupos.
Este documento resume las figuras retóricas como una técnica creativa publicitaria efectiva. Explica que las figuras retóricas activan los circuitos cerebrales que generan recuerdos al plantear información conocida de manera novedosa. Se clasifican las figuras retóricas en figuras de significación, repetición y construcción. Además, se detalla cómo la metáfora creativa puede lograr ideas nuevas al establecer comparaciones inesperadas. Finalmente, señala que la aplicación de la retórica a la comunicación visual busca maximizar
Curso de Programación IV, que se imparte en la Universidad Latina de Costa Rica. Segunda presentación del curso, se ven temas como: Patrón de diseño, POO, Modelamiento, Abstracción, Encapsulamiento, Herencia, Polimorfismo, Clases, metodos, entre otros.
El documento discute conceptos clave de la programación orientada a objetos. Explica que la POO modela problemas del mundo real usando objetos con atributos y métodos. Los objetos son instancias de clases que definen su estructura y comportamiento. La POO promueve principios como encapsulamiento, herencia y polimorfismo para facilitar el diseño de software reutilizable y de alta calidad.
Este documento presenta información sobre conceptos fundamentales de diseño de sistemas de software. Explica que el diseño es más que programar o escribir código e incluye procesos como la abstracción, el refinamiento y el uso de patrones de diseño. También describe elementos clave del diseño como la arquitectura, la modularidad, las clases de diseño y los atributos de calidad como la funcionalidad y el desempeño.
Curso de Redes y Telemática para la Universidad Fidélitas (SC-625), 1 cuatrimestre del 2015, presentación de la clase 2
Para mas información visitar el sitio web www.randyvv.com
Este documento presenta una introducción a la programación en Internet. Explica conceptos básicos como Internet, correo electrónico y etiquetas HTML para crear sitios web. Describe los elementos fundamentales para construir la estructura y contenido de una página web, incluyendo encabezados, párrafos, imágenes y enlaces.
Curso de Redes y Telemática para la Universidad Fidélitas (SC-625), 1 cuatrimestre del 2015, presentación de la clase 1
Para mas información visitar el sitio web www.randyvv.com
Curso de Redes y Telemática para la Universidad Fidélitas (SC-625), 1 cuatrimestre del 2015, presentación de la clase 2
Para más información visitar el sitio web www.randyvv.com
Utilice la información aquí expuesta bajo su propia responsabilidad.
Como siempre 100 % positivos
Curso de Redes y Telemática para la Universidad Fidélitas (SC-625), 1 cuatrimestre del 2015, presentación de la clase 4
Para más información visitar el sitio web www.randyvv.com
Utilice la información aquí expuesta bajo su propia responsabilidad.
El documento proporciona directrices para el diseño de software de alta calidad. Indica que un buen diseño debe implementar todos los requisitos del análisis, ser comprensible, y proporcionar una visión completa del software. Además, debe presentar una arquitectura modular creada con patrones de diseño reconocidos y que facilite la implementación evolutiva. Finalmente, el diseño debe derivarse de forma controlada y repetitiva de los requisitos del análisis.
Este documento presenta una introducción al modelado, análisis, diseño y documentación de proyectos de software. Explica que el modelado es una actividad formal para entender y comunicar aspectos del mundo real mediante el uso de lenguajes naturales, notaciones semi-formales o formales. Describe técnicas como el modelado empresarial, de requerimientos funcionales y no funcionales. También cubre conceptos clave del análisis como las transformaciones y flujos de datos. Finalmente, detalla etapas del diseño como el preliminar, detallado
Fundamentos basicos del diseño de softwareJesús Molleda
Este documento presenta los fundamentos básicos para el diseño de software. Explica que el diseño de software consiste en crear una especificación de un artefacto de software para cumplir unos objetivos utilizando componentes primitivos y sujeto a restricciones. Luego describe los fundamentos como la abstracción, refinamiento, modularidad, arquitectura, jerarquía de control, estructura de datos, procedimientos y ocultamiento de información. Finalmente, cubre temas como el diseño orientado a objetos, garantías de calidad y técnicas de
El documento describe los fundamentos del diseño de software, incluyendo la abstracción, el refinamiento, la modularidad, la arquitectura, la jerarquía de control, la estructura de datos y los procedimientos. Explica que el diseño de software involucra dividir el problema en componentes modulares, ocultar información entre módulos y refinar sucesivamente los detalles de implementación.
Este documento describe los principios y técnicas del diseño estructurado de software. Explica que el diseño estructurado busca dividir un programa en módulos modulares e independientes siguiendo técnicas como la descomposición top-down, el refinamiento sucesivo y la jerarquía modular. También describe técnicas específicas como el diagrama de Warnier Orr y los principios de abstracción, modularidad y ocultamiento de información utilizados por el diseño estructurado.
El documento describe el modelo de cascada para el desarrollo de software. El modelo de cascada consiste en una serie de etapas secuenciales: 1) ingeniería y análisis del sistema, 2) análisis de requisitos, 3) diseño, 4) codificación, 5) pruebas y 6) mantenimiento. Cada etapa toma como entrada la salida de la etapa anterior. El modelo garantiza una metodología ordenada y rigurosa para el desarrollo de software.
El documento describe el modelo en cascada para el desarrollo de software, el cual consiste en una secuencia lineal de fases de ingeniería y análisis del sistema, análisis de requisitos, diseño, codificación, prueba y mantenimiento. Cada fase produce documentación como insumo para la siguiente fase.
1. El modelo en V es conocido como el modelo de cuatro niveles y representa el proceso de desarrollo de software como una sucesión de etapas que producen productos intermedios. 2. Las cuatro etapas son análisis de requisitos y especificación, análisis funcional, arquitectura del sistema e implementación. 3. La parte izquierda de la V representa la definición de especificaciones mientras que la parte derecha representa la verificación contra las especificaciones definidas.
El documento habla sobre los fundamentos del diseño de software. Explica que el diseño es importante porque permite evaluar la calidad del software antes de su implementación cuando es más fácil y barato corregir errores. También describe que durante el diseño se realizan revisiones técnicas para evaluar la calidad y que el diseño es un proceso iterativo que traduce los requerimientos en un plano para construir el software. Finalmente, proporciona lineamientos para el diseño de software como que debe ser modular y contener distintas representaciones de datos, arquitectura
El documento habla sobre el proceso de diseño de software. Explica que el diseño es fundamental para satisfacer los requisitos y comprende actividades como diseño de datos, arquitectónico, procedimental e interfaces. También describe principios de diseño como abstracción, modularidad, estructura jerárquica y ocultamiento de información. Finalmente, explica que el código fuente es la implementación del diseño.
El documento habla sobre el proceso de diseño de software. Explica que el diseño es fundamental para satisfacer los requisitos y comprende actividades como diseño de datos, arquitectónico, procedimental e interfaces. También describe principios de diseño como abstracción, modularidad, estructura jerárquica y ocultamiento de información. Finalmente, explica que el código fuente es la implementación del diseño.
Este documento presenta los fundamentos básicos para el diseño de software, incluyendo conceptos como la abstracción, refinamiento, modularidad, arquitectura, jerarquía de control y estructura de datos. Explica que el diseño de software juega un papel importante en el desarrollo de software al permitir producir modelos que forman un plan de la solución.
Presentación Fundamentos Básicos del Diseño de Software Pedro LucesPedroLuces3
El documento habla sobre los fundamentos básicos del diseño de software. Explica que el diseño de software es el proceso de definir la arquitectura, componentes e interfaces de un sistema para cumplir con los requerimientos. También describe que el diseño tiene un papel importante ya que permite producir modelos que moldean la solución a implementar. Finalmente, destaca la importancia de seguir principios como modularidad, calidad, documentación y reusabilidad durante el proceso de diseño.
Este documento presenta los fundamentos y principios del diseño de software. Explica que el diseño de software es un proceso importante que define la arquitectura y componentes de un sistema. También describe estrategias de diseño como usar módulos, diagramas para representar la estructura y comportamiento del software, y principios como la funcionalidad, orden, seguridad y reusabilidad. El objetivo del diseño de software es analizar los requisitos y producir un modelo que cumpla con ellos.
El diseño de software es una parte fundamental del desarrollo de software que involucra el análisis de los requerimientos para crear una descripción de la estructura interna del software. El diseño describe la arquitectura y las interfaces entre los componentes del software. El diseño de software tiene un papel importante ya que permite crear modelos distintos para determinar cuál cumple mejor con los requerimientos.
El documento describe el modelo de desarrollo en cascada, que ordena las etapas del ciclo de vida del software de forma secuencial. Siguiendo esta metodología, primero se realiza el análisis de requisitos, luego el diseño, la codificación, las pruebas y finalmente el mantenimiento. Aunque es una metodología sencilla, tiene desventajas como que es difícil establecer todos los requerimientos al inicio y no permite iteraciones entre las etapas.
Este documento describe los fundamentos básicos para el diseño de software. Explica que el diseño de software involucra procesos como el diseño arquitectónico y el diseño detallado. También cubre técnicas como la abstracción, el acoplamiento y la cohesión, y conceptos como la modularidad y la encapsulación. El objetivo general es dividir el software en componentes modulares e independientes que interactúan entre sí de manera cohesionada y poco acoplada.
La arquitectura de software juega un papel clave en el desarrollo de software porque permite producir diversos modelos que caracterizan la solución, pueden ser analizados para determinar si cumplen los requisitos, facilitan la evaluación de alternativas y sirven para planificar las siguientes actividades. La arquitectura se define por la estructura y relaciones entre los elementos de software. Existen varios estilos arquitecturales como capas, cliente-servidor y MVC.
El documento describe los fundamentos del diseño de software. Explica que el diseño traduce los requisitos del usuario en una representación para construir el software de manera repetitiva. Incluye los procesos de diseño de datos, arquitectónico, de interfaz y procedimentales. También cubre estrategias de diseño estructural y orientado a objetos, así como métodos, herramientas de representación y medidas para evaluar la calidad del diseño.
Similar a Clase 3 - Programación IV - BSI1100 (20)
Catalogo general Ariston Amado Salvador distribuidor oficial ValenciaAMADO SALVADOR
Distribuidor Oficial Ariston en Valencia: Amado Salvador distribuidor autorizado de Ariston, una marca líder en soluciones de calefacción y agua caliente sanitaria. Amado Salvador pone a tu disposición el catálogo completo de Ariston, encontrarás una amplia gama de productos diseñados para satisfacer las necesidades de hogares y empresas.
Calderas de condensación: Ofrecemos calderas de alta eficiencia energética que aprovechan al máximo el calor residual. Estas calderas Ariston son ideales para reducir el consumo de gas y minimizar las emisiones de CO2.
Bombas de calor: Las bombas de calor Ariston son una opción sostenible para la producción de agua caliente. Utilizan energía renovable del aire o el suelo para calentar el agua, lo que las convierte en una alternativa ecológica.
Termos eléctricos: Los termos eléctricos, como el modelo VELIS TECH DRY (sustito de los modelos Duo de Fleck), ofrecen diseño moderno y conectividad WIFI. Son ideales para hogares donde se necesita agua caliente de forma rápida y eficiente.
Aerotermia: Si buscas una solución aún más sostenible, considera la aerotermia. Esta tecnología extrae energía del aire exterior para calentar tu hogar y agua. Además, puede ser elegible para subvenciones locales.
Amado Salvador es el distribuidor oficial de Ariston en Valencia. Explora el catálogo y descubre cómo mejorar la comodidad y la eficiencia en tu hogar o negocio.
Catalogo Refrigeracion Miele Distribuidor Oficial Amado Salvador ValenciaAMADO SALVADOR
Descubre el catálogo general de la gama de productos de refrigeración del fabricante de electrodomésticos Miele, presentado por Amado Salvador distribuidor oficial Miele en Valencia. Como distribuidor oficial de electrodomésticos Miele, Amado Salvador ofrece una amplia selección de refrigeradores, congeladores y soluciones de refrigeración de alta calidad, resistencia y diseño superior de esta marca.
La gama de productos de Miele se caracteriza por su innovación tecnológica y eficiencia energética, garantizando que cada electrodoméstico no solo cumpla con las expectativas, sino que las supere. Los refrigeradores Miele están diseñados para ofrecer un rendimiento óptimo y una conservación perfecta de los alimentos, con características avanzadas como la tecnología de enfriamiento Dynamic Cooling, sistemas de almacenamiento flexible y acabados premium.
En este catálogo, encontrarás detalles sobre los distintos modelos de refrigeradores y congeladores Miele, incluyendo sus especificaciones técnicas, características destacadas y beneficios para el usuario. Amado Salvador, como distribuidor oficial de electrodomésticos Miele, garantiza que todos los productos cumplen con los más altos estándares de calidad y durabilidad.
Explora el catálogo completo y encuentra el refrigerador Miele perfecto para tu hogar con Amado Salvador, el distribuidor oficial de electrodomésticos Miele.
Catalogo Cajas Fuertes BTV Amado Salvador Distribuidor OficialAMADO SALVADOR
Explora el catálogo completo de cajas fuertes BTV, disponible a través de Amado Salvador, distribuidor oficial de BTV. Este catálogo presenta una amplia variedad de cajas fuertes, cada una diseñada con la más alta calidad para ofrecer la máxima seguridad y satisfacer las diversas necesidades de protección de nuestros clientes.
En Amado Salvador, como distribuidor oficial de BTV, ofrecemos productos que destacan por su innovación, durabilidad y robustez. Las cajas fuertes BTV son reconocidas por su eficiencia en la protección contra robos, incendios y otros riesgos, lo que las convierte en una opción ideal tanto para uso doméstico como comercial.
Amado Salvador, distribuidor oficial BTV, asegura que cada producto cumpla con los más estrictos estándares de calidad y seguridad. Al adquirir una caja fuerte a través de Amado Salvador, distribuidor oficial BTV, los clientes pueden tener la tranquilidad de que están obteniendo una solución confiable y duradera para la protección de sus pertenencias.
Este catálogo incluye detalles técnicos, características y opciones de personalización de cada modelo de caja fuerte BTV. Desde cajas fuertes empotrables hasta modelos de alta seguridad, Amado Salvador, como distribuidor oficial de BTV, tiene la solución perfecta para cualquier necesidad de seguridad. No pierdas la oportunidad de conocer todos los beneficios y características de las cajas fuertes BTV y protege lo que más valoras con la calidad y seguridad que solo BTV y Amado Salvador, distribuidor oficial BTV, pueden ofrecerte.
1. ESCUELA DE INGENIERÍA DE
SISTEMAS INFORMÁTICOS
UNIVERSIDAD LATINA
LIC. RANDY VALVERDE VALVERDE
1
Programación IV
2. CONTENIDO
1. DISEÑO ESTRUCTURADO.
Definición y Principios de Diseño
Inicios del Diseño
Efectividad del Diseño
Modularidad
Abstracción
Refinamiento
Factores de calidad: Acoplamiento y Cohesión
Diseño de Calidad
Resultados del Diseño
Diagrama de Estructura
Estrategias de Diseño
Construcción del Diagrama de Estructura
Randy V² - II Q – 2016, 100 % positivo
5. DEFINICION Y PRINCIPIOS DE DISEÑO
El Diseño es un proceso a través del cual los requerimientos establecidos en la
fase de análisis deben traducirse en una representación modular del producto
de software a construir.
Cada módulo se acompaña de los procedimientos de acuerdo a los cuales debe
llevar a cabo su tarea, y de las estructuras de datos que procesa.
Randy V² - II Q – 2016, 100 % positivo
6. DEFINICION Y PRINCIPIOS DE DISEÑO
El Diseño Estructurado es un método de configuración de la organización
modular del software que se desarrolla a partir de los Flujos de Datos que
contiene la especificación de requerimientos obtenida en la fase de análisis bajo
un enfoque de desarrollo estructurado (paradigma de desarrollo).
Entonces, su punto de partida es la Especificación Estructurada.
Puede decirse que consiste en el diseño de programas como estructuras de
funciones únicas y de relativa independencia.
Randy V² - II Q – 2016, 100 % positivo
7. DISEÑO
El Diseño de un Sistema de Información corresponde a la fase que continúa al
Análisis, y consiste principalmente en:
la especificación de la estructura o arquitectura del producto de software a
construir.
la especificación de los procedimientos en virtud de los cuales cada
componente estructural debe realizar su tarea.
la especificación de las estructuras de datos, la cual tiene que responder a los
requerimientos de tratamiento automatizado de datos y generación de
información planteados en la especificación de requerimientos generada en la
fase de análisis.
Randy V² - II Q – 2016, 100 % positivo
8. DISEÑO MODULAR EFECTIVO
Para poder evaluar la efectividad de una representación de diseño, es
preciso establecer lo que se denomina en Ingeniería de Software, los
CRITERIOS PARA UN BUEN DISEÑO:
• El Diseño debe exhibir una organización jerárquica con mecanismos de
control que no atenten contra la independencia relativa de cada
componente de la jerarquía.
Randy V² - II Q – 2016, 100 % positivo
9. DISEÑO MODULAR EFECTIVO
• El diseño debe ser modular, esto es, el software debe estar particionado
lógicamente en elementos que ejecuten funciones y subfunciones
específicas.
• El diseño debe generar módulos que exhiban niveles adecuados de
independencia funcional.
• El diseño debe obtenerse a partir de la especificación de requerimientos
generada durante la fase de análisis.
Randy V² - II Q – 2016, 100 % positivo
10. DISEÑO MODULAR EFECTIVO
Conceptos fundamentales que se han validado a lo largo del tiempo:
Modularidad
Abstracción
Refinamiento
Randy V² - II Q – 2016, 100 % positivo
11. MODULARIDAD
• Módulo: cada una de las unidades claramente definidas y manejables
constituyentes del software.
• La modularidad consiste en el particionamiento del software en elementos
con nombres y direcciones separadas que se denominan módulos, los
cuales en su composición generan una totalidad que debe ser capaz de
resolver el problema que da origen a la necesidad de construir un producto
de software.
• Tiene que ver con la división de las funciones que en conjunto cumplen un
objetivo mayor, esto es, responden a la idea de totalidades emergentes
propia de la noción de sistemas.
Randy V² - II Q – 2016, 100 % positivo
12. MODULARIDAD
Beneficios de la Modularidad
• Programas más simples, ya que puede ser comprendido,
verificado, programado, depurado, mejorado y alterado por
partes.
• Módulos que pueden ser desarrollados con relativa
independencia.
• Disminución de la posibilidad de errores al reducir la
complejidad.
Randy V² - II Q – 2016, 100 % positivo
13. MODULARIDAD
Beneficios de la Modularidad
• Programas que pueden evaluarse por partes, por lo cual todo test
se hace más fácil.
• Programas más fáciles de alterar ya que son menores las
líneas de código a considerar para incorporar los cambios.
• Módulos de función única que pueden ser reutilizados.
14. MODULARIDAD
Beneficios de la Modularidad
• El programa puede ser comprendido por partes.
• Disminuye errores de programación. Son menos las líneas de código que
deben enfrentar al mismo tiempo los programadores.
• Los efectos colaterales de los cambios que afectan al sistema son drásticamente
reducidos.
• Rotación de personal menos crítica, ya que los programadores están involucrados
en unidades de código más pequeñas por lo cual la sustitución resulta menos
dificultosa.
• Responde al requerimiento de la división del código en segmentos de una
página, como lo sugiere la programación estructurada.
15. MODULARIDAD
El FAN OUT es una medida del número de módulos controlados
directamente por otro módulo (número de subordinados inmediatos
que posee).
El FAN IN indica cuántos módulos controlan directamente un
determinado módulo (número de superiores inmediatos que posee).
Un módulo que controla a otro se dice que es "superordinado" a éste
y, recíprocamente, un módulo controlado por otro se dice que es
"subordinado".
Randy V² - II Q – 2016, 100 % positivo
17. MODULARIDAD
¿ Dividir hasta el infinito para que el Esfuerzo sea Cero ?
N° Módulos
Costos
o Esfuerzo
Costo por Módulo
Costo por IntegraciónCosto Total SW
Costos MínimosRandy V² - II Q – 2016, 100 % positivo
18. ABSTRACCION
Cuando se considera una solución modular para enfrentar un
problema, se puede plantear en distintos niveles de abstracción.
Un nivel superior de Abstracción supone una solución en términos
amplios, usando un lenguaje del entorno del problema.
A niveles más bajos, se toma una orientación más procedimental, se
combina una terminología orientada al problema con una orientada a
la implementación.
El nivel más bajo de abstracción permitirá que la solución pueda
implementarse directamente.
Randy V² - II Q – 2016, 100 % positivo
19. REFINAMIENTO
El refinamiento sucesivo es una estrategia de diseño descendente (Top_Down)
propuesta de Niklaus Wirth. Quien postuló que ”la arquitectura de un programa
se desarrolla refinando sucesivamente los niveles de detalle de los
procedimientos, lográndose una jerarquía de procedimientos al descomponer
sucesivamente una sentencia global hasta alcanzar sentencias específicas a
nivel de un lenguaje de programación ".
En “Ingeniería del Software: Un Enfoque Práctico” de Roger S. Pressman, se
puede leer: “en cada etapa del refinamiento, se descomponen una o varias de las
instrucciones del programa dado en instrucciones cada vez más detalladas. Esta
descomposición o refinamiento sucesivo termina cuando todas las intrucciones
están expresadas en términos de cualquier lenguaje básico de computador o de
programación”.
Randy V² - II Q – 2016, 100 % positivo
20. REFINAMIENTO
Proceso iterativo mediante el cual la arquitectura del software es el
reflejo de la especificación de requerimientos del sistema, el cual se
realiza sistemáticamente con el propósito de lograr una estructura
modular, es decir, una representación que explicite las relaciones
entre los principales elementos del software.
Esto significa que, inicialmente, se configura una representación que
muestra una visión global tanto de las estructuras de datos como de
las estructuras de los componentes, la cual tras un proceso de
refinamiento sucesivo se transforma en una representación del diseño
muy cercana al código fuente, en cuanto a los detalles de los
procedimientos que han de regir las transformaciones que deben
llevarse a cabo en cada módulo y en estructuras de datos detalladas.
Randy V² - II Q – 2016, 100 % positivo
21. REFINAMIENTO
En la Ingeniería de Software, la modularización se apoya en lo que se
conoce como refinamiento sucesivo o gradual, para la configuración
de la estructura del software.
Módulo A
Abstracción
Refinamiento
Gradual
A1 A2
Modularidad Factorización
Randy V² - II Q – 2016, 100 % positivo
22. FACTORES DE CALIDAD: ACOPLAMIENTO
Corresponde al grado de independencia entre dos módulos.
Minimizar el acoplamiento aparece entonces como un objetivo al configurar
la estructura.
La obtención de módulos tan independientes como sea posible,se puede
ser lograr principalmente de tres maneras:
Eliminando relaciones innecesarias.
Reduciendo el número de relaciones necesarias.
Debilitando la dependencia de las relaciones necesarias.
Randy V² - II Q – 2016, 100 % positivo
23. FACTORES DE CALIDAD:
COHESION
Corresponde a la medida de relación funcional de los elementos en un
módulo.
Los elementos de un módulo corresponden a instrucciones, definiciones de
datos, o llamadas o otros módulos.
La idea es organizar estos elementos de tal manera que tengan una mayor
relación entre ellos al momento de cumplir su tarea.
Randy V² - II Q – 2016, 100 % positivo
24. FACTORES DE CALIDAD: ACOPLAMIENTO Y
COHESION
Acoplamiento
Cohesión
Principios de un
Buen Diseño
Randy V² - II Q – 2016, 100 % positivo
25. Tipos de Acoplamiento
1. Acoplamiento Normal
2. Acoplamiento de Datos
3. Acoplamiento de Marca (Stamp)
4. Acoplamiento de Control
5. Acoplamiento Común
6. Acopalmiento Externo
7. Acoplamiento de Contenido
Randy V² - II Q – 2016, 100 % positivo
26. Tipos de Acoplamiento
Grado de
Acoplamiento
NORMAL
Mejor Acoplamiento
DATOS
DE MARCA (STAMP)
CONTROL
EXTERNO (caso especial de COMÚN)
COMÚN
CONTENIDO (grado más alto : peor)
Randy V² - II Q – 2016, 100 % positivo
27. Acoplamiento Normal
Dos Módulo A y B están Normalmente Acoplados si:
• Un Módulo A llama a otro B
• B retorna el control a A
No se produce traspaso de parámetros entre ellos, sólo existe la llamada de
uno a otro.
A
B
Randy V² - II Q – 2016, 100 % positivo
28. Acoplamiento de Datos
Dos módulos están acoplados por datos si
ellos se comunican por parámetros.
Siendo cada parámetro una unidad
elemental de datos
El acoplamiento por datos corresponde a
la comunicación de datos necesaria entre
módulos. Toda vez que los módulos tienen
que comunicarse entre sí, la ligazón por
datos es inevitable y serán adecuadas si
se mantienen a niveles mínimos.
Obtener
Datos
Cliente
Leer Rut
Rut_cliente
Randy V² - II Q – 2016, 100 % positivo
29. Acoplamiento de Marca (Stamp)
Dos módulos aparecen "acoplados
de marca” si ellos se refieren a la
misma estructura datos local.
Por estructura de datos se debe
entender un grupo compuesto de
datos en vez de argumentos
simples.
Por ejemplo un Registro.
Calcular
Deuda
Cliente
Leer Cliente
Cliente
Cliente= rut+nombres+apellido_paterno+
apellido_materno+dirección+fono+e_mail
Randy V² - II Q – 2016, 100 % positivo
30. Acoplamiento de Control
Dos módulos están acoplados por
control cuando uno de ellos pasa al
otro módulo indicadores de control
(flag, switch).
Provoca dependencia de ejecución
entre un módulo y otro.
No es muy recomendable. Tratar de
utilizarlo moderadamente.
Obtener
Datos
Cliente
Leer Cliente
ClienteTipo_dato
Randy V² - II Q – 2016, 100 % positivo
31. Acoplamiento Común o Global
Dos módulos presentan acoplamiento
común, si ellos se refieren a la misma
área global de datos (archivo o área
de memoria).
Obtener
Nombre
Video
Leer Registro
Video
video
Actualizar
Stock
Video
Programas con muchos datos globales son
difíciles de entender por los programadores de
mantención, porque no es fácil saber cuáles son
los datos usados por un cierto módulo.
Randy V² - II Q – 2016, 100 % positivo
32. Acoplamiento Externo
Cuando los módulos están atados
a un entorno externo al software
se dan niveles relativamente altos
de acoplamiento.
Por ejemplo, la E/S acopla un
módulo a dispositivos, formatos y
protocolos de comunicación.
El acoplamiento externo debe
limitarse a unos pocos módulos en
la estructura.
Obtener
Nómina
Nómina
Actualizar
DW
DW
Registro_act
Randy V² - II Q – 2016, 100 % positivo
33. Acoplamiento de Contenido
Este es un tipo de Acoplamiento
indeseable.
Dos módulos presentan acoplamiento
de contenido (o patológico) si uno
hace referencia al interior del otro.
Esto ocurre si por ejemplo, en un
módulo se desvía la secuencia de
instrucciones al interior de otro o si un
módulo altera un comando de otro.
Tal acoplamiento rompe el concepto de módulos configurados bajo el criterio de
la caja negra. Forzando a un módulo conocer explícitamente los contenidos y la
implementación de otro.
………..
………
………..
Jump to Srch
……….
………
A
………..
Srch: Move..
………..
……….
……….
………
B
Randy V² - II Q – 2016, 100 % positivo
34. Tipos de Acoplamiento
Dos módulos pueden estar relacionados por más de un tipo de
acoplamiento. Si esto ocurre, el acoplamiento que caracteriza la relación
entre ellos queda definido por el peor tipo que presenten.
Por ejemplo, si dos módulos están ligados por acoplamiento de marca y
acoplamiento común a la vez, se dirá que los módulos están ligados por
acoplamiento común.
¿Cómo Analizar el Tipo de Acoplamiento?
Imaginar el Módulo como una Biblioteca
Cada Módulo es codificado por un programador diferente
Randy V² - II Q – 2016, 100 % positivo
35. “Imaginar el Módulo como una Biblioteca”.
• Cómo el módulo podría ser más fácilmente entendido.
• Cómo el módulo podría ser más utilizado por otros sistemas o invocado
por otros módulos del mismo sistema
Randy V² - II Q – 2016, 100 % positivo
36. “Cada Módulo es codificado por un programador
diferente”.
• ¿Qué tan independientes pueden trabajar los programadores?
• ¿Existe algún supuesto, convención o decisiones de implementación
a los cuales más de un módulo deba prestar atención?
• ¿Cuáles son las posibilidades de cambio que existen en relación a los
supuestos, convenciones o a la implementación?
• ¿Existe alguna manera de aislar aquellos cambios y situarlos en un
sólo módulo?
Randy V² - II Q – 2016, 100 % positivo
37. Ideas Centrales
• Sistemas altamente acoplados conducen a depurar verdaderas
pesadillas. Evítelos
• Sistemas altamente acoplados, tienden a tratarse como una sola gran
unidad. Y un sistema monolítico es la contrapartida a particionar.
• Hablar de módulos, cajas negras, es hablar de particionamiento.
• Particionar es la estrategia para abordar la complejidad.
• Las cajas negras se organizan jerárquicamente.
Randy V² - II Q – 2016, 100 % positivo
38. Tipos de Cohesión
Grado de
Cohesión
FUNCIONAL
Mayor Cohesión
SECUENCIAL
COMUNICACIONAL
PROCEDURAL
TEMPORAL
LÓGICA
COINCIDENTAL
Módulo como
Caja Negra
Módulo
Transparente
STEVEN, MYERS, CONSTANTINE y YOURDON (1974)
establecieron "una escala de cohesión"
Randy V² - II Q – 2016, 100 % positivo
39. Cohesión Funcional
Un módulo con cohesión funcional es aquel que contiene elementos que
contribuyen a la ejecución de una y sólo una tarea relacionada al problema
objeto de diseño.
Ejemplos:
Calcular el coseno de un ángulo
Calcular el I.V.A. de una factura
Verificar el dígito de un RUT
Randy V² - II Q – 2016, 100 % positivo
40. Cohesión Secuencial
Un módulo secuencialmente
cohesionado es aquel cuyos
elementos están envueltos en
actividades tales que los
datos de salida de una
actividad en general sirven
como datos de entrada para la
próxima actividad.
Ejemplo: Calcular Salario
1. Obtener sueldo base
2. Verificar número de cargas
3. Revisar días con permiso
4. Revisar días con licencia
5. Calcular horas de trabajo
6. Descontar horas de atraso
7. Agregar horas extras
....
Randy V² - II Q – 2016, 100 % positivo
41. Cohesión Comunicacional
Un módulo presenta cohesión
comunicacional cuando sus
elementos contribuyen a
actividades que usan la misma
entrada o la misma salida. No
importa el orden secuencial
Ejemplo: Obtener datos
Producto
1. Obtener nombre
2. Obtener stock
3. Obtener ubicación
4. Obtener precio
....
Randy V² - II Q – 2016, 100 % positivo
42. Cohesión Procedimental
Cuando sus elementos de procesamiento están relacionados y deben
ejecutarse en un orden específico.
Randy V² - II Q – 2016, 100 % positivo
43. Cohesión Temporal
Un módulo con cohesión temporal
es aquel cuyos elementos están
envueltos en actividades que
están relacionadas en función del
momento en que se realizan.
Ejemplo: Actividades al
iniciar el día
1. Apagar despertador
2. Tomar una ducha
3. Vestirse
4. Hacer la cama
5. Tomar desayuno
....
Randy V² - II Q – 2016, 100 % positivo
44. Cohesión Lógica
Un módulo tiene cohesión lógica,
cuando existe alguna relación
entre los elementos del módulo,
contribuyendo al desarrollo de
actividades de una misma
categoría general, donde la
actividad o las actividades a ser
ejecutadas se seleccionan desde
fuera del módulo.
Ejemplo: Registrar Pago
1. Registrar pago con tarjeta
de crédito
2. Registrar pago con cheque
3. Registrar pago con efectivo
....
Randy V² - II Q – 2016, 100 % positivo
45. Cohesión Coincidental
Un módulo coincidentemente
cohesionado es aquel cuyos
elementos desarrollan actividades
sin relación significativa entre sí.
Ejemplo:
1. Comprar un libro
2. Comer un trozo de torta
3. Ir al teatro
4. Lavar la ropa
5. Dormir
....
Randy V² - II Q – 2016, 100 % positivo