Panorámica actual de la Ingeniería Web



Documentos relacionados
La máquina virtual de.net CLR, CLI y Rotor

Desarrollo de Aplicaciones Distribuidas con Servicios Web

La máquina virtual de.net CLR, CLI y Rotor

Lenguajes y herramientas de.net

GLOSARIO. Arquitectura: Funcionamiento, estructura y diseño de una plataforma de desarrollo.

Panorámica general de.net

Panorámica general de.net

Introducción a la plataforma.net. Tema I.b: Rafael Corchuelo POOHV

Introducción a Internet

Dispositivos móviles

Introducción al.net Framework. Introducción al.net Framework. Diseño Basado en Componentes. Curso 2008 / 09. Diseño Basado en Componentes

Modulo I. Introducción a la Programación Web. 1.1 Servidor Web.

CONCLUISIONES Y RECOMENDACIONES

DESARROLLO WEB EN ENTORNO CLIENTE

GUÍA Nro. 1 TECNOLOGÍA DE INTERNET. TIII PIII

.NET y J2EE VALORACIÓN Y COMPARACIÓN DE LOS ELEMENTOS DE LAS DOS PLATAFORMAS. Definiciones...2 C# y Java...3 Similitudes...4 Ventajas...

Comparativa y evaluación n de las herramientas de programación n para desarrollar aplicaciones en dispositivos Pocket PC

Desarrollo de Aplicaciones con Tecnologías Web

Internet y World Wide Web. Informática Aplicada Grado en GAP Fac. de Admón. y Dir. de Empresas Univ. Politécnica de Valencia

Estándares y lenguajes de marcado para el desarrollo de aplicaciones web orientadas a dispositivos moviles Esteban Saavedra Lopez

Clientes Donantonio. Especificación de requisitos software. Juan José Amor David Escorial Ismael Olea

La interoperabilidad se consigue mediante la adopción de estándares abiertos. Las organizaciones OASIS y W3C son los comités responsables de la

MF0491_3 Programación Web en el Entorno Cliente (Online)

Capítulo I. Marco Teórico

TECNOLOGÍAS ASOCIADAS A LAS APLICACIONES WEB

Host. En este texto, entenderemos por host toda máquina - léase computadora. Cuenta. Una cuenta, en general, es un espacio de memoria y de disco que

Sistema informatizado de Trazabilidad alimentaria

Windows Server Windows Server 2003

Introducción a los estándares de la Web

Mi propuesta consiste en crear un portal Web que contemple las siguientes funcionalidades:

Internet - Web. Internet - Web. Internet. Internet. Diseño de Sitios Web Desarrollo de Paginas Web. Qué es la Internet? - Qué es la Web?

Servidores Donantonio

Historia de revisiones

Juan Manuel Cueva Lovelle

UNIVERSIDAD AUTÓNOMA DE BAJA CALIFORNIA Departamento de Información Académica

Programación Web. Unidad 5. Programación del lado del servidor.

Introducción a los Servicios Web. Ing. José Luis Bugarin ILUMINATIC SAC jbugarin@consultorjava.com

DIPLOMADO EN SEGURIDAD INFORMATICA

A continuación resolveremos parte de estas dudas, las no resueltas las trataremos adelante

BASES DE DATOS OFIMÁTICAS

CORPORACIÓN MEXICANA DE INVESTIGACIÓN EN MATERIALES, S.A. DE CV

Usabilidad y métricas en la Web

GUÍAS FÁCILES DE LAS TIC

2524 Developing XML Web Services Using Microsoft ASP.NET

Los mayores cambios se dieron en las décadas de los setenta, atribuidos principalmente a dos causas:

Unidad II. Interfaz Grafica (continuación ) Basado en clases de Ing. Carlos A. Aguilar

1: La plataforma.net (.NET Framework)

Presentación de Pyramid Data Warehouse

PERFIL TÉCNICO ANALISTA-PROGRAMADOR

SERVICIO NACIONAL DE APRENDIZAJE SENA SISTEMA INTEGRADO DE GESTIÓN Procedimiento Ejecución de la Formación Profesional Integral GUÍA DE APRENDIZAJE

Generador GeneXus.NET. Última actualización: 2009

Software de sistema: Programas genéricos que permiten gestionar los recursos del ordenador.

Introducción a la plataforma.net

desarrollo. Dentro del desarrollo de la tesis el proceso de modelado del sistema fue hecho con el

asired middleware XML Así-Red Servicios Telemáticos, S.L.L. w w w. a s i r e d. e s

Visual Studio 2008 es el conjunto de herramientas de

SISTEMAS DE INFORMACIÓN III TEORÍA

Las Tecnologías de la Información y las Comunicaciones en Formación Profesional. Contenidos relevantes

Novedades. Introducción. Potencia

Web. Web Diapositiva 1

ACCIÓN FORMATIVA FINANCIADA POR EL SERVICIO PÚBLICO DE EMPLEO ESTATAL

Qué es una página web?, qué conoces al respecto?, sabes crear una página

Los requisitos de accesibilidad en un proyecto software. Implicaciones de usuarios discapacitados en el proceso software

IES Pablo Serrano-ASIR1D/DAM1D-B.Soler XML

Índice. HTML HyperText Markup Language. Conceptos básicos. Qué es HTML? Diseño de servicios Web HTML 1

La utilización de las diferentes aplicaciones o servicios de Internet se lleva a cabo respondiendo al llamado modelo cliente-servidor.

PERFIL TÉCNICO CONSULTOR SHAREPOINT PARA LA WEB

PREPARATORIA DIURNA DE CUAUTLA

revista transparencia transparencia y UNIVERSIDADES

GLOSARIO. un conjunto de noticias, ordenado por fecha. CMF (Content Management Framework) - Entorno a programación de

DATOS IDENTIFICATIVOS DEL MÓDULO FORMATIVO IMPLANTACIÓN DE APLICACIONES WEB EN ENTORNO INTERNET, INTRANET Y EXTRANET.

Qué necesito saber para tener mi sitio web en Internet?

CESyA. Audiodescripción. Calidad de la accesibilidad web en Gestores de Contenido

TEMA: DESARROLLO DE APLICACIONES WEB INTERACTIVAS UTILIZANDO LA TÉCNICA AJAX AUTOR: MERY SUSANA ZAMBONINO BAUTISTA

Propuesta de Portal de la Red de Laboratorios Virtuales y Remotos de CEA

PROGRAMADORES DE APLICACIONES INFORMATICAS

Comparación entre Active Reports, Crystal Reports, y MS Reporting Services

Proyecto MONO. Juantomás García. 1. Introducción. GNOME Hispano

Transformación de modelos en el proceso de obtención de Modelos Conceptuales partiendo de BPMN

Ingeniería Web. Pablo Sevilla Jarquín

Internet Servicios WEB (WWW)

ASP.NET PROGRAMA FORMATIVO. Modalidad: Teleformación. Duración: 56 horas. Objetivos:

ORBERE. Memoria Técnica del Aplicativo de Gestión de la producción para ADIMDE

Capítulo 5. Cliente-Servidor.

1 Introducción a XML

CMS JOOMLA. Características

Qué es una aplicación web

CONSTRUCCIÓN DE PORTALES

F A B R I C I O M U Ñ O Z S. T E N I E N T E T É C N I C O D E A V I A C I Ó N

CONCEPTOS BÁSICOS. HTML (Hypertext Markup Language) lenguaje de marcas de hipertexto Es el lenguaje en el que están escritas las páginas de la Web.

Reflexión. Inicio. Contenido

Componentes de Integración entre Plataformas Información Detallada

Capitulo 5. Implementación del sistema MDM

TÈCNICO EN PROGRAMACIÒN DE SOFTWARE SERVICIO NACIONAL DE APRENDIZAJE, SENA Material de Apoyo Plataforma.NET LA PLATAFORMA.NET

Capítulo 2. Planteamiento del problema. Capítulo 2 Planteamiento del problema

Capítulo VI. Conclusiones. En este capítulo abordaremos la comparación de las características principales y

Transcripción:

Panorámica actual de la Ingeniería Web Juan Manuel Cueva Lovelle cueva@lsi.uniovi.es Departamento de Informática Universidad de Oviedo OOTLab www.ootlab.uniovi.es WEB362 1

Contenidos Qué es la Ingeniería Web? Tecnologías Web Usabilidad en la Web Métricas en la Web Gestión del conocimiento en la Web WEB362 2

Qué es la Ingeniería Web? Qué es la Web? Literalmente "telaraña" Es la denominación de la red Internet World-Wide Wide Web Red de Ordenadores conectados mediante protocolo TCP/IP + HTTP (Tim Berners-Lee, 1990) Ingeniería Web "Es el proceso para crear, implantar y mantener aplicaciones y sistemas Web de alta calidad" WEB362 3

Tecnologías Web Estándares en la Web Lenguajes de marcas (HTML, SGML, XML) Plataformas de desarrollo Plataforma Java Microsoft.NET WEB362 4

Tecnologías Web Estándares en la Web Hipertexto (Ted Nelson, 1965) Documentos no secuenciales,, con enlaces Web ( Tim Berners-Lee, 1990) Red de Ordenadores conectados mediante protocolo TCP/IP + HTTP TCP/IP (Trasmision( Control Protocol / Internet Protocol) HTTP (HyperText( Transfer Protocol) Protocolo de transferencia de hipertexto HTML (HiperText( Markup Language) Lenguaje de marcas para hipertexto URLs (Uniform Resource Locators) Sistema de direcciones de los recursos de la web Desde 1995 los estándares están definidos por el World Wide Web Consortium http:// ://www.w3.org WEB362 5

Tecnologías Web Arquitectura básica de la Web Arquitectura cliente/servidor Cliente Protocolo HTTP Servidor Navegador (Browser( Browser) GET http:// ://www.servidor.com/index.htmlindex.html SERVIDOR http:/1.0 200 OK <html> <body> Enlace a <a href = otro. html > >Otro</a> </body body> </html html> WEB362 6

Lenguajes de Marcas HTML (HiperText Markup Markup Language) WEB362 7

Lenguajes de marcas HTML Hojas de estilo WEB362 8

Lenguajes de Marcas HTML Hojas de estilo - Reutilización WEB362 9

Lenguajes de Marcas: de SGML a XML SGML (Standard Generalized Markup Language) Utilizado para el intercambio de documentos Principio: Separar contenido de la forma de representarlo Permite utilizar un conjunto de marcas específico para cada aplicación HTML es un subconjunto de SGML Problema de SGML: Demasiado complicado para su adopción en la Web XML (extended Markup Language) Desarrollado por el consorcio Web (1995) Versión simplificada de SGML Es un metalenguaje Objetivos: Standard de intercambio de información a través de la Web Formato abierto, independiente de la plataforma Permite utilizar vocabularios específicos de una aplicación Permite la auto-descripción de dichos vocabularios (documentos auto-descritos) Las aplicaciones pueden descubrir el formato de la información y actuar en consecuencia WEB362 10

Ejemplo de XML WEB362 11

Definición de XML XML se basa en la utilización de elementos Un elemento está formado por: Una etiqueta inicial (nombre entre signos < y > ): <etiqueta> La etiqueta inicial puede contener atributos: <etiqueta atributo= valor > El elemento debe acabar con una etiqueta final con el mismo nombre El contenido del elemento es todo lo que hay entre la etiqueta inicial y la final El contenido pueden ser otros elementos En caso de un elemento vacío puede usarse la sintaxis:<etiqueta /> WEB362 12

Ventajas de XML Es un formato estructurado Contiene información y meta-información Ha sido diseñado específicamente para Internet Soportado por visualizadores y servidores Numerosas herramientas de procesamiento Legible por personas humanas (fichero de texto) Admite la definición de vocabularios específicos Separa contenido del procesamiento y visualización Aumenta la seguridad mediante la validación de documentos Formato abierto, respaldado por numerosas organizaciones Una vez definido un DTD común, facilita intercambio de información WEB362 13

Transformación de documentos XML WEB362 14

Procesamiento de XML WEB362 15

Lenguajes derivados de XML MathML Visualización de ecuaciones matemáticas SVG Gráficos vectoriales SMIL Presentaciones multimedia P3P Descripción de características de privacidad WML Similar a HTML para teléfonos móviles VoiceML Portales basados en voz XML Signature Firma de recursos Web XKMS Firmas y criptografía XML Query Consultas de documentos (Bases de datos) XBRL Contabilidad ebxml Negocios electrónicos (e-business business) SyncXML Sincronización de dispositivos UPnP Plug and Play universal WEB362 16

Tecnología XML Referencias http:// ://www.w3.org Página web donde están los estándares de Internet http:// ://www.xml.org El portal de XML para la industria http:// ://topxml.com Artículos y software XML http:// ://www.it.uc3m.es/~xml/enlaces.html Portal en Español con gran cantidad de enlaces WEB362 17

Generación dinámica de información Computación dinámica: La información se computa en el momento en que se solicita (normalmente a partir de una base de datos) Ejemplo: Información del tiempo. Ventajas: Flexibilidad: La información se adapta a las características del cliente Eficiencia: No es necesario tener almacenada toda la información Posibilidades Computación en el cliente Computación en el servidor WEB362 18

Generación dinámica de información Computación en el Cliente <object< object> WEB362 19

Generación dinámica de información Computación en el Cliente <script< script> WEB362 20

Generación dinámica de información Computación en el Servidor (CGI) WEB362 21

Generación dinámica de información Computación en el Servidor.NET: Los programas de la plataforma.net WEB362 22

Generación dinámica de información Servicios Web WEB362 23

Plataformas de desarrollo Tecnología Java.class JVM JVM JVM WEB362 24

Plataformas de desarrollo Modelo de aplicaciones con tecnología Java WEB362 25

Plataformas de desarrollo Arquitectura de la tecnología Java WEB362 26

Plataformas de desarrollo Referencias http:// ://java.sun.com Página oficial de Sun sobre Java Aquí se pueden descargar las últimas versiones de SDK Contiene gran cantidad de documentación sobre la plataforma Java WEB362 27

Plataformas de desarrollo Microsoft.NET Qué es.net? Una plataforma de desarrollo de software incluye interfaces, componentes y herramientas El mayor cambio en Microsoft desde que Windows NT reemplazó a MS-DOS El cambio incluye Cambio de formato de los ejecutables Cambio de compiladores y de su filosofía de trabajo Cambio de la biblioteca de clases básicas... WEB362 28

Plataformas de desarrollo Microsoft.NET Desarrollo de software con.net Compilación public static void Main(String[] args ) { String usr; FileStream f; StreamWriter w; try { usr=environment.getenvironmentvariable("username"); f=new FileStream( C:\\test.txt",FileMode.Create); public static void Main(String[] args ) w=new StreamWriter(f); { String usr; FileStream f; StreamWriter w; w.writeline(usr); try { w.close(); usr=environment.getenvironmentvariable("username"); } catch (Exception f=new e){ FileStream( C:\\test.txt",FileMode.Create); Console.WriteLine("Exception:"+e.ToString()); w=new StreamWriter(f); } w.writeline(usr); } w.close(); } catch (Exception e){ Console.WriteLine("Exception:"+e.ToString()); } } Código fuente Ejecución Compilador C# J# VB Cobol Assembly (ensamblado) IL (lenguaje( intermedio) Metadatos Recursos CLR Common Language Runtime WEB362 29

Plataformas de desarrollo Microsoft.NET En el interior de la CLR... CLR IL to Native Compiler Native.exe + GC table Class Loader Code Manager Debug Engine Security Assembly Loader Garbage Collection Exception Manager Thread Support COM Interop Policy <?xml version="1.0" encoding="utf-8"?> <configuration> <mscorlib> <security> <policy> <PolicyLevel version="1"> <CodeGroup class="unioncodegroup" version="1" PermissionSetName="Nothing" Name="All_Code" Description="Code group grants no permissio ns and forms the root of the code group tree."> <IMembershipCondition clas s="allmembershipcondition" version="1"/> <CodeGroup class="unioncodegroup" version="1" PermissionSetName="FullTrust" WEB362 30

Plataformas de desarrollo Microsoft.NET Facilidades al desarrollo....net Framework Nivel software para el desarrollo y ejecución de aplicaciones sobre un sistema operativo Common Language Runtime (CLR) Base Class Libraries Distintos lenguajes de Programación Modelos de programación ASP.NET Formularios Web Servicios Web XML Servicios Web WEB362 31

Plataformas de desarrollo Microsoft.NET.NET Framework gráficamente ASP.NET Servicios Web Formularios Web Lenguajes de Programación C# VB.NET VC++ JScript Librería de clases (system, ADO, XML ) Common Language Runtime (CLR) WEB362 32

Plataformas de desarrollo Microsoft.NET Framework Namespace Services Description Discovery Protocols Caching Configuration System.Web UI HtmlControls WebControls Security SessionState Design System.WinForms Drawing2D Imaging ComponentModel System.Drawing Printing Text ADO Design System.Data SQL SQLTypes XSLT XPath System.Xml Serialization Collections Configuration Diagnostics Globalization IO Net Reflection Resources System Security ServiceProcess Text Threading Runtime InteropServices Remoting Serialization WEB362 33

Plataformas de desarrollo Microsoft.NET Referencias Así es Microsoft.NET David S. Platt. McGraw-Hill, 2001 http:// ://msdn.microsoft.com/downloads/ Información pública de Microsoft http:// ://www.go-mono.com/ Proyecto CLR para Linux WEB362 34

Usabilidad en la Web Un sistema usable es... Funcionalmente correcto Eficiente de usar Fácil de aprender Fácil de recordar Tolerante a los errores Subjetivamente agradable WEB362 35

Usabilidad en la Web Por qué es importante? La WEB se está convirtiendo en un elemento clave en el desarrollo de las empresas Las instituciones ofrecen información y servicios a través de la WEB La usabilidad es un factor estratégico fundamental para conseguir una máximo aprovechamiento de estos recursos WEB362 36

Usabilidad en la Web Ingeniería de la usabilidad Es importante utilizar la ingeniería de software Utilizar un modelo de proceso para sistemas interactivos Es importante considerar en el proceso la usabilidad desde un principio WEB362 37

Usabilidad en la Web Modelo de proceso Requisitos Diseño conceptual Mockups Prototipos Evaluación Producción Lanzamiento WEB362 38

Usabilidad en la Web Requisitos de usabilidad Audiencia Análisis Escenarios Análisis de la diversidad Necesidades del usuario Metas y objetivos Objetivos de usabilidad Análisis de la competencia WEB362 39

Usabilidad en la Web Modelos organización de contenidos WEB362 40

Usabilidad en la Web Modelos de navegación Orientado a la izquierda Orientado a la derecha Orientado por arriba Orientado por abajo Mapa WEB362 41

Usabilidad en la Web Maquetas (mockups( mockups) Representaciones estáticas de una sola página del espacio de diseño Son útiles para refinar el proceso visual y facilitar la comunicación entre el equipo de diseño Utilizable para diferentes métodos de evaluación WEB362 42

Usabilidad en la Web Producción Desarrollo de las aplicaciones Aplicación de la tecnología Web Uso de Sistemas de Gestión de Bases de Datos WEB362 43

Usabilidad en la Web Pre-lanzamiento Registro del dominio Dominios actuales:.es.com..net.org..info.tv Cómo hacerlo? http:// ://www.nominalia.es Precio por año.es 54 euros Test de tareas Test de código Test de carga Tiempos de respuesta rápido es el criterio más importante en el diseño de páginas web 0,1 segs es el límite aproximado para hacer sentir al usuario que está reaccionando r intantáneamente 1 segundo es el límite para que el usuario piense que hay una interrupción 10 segundos es el límite máximo para mantener la atención mientras esperan Hay que indicar el tamaño de los archivos cuya descarga durará previsiblemente p más de 10 segundos Test de sistema WEB362 44

Usabilidad en la Web Lanzamiento Promoción del sitio web Herramienta de control y evaluación de visitas para conocer la evolución y acciones desarrolladas Alta en los buscadores más adecuados y de manera profesional Enlaces a nuestra página en sitios afines Colocar la dirección del sitio web en los mismos sitios en que lo están los teléfonos o la dirección de la empresa: Tarjetas de visita, folletos, publicidad en periódicos y revistas, vallas, pósters,, regalos publicitarios de toda índole, etc. WEB362 45

Usabilidad en la Web Referencias Jakob Nielsen http:// ://www.useit.com Cadius http:// ://www.cadius.org Sitio de Eduardo Manchón http:// ://www.ainda.info AIPO http:// ://griho.udl.es/aipo WEB362 46

Métricas en la Web Se definen un conjunto de características y subcaracterísticas de un sitio web agrupadas en Usabilidad Funcionalidad Confiabilidad Eficiencia Se mide cada subcaracterística Las características se calculan a partir de las subcaracterísticas utilizando alguna ponderación o regla Volviendo a ponderar las características se obtiene la puntuación final del sitio web WEB362 47

Métricas en la Web [Olsina 2000] WEB362 48

Métricas en la Web Referencias Tesis Metodología cuantitativa para la evaluación y comparación de la calidad de sitios web. Luis Antonio Olsina,, 2000 http:// ://www.di.uniovi.es/~cueva/investigacion/tesis WEB362 49

Gestión del Conocimiento en la Web Conocimiento es la capacidad para transformar datos e información en acciones efectivas (eficaces). [J.D.Edwards] Gestión del conocimiento significa entregar a las personas los datos e información necesarias para ser eficientes (eficaces) en sus trabajos. Conocimiento difiere de información y datos en aspectos significativos. WEB362 50

Gestión del Conocimiento en la Web Las redes Intranet y Extranet como espina dorsal de la gestión del conocimiento de las organizaciones Las organizaciones, instituciones y empresas deberán considerar el capital intelectual como uno de sus grandes activos La web es el camino más fácil de llevar a cabo la gestión del conocimiento WEB362 51

Web semántica Web actual = mayor almacén de información Grandes cantidades de información sobre cualquier asunto Acceso casi instantáneo desde cualquier lugar con conexión a Internet Sistema no centralizado Cualquier persona puede añadir más información Dificultades para: Localizar información Buscadores basados en palabras clave (sin información del contexto) to) Automatizar tareas Ej: Encontrar el mejor precio, reserva de viajes, etc. La web fue diseñada para ser visualizada por personas, no por máquinas Páginas Web actuales Contienen información legible por una máquina para visualización El contenido no se puede tratar semánticamente por una máquina Web semántica (Tim Berners-Lee) Se utiliza para designar una web de nueva generación en la que los contenidos sean algo más que una gran suma de información y servicios escasamente estructurados. urados. Este nuevo enfoque propone reestructurar y enriquecer los documentos y componentes web con información semántica explícita, independiente de la presentación n al usuario, y susceptible de ser procesada de forma automática por un programa. WEB362 52

Referencias http:// ://www.di.uniovi.es/~cueva/investigacion/lineas/web Página web del autor con enlaces a distintos temas de Ingeniería Web WEB362 53