1000 resultados para INGENIERÍA DEL SOFTWARE
Resumo:
La calidad es uno de los principales retos de la construcción de software. En la Ingeniería del Software (IS) se considera a la usabilidad como un atributo de calidad. Al principio se veía a la usabilidad como un requisito no funcional.Se asumía que la usabilidad era una propiedad exclusiva de la presentación de la información.Se creía que separando la capa de presentación del resto, se podía desarrollar un producto software usable.Debido a la naturaleza del sistema y a las necesidades del usuario, a menudo se debe ir más lejos y no basta con tener en cuenta la presentación para obtener un software usable. La comunidad de la Interacción Personar Ordenador (IPO) ha propuesto recomendaciones para mejorar la usabilidad. Algunas de esas recomendaciones tienen impacto directo en la funcionalidad del producto software. En estudios recientes también se ha evaluado la relación entre la usabilidad y los requisitos funcionales. Estas investigaciones sugieren que la usabilidad debe ser tenida en cuenta desde las etapas iniciales de la construcción para evitar costosos cambios posteriores. La incorporación de las características de usabilidad agrega cierta complejidad al proceso de desarrollo. El presente trabajo evalúa la posibilidad de usar patrones para la incorporación de usabilidad en el desarrollo de un producto software. Concretamente se evalúan los siguientes patrones de programación de usabilidad (PPUs): Abort Operation,Progress Feedback y Preferences. Se utilizan unas Pautas de Desarrollo de Mecanismos de Usabilidad(PDMUs) para estos tres mecanismos de usabilidad. Estas pautas poponen patrones para la educción y posterior incorporación de la usabilidad en las distintas fases de la programación. En esta investigación se aborda el desarrollo de un producto software desde la deducción de requisitos hasta la implementación. En cada fase se incorporan los mecanismos de usabilidad de acuerdo a las recomendaciones de las PDMUs. Mediante el desarrollo de un software real se ha evaluado la factibilidad del uso de las PDMUs obteniendo como resultado propuestas de mejoras en estas pautas. Se evalúa asimismo el esfuerzo de incorporación de los mecanismos de usabilidad. Cada evaluación aporta datos que proporcionan una estimación del esfuerzo adicional requerido para incorporar cada mecanismo de usabilidad en el proceso de desarrollo del software.---ABSTRACT---Quality is a major challenge in software construction. Software engineers consider usability to be a quality attribute. Originally, usability was viewed as a nonr functional requirement. Usability was assumed to be simply an information presentation property. There was a belief that a usable software product could be developed by separating the presentation layer from the rest of the system. Depending on the system type and user needs, however, usability often runs deeper, and it is not enough to consider just presentation to build usable software. The humanrcomputer interaction (HCI) community put forward a list of recommendations to improve usability. Some such recommendations have a direct impact on software product functionality. Recent studies have also evaluated the relationship between usability and functional requirements. This research suggests that usability should be taken into account as of the early stages of software construction to prevent costly rework later on. The inclusion of usability features is an added complication to the development process. The research reported here evaluates the possibility of using patterns to incorporate usability into a software product. Specifically, it evaluates the following usability programming patterns (UPPs): Abort Operation, Progress Feedback and Preferences. Usability Mechanism Development Guides (USDG) are applied to these three usability mechanisms. These guides propose patterns for eliciting and later incorporating usability into the different software development phases, including programming. The reported research addresses the development of a software product from requirements elicitation through to implementation. Usability mechanisms are incorporated into each development phase in accordance with USDG recommendations. A real piece of software was developed to test the feasibility of using USDGs, outputting proposals for improving the guides. Each evaluation yields data providing an estimate of the additional workload required to incorporate each usability mechanism into the software development process.
Resumo:
Resumen El documento que se desarrolla en los siguientes capítulos ha sido realizado como Proyecto de Fin de Grado para el Grado de Ingeniería del Software (Plan 2009) impartido por la Escuela Técnica Superior de Ingeniería de Sistemas Informáticos de la Universidad Politécnica de Madrid durante el curso académico 2014-2015 y bajo la tutela del Dr. Francisco Javier Gil Rubio, profesor del Departamento de Organización y Estructura de la Información (Actualmente DSI). La empresa Radmas Technologies pretende proporcionar con el producto Mejora Tu Ciudad —su solución para la gestión integral de Smart-Cities— un servicio REST interoperable y una capa de abstracción para el lenguaje Javascript. El presente proyecto se centra en la definición y creación de un API RESTFUL sobre la que los distintos clientes puedan interactuar con la plataforma independientemente de las herramientas de desarrollo utilizadas. Tras la definición del servicio se llevará a cabo la creación de un SDK1 válido en distintas plataformas basadas en Javascript, que facilite el acceso a aquellos clientes que utilicen dichas plataformas como punto de partida para iniciar otros desarrollos derivados. Con este pretexto nace un proyecto que pretende también cubrir todas las fases del ciclo de vida de un producto de software, ciertamente particular en este caso, ya que se trata de un ecosistema que comprende dos soluciones enfocadas hacia la interoperabilidad, una genérica y otra orientada a una única plataforma de destino, y que a su vez servirán como base para llevar a cabo futuros desarrollos. Por todo lo expuesto, el proyecto cubrirá las siguientes etapas: Estudio de la problemática: se describe la situación en la que se encuentra la compañía y los motivos por los que se propone la creación de un API REST2 y más tarde la elaboración de un Kit de Desarrollo de Software (SDK) orientado exclusivamente a plataformas basadas en Javascript como solución a las necesidades de los potenciales clientes. Estudio teórico de las distintas tecnologías y protocolos disponibles en los cuales se sustentarán los desarrollos que se lleven a cabo. Estimación de tiempos, planificación y gestión de tareas mediante metodologías ágiles y desarrollo del producto. Creación de una batería de pruebas y generación de un entorno para ejecutarlas que permita cubrir los distintos casos de uso requeridos por el usuario. También se hará uso, siempre que sea posible, de la metodología de trabajo conocida como TDD3 o Desarrollo Dirigido por las Pruebas. Generación de documentación orientada a desarrolladores exponiendo las bondades y las técnicas de uso del ecosistema definido. Creación de un conjunto de ejemplos que sirvan como punto de partida para llevar a cabo futuros desarrollos. Las fases anteriormente descritas se apoyan en los conocimientos recibidos en las distintas asignaturas que ofrece la titulación. Por tanto, haré frecuentes referencias a aquellas que tratan aspectos como los procesos de Ingeniería de Software (a través de un análisis y diseño coherentes de la estructura de la aplicación) y a la gestión de proyectos (haciendo especial hincapié en lo aprendido sobre metodologías ágiles), así como algunas de carácter más técnico que sin duda influirán en la generación de un código correcto y probado. Por todo ello este Trabajo de Fin de Grado pretende ser un desarrollo multidisciplinar en el que se obtenga como resultado un producto profesional, que haga uso de tecnologías y servicios de rabiosa actualidad y ejemplifique la realidad de los desarrollos de software modernos.
Resumo:
Con la llegada de la era de la información, viendo esta era como la necesidad de informatizar, registrar y tratar una gran cantidad de datos mediante la tecnología, se está dando el paso de diversos procesos burocráticos a medios tecnológicos cambiando el papel por los datos almacenados en las computadoras. El DNI electrónico permite a un individuo identificarse mediante un dispositivo donde se almacenan los datos de éste para poder identificarse unívocamente ante aquellos trámites que antaño costaban largos procesos burocráticos en papel. Sabemos que las aplicaciones software son aquellos módulos formado por un conjunto de programas y rutinas que permiten a los diferentes tipos de computadores realizar tareas de manera parcial o totalmente automáticas. Por ello este proyecto demuestra todo el proceso de creación de un módulo software, que cómo comentamos en el primer párrafo, permitiría sobrellevar otros tantos procesos burocráticos como sería la petición del DNI y posterior escritura a mano en distintas situaciones. Todo ello orientado desde un estricto análisis desde el punto de vista de la ingeniería del software. ABSTRACT Due to the fact that we’re in the era of information technology, and from the perspective that this era means to computerize register and treat a big quantity of data through technologic means, we are stepping into a process where all the bureaucracy is being transferred from paper to digital storage models. Hence, the electronic DNI allows the citizen to identify himself univocally against processes that back in time where made through tedious and heavy-paper-work processes. We know that software apps are modules conformed by a set of instructions and programs that make possible the execution of partially or totally automated tasks. That’s why this project shows the process of the creation of a software module (app) that, as we stated before, would allow overcoming many other bureaucratic processes like the request to write down the national identification number. All of it focused to a strict analysis from software engineering’s point of view.
Resumo:
Este proyecto se plantea, desde su misma base, como uno de desarrollo e Ingeniería del Software por una parte; con cierto componente de algorítmica. Debido a que intervienen varias partes (cliente, alumno y tutor) y a que no se tenía una visión completa del resultado final del programa al que se quería llegar, se ha optado por una metodología ágil adaptativa para responder a los cambios y a la suma de nuevos requisitos; como se irá explicando en esta memoria. Con el presente documento se trata de tener un referente general de las fases, factores e inconvenientes que han intervenido en la realización del proyecto. Aunque podría haberse reflejado como una memoria de desarrollo de software, se ha optado por un punto de vista con mayor distanciamiento, una aproximación más general. Con este texto, la intención inicial es formular de forma clara lo que se necesita y a que requisitos tiene que adecuarse el software desde un punto de vista del usuario, para acto seguido, pormenorizar el diseño y el desarrollo en diferentes puntos sucesivos que recojan la historia y cambios en el proyecto de forma organizada. Es, por tanto, una referencia de ingeniería de un desarrollo software, que abarca desde la concepción del proyecto, pasando por los fundamentos teóricos, diseño, implementación hasta las pruebas finales de validación. E incluso más allá, ya que, como se explica en capítulos posteriores, en cierto punto se tuvo la necesidad de reescribir gran parte del código.
Resumo:
Este proyecto presenta un sistema informático para ayudar a personas Asperger, que tienen problemas para recordar actividades y objetos básicos, y a sus profesores especialistas. Se ha decidido llamarlo AS (Asperger). Se compone de dos aplicaciones Android: la aplicación tutor y la aplicación usuario. La primera es para que los profesionales, desde su propia tablet, puedan centralizar y gestionar toda la información de sus alumnos creando tareas, retos y eventos específicos para cada uno. La segunda es para los móviles de las personas Asperger, se encarga de recordarles los sucesos que su tutor les ha asignado y después les pregunta si los realizaron correctamente. Ambas interfaces siguen los principios de claridad y sencillez, además la aplicación usuario es totalmente personalizable para que una persona Asperger de cualquier edad pueda interactuar y motivarse con ella. La información es almacenada localmente en cada dispositivo. Ambas aplicaciones se comunican para sincronizar los datos mediante sockets usando la tecnología WIFI. Esto permite tener un seguimiento del progreso de cada alumno desde la aplicación tutor. La implementación se ha realizado mediante una arquitectura multicapa que utiliza patrones de ingeniería del software para facilitar cualquier extensión o adaptación de la funcionalidad del sistema.
Resumo:
Data mining is one of the most important analysis techniques to automatically extract knowledge from large amount of data. Nowadays, data mining is based on low-level specifications of the employed techniques typically bounded to a specific analysis platform. Therefore, data mining lacks a modelling architecture that allows analysts to consider it as a truly software-engineering process. Bearing in mind this situation, we propose a model-driven approach which is based on (i) a conceptual modelling framework for data mining, and (ii) a set of model transformations to automatically generate both the data under analysis (that is deployed via data-warehousing technology) and the analysis models for data mining (tailored to a specific platform). Thus, analysts can concentrate on understanding the analysis problem via conceptual data-mining models instead of wasting efforts on low-level programming tasks related to the underlying-platform technical details. These time consuming tasks are now entrusted to the model-transformations scaffolding. The feasibility of our approach is shown by means of a hypothetical data-mining scenario where a time series analysis is required.
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:
El éxito en la búsqueda de conocimiento a partir de grandes cantidades de datos radica en la calidad de los mismos. Hasta ahora los aspectos de calidad de los datos se han enfocado principalmente a la limpieza de los datos: detección de duplicados, valores atípicos, perdidos, incompletos o conflictos en instancias, entre otros. En este trabajo se presenta un caso de estudio que nos ha permitido determinar ciertos aspectos de calidad que pueden mejorar la expectativa de éxito en el análisis evitando resultados erróneos, incorrectos o poco fiables. Este es un primer paso hacia la consideración de manera sistemática y estructurada de criterios de calidad específicos para minería de datos que ayude al minero de datos en sus objetivos.
Resumo:
Comunicación presentada en las XVI Jornadas de Ingeniería del Software y Bases de Datos, JISBD 2011, A Coruña, 5-7 septiembre 2011.
Resumo:
Los sistemas de búsqueda de respuestas (BR) se pueden considerar como potenciales sucesores de los buscadores tradicionales de información en la Web. Para que sean precisos deben adaptarse a dominios concretos mediante el uso de recursos semánticos adecuados. La adaptación no es una tarea trivial, ya que deben integrarse e incorporarse a sistemas de BR existentes varios recursos heterogéneos relacionados con un dominio restringido. Se presenta la herramienta Maraqa, cuya novedad radica en el uso de técnicas de ingeniería del software, como el desarrollo dirigido por modelos, para automatizar dicho proceso de adaptación a dominios restringidos. Se ha evaluado Maraqa mediante una serie de experimentos (sobre el dominio agrícola) que demuestran su viabilidad, mejorando en un 29,5% la precisión del sistema adaptado.
Resumo:
El presente trabajo tiene su origen en la necesidad de herramientas de apoyo al aprendizaje para los alumnos en las clases de Genética de la Facultad de Biología de la Universidad Complutense de Madrid. En esta asignatura, el equipo docente ha desarrollado aplicaciones para dispositivos móviles destinadas a los alumnos. Las aplicaciones les permiten trabajar con materiales relacionados con aspectos clave de la asignatura. Estas aplicaciones contienen apartados de teoría y ejercicios. Los ejercicios cuentan con asistentes automatizados que guían al alumno para su realización y autocorrección. En su forma actual, las aplicaciones presentan limitaciones tanto desde el punto de vista de su diseño como de la funcionalidad que ofrecen. El actual diseño no aplica las técnicas comunes de Ingeniería del Software respecto a aplicaciones cliente-servidor. Ello las hace difíciles de mantener cuando se plantea abordar nuevas funcionalidades y plataformas, o facilitar la creación de nuevos materiales de la asignatura. Ello ha limitado su expansión para incorporar nuevos tipos de materiales (en particular diferentes tipos de ejercicios), integrarlas con otras herramientas (por ejemplo, el Campus Virtual de la universidad) o permitir un apoyo efectivo a la comunidad de aprendizaje formada por alumnos y docentes (por ejemplo, para que los docentes supervisen la evolución de los alumnos y estos puedan obtener información adicional de los profesores). Para abordar esta situación se propone una aplicación móvil que engobe a todas las aplicaciones anteriores que se habían creado para las clases de Genética. Se utilizará un modelo cliente-servidor para mejorar sus capacidades funcionales, de modo que cumpla con los requisitos establecidos. Entre estos se incluye un control de los usuarios que utilizan la aplicación, y que se optimice la memoria local utilizada por la aplicación, permitiendo así el uso de imágenes más pesadas. Además, este modelo facilitará las tareas de mantenimiento de la aplicación, por ejemplo incluir nuevo material. Por otro lado, también se propone rediseñar la interfaz de la aplicación, de modo que sea más accesible desde el punto de vista de la usabilidad.
Resumo:
El Sistema de Evaluación de Proficiencias en Educación Superior -SERESpermite: a) La valoración integral de suficiencia del saber, del hacer y del ser, de los estudiantes durante cada una de las etapas en la formación profesional en Ingeniería; y, b) La gestión de conocimiento que puede aplicarse, sistémica y sistemáticamente, en los procesos de docencia, investigación y extensión. El SERES es un producto de investigación que está en fase de prueba y ha sido desarrollado por el Centro de Innovación y Desarrollo para la Investigación en Ingeniería del Software -CIDLIS- en el marco del proyecto: «Modelo de Gestión de Conocimiento y Calidad en Educación Superior» -MGCES- de la E3T de la Universidad Industrial Santander. Este sistema anida tres subsistemas: El modelo organizacional, el modelo funcional y el modelo neuronal. SERES es parte del modelo neuronal. El SERES está estructurado para funcionar integralmente en los diversos cursos de un programa de ingeniería, sean estos básicos o avanzados, con el requisito de formalizarlos en actividades estructuradas de práctica, investigación formativa y seguimiento y control, sustentadas en un plan de calidad, fundamentado en el trabajo disciplinado individual y en equipo, la autoevaluación, la coevaluación, la evaluación y la heteroevaluación. La evaluación de competencias en SERES es una deducción lógica del modelado del perfil profesional (saberes), el perfil ocupacional (competencias para hacer) y el perfil cultural (valores como persona, ciudadano e ingeniero). Dicho modelo se despliega en guías de contenido, evaluación y gestión de conocimiento en cada uno de los cursos de un programa de formación. A partir de dichas guías, se definen los contenidos sobre el sabe, el hacer y el ser, disponibles, luego, para los profesores, en el desarrollo de sus prácticas docentes. Como cierre de este proceso de aprendizaje se establece la valoración de los productos de la enseñanza y del desempeño y la competencia de los alumnos. Este patrón de valoración cuantitativa y cualitativa es el instrumento principal de SERES, con el que sustentan las evidencias de cumplimiento de estándares de calidad, los objetivos de aprendizaje y el logro de las competencias del alumno.
Resumo:
Volvemos hoy con gran alegría, pero al mismo tiempo con nostalgia, a graduar a 154 de nuestros alumnos, 95 en Pregrado en Administración de Empresas e Ingeniería de Sistemas e Informática y 59 de Postgrado, y entre éstos la primera promoción de la especialización en Ingeniería del Software. Con ellos ya conformamos un cuerpo de cerca de 3.000 egresados que hemos entregado a la sociedad, a las empresas, a sus compañías familiares y las propias.
Resumo:
La ciencia de la computación arrancó con la era de las máquinas tabulables para después pasar a las programables. Sin embargo el mundo actual vive una transformación radical de la información. Por un lado la avalancha masiva de datos, el llamado Big Data hace que los sistemas requieran de una inteligencia adicional para extraer conocimiento válido de los datos. Por otro lado demandamos cada día más ordenadores que nos entiendan y se comuniquen mejor con nosotros. La computación cognitiva, la nueva era de la computación, viene a responder a estas necesidades: sistemas que utilizan la inteligencia biológica como modelo para establecer una relación más satisfactoria con los seres humanos. El lenguaje natural, la capacidad de moverse en un mundo ambiguo y el aprendizaje son características de los sistemas cognitivos, uno de los cuales, IBM Watson es el ejemplo más elocuente en la actualidad de este nuevo paradigma.