962 resultados para Modelado de aplicaciones web
Resumo:
Comunicación presentada en las VII Jornadas de Ingeniería del Software y Bases de Datos (JISBD 2002), dentro del II Taller sobre Ingeniería del Software Orientada al Web (Web Engineering) WebE'2002, El Escorial, Madrid, 19 noviembre 2002.
Resumo:
Comunicación presentada en las VIII Jornadas de Ingeniería del Software y Bases de Datos, JISBD 2003, Alicante, 12-14 noviembre 2003.
Resumo:
Tradicionalmente la enseñanza de los autómatas y lenguajes formales basa su principal aplicación práctica en la construcción de compiladores. Sin embargo, las tareas de diseño y programación necesarias son excesivamente complejas como para que los estudiantes, que están cursando el tercer cuatrimestre de la Ingeniería, puedan abordarlas con el rigor necesario. Es posible incorporar otro enfoque práctico, real y más actual de las expresiones regulares en estas asignaturas, aprovechando su frecuente uso como herramienta de especificación de patrones a la hora de diseñar formularios de entrada de datos en diferentes contextos y, particularmente, en aplicaciones web de tres capas. El hecho de trabajar esta competencia junto con el desarrollo teórico de las expresiones regulares permite a los estudiantes ser conscientes de la importante utilidad práctica de este concepto, sin restringirlo a otros usos más clásicos relacionados con el diseño de procesadores de textos o analizadores léxicos. Durante el curso 2006-07 se ha propuesto a los estudiantes de Ingeniería Técnica en Informática de Sistemas de la Universidad del País Vasco desarrollar fragmentos de código basados en una notación formal para resolver problemas de reconocimiento de patrones. La experiencia se ha llevado a cabo utilizando concretamente la notación, inspirada en las expresiones regulares, de JavaScript, resultando viable, efectiva y bien valorada por parte de los estudiantes.
Resumo:
Resumen basado en el de la publicaci??n
Resumo:
Premio Extraordinario, Área de Tecnológicas
Resumo:
[ES] Esta aplicación surgió de la necesidad real del equipo de desarrolladores encargados de llevar a cabo el proceso de despliegue de aplicaciones web en empresas que siguen modelos de desarrollo iterativos, con grandes procesos de despliegue que deben ser aplicados con bastante frecuencia. El objetivo fundamental del proyecto es proporcionar a estos usuarios una aplicación que sirva de ayuda en el proceso de despliegue y centralice toda la información importante y útil que debe ser comprobada de manera constante y automatice todas aquellas tareas triviales que constituyen una pérdida de tiempo para los encargados del proceso de despliegue y disminuyen la concentración en el propio proceso y los detalles importantes y por lo tanto la calidad final del proceso de despliegue. La aplicación desarrollada será útil para la organización y control del proceso y además ofrecerá beneficios en cuanto a comunicación entre aquellos interesados en la nueva versión a desplegar. De modo general, la aplicación ofrecerá una forma de monitorizar los distintos estados de la nueva versión y mantendrá un sistema de rastreo de todos los eventos sucedidos durante la etapa de despliegue e información relacionada, además de automatizar tantas tareas como sea posible.
Resumo:
La usabilidad es un atributo de calidad de un sistema software que llega a ser crítico en sistemas altamente interactivos. Desde el campo de la Interacción Persona-Ordenador se proponen recomendaciones que permiten alcanzar un nivel adecuado de usabilidad en un sistema. En la disciplina de la Ingeniería de Software se ha establecido que algunas de estas recomendaciones afectan a la funcionalidad principal de los sistemas y no solo a la interfaz de usuario. Este tipo de recomendaciones de usabilidad se deben tener en cuenta desde las primeras actividades y durante todo el proceso de desarrollo, así como se hace con atributos tales como la seguridad, la facilidad de mantenimiento o el rendimiento. Desde la Ingeniería de Software se han hecho estudios y propuestas para abordar la usabilidad en las primeras actividades del desarrollo. En particular en la educción de requisitos y diseño de la arquitectura. Estas propuestas son de un alto nivel de abstracción. En esta investigación se aborda la usabilidad en actividades avanzadas del proceso de desarrollo: el diseño detallado y la programación. El objetivo de este trabajo es obtener, formalizar y validar soluciones reutilizables para la usabilidad en estas actividades. En este estudio se seleccionan tres funcionalidades de usabilidad identificadas como de alto impacto en el diseño: Abortar Operación, Retroalimentación de Progreso y Preferencias. Para la obtención de elementos reutilizables se utiliza un método inductivo. Se parte de la construcción de aplicaciones web particulares y se induce una solución general. Durante la construcción de las aplicaciones se mantiene la trazabilidad de los elementos relacionados con cada funcionalidad de usabilidad. Al finalizar se realiza un análisis de elementos comunes, y los hallazgos se formalizan como patrones de diseño orientados a la implementación y patrones de programación en cada uno de los lenguajes utilizados: PHP, VB .NET y Java. Las soluciones formalizadas como patrones se validan usando la metodología de estudio de casos. Desarrolladores independientes utilizan los patrones para la inclusión de las tres funcionalidades de usabilidad en dos nuevas aplicaciones web. Como resultado, los desarrolladores pueden usar con éxito las soluciones propuestas para dos de las funcionalidades: Abortar Operación y Preferencias. La funcionalidad Retroalimentación de Progreso no puede ser implementada completamente. Se concluye que es posible obtener elementos reutilizables para la implementación de cada funcionalidad de usabilidad. Estos elementos incluyen: escenarios de aplicación, que son la combinación de casuísticas que generan las funcionalidades de usabilidad, responsabilidades comunes necesarias para cubrir los escenarios, componentes comunes para cumplir con las responsabilidades, elementos de diseño asociados a los componentes y el código que implementa el diseño. Formalizar las soluciones como patrones resulta útil para comunicar los hallazgos a otros desarrolladores y los patrones se mejoran a través de su utilización en nuevos desarrollos. La implementación de funcionalidades de usabilidad presenta características que condicionan su reutilización, en particular, el nivel de acoplamiento de la funcionalidad de usabilidad con las funcionalidades de la aplicación, y la complejidad interna de la solución. ABSTRACT Usability is a critical quality attribute of highly interactive software systems. The humancomputer interaction field proposes recommendations for achieving an acceptable system usability level. The discipline of software engineering has established that some of these recommendations affect not only the user interface but also the core system functionality. This type of usability recommendations must be taken into account as of the early activities and throughout the software development process as in the case of attributes like security, ease of maintenance or performance. Software engineering has conducted studies and put forward proposals for tackling usability in the early development activities, particularly requirements elicitation and architecture design. These proposals have a high level of abstraction. This research addresses usability in later activities of the development process: detailed design and programming. The goal of this research is to discover, specify and validate reusable usability solutions for detailed design and programming. Abort Operation, Feedback and Preferences, three usability functionalities identified as having a high impact on design, are selected for the study. An inductive method, whereby a general solution is induced from particular web applications built for the purpose, is used to discover reusable elements. During the construction of the applications, the traceability of the elements related to each usability functionality is maintained. At the end of the process, the common and possibly reusable elements are analysed. The findings are specified as implementation-oriented design patterns and programming patterns for each of the languages used: PHP, VB .NET and Java. The solutions specified as patterns are validated using the case study methodology. Independent developers use the patterns in order to build the three usability functionalities into two new web applications. As a result, the developers successfully use the proposed solutions for two of the functionalities: Abort Operation and Preferences. The Progress Feedback functionality cannot be fully implemented. We conclude that it is possible to discover reusable elements for implementing each usability functionality. These elements include: application scenarios, which are combinations of cases that generate usability functionalities, common responsibilities to cover the scenarios, common components to fulfil the responsibilities, design elements associated with the components and code implementing the design. It is useful to specify solutions as patterns in order to communicate findings to other developers, and patterns improve through further use in other development projects. Reusability depends on the features of usability functionality implementation, particularly the level of coupling of the usability functionality with the application functionalities and the internal complexity of the solution.
Resumo:
Este proyecto está centrado en investigar la utilización de los frameworks de Java Spring,Hibernate y JSF en el desarrollo de aplicaciones web. Para poder analizar sus ventajas e inconvenientes, he realizado un caso práctico, una aplicación web llamada “Votación de Product Box”. Las primeras dos secciones de este proyecto son este resumen del proyecto y un abstract, es decir, este mismo resumen, en inglés. En la introducción (sección tercera), definiré los objetivos del proyecto, luego en la cuarta sección explicaré las características principales de cada framework, destacando sus ventajas. Una vez presentados los frameworks, paso a explicar el caso práctico, definiendo los requisitos de la aplicación Web y sus casos de uso en la quinta sección. Describo el entorno de desarrollo, las herramientas utilizadas y la razón por las cuales las he elegido en la sexta sección. Ahora explico cómo he realizado la integración de los tres frameworks en la aplicación (sección séptima) y la relaciono por medio de diagramas de clase y de entidad-relación (sección octava). Por último he realizado un tutorial de uso de la aplicación Web (sección novena), he sacado las conclusiones de haber trabajado con estos frameworks, qué ventajas e inconvenientes he encontrado y qué he aprendido a lo largo de este proyecto (sección décima),y he referenciado una bibliografía por si se quiere profundizar en el estudio de estos frameworks (sección undécima). ABSTRACT This project focuses on investigating the use of Java frameworks Spring, JSF and Hibernate on the development of Web applications. To analyze their advantages and disadvantages, I have made a practical example, a website called “Votación de Product Box”. The first two sections of this project are the project summary and abstract (the same summary in English). In the introduction (section three), I define the project goals, and then, in the fourth section, I explain the main features of each framework, emphasizing on its advantages. After introducing the frameworks, I explain the study case, I gather requirements and I make use cases in the fifth section. I describe the development environment, the tools used and the reason why I have chosen them in the sixth section. So I can explain how I made the integration of the three frameworks in the application (section seventh) and relate through class diagrams and entity relationship (section eight). Finally I make a tutorial to use the Web application (Section ninth), I draw to the conclusions of working with these frameworks, which advantages and disadvantages I have found, and I what things I learned through this project (tenth section) and I have a referenced bibliography just in case you want to find out some more about these frameworks (section eleven).
Resumo:
En este tema se hace una introducción a la problemática de los dispositivos móviles y a conceptos generales sobre programación de aplicaciones web para ellos.
Resumo:
Comunicación presentada en las V Jornadas Iberoamericanas de Ingeniería de Requisitos y Ambientes Software (IDEAS’02), La Habana, Cuba, abril 2002.
Resumo:
Conferencia "Seguridad de las aplicaciones web" impartida en las III Jornadas Informáticas - UTE 2016 en la Facultad de Ciencias de la Ingeniería e Industrias de la Universidad Tecnológica Equinoccial (Quito, Ecuador) el 5 de julio de 2016.
Resumo:
This PhD thesis contributes to the problem of resource and service discovery in the context of the composable web. In the current web, mashup technologies allow developers reusing services and contents to build new web applications. However, developers face a problem of information flood when searching for appropriate services or resources for their combination. To contribute to overcoming this problem, a framework is defined for the discovery of services and resources. In this framework, three levels are defined for performing discovery at content, discovery and agente levels. The content level involves the information available in web resources. The web follows the Representational Stateless Transfer (REST) architectural style, in which resources are returned as representations from servers to clients. These representations usually employ the HyperText Markup Language (HTML), which, along with Content Style Sheets (CSS), describes the markup employed to render representations in a web browser. Although the use of SemanticWeb standards such as Resource Description Framework (RDF) make this architecture suitable for automatic processes to use the information present in web resources, these standards are too often not employed, so automation must rely on processing HTML. This process, often referred as Screen Scraping in the literature, is the content discovery according to the proposed framework. At this level, discovery rules indicate how the different pieces of data in resources’ representations are mapped onto semantic entities. By processing discovery rules on web resources, semantically described contents can be obtained out of them. The service level involves the operations that can be performed on the web. The current web allows users to perform different tasks such as search, blogging, e-commerce, or social networking. To describe the possible services in RESTful architectures, a high-level feature-oriented service methodology is proposed at this level. This lightweight description framework allows defining service discovery rules to identify operations in interactions with REST resources. The discovery is thus performed by applying discovery rules to contents discovered in REST interactions, in a novel process called service probing. Also, service discovery can be performed by modelling services as contents, i.e., by retrieving Application Programming Interface (API) documentation and API listings in service registries such as ProgrammableWeb. For this, a unified model for composable components in Mashup-Driven Development (MDD) has been defined after the analysis of service repositories from the web. The agent level involves the orchestration of the discovery of services and contents. At this level, agent rules allow to specify behaviours for crawling and executing services, which results in the fulfilment of a high-level goal. Agent rules are plans that allow introspecting the discovered data and services from the web and the knowledge present in service and content discovery rules to anticipate the contents and services to be found on specific resources from the web. By the definition of plans, an agent can be configured to target specific resources. The discovery framework has been evaluated on different scenarios, each one covering different levels of the framework. Contenidos a la Carta project deals with the mashing-up of news from electronic newspapers, and the framework was used for the discovery and extraction of pieces of news from the web. Similarly, in Resulta and VulneraNET projects the discovery of ideas and security knowledge in the web is covered, respectively. The service level is covered in the OMELETTE project, where mashup components such as services and widgets are discovered from component repositories from the web. The agent level is applied to the crawling of services and news in these scenarios, highlighting how the semantic description of rules and extracted data can provide complex behaviours and orchestrations of tasks in the web. The main contributions of the thesis are the unified framework for discovery, which allows configuring agents to perform automated tasks. Also, a scraping ontology has been defined for the construction of mappings for scraping web resources. A novel first-order logic rule induction algorithm is defined for the automated construction and maintenance of these mappings out of the visual information in web resources. Additionally, a common unified model for the discovery of services is defined, which allows sharing service descriptions. Future work comprises the further extension of service probing, resource ranking, the extension of the Scraping Ontology, extensions of the agent model, and contructing a base of discovery rules. Resumen La presente tesis doctoral contribuye al problema de descubrimiento de servicios y recursos en el contexto de la web combinable. En la web actual, las tecnologías de combinación de aplicaciones permiten a los desarrolladores reutilizar servicios y contenidos para construir nuevas aplicaciones web. Pese a todo, los desarrolladores afrontan un problema de saturación de información a la hora de buscar servicios o recursos apropiados para su combinación. Para contribuir a la solución de este problema, se propone un marco de trabajo para el descubrimiento de servicios y recursos. En este marco, se definen tres capas sobre las que se realiza descubrimiento a nivel de contenido, servicio y agente. El nivel de contenido involucra a la información disponible en recursos web. La web sigue el estilo arquitectónico Representational Stateless Transfer (REST), en el que los recursos son devueltos como representaciones por parte de los servidores a los clientes. Estas representaciones normalmente emplean el lenguaje de marcado HyperText Markup Language (HTML), que, unido al estándar Content Style Sheets (CSS), describe el marcado empleado para mostrar representaciones en un navegador web. Aunque el uso de estándares de la web semántica como Resource Description Framework (RDF) hace apta esta arquitectura para su uso por procesos automatizados, estos estándares no son empleados en muchas ocasiones, por lo que cualquier automatización debe basarse en el procesado del marcado HTML. Este proceso, normalmente conocido como Screen Scraping en la literatura, es el descubrimiento de contenidos en el marco de trabajo propuesto. En este nivel, un conjunto de reglas de descubrimiento indican cómo los diferentes datos en las representaciones de recursos se corresponden con entidades semánticas. Al procesar estas reglas sobre recursos web, pueden obtenerse contenidos descritos semánticamente. El nivel de servicio involucra las operaciones que pueden ser llevadas a cabo en la web. Actualmente, los usuarios de la web pueden realizar diversas tareas como búsqueda, blogging, comercio electrónico o redes sociales. Para describir los posibles servicios en arquitecturas REST, se propone en este nivel una metodología de alto nivel para descubrimiento de servicios orientada a funcionalidades. Este marco de descubrimiento ligero permite definir reglas de descubrimiento de servicios para identificar operaciones en interacciones con recursos REST. Este descubrimiento es por tanto llevado a cabo al aplicar las reglas de descubrimiento sobre contenidos descubiertos en interacciones REST, en un nuevo procedimiento llamado sondeo de servicios. Además, el descubrimiento de servicios puede ser llevado a cabo mediante el modelado de servicios como contenidos. Es decir, mediante la recuperación de documentación de Application Programming Interfaces (APIs) y listas de APIs en registros de servicios como ProgrammableWeb. Para ello, se ha definido un modelo unificado de componentes combinables para Mashup-Driven Development (MDD) tras el análisis de repositorios de servicios de la web. El nivel de agente involucra la orquestación del descubrimiento de servicios y contenidos. En este nivel, las reglas de nivel de agente permiten especificar comportamientos para el rastreo y ejecución de servicios, lo que permite la consecución de metas de mayor nivel. Las reglas de los agentes son planes que permiten la introspección sobre los datos y servicios descubiertos, así como sobre el conocimiento presente en las reglas de descubrimiento de servicios y contenidos para anticipar contenidos y servicios por encontrar en recursos específicos de la web. Mediante la definición de planes, un agente puede ser configurado para descubrir recursos específicos. El marco de descubrimiento ha sido evaluado sobre diferentes escenarios, cada uno cubriendo distintos niveles del marco. El proyecto Contenidos a la Carta trata de la combinación de noticias de periódicos digitales, y en él el framework se ha empleado para el descubrimiento y extracción de noticias de la web. De manera análoga, en los proyectos Resulta y VulneraNET se ha llevado a cabo un descubrimiento de ideas y de conocimientos de seguridad, respectivamente. El nivel de servicio se cubre en el proyecto OMELETTE, en el que componentes combinables como servicios y widgets se descubren en repositorios de componentes de la web. El nivel de agente se aplica al rastreo de servicios y noticias en estos escenarios, mostrando cómo la descripción semántica de reglas y datos extraídos permiten proporcionar comportamientos complejos y orquestaciones de tareas en la web. Las principales contribuciones de la tesis son el marco de trabajo unificado para descubrimiento, que permite configurar agentes para realizar tareas automatizadas. Además, una ontología de extracción ha sido definida para la construcción de correspondencias y extraer información de recursos web. Asimismo, un algoritmo para la inducción de reglas de lógica de primer orden se ha definido para la construcción y el mantenimiento de estas correspondencias a partir de la información visual de recursos web. Adicionalmente, se ha definido un modelo común y unificado para el descubrimiento de servicios que permite la compartición de descripciones de servicios. Como trabajos futuros se considera la extensión del sondeo de servicios, clasificación de recursos, extensión de la ontología de extracción y la construcción de una base de reglas de descubrimiento.
Resumo:
Este Proyecto Fin de Grado trabaja en pos de la mejora y ampliación de los sistemas Pegaso y Gades, dos Sistemas Expertos enmarcados en el ámbito de la e-Salud. Estos sistemas, que ya estaban en funcionamiento antes del comienzo de este trabajo, apoyan la toma de decisiones en Atención Primaria. Esto es, permiten evaluar el nivel de adquisición del lenguaje en niños de 0 a 6 años a través de sus respectivas aplicaciones web. Además, permiten almacenar dichas evaluaciones y consultarlas posteriormente, junto con las decisiones del sistema asociadas a las mismas. Pegaso y Gades siguen una arquitectura de tres capas y están desarrollados usando fundamentalmente componentes Java y siguiendo. Como parte de este trabajo, en primer lugar se solucionan algunos problemas en el comportamiento de ambos sistemas, como su incompatibilidad con Java SE 7. A continuación, se desarrolla una aplicación que permite generar una ontología en lenguaje OWL desde código Java. Para ello, se estudia primero el concepto de ontología, el lenguaje OWL y las diferentes librerías Java existentes para generar ontologías OWL. Por otra parte, se mejoran algunas de las funcionalidades de los sistemas de partida y se desarrolla una nueva funcionalidad para la explotación de los datos almacenados en las bases de datos de ambos sistemas Esta nueva funcionalidad consiste en un módulo responsable de la generación de estadísticas a partir de los datos de las evaluaciones del lenguaje que hayan sido realizadas y, por tanto, almacenadas en las bases de datos. Estas estadísticas, que pueden ser consultadas por todos los usuarios de Pegaso y Gades, permiten establecer correlaciones entre los diversos conjuntos de datos de las evaluaciones del lenguaje. Por último, las estadísticas son mostradas por pantalla en forma de varios tipos de gráficas y tablas, de modo que los usuarios expertos puedan analizar la información contenida en ellas. ABSTRACT. This Bachelor's Thesis works towards improving and expanding the systems Pegaso and Gades, which are two Expert Systems that belong to the e-Health field. These systems, which were already operational before starting this work, support the decision-making process in Primary Care. That is, they allow to evaluate the language acquisition level in children from 0 to 6 years old. They also allow to store these evaluations and consult them afterwards, together with the decisions associated to each of them. Pegaso and Gades follow a three-tier architecture and are developed using mainly Java components. As part of this work, some of the behavioural problems of both systems are fixed, such as their incompatibility with Java SE 7. Next, an application that allows to generate an OWL ontology from Java code is developed. In order to do that, the concept of ontology, the OWL language and the different existing Java libraries to generate OWL ontologies are studied. On the other hand, some of the functionalities of the initial systems are improved and a new functionality to utilise the data stored in the databases of both systems is developed. This new functionality consists of a module responsible for the generation of statistics from the data of the language evaluations that have been performed and, thus, stored in the databases. These statistics, which can be consulted by all users of Pegaso and Gades, allow to establish correlations between the diverse set of data from the language evaluations. Finally, the statistics are presented to the user on the screen in the shape of various types of charts and tables, so that the expert users can analyse the information contained in them.
Resumo:
En la Web 2.0, donde usuarios finales sin grandes conocimientos de programación pueden interactuar y crear aplicaciones web utilizando componentes publicados en Internet, ofrecidos por una gran variedad de proveedores de servicio. La selección de estos componentes requiere de un análisis exhaustivo por parte de los usuarios sobre las propiedades de estos componentes en referencia a su calidad. En este proyecto, se presentan dos modelos de calidad según una estructura jerárquica, uno para componentes web como elementos autónomos y otro para componentes utilizados en aplicaciones de mashup, basado en un análisis de la emergente Web 2.0. Además, se define una herramienta de medición y anotación de calidad para los distintos niveles de los modelos. Estas herramientas pretenden ser un útil instrumento para los desarrolladores y usuarios de componentes y mashups.---ABSTRACT---In the Web 2.0, where end users without a technical programming background can interact and develop web applications leveraging web components published on the Internet, offered by a great diversity of service providers. This component selection requires an exhaustive analysis by these end users based on the requirements of these components related to their quality. In this work, two quality models are presented according to a hierarchical structure, one for web components as independent elements and another one for web components as parts of web mashup applications, based on an analysis of the emerging Web 2.0. In addition, a measuring and write down quality framework is defined to weigh the quality of all the levels of the models. These tools intend to provide a useful instrument to components and mashup developers and end users.