jueves, 14 de mayo de 2015

Código HTML

HTML es un lenguaje de programación que se utiliza para el desarrollo de páginas de Internet. Se trata de la sigla que corresponde a HyperText Markup Language, es decir, Lenguaje de Marcas de Hipertexto, que podría ser traducido como Lenguaje de Formato de Documentos para Hipertexto.

EL HTML se encarga de desarrollar una descripción sobre los contenidos que aparecen como textos y sobre su estructura, complementando dicho texto con diversos objetos (como fotografías, animaciones, etc).
Es un lenguaje muy simple y general que sirve para definir otros lenguajes que tienen que ver con el formato de los documentos. El texto en él se crea a partir de etiquetas, también llamadas tags, que permiten interconectar diversos conceptos y formatos.
Para la escritura de este lenguaje, se crean etiquetas que aparecen especificadas a través de corchetes o paréntesis angulares: < y >. Entre sus componentes, los elementos dan forma a la estructura esencial del lenguaje, ya que tienen dos propiedades (el contenido en sí mismo y sus atributos).

El lenguaje HTML es un estándar reconocido en todo el mundo y cuyas normas define un organismo sin ánimo de lucro llamado World Wide Web Consortium, más conocido como W3C. Como se trata de un estándar reconocido por todas las empresas relacionadas con el mundo de Internet, una misma página HTML se visualiza de forma muy similar en cualquier navegador de cualquier sistema operativo.
El primer documento formal con la descripción de HTML se publicó en 1991 bajo el nombre HTML Tags (Etiquetas HTML) y todavía hoy puede ser consultado online a modo de reliquia informática.
La primera propuesta oficial para convertir HTML en un estándar se realizó en 1993 por parte del organismo IETF (Internet Engineering Task Force). Aunque se consiguieron avances significativos (en esta época se definieron las etiquetas para imágenes, tablas y formularios) ninguna de las dos propuestas de estándar, llamadas HTML y HTML+ consiguieron convertirse en estándar oficial.
En 1995, el organismo IETF organiza un grupo de trabajo de HTML y consigue publicar, el 22 de septiembre de ese mismo año, el estándar HTML 2.0. A pesar de su nombre, HTML 2.0 es el primer estándar oficial de HTML.

Ahora vamos a abrir nuestro bloc de notas  en el equipo para realizar nuestra página web
Entramos al siguiente Link para realizar la página
 Evaluación 1

Descargue Ejemplos

Ejemplo 1
Ejemplo 2

Para más información, visita la siguientes paginas para que veas tutoriales.

HTML YA
LIBROS WEB
AULA CLIC

domingo, 27 de mayo de 2012

Arquitecturas de Sistemas Distribuidos


 Pensar en objetos que pueden distribuirse en varias computadores de una red y comunicarse a través de middleware.
Ventajas: abierto, flexible, escalable  posibilidad de reconfiguración

CORBA

Middleware, Intermediario de peticiones de objetos. Se requiere middleware a dos niveles:
Nivel de comunicación lógica: funcionalidades que permite a los objetos intercambiar datos y controlar la información sobre diferentes computadores – estándares CORBA y COM.
Nivel de componentes: proporciona una base para desarrollar componentes compatibles
Estándares como CORBA, EJB o Active X.
CORBA (Common Object Request Broker Architecture) desarrollado por OMG (Object
Management Group).

Propone Object Management Architectura  una arquitectura formada por varios componentes: 
Objetos de aplicación propios.
Objetos estándar para un dominio especifico.
Servicios fundamentales para computación distribuida como gestión de seguridad y directorios.
Facilidades horizontales como interfaz de usuarios, gestión del sistema y otras.

Los cuatro elementos principales para los estándares CORBA son:
Modelos de objetos para objetos de aplicación donde un objeto CORBA es una encapsulación de un estado con un lenguaje neutral bien definido IDL (Interface
Definition Language).
Un intermediario de peticiones de objetos ORB que gestiona peticiones para servicios de objetos – localiza el servicio, prepara la petición, envía la petición y devuelve el resultado.
Un conjunto de servicios generales que serán requeridos por muchas aplicaciones distribuidas.

Conjunto de componentes comunes construidos sobre estos servicios básicos que pueden ser requeridos por las aplicaciones.

Computación Distribuida Interorganizacional

Proporciona mejores condiciones para aplicar estándares locales y procesos operacionales.
Disponibilidad de modelos más recientes de computación distribuida que permiten computación  distribuida interorganizacional que    intraorgranizacional.
Computación peer to peer (p2p).
Sistemas orientados a servicios.

 
Computación Peer to Peer

Son sistemas descentralizados en los que los cálculos pueden llevarse a cabo en cualquier nodo de la red y, al menos en principio no se hace distinción entre clientes y servidores.
Su fin, aprovechar la ventaja de la potencia computacional y disponibilidad de almacenamiento a través de una red de computadoras.
En una arquitectura descentralizada los nodos no son simplemente elementos funcional, sino también interruptores que encaminan los datos y señales.
Altamente tolerante a fallos y tolerante a nodos desconectados.

Sistemas orientados a servicios

El desarrollo de la WWW trajo consigo que los clientes tuvieses acceso a servidores remotos situados fuera de las organizaciones, si éstas ubicaban su información en HTML entonces esta podía ser accedida por estas computadores; el acceso podría
ser por navegador y el acceso a almacenes de información por otros programas.
Para solucionar este problema se propuso la noción de un servicio web – que permite a las organizaciones hacer accesible la información a otros programas definiendo y publicando una interfaz de servicio web independiente de la aplicación que lo ogrede o lo utiliza.
Los tres estándares fundamentales que permiten la comunicación de servicios web son:
• SOAP (Simple Object Access Protocol) Define una organización para intercambio de datos estructurados entre servicios web.
• WSDL (Web Services Description Language). Define cómo puede presentarse las interfaces de los servicios web.
• UDDI (Universal Description, Discovery and Integration) define como puede organizarse la información de descripción de servicios.

Cliente - Servidor


Esta arquitectura se divide en dos partes claramente diferenciadas, la primera es la parte del servidor y la segunda la de un conjunto de clientes.

Normalmente el servidor es una máquina bastante potente que actúa de depósito de datos y funciona como un sistema gestor de base de datos (SGBD).

Por otro lado los clientes suelen ser estaciones de trabajo que solicitan varios servicios al servidor.

Ambas partes deben estar conectadas entre sí mediante una red.
Una representación gráfica de este tipo de arquitectura sería la siguiente.

Este tipo de arquitectura es la más utilizada en la actualidad, debido a que es la más avanzada y la que mejor ha evolucionado en estos últimos años.

Podemos decir que esta arquitectura necesita tres tipos de software para su correcto funcionamiento:
  • Software de gestión de datos: Este software se encarga de la manipulación y gestión de los datos almacenados y requeridos por las diferentes aplicaciones. Normalmente este software se aloja en el servidor.
  • Software de desarrollo: este tipo de software se aloja en los clientes y solo en aquellos que se dedique al desarrollo de aplicaciones.
  • Software de interacción con los usuarios: También reside en los clientes y es la aplicación gráfica de usuario para la manipulación de datos, siempre claro a nivel usuario (consultas principalmente).
A parte de estos existen más aplicaciones software para el correcto funcionamiento de esta arquitectura pero ya están condicionados por el tipo de sistema operativo instalado, el tipo de red en la que se encuentra, etc.


Arquitectura Multiprocesador

Formado por varios procesos, que pueden ejecutarse sobre procesadores diferentes (aunque no necesariamente), es muy común en sistemas grandes de tiempo real, recogen información, toman decisiones, con la afirmación, y envían señales a los actuadores que modifican el entorno del sistema.

La ventaja de un sistema multiproceso reside en la operación llamada cambio de contexto. Esta operación consiste en quitar a un proceso de la CPU, ejecutar otro proceso y volver a colocar el primero sin que se entere de nada. 

El uso de múltiples procesadores mejora el rendimiento y adaptabilidad del sistema, los sistemas de múltiples procesos  no son necesariamente sistemas distribuidos. Si se dispone de más de un procesador, entonces se puede implementar la distribución, pero los diseñadores del sistema no siempre concideran forzosamente cuestiones de distribución mediante el proceso de diseño.

Un ejemplo para este tipo de sistemas es un modelo simplificado de un sistema de control de tráfico. Un conjunto de sensores distribuidos recogen información sobre le fluijo de tráfico y la procesan localmemte antes de enviarla a una sala de control. Los operadores toman decisiones usando esta información  y dan instucciones a un proceso de control de diversas luces de tráfico.


sábado, 19 de mayo de 2012

Las Dimensiones de los Requisitos

Los calificativos que se aplican al termino requisito, muestran distintos aspectos ortogonales, teniendo las siguientes caracteristicas:
  • Información
  • Funcional
  • No funcional
Tienen los siguientes ambitos y audiencia

  • Software - Clientes y usuarios
  • Hardware - Desarrolladores
  • Sistema
Propiedad Deseable de los Requisitos

Que sea comprensible por clientes y usuarios, que sirva como canal de comunicación, para llegar  aun buen entendimiento de lo que en realidad se quiere hacer.

Verificable
Proceso finito y de coste razonable,  es decir que sean requisitos claros y concisos.




Arquitectura de Software

Diseño de Arquitectura

Busca la manera de que mi software sea más eficiente, debido de que esta indica la estructura, funcionamiento e interacción entre las partes del software. Es más que todo parecida a los planos de un edificio en construcción.  David Garlan y Mary Shaw definen que la Arquitectura es un nivel de diseño que hace foco en aspectos "más allá de los algoritmos y estructuras de datos de la computación; el diseño y especificación de la estructura global del sistema es un nuevo tipo de problema".
Se apoya en los Requerimientos No Funcionales, debido a que nos indica como va a estar conformado mi software.

Modelos o vistas
Toda arquitectura de software debe describir diversos aspectos del software. Generalmente, cada uno de estos aspectos se describe de una manera más comprensible si se utilizan distintos modelos o vistas. Es importante destacar que cada uno de ellos constituye una descripción parcial de una misma arquitectura y es deseable que exista cierto solapamiento entre ellos. Esto es así porque todas las vistas deben ser coherentes entre sí, evidente dado que describen la misma cosa.
Cada paradigma de desarrollo exige diferente número y tipo de vistas o modelos para describir una arquitectura. No obstante, existen al menos tres vistas absolutamente fundamentales en cualquier arquitectura:
  • La visión estática: describe qué componentes tiene la arquitectura.
  • La visión funcional: describe qué hace cada componente.
  • La visión dinámica: describe cómo se comportan los componentes a lo largo del tiempo y como interactúan entre sí.

Arquitecturas más comunes
Generalmente, no es necesario inventar una nueva arquitectura de software para cada sistema de información. Lo habitual es adoptar una arquitectura conocida en función de sus ventajas e inconvenientes para cada caso en concreto. Así, las arquitecturas más universales son:
  • Monolítica. Donde el software se estructura en grupos funcionales muy acoplados.
  • Cliente-servidor. Donde el software reparte su carga de cómputo en dos partes independientes pero sin reparto claro de funciones.
  • Arquitectura de tres niveles. Especialización de la arquitectura cliente-servidor donde la carga se divide en tres partes (o capas) con un reparto claro de funciones: una capa para la presentación (interfaz de usuario), otra para el cálculo (donde se encuentra modelado el negocio) y otra para el almacenamiento (persistencia). Una capa solamente tiene relación con la siguiente.
  •  Nube

viernes, 27 de abril de 2012

Diseño de Interfaces con UML



Una interfaz es una colección de operaciones que especifican un servicio de una clase o componente. Por lo tanto, una interfaz describe el comportamiento visible externamente de ese elemento. Una interfaz puede representar el comportamiento completo de una clase o componente o sólo una parte de este comportamiento. Una interfaz define un conjunto de especificaciones de operaciones (o sea, sus signaturas), pero nunca sus implementaciones. Una interfaz raramente se encuentra asilada, más bien, suele estar conectada a la clase o componente que la realiza.

Las características básicas que queremos conseguir con este interfaz, se podrían sintetizar en:
Facilidad de aprendizaje y uso.  

Representación permanente de un contexto de acción (fondo).
El objeto de interés ha de ser de fácil identificación.
Diseño ergonómico (barra de acciones o iconos, preferentemente a la derecha)
Las interacciones se basarán en acciones físicas sobre elementos de código visual o auditivo (iconos, imágenes, mensajes...) antes que en selecciones de tipo menú con sintaxis y órdenes.
Las operaciones serán rápidas, incrementales y reversibles, con efectos inmediatos.
Tratamiento del error bien cuidado y adecuado al nivel de usuario y contenidos trabajados.

La tipografía es otro factor importante del interfaz. Se procurará la combinación de textos en letras mayúsculas y minúsculas procurando no mezclar en pantalla más de dos tipos y tres medidas diferentes de letra.

La integración de recursos multimedia es muy importante en este proyecto. El peso del programa recae sobre el personaje animador, con la intención de que el usuario se identifique con él. Este personaje, además, puede hablar y transmitir mensajes de acción, ayuda y/o refuerzo. También consideramos necesario el tratamiento del audio con efectos especiales y músicas escogidas para las diferentes partes del programa.