56 research outputs found

    Incremental Product Release of Java Applications using Dynamic Updates

    Get PDF
    With the evolution of the software development process, claimed by the new demands of the market, software development has changed considerably since its early days. In order to support the increase in complexity and dimensions of new software product, software engineers have developed new tools and methodologies in order to cope with the market requests. Despite all these advances, a software product can still be in need of changes after the delivery. These modifications are traditionally divided as changes to the functionality of the software that address new unanticipated requirements, changes that allow the software to run on a different environment, changes that fix errors and improvements that can avoid future problems. The maintenance and update process of an application have traditionally involved the classic halt, redeploy and restart scheme. However, this approach cannot be used in every scenario; consider as an example a high availability e-commerce system. For some companies the cost of a system shutdown can be prohibitive in terms of economic outlay, safety and the availability of service. A Dynamic Software Updating system (DSU) allows overcoming the update problem enabling applications to be updated without recurring to the halt-update-redeploy scheme.. Many DSU systems have been developed since the ‘70s, each of them comes with some peculiar properties defining on-the-run application updateability with a certain level of granularity by allowing only certain subset of modifications to the code. In this work we examine a software-based DSU system called Javeleon, developed at the University of Southern Denmark – Mærsk Mc-Kinney Møller Institute in collaboration with Sun Microsystems. A novel feature of Javeleon is the support of full redefinition of classes and changes to the type hierarchy. Following the evolution of a case study application we will show how the capability of dynamically updating software with Javeleon impacts on software development process. By working with Javeleon we will also test the transparency of this system towards the programmer

    A framework for graphical analysis of a home-network router using DTrace

    Get PDF

    Application of Web Services to a Simulation Framework

    Get PDF
    The Joint Semi-Automated Forces (JSAF) simulator is an excellent tool for military training and a great testbed for new SAF behaviors. However, it has the drawback that behaviors must be ported into its own Finite State Machine (FSM) language. Web Services is a growing technology that seamlessly connects service providers to service consumers. This work attempts to merge these two technologies by modeling SAF behaviors as web services. The JSAF simulator is then modeled as a web service consumer. This approach allows new Semi-Automated Forces (SAF) behaviors to be developed independently of the simulator, which provides the developer with greater flexibility when choosing a programming language, development environment, and development platform. In addition to new SAF behaviors, this approach also supports any external component that can be modeled as a web service. Furthermore, these services are often run over a network, which distributes the computational load across several computers. Finally, hosting copies of a single service on several machines, a concept similar to file-sharing mirrors, offers an environment for load-balancing. This means if several entities are running the same behavior, a single server does not perform the computation for every entity. Instead, each entity is assigned to a specific server, increasing the quality of service seen by the system. A Web Services framework linking JSAF with several services is designed and implemented. Suppression of Enemy Air Defense (SEAD) behaviors written in MATLAB and a behavior recognition system are integrated with JSAF. These behaviors and the recognition tool were developed by other researchers, independent of this work. Results show that offloading computation to other machines is beneficial, especially when the simulation system is under heavy load. Preliminary results also indicate that load-balancing performs much better than using a single server

    An automatic song annotation system

    Get PDF
    Projecte final de carrera fet en col.laboració amb CCMAThe amount of multimedia content in the audiovisual sector, as well as on the Internet, is increasing a lot, and Music is one of the most outstanding forms of multimedia content requested by users. Every year, new songs, artists and genres appear in the market. Managing this musical content is, thus, becoming a very complex task. The present document presents the design and implementation of a system, that aims to solve the problem related to multimedia content management

    AspectMaps: Extending Moose to visualize AOP software

    Get PDF
    International audienceWhen using aspect-oriented programming the application implicitly invokes the functionality contained in the aspects. Consequently program comprehension of such a software is more intricate. To alleviate this difficulty we developed the AspectMaps visualization and tool. AspectMaps extends the Moose program comprehension and reverse engineering platform with support for aspects, and is implemented using facilities provided by Moose. In this paper we present the AspectMaps tool, and show how it can be used by performing an exploration of a fairly large aspect-oriented application. We then show how we extended the FAMIX meta-model family that underpins Moose to also provide support for aspects. This extension is called ASPIX, and thanks to this enhancement Moose can now also treat aspect-oriented software. Finally, we report on our experiences using some of the tools in Moose; Mondrian to implement the visualization, and Glamour to build the user interface. We discuss how we were able to implement a sizable visualization tool using them and how we were able to deal with some of their limitations. Note: This paper uses colors extensively. Please use a color version to better understand the ideas presented here

    Web collaboration for software engineering

    Get PDF
    Tese de mestrado integrado. Engenharia Informática e Computação. Faculdade de Engenharia. Universidade do Porto. 200

    Flexible virtual learning environments: a schema-driven approach using sematic web concepts

    Get PDF
    Flexible e-Iearning refers to an intelligent educational mechanism that focuses on simulating and improving traditional education as far as possible on the Web by integrating various electronic approaches, technologies, and equipment. This mechanism aims to promote the personalized development and management of e-learning Web services and applications. The main value of this method is that it provides high-powered individualization in pedagogy for students and staff.Here, the thesis mainly studied three problems in meeting the practical requirements of users in education. The first question is how a range of teaching styles (e.g. command and guided discovery) can be supported. The second one is how varieties of instructional processes can be authored. The third question is how these processes can be controlled by learners and educators in terms of their personalized needs during the execution of instruction.In this research, through investigating the existing e-Iearning approaches and technologies, the main technical problems of current virtual learning environments (VLEs) were analyzed. Next, by using the Semantic Web concepts as well as relevant standards, a schema-driven approach was created. This method can support users' individualized operations in the Web-based education. Then, a flexible e-learning system based on the approach was designed and implemented to map a range of extensive didactic paradigms. Finally, a case study was completed to evaluate the research results. The main findings of the assessment were that the flexible VLE implemented a range of teaching styles and the personalized creation and control of educational processes

    Estación meteorológica inalámbrica, de muy bajo consumo e inteligencia embebida

    Get PDF
    El trabajo aborda la realización de una estación meteorológica alimentada mediante una placa solar. La placa emisora cuenta con una serie de sensores que dan información a cerca de la temperatura, la humedad, la presión y la iluminación. Los datos son recibidos y se implementan algoritmos de predicción del tiempo cuyo resultado es visualizado por el usuario. Uno de los objetivos fundamentales es que el sistema resultante sea de muy bajo consumo para que pueda operar durante largos períodos

    Embedded Cloud System for Ann-Cod Analysis Using UV Spectroscopy

    Get PDF
    One of the many parameters indicating water quality is chemical oxygen demand (COD), which is an indirect measurement of the amount of organic compound material in water. There have been many studies, in both academia and the industry, to analyze the COD content of water using spectral analysis. The proposal of this thesis was to study, analyze, and identify methods to determine the presence of COD using UV spectroscopy data and an artificial neural network (ANN) in a cloud-connected embedded system. The system was implemented using an ARM11 board and a portable spectrometer. Light in the UV range was used to analyze the water sample. As an analysis strategy, the spectral data were converted into a real number value in the range of 0 to 1. Twenty equidistance samples were taken out of the converted data to be fed into the ANN, and the ANN was trained with known samples to identify any presence of COD. Experiments used laboratory-calibrated water samples with known COD and some real-life water samples. All the experiments showed that the implemented system could successfully indicate the presence or absence of COD in the given water sample. The system also successfully demonstrated the application of a cloud-connected embedded system to an area in environmental engineering. This indicated that the system was a bridge between computer and environmental engineering
    corecore