142,844 research outputs found

    Software Engineering Timeline: major areas of interest and multidisciplinary trends

    Get PDF
    IngenierĂ­a del software. EvolucionSociety today cannot run without software and by extension, without Software Engineering. Since this discipline emerged in 1968, practitioners have learned valuable lessons that have contributed to current practices. Some have become outdated but many are still relevant and widely used. From the personal and incomplete perspective of the authors, this paper not only reviews the major milestones and areas of interest in the Software Engineering timeline helping software engineers to appreciate the state of things, but also tries to give some insights into the trends that this complex engineering will see in the near future

    Barry Truax Riverrun (1986/2004), a case study from the TaCEM project, exploring new approaches to techniques of analysis and re-synthesis in the study of concert electroacoustic works

    Get PDF
    At last year’s EMS in Lisbon we introduced the TaCEM project (Technology and Creativity in Electroacoustic Music), a 30-month project funded by the UK’s Arts and Humanities Research Council, and demonstrated the generic TIAALS software being produced as part of this project. This year we present an update on the project, focusing particularly on the first of our case studies, Barry Truax’s Riverrun. Eight works have been selected for the project, taking into account criteria such as historical context, the nature of the synthesis techniques employed, and the aesthetics that have underpinned their realisation. Key considerations have included the accessibility of the technical resources and composing materials used in their production, and opportunities to pursue particular lines of enquiry with the composer concerned. In selecting the eight works for detailed study, a further consideration has been the extent to which the composers explored techniques that were already available at the time in ways that are unique and distinctive, or alternatively developed entirely new methods of synthesis in pursuit of their creative goals. The pioneering work of Barry Truax in terms of developing techniques of granular synthesis assign his achievements almost exclusively to the latter classification, and the composition of Riverrun (1986/2004) is a landmark achievement in this regard. Truax’s composing environment evolved from the early study of interactive real-time synthesis techniques at the Institute of Sonology, Utrecht 1971-73, exploring the possibilities of using Poisson-ordered distributions in the generation of microsound, to the emergence of entirely granular techniques at Simon Fraser University, British Columbia a decade later, culminating in the development of his program GSX designed specifically for waveform-based synthesis and first used to compose Riverrun, and its later extension, GSAMX, that extended these granular techniques to include the manipulation of previously sampled sound material. At the time of composition conventional minicomputers still lacked the capacity to generate multiple voices of granulated sound material in real time, but for Truax the acquisition in 1982 of a high speed bit slice array processor, the DMX-1000, provided the enhancedprocessing power necessary for achieving such a goal. The unique characteristics of its special hardware and associated programming environment, managed in turn via a host PDP 11/23 computer, both empowered his creative objectives and also materially shaped and influenced the ways in which they could be practically achieved. The significance of such causal relationships in the evolution of the electroacoustic music repertory has yet to be widely understood, and this study of Riverrun corroborates the importance of such a line of investigation. In this case it has been possible to carry out a detailed study of the original system, still maintained in working order by Truax, leading to a reconstruction of key elements of Riverrun using a Max-based simulation of GSX, the authenticity of the results being assessed both subjectively by means of a direct aural comparison and also measured objectively using software. Our presentation at this year’s EMS in Berlin included a demonstration of examples of the software we have developed to enable readers to engage with Riverrun interactively, both by analysing the original recordings and by using our emulation of the GSX system to be able to recreate passages of the work and manipulate the techniques employed in order to learn more about them. We also gave examples of other materials we have collected in relation to this case study, including videos of the composer himself working with the GSX system and discussing the composition of Riverrun

    Aspects of Assembly and Cascaded Aspects of Assembly: Logical and Temporal Properties

    Full text link
    Highly dynamic computing environments, like ubiquitous and pervasive computing environments, require frequent adaptation of applications. This has to be done in a timely fashion, and the adaptation process must be as fast as possible and mastered. Moreover the adaptation process has to ensure a consistent result when finished whereas adaptations to be implemented cannot be anticipated at design time. In this paper we present our mechanism for self-adaptation based on the aspect oriented programming paradigm called Aspect of Assembly (AAs). Using AAs: (1) the adaptations process is fast and its duration is mastered; (2) adaptations' entities are independent of each other thanks to the weaver logical merging mechanism; and (3) the high variability of the software infrastructure can be managed using a mono or multi-cycle weaving approach.Comment: 14 pages, published in International Journal of Computer Science, Volume 8, issue 4, Jul 2011, ISSN 1694-081

    Different goals in multiscale simulations and how to reach them

    Full text link
    In this paper we sum up our works on multiscale programs, mainly simulations. We first start with describing what multiscaling is about, how it helps perceiving signal from a background noise in a ?ow of data for example, for a direct perception by a user or for a further use by another program. We then give three examples of multiscale techniques we used in the past, maintaining a summary, using an environmental marker introducing an history in the data and finally using a knowledge on the behavior of the different scales to really handle them at the same time

    Requirements and Tools for Variability Management

    Get PDF
    Explicit and software-supported Business Process Management has become the core infrastructure of any medium and large organization that has a need to be efficient and effective. The number of processes of a single organization can be very high, furthermore, they might be very similar, be in need of momentary change, or evolve frequently. If the ad-hoc adaptation and customization of processes is currently the dominant way, it clearly is not the best. In fact, providing tools for supporting the explicit management of variation in processes (due to customization or evolution needs) has a profound impact on the overall life-cycle of processes in organizations. Additionally, with the increasing adoption of Service-Oriented Architectures, the infrastructure to support automatic reconfiguration and adaptation of business process is solid. In this paper, after defining variability in business process management, we consider the requirements for explicit variation handling for (service based) business process systems. eGovernment serves as an illustrative example of reuse. In this case study, all local municipalities need to implement the same general legal process while adapting it to the local business practices and IT infrastructure needs. Finally, an evaluation of existing tools for explicit variability management is provided with respect to the requirements identified.

    JooFlux: Hijacking Java 7 InvokeDynamic To Support Live Code Modifications

    Get PDF
    Changing functional and non-functional software implementation at runtime is useful and even sometimes critical both in development and production environments. JooFlux is a JVM agent that allows both the dynamic replacement of method implementations and the application of aspect advices. It works by doing bytecode transformation to take advantage of the new invokedynamic instruction added in Java SE 7 to help implementing dynamic languages for the JVM. JooFlux can be managed using a JMX agent so as to operate dynamic modifications at runtime, without resorting to a dedicated domain-specific language. We compared JooFlux with existing AOP platforms and dynamic languages. Results demonstrate that JooFlux performances are close to the Java ones --- with most of the time a marginal overhead, and sometimes a gain --- where AOP platforms and dynamic languages present significant overheads. This paves the way for interesting future evolutions and applications of JooFlux
    • 

    corecore