Andrew A. Allen
Florida International University
Network
Latest external collaboration on country level. Dive into details by clicking on the dots.
Publication
Featured researches published by Andrew A. Allen.
Proceedings of the 7th Workshop on [email protected] | 2012
Gustavo C. M. Sousa; Fábio M. Costa; Peter J. Clarke; Andrew A. Allen
The combination of domain-specific modeling languages and model-driven engineering techniques hold the promise of a breakthrough in the way applications are developed. By raising the level of abstraction and specializing in building blocks that are familiar in a particular domain, it has the potential to turn domain experts into application developers. Applications are developed as models, which in turn are interpreted at runtime by a specialized execution engine in order to produce the intended behavior. This approach has been successfully applied in different domains, such as communication and smart grid management to execute applications described by models that can be created and changed at runtime. However, each time the approach has to be realized in a different domain, substantial re-implementation has to take place in order to put together an execution engine for the respective DSML. In this paper, we present our work towards a generalization of the approach in the form of a metamodel which captures the domain-independent aspects of runtime model interpretation and allow the definition of domain-specific execution engines.
autonomic and trusted computing | 2011
Tariq M. King; Andrew A. Allen; Rodolfo Cruz; Peter J. Clarke
Although runtime validation and verification are critical for ensuring reliability in autonomic software, research in these areas continues to lag behind other aspects of system development. Few researchers have tackled the problem of testing autonomic software at runtime, and the current state-of-the-art only addresses localized validation of selfadaptive changes. Such approaches fall short because they cannot reveal faults which may occur at different levels of the system. In this paper, we describe an approach that enables system-wide runtime testing of behavioral adaptations in autonomic software. Our approach applies a dependency-based test order strategy at runtime to facilitate integration and system-level regression testing in autonomic software. Since validation occurs on-line during system operations, we perform testing as part of a safe approach to adaptation. To investigate the feasibility of our approach, we apply it to an autonomic communication virtual machine.
conference of the centre for advanced studies on collaborative research | 2009
Andrew A. Allen; Yali Wu; Peter J. Clarke; Tariq M. King; Yi Deng
The diversity of communication media now available on IP networks presents opportunities to create elaborate collaborative communication applications. However, developing collaborative communication applications can be challenging when using the traditional stovepiped development approach with lengthy development cycle as well as limited utility. One proposed solution to this problem is the Communication Virtual Machine (CVM). CVM uses a user-centric communication (UCC) approach to reduce the complexity while offering operating simplicity to developers and users of collaborative communication services. CVM currently utilizes only one communication framework which limits the number, quality and types of services available. We extend the CVM to support multiple communication frameworks with a policy-driven approach for the selection and configuration of communication services. Users define policies that, through automation, can maintain high level goals by influencing the selection and configuration decisions. In this paper we provide a policy definition for UCC and a technique to evaluate these UCC policies. We also present our autonomic framework for UCC and experimental evaluation of the implementation.
international conference on systems | 2008
Andrew A. Allen; Sean Leslie; Yali Wu; Peter J. Clarke; Ricardo Tirado
The functionality of communication applications, such as instant messaging, has dramatically improved due to market competition. The quest for the competitive edge has resulted in the development of open platform APIs that allow communication applications to become building blocks, or communication frameworks for more elaborate communication applications. The services available through these different communication frameworks can however be quite dissimilar, as revealed from a survey of some of these frameworks. In this paper we propose an architecture that utilizes multiple communication frameworks and the autonomic computing capability of self-configuration of these frameworks. This architecture extends network communication broker (NCB) which is the layer of the communication virtual machine (CVM) that interacts with the underlying communication networks. We provide a detailed design of the proposed architecture and show how a communication scenario can be realized using a prototype of the NCB.
acm southeast regional conference | 2009
Paola Boettner; Mansi Gupta; Yali Wu; Andrew A. Allen
The convergence of various multimedia communications that includes voice, video and data presents many opportunities for enabling unified communication but paradoxically leads to inefficiencies for the user as the communication may become complex. Model driven technologies such as the Communication Virtual Machine (CVM) propose to reduce such complexity through the use of models to define a users communication needs. The CVM was extended to utilize multiple common-off-the-self (COTS) communication APIs such as Skype and Smack which we refer to as communication frameworks, to promote service and network independence. However, the users current priorities and context play no role in the use and configuration of these frameworks. In this paper we introduce the notion of policy driven self-configuration into the CVM, where high level user policies play a major role in the self-configuration decisions. We show the results of a feature analysis of the domain which guided the policy definition process. We also provide a design of the policy driven self-configuring architecture.
computer software and applications conference | 2009
Yingbo Wang; Yali Wu; Andrew A. Allen; Barbara Espinoza; Peter J. Clarke; Yi Deng
The pervasiveness of complex communication services and the need for end-users to play a greater role in developing communication services have resulted in the creation of the Communication Virtual Machine (CVM) technology. The CVM technology consists of a Communication Modeling Language (CML) and the CVM. CML is a declarative modeling language that can be used to specify domain-specific communication services and the CVM is the platform used to realize the CML models.In this paper we explicitly define the operational semantics of CML to support (1) the synthesis of CML models into executable control scripts and (2) the handling of negotiation and media transfer events during communication. We specify the semantics of CML using label transition systems and describe in detail an algorithm that is essential for the interpretation of CML models. A case study is presented showing how the semantics support the rapid realization of a scenario from the healthcare domain.
international conference on computer science and education | 2015
Mark Allison; Stephen T. Turner; Andrew A. Allen
One challenge to the cloud computing paradigm is the task complexity associated with designing and managing multi-cloud solutions based on operational objectives. Heterogeneous vendor interfaces and a lack of standardization compounds this complexity and may eventually lead to vendor lock-in. In this article we present a model driven approach to allowing network administrators to intuitively describe and rapidly realize non-trivial IaaS behavior in realtime. We have developed iCloudML, an interpreted domain-specific modeling language and its interpreter as tooling support for the domain.
ubiquitous computing | 2016
Andrew A. Allen; Fábio M. Costa; Peter J. Clarke
The pervasiveness of electronic devices coupled with increasing resources within these devices has aided the explosion of available software services. While reusable software services have become more accessible and the cost of using these services has become cheaper, the increased number of services and access methods also increases the complexity for the user of these services, demanding too much attention from the user. On the other hand, automation can alleviate some of the complexity issues but at the expense of user control. We propose a balance between smart reusable integration, automation and user controllability, through a dynamically adaptive user-centric approach that utilizes goal-oriented intent modeling. This work leverages the convergence of services and providers for the user through reuse, autonomic adaptation of services to relieve the user’s of laborious and tedious tasks, while ensuring that the user’s end-goal remains central at all times. We applied our approach to the domains of collaborative communication as demonstration of the feasibility of the approach.
next generation internet | 2014
Leandro Alexandre Freitas; Fábio M. Costa; Ricardo Couto Antunes da Rocha; Andrew A. Allen
The growth and popularization of wireless connectivity and mobile devices have allowed the development of smart spaces that were previously only envisaged in the approach proposed by Mark Weiser. These environments are composed of many computational resources, such as devices and applications, along with user, who must be able to associate with and use these features. However, programming these environments is a challenging task, since smart spaces have a dynamic nature and heterogeneous resources, in addition to the requirement that interactions between users and resources are performed in a coordinated way. We present a new approach for smart spaces programming using Models@RunTime. To this end, we propose a high-level modeling language, called 2SML, through which the user can model the smart space with all elements that can be part of it. Models created by the users are interpreted and effected in the physical space by a model execution engine, called 2SVM, whose development is part of this work.
Software - Practice and Experience | 2012
Yali Wu; Andrew A. Allen; Frank Hernandez; Peter J. Clarke