945 resultados para Reusable Software
Resumo:
This paper presents and validates a methodology for integrating reusable software components in diverse game engines. While conforming to the RAGE com-ponent-based architecture described elsewhere, the paper explains how the interac-tions and data exchange processes between a reusable software component and a game engine should be implemented for procuring seamless integration. To this end, a RAGE-compliant C# software component providing a difficulty adaptation routine was integrated with an exemplary strategic tile-based game “TileZero”. Implementa-tions in MonoGame, Unity and Xamarin, respectively, have demonstrated successful portability of the adaptation component. Also, portability across various delivery platforms (Windows desktop, iOS, Android, Windows Phone) was established. Thereby this study has established the validity of the RAGE architecture and its un-derlying interaction processes for the cross-platform and cross-game engine reuse of software components. The RAGE architecture thereby accommodates the large scale development and application of reusable software components for serious gaming.
Resumo:
Tässä diplomityössä käsitellään eri näkökulmia ohjelmistojen uudelleenkäyttöön sekä esitellään perustiedot langattomiin laitteisiin käytettävästä Symbian-käyttöjärjestelmästä ja langattomasta Bluetooth-teknologiasta. Työn käytännön osuudessa suunniteltiin ja toteutettiin uudelleenkäytettävä Bluetooth-ohjelmistokomponentti Symbiankäyttöjärjestelmälle. Ohjelmistojen uudelleenkäytön edut ovat erittäin selkeitä. Uudelleenkäytettävät ohjelmistokomponentit parantavat ohjelmiston laatua ja suorituskykyä. Ohjelmistotuotteiden tuotekehityssykliä voidaan lyhentää merkittävästi ja kehitystyön kokonaiskustannuksia voidaan alentaa tehokkaalla uudelleenkäyttöohjelmalla. Kuitenkin uudelleenkäytöllä on myös esteitä, esimerkkeinä näistä ovat mm. resurssien puute, koulutus sekä uudelleenkäytön vastaiset asenteet. Bluetooth-teknologia on kypsynyt viimeisen kahden vuoden aikana, kun markkinoille on tullut yhä enemmän Bluetooth-laitteita ja niitä käyttäviä sovelluksia. Kehitetty komponentti tarjoaa perustoiminnallisuudet Bluetooth-yhteyksien muodostamiselle ja datan siirtämiselle laitteiden välillä.
Resumo:
O objetivo da pesquisa atém-se primeiramente em elaborar um protocolo que permita analisar, por meio de um conjunto de indicadores, o processo de reutilização de software no desenvolvimento de sistemas de informação modelando objetos de negócios. O protocolo concebido compõe-se de um modelo analítico e de grades de análise, a serem empregadas na classificação e tabulação dos dados obtidos empiricamente. Com vistas à validação inicial do protocolo de análise, realiza-se um estudo de caso. A investigação ocorre num dos primeiros e, no momento, maior projeto de fornecimento de elementos de software reutilizáveis destinados a negócios, o IBM SANFRANCISCO, bem como no primeiro projeto desenvolvido no Brasil com base no por ele disponibilizado, o sistema Apontamento Universal de Horas (TIME SHEET System). Quanto à aplicabilidade do protocolo na prática, este se mostra abrangente e adequado à compreensão do processo. Quanto aos resultados do estudo de caso, a análise dos dados revela uma situação em que as expectativas (dos pesquisadores) de reutilização de elementos de software orientadas a negócio eram superiores ao observado. Houve, entretanto, reutilização de elementos de baixo nível, que forneceram a infra-estrutura necessária para o desenvolvimento do projeto. Os resultados contextualizados diante das expectativas de reutilização (dos desenvolvedores) são positivos, na medida em que houve benefícios metodológicos e tecnológicos decorrentes da parceria realizada. Por outro lado, constatam-se alguns aspectos restritivos para o desenvolvedor de aplicativos, em virtude de escolhas arbitrárias realizadas pelo provedor de elementos reutilizáveis.
Resumo:
To date, different techniques of navigation for mobile robots have been developed. However, the experimentation of these techniques is not a trivial task because usually it is not possible to reuse the developed control software due to system incompabilities. This paper proposes a software platform that provides means for creating reusable software modules through the standardization of software interfaces, which represent the various robot modules. © 2012 ICROS.
Resumo:
A recent initiative of the European Space Agency (ESA) aims at the definition and adoption of a software reference architecture for use in on-board software of future space missions. Our PhD project placed in the context of that effort. At the outset of our work we gathered all the industrial needs relevant to ESA and all the main European space stakeholders and we were able to consolidate a set of technical high-level requirements for the fulfillment of them. The conclusion we reached from that phase confirmed that the adoption of a software reference architecture was indeed the best solution for the fulfillment of the high-level requirements. The software reference architecture we set on building rests on four constituents: (i) a component model, to design the software as a composition of individually verifiable and reusable software units; (ii) a computational model, to ensure that the architectural description of the software is statically analyzable; (iii) a programming model, to ensure that the implementation of the design entities conforms with the semantics, the assumptions and the constraints of the computational model; (iv) a conforming execution platform, to actively preserve at run time the properties asserted by static analysis. The nature, feasibility and fitness of constituents (ii), (iii) and (iv), were already proved by the author in an international project that preceded the commencement of the PhD work. The core of the PhD project was therefore centered on the design and prototype implementation of constituent (i), a component model. Our proposed component model is centered on: (i) rigorous separation of concerns, achieved with the support for design views and by careful allocation of concerns to the dedicated software entities; (ii) the support for specification and model-based analysis of extra-functional properties; (iii) the inclusion space-specific concerns.
Resumo:
As more and more open-source software components become available on the internet we need automatic ways to label and compare them. For example, a developer who searches for reusable software must be able to quickly gain an understanding of retrieved components. This understanding cannot be gained at the level of source code due to the semantic gap between source code and the domain model. In this paper we present a lexical approach that uses the log-likelihood ratios of word frequencies to automatically provide labels for software components. We present a prototype implementation of our labeling/comparison algorithm and provide examples of its application. In particular, we apply the approach to detect trends in the evolution of a software system.
Resumo:
The large upfront investments required for game development pose a severe barrier for the wider uptake of serious games in education and training. Also, there is a lack of well-established methods and tools that support game developers at preserving and enhancing the games’ pedagogical effectiveness. The RAGE project, which is a Horizon 2020 funded research project on serious games, addresses these issues by making available reusable software components that aim to support the pedagogical qualities of serious games. In order to easily deploy and integrate these game components in a multitude of game engines, platforms and programming languages, RAGE has developed and validated a hybrid component-based software architecture that preserves component portability and interoperability. While a first set of software components is being developed, this paper presents selected examples to explain the overall system’s concept and its practical benefits. First, the Emotion Detection component uses the learners’ webcams for capturing their emotional states from facial expressions. Second, the Performance Statistics component is an add-on for learning analytics data processing, which allows instructors to track and inspect learners’ progress without bothering about the required statistics computations. Third, a set of language processing components accommodate the analysis of textual inputs of learners, facilitating comprehension assessment and prediction. Fourth, the Shared Data Storage component provides a technical solution for data storage - e.g. for player data or game world data - across multiple software components. The presented components are exemplary for the anticipated RAGE library, which will include up to forty reusable software components for serious gaming, addressing diverse pedagogical dimensions.
Resumo:
This thesis presents different aspects of Web Services usage in Symbian OS that is an operating system for handheld devices. The practical part of the work was to develop Symbian OS client application for Web Services. It produced four reusable software components. XML enables platform and programming language independent services. Web Services use XML to create standardized message oriented services that are accessed through HTTP. Web Services are moving towards dynamic B2B interaction. Web Services increases the amount of transferred data, which is not desirable in mobile networks where transfer speed is slower than in the traditional networks. However the modern mobile networks are able to transfer the extra payload with reasonable time. XML processing is not a big problem. Web Services can be accessed from the modern mobile devices and they can cut down the development costs.
Resumo:
Este Proyecto Fin de Grado tiene como objetivo fundamental el perfeccionamiento y puesta en explotación de un sistema de ayuda a la decisión que evalúa el desarrollo del lenguaje en niños de 0 a 6 años de edad. Este sistema está formado fundamentalmente por una aplicación diseñada y construida mediante una arquitectura de componentes de software modular y reutilizable. La aplicación será usada por los pediatras para realizar evaluaciones del desarrollo del lenguaje infantil y además por los neuropediatras, logopedas y miembros de equipos de Atención Temprana para consultar las evaluaciones y validar las decisiones propuestas por el sistema. El sistema es accesible vía web y almacena toda la información que maneja en una base de datos. Asimismo, el sistema se apoya en un modelo conceptual u ontología desarrollado previamente para inferir las decisiones adecuadas para las evaluaciones del lenguaje. El sistema incorpora las funciones de gestión de los usuarios del mismo. ABSTRACT This Grade End Project has as fundamental objective the improvement and deployment of a decision support system for evaluating children language development from 0 to 6 years of age. This system is mainly formed by an application designed and built using a modular and reusable software component architecture. The application will be used by pediatricians for evaluating children´s speech development and also by neuro-pediatricians, speech therapists and early childhood intervention team members, for consulting previous evaluations and for validating system´s proposed decision. The system is web based and stores its information in a database. Likewise, the system is supported by a conceptual model or ontology previously developed to infer the appropriate decision for language evaluation. The system also includes user management functions.
Resumo:
Este Proyecto Fin de Grado, es el primer paso para abordar la construcción de una plataforma de conocimiento evolutivo para dos sistemas que facilitan la detección precoz de trastornos del lenguaje en niños de 0 a 6 años. Concretamente, el objetivo principal de este proyecto es el diseño, desarrollo y puesta en explotación de un sistema de recogida de propuestas de mejora sobre la base de conocimiento de los sistemas de ayuda a la toma de decisiones Gades y Pegaso. Este sistema está formado fundamentalmente por una aplicación diseñada y construida mediante una arquitectura de componentes de software modular y reutilizable. La aplicación será usada por los usuarios de las plataformas Pegaso y Gades para realizar las propuestas de cambio sobre la base de conocimiento de dichos sistemas. El sistema es accesible vía web y almacena toda la información que maneja en una base de datos. Asimismo, expone un estudio de aplicaciones orientadas al trabajo colaborativo (CSCW) y a la toma de decisiones colaborativa, como paso previo al desarrollo de una funcionalidad futura del propio sistema. ABSTRACT. This Final Degree Project, is the first step to address the construction of a platform for two evolutionary knowledge systems that facilitate early detection of language disorders in children aged 0-6 years. Specifically, the main objective of this project is the design, development and start-up of a system that collect improvement proposals about the knowledge of decision support systems Gades and Pegaso. This system consists mainly of an application designed and built by a modular component architecture and reusable software. The application will be used by users of the Pegaso and Gades platforms for change proposals on the basis of knowledge of such systems. The system is accessible via web and stores all the information managed in a database. It also presents a study of collaborative work oriented applications (CSCW) and collaborative decision making, prior to the development of a future system functionality.
Resumo:
This paper describes the process of wrapping existing scientific codes in the domain of plasma physics simulations through the use of the Sun’s Java Native Interface. We have created a Java front-end for a particular functionality, offered by legacy native libraries, in order to achieve reusability and interoperability without having to rewrite these libraries. The technique, introduced in this paper, includes two approaches – the one-to-one mapping for wrapping a number of native functions, and using peer classes for wrapping native data structures.
Resumo:
In computer science, different types of reusable components for building software applications were proposed as a direct consequence of the emergence of new software programming paradigms. The success of these components for building applications depends on factors such as the flexibility in their combination or the facility for their selection in centralised or distributed environments such as internet. In this article, we propose a general type of reusable component, called primitive of representation, inspired by a knowledge-based approach that can promote reusability. The proposal can be understood as a generalisation of existing partial solutions that is applicable to both software and knowledge engineering for the development of hybrid applications that integrate conventional and knowledge based techniques. The article presents the structure and use of the component and describes our recent experience in the development of real-world applications based on this approach.
Resumo:
The evolvability of a software artifact is its capacity for producing heritable or reusable variants; the inverse quality is the artifact's inertia or resistance to evolutionary change. Evolvability in software systems may arise from engineering and/or self-organising processes. We describe our 'Conditional Growth' simulation model of software evolution and show how, it can be used to investigate evolvability from a self-organisation perspective. The model is derived from the Bak-Sneppen family of 'self-organised criticality' simulations. It shows good qualitative agreement with Lehman's 'laws of software evolution' and reproduces phenomena that have been observed empirically. The model suggests interesting predictions about the dynamics of evolvability and implies that much of the observed variability in software evolution can be accounted for by comparatively simple self-organising processes.
Resumo:
Reusable and evolvable Software Engineering Environments (SEES) are essential to software production and have increasingly become a need. In another perspective, software architectures and reference architectures have played a significant role in determining the success of software systems. In this paper we present a reference architecture for SEEs, named RefASSET, which is based on concepts coming from the aspect-oriented approach. This architecture is specialized to the software testing domain and the development of tools for that domain is discussed. This and other case studies have pointed out that the use of aspects in RefASSET provides a better Separation of Concerns, resulting in reusable and evolvable SEEs. (C) 2011 Elsevier Inc. All rights reserved.
Resumo:
A great challenge of the Component Based Development is the creation of mechanisms to facilitate the finding of reusable assets that fulfill the requirements of a particular system under development. In this sense, some component repositories have been proposed in order to answer such a need. However, repositories need to represent the asset characteristics that can be taken into account by the consumers when choosing the more adequate assets for their needs. In such a context, the literature presents some models proposed to describe the asset characteristics, such as identification, classification, non-functional requirements, usage and deployment information and component interfaces. Nevertheless, the set of characteristics represented by those models is insufficient to describe information used before, during and after the asset acquisition. This information refers to negotiation, certification, change history, adopted development process, events, exceptions and so on. In order to overcome this gap, this work proposes an XML-based model to represent several characteristics, of different asset types, that may be employed in the component-based development. Besides representing metadata used by consumers, useful for asset discovering, acquisition and usage, this model, called X-ARM, also focus on helping asset developers activities. Since the proposed model represents an expressive amount of information, this work also presents a tool called X-Packager, developed with the goal of helping asset description with X-ARM