TechRep.bib
@TECHREPORT{Interoperable-Grid-Scheduling-TechRep-BSC,
AUTHOR = {Ivan Rodero and Francec Guima and Julita Corbalan and Liana Fong and {\bf S. Masoud Sadjadi}},
TITLE = {Evaluation of Broker Selection Strategies},
NUMBER = {UPC-DAC-RR-CAP-2008-41},
INSTITUTION = {Computer Architecture Department, Technical University of Catalonia},
ADDRESS = {Barcelona, Spain},
ABSTRACT = {The increasing demand for resources of the high
performance computing systems has led to new forms of collaboration
of distributed systems such as interoperable grid systems
that contain and manage their own resources. While with a
single domain one of the most important tasks is the selection
of the most appropriate set of resources to dispatch a job, in an
interoperable grid environment this problem shifts to selecting
the most appropriate domain containing the requiring resources
for the job. In the Latin American Grid initiative, our model
consists of multiple domains. Each domain has its domain broker,
and the task of scheduling on top of brokers can be called metabrokering
or broker selection.
In this paper, we present and evaluate the “bestBrokerRank”
broker selection policy and its two different variants. The
first one uses the resource information in aggregated forms
as input, and the second one also uses the brokers average
bounded slowdown as a dynamic performance metric. From
our evaluations performed with simulation tools, we state that
the proposed resource aggregation algorithms are scalable for
an interoperable grid environment and we show that the best
performance results are obtained with our coordinated policy. We
conclude that delegating part of the scheduling responsibilities
to the underlying scheduling layers is a good way to balance the
performance among the different brokers and schedulers.
},
KEYWORDS = {Grid Computing, Scheduling Strategies, Interoperability.},
NOTE = {},
MONTH = {Dec.},
YEAR = {2008},
AUTHOR1_URL = {http://www.cs.fiu.edu/~sadjadi/},
AUTHOR1_EMAIL = {sadjadi@cs.fiu.edu},
CONTACT = {sadjadi@cs.fiu.edu}
}
@TECHREPORT{Interoperable-Grid-Scheduling-TechRep,
AUTHOR = {Ivan Rodero and Francec Guima and Julita Corbalan and Liana Fong and {\bf S. Masoud Sadjadi}},
TITLE = {Interoperable Grid Scheduling Strategies},
NUMBER = {FIU-SCIS-2008-12-02},
INSTITUTION = {School of Computing and Information Sciences, Florida International University},
ADDRESS = {11200 SW 8th St., Miami, FL 33199},
ABSTRACT = {The increasing demand for resources of the high
performance computing systems has led to new forms of collaboration
of distributed systems such as interoperable grid systems
that contain and manage their own resources. While with a
single domain one of the most important tasks is the selection
of the most appropriate set of resources to dispatch a job, in an
interoperable grid environment this problem shifts to selecting
the most appropriate domain containing the requiring resources
for the job. In the Latin American Grid initiative, our model
consists of multiple domains. Each domain has its domain broker,
and the task of scheduling on top of brokers can be called metabrokering
or broker selection.
In this paper, we present and evaluate the “bestBrokerRank”
broker selection policy and its two different variants. The
first one uses the resource information in aggregated forms
as input, and the second one also uses the brokers average
bounded slowdown as a dynamic performance metric. From
our evaluations performed with simulation tools, we state that
the proposed resource aggregation algorithms are scalable for
an interoperable grid environment and we show that the best
performance results are obtained with our coordinated policy. We
conclude that delegating part of the scheduling responsibilities
to the underlying scheduling layers is a good way to balance the
performance among the different brokers and schedulers.
},
KEYWORDS = {Grid Computing, Scheduling Strategies, Interoperability.},
NOTE = {},
MONTH = {Dec.},
YEAR = {2008},
AUTHOR1_URL = {http://www.cs.fiu.edu/~sadjadi/},
AUTHOR1_EMAIL = {sadjadi@cs.fiu.edu},
CONTACT = {sadjadi@cs.fiu.edu}
}
@TECHREPORT{TRAP-NET-MATH-TechRep,
AUTHOR = {Javier Ocasio Pérez and Pedro I. Rivera-Vega and {\bf S. Masoud Sadjadi} and Fernando Trigoso},
TITLE = {Dynamic Adaptation of a Math Service Using TRAP.NET},
NUMBER = {FIU-SCIS-2008-07-01},
INSTITUTION = {School of Computing and Information Sciences, Florida International University},
ADDRESS = {11200 SW 8th St., Miami, FL 33199},
ABSTRACT = {This technical report details a case study done for the TRAP.NET project (which stands
for Transparent Reflective Aspect Programming in Microsoft’s .NET Framework). TRAP.NET
provides dynamic adaptation for software programs written in .NET.
},
KEYWORDS = {TRAP.NET, Dynamic Adaptation, and Math Service.},
NOTE = {},
MONTH = {July},
YEAR = {2008},
AUTHOR1_URL = {http://www.cs.fiu.edu/~sadjadi/},
AUTHOR1_EMAIL = {sadjadi@cs.fiu.edu},
PDF = {TechRep-FIU-SCIS-2008-07-01-Dynamic TechRep-FIU-SCIS-2008-07-01-Adaptation of a Math Service Using TRAP-NET.pdf},
CONTACT = {sadjadi@cs.fiu.edu}
}
@TECHREPORT{WRF-Profiler-Evaluation-TechRep,
AUTHOR = {{\bf S. Masoud Sadjadi} and David Villegas and Javier Munoz and Diego Lopez and Alex Orta and Michael McFail and Xabriel J. Collazo-Mojica and Javier Figueroa},
TITLE = {Finding an Appropriate Profiler for the Weather Research and Forecasting Code},
NUMBER = {FIU-SCIS-2007-09-03},
INSTITUTION = {School of Computing and Information Sciences, Florida International University},
ADDRESS = {11200 SW 8th St., Miami, FL 33199},
ABSTRACT = {This evaluation of profiling tools started because of a need to examine the behavior of the Weather Research and Forecasting Model (WRF). It is currently written to run on a single cluster; our team wished to explore the options for scaling out WRF to a grid environment. This necessitated understanding how WRF works and what its resource usage patterns look like. In order to do this we required a profiler, which led us to creating this document.
We began with a long list of tools, but an in depth investigation for each of them would have been both ineffective and unwarranted. Instead, we broke our evaluation of the field into three passes. In the first pass we discarded programs that did not meet our basic criteria, things like architecture and language support. The second pass was more qualitative. We came up with a list of pros and cons for each tool, and rejected those that did not have features we wanted. Those tools that were still being considered were then given an extensive trial to determine how well they worked for us. We examined things like documentation, ease of installation, whether the tool provided source code correlation and call graphs, etc. It is our hope that this information proves useful to the community, allowing researchers and professionals to learn from our experiences.
},
KEYWORDS = {Profiler Evaluation, Weather Forecast and Reserach, WRF, Fortran, MPI, OpenMP, Grid Computing.},
NOTE = {},
MONTH = {August},
YEAR = {2007},
AUTHOR1_URL = {http://www.cs.fiu.edu/~sadjadi/},
AUTHOR1_EMAIL = {sadjadi@cs.fiu.edu},
PDF = {TechRep-FIU-SCIS-2007-09-03-WRF-Profiler-Evaluation.pdf},
CONTACT = {sadjadi@cs.fiu.edu}
}
@TECHREPORT{WRF-Tutorial-TechRep,
AUTHOR = {{\bf S. Masoud Sadjadi} and Javier Munoz and Diego Lopez and David Villegas and Javier Figueroa and Xabriel J. Collazo-Mojica and Michael McFail and Alex Orta},
TITLE = {Weather Research and Forecasting Model 2.2 Documentation: A Step-by-step guide of a Model Run},
NUMBER = {FIU-SCIS-2007-09-02},
INSTITUTION = {School of Computing and Information Sciences, Florida International University},
ADDRESS = {11200 SW 8th St., Miami, FL 33199},
ABSTRACT = {In Summer 2007, we, a group of four undergraduate students and three graduate students under the supervision of Dr. Masoud Sadjadi at School of Computing and Information Science (SCIS) of Florida International University (FIU), started an effort on gridifying the Weather Research and Forecast (WRF) code. During this process, it became apparent to us that we needed a better understanding of the code's functionality before we start the gridification process. As the available documentation on WRF was not targeted for developers like us who would need to modify the code operation to adapt it to a grid computing environment (and not just adding a new physics model, for example), we were pushed to search through lines of the WRF’s FORTRAN and C code to discover how this code was actually functioning; especially, in parts such as domain decomposition and network interactions among the nodes. Due to the large and complex nature of the WRF code, documentation of the program flow proved necessary. With more time and thought, we decided to start a documentation effort to be useful not only for us, but also for other interested in learning the WRF operation in more dept. This guide should help developers understand basic concepts of WRF, how it executes, and how some of its functions branch into different dimensions. We hope that by the time our audience finishes reading this document they will have gained a strong understanding of how WRF operates.
},
KEYWORDS = {Weather Forecast and Reserach, WRF, Fortran, MPI, OpenMP, Grid Computing.},
NOTE = {},
MONTH = {August},
YEAR = {2007},
AUTHOR1_URL = {http://www.cs.fiu.edu/~sadjadi/},
AUTHOR1_EMAIL = {sadjadi@cs.fiu.edu},
PDF = {TechRep-FIU-SCIS-2007-09-02-WRF-Tutorial.pdf},
CONTACT = {sadjadi@cs.fiu.edu}
}
@TECHREPORT{TRAP-J-2-1-TechRep,
AUTHOR = {{\bf S. Masoud Sadjadi} and Luis Atencio and Tatiana Soldo},
TITLE = {TRAP/J v2.1: An Improvement for Transparent Adaptation},
NUMBER = {FIU-SCIS-2007-09-01},
INSTITUTION = {School of Computing and Information Sciences, Florida International University},
ADDRESS = {11200 SW 8th St., Miami, FL 33199},
ABSTRACT = {With the advent of mobile, pervasive, and grid
computing, software systems must be designed to
dynamically adapt to changes that might occur in their
runtime environments. Certainly, careful system design
and modeling are key factors for systems to be
complete. However, as technology changes and new
forms of technology continue to emerge,
predetermining all possible scenarios in which a
system may be running is nothing short of impossible.
These issues can be addressed with a tool called
TRAP/J (Transparent Reflective Aspect Oriented
Programming in Java. However, the first
implementation of this tool performs poorly on
demanding applications, severely lacked usability, and
provided very limited support for adaptation. In this
paper, we will be addressing various issues in the first
implementation of TRAP/J and we have developed a
new version, TRAP/J v2.1, which is aimed at providing
better performance and usability over the original
TRAP/J.
TRAP/J 2.1 is focused on improving the
performance of the generation and adaptation phases
of Transparent Adaptation and keeping in mind ease of
usability. This will allow a decision support system –in
our case, a user— to benefit from a user friendly,
interactive, web based Composer Interface through
which new behavior can be inserted into an
application remotely at runtime or startup time. In
addition, it has a Generator Interface that allows users
to choose which classes they wish to make adaptable.
},
KEYWORDS = {TRAP/J, Dynamic Adaptation, Java, Pervasive Computing, Grid Computing.},
NOTE = {},
MONTH = {May},
YEAR = {2007},
AUTHOR1_URL = {http://www.cs.fiu.edu/~sadjadi/},
AUTHOR1_EMAIL = {sadjadi@cs.fiu.edu},
PDF = {TechRep-FIU-SCIS-2007-09-01-TRAP-J-V2-1.pdf},
CONTACT = {sadjadi@cs.fiu.edu}
}
@TECHREPORT{Grid-BPEL-TechRep,
AUTHOR = {Onyeka Ezenwoye and {\bf S. Masoud Sadjadi} and Ariel Carey and Michael Robinson},
TITLE = {Grid Service Composition in BPEL for Scientific Applications},
NUMBER = {FIU-SCIS-2007-08-01},
INSTITUTION = {School of Computing and Information Sciences, Florida International University},
ADDRESS = {11200 SW 8th St., Miami, FL 33199},
ABSTRACT = {Grid computing aims to create an accessible virtual supercomputer
by integrating distributed computers to form a parallel infrastructure
for processing applications. To enable service-oriented Grid
computing, the Grid computing architecture was aligned with the current
Web service technologies; thereby, making it possible for Grid applications
to be exposed as Web services. The WSRF set of specifications
standardized the association of state information withWeb services (WSResource)
while providing interfaces for the management of state data.
Key to the realization of the benefits of Grid computing is the ability
to integrate WS-Resources to create higher-level applications. The Business
Process Execution Language (BPEL) is the leading standard for
integrating Web services and as such has a natural affinity to the integration
of Grid services. In this paper, we share our experience on using
BPEL to integrate, create, and manage WS-Resources that implement
the factory pattern. We use a Bioinformatics application as a case study
to show how BPEL can be used to orchestrate Grid services. The execution
environment for our case study comprises the Globus Toolkit as
the Grid middleware and the ActiveBPEL as the BPEL engine. To the
best of our knowledge, this work is among the handful approaches that
successfully use BPEL for orchestrating WSRF-based services and the
only one that includes the discovery and management of instances.
},
KEYWORDS = {BPEL, Grid Computing,WSRF, OGSA-DAI, Service Composition.},
NOTE = {},
MONTH = {August},
YEAR = {2007},
AUTHOR1_URL = {http://www.cs.fiu.edu/~sadjadi/},
AUTHOR1_EMAIL = {sadjadi@cs.fiu.edu},
PDF = {TechRep-FIU-SCIS-2007-08-01-GridBPEL.pdf},
CONTACT = {sadjadi@cs.fiu.edu}
}
@TECHREPORT{WSRF-BPEL-TechRep,
AUTHOR = {Onyeka Ezenwoye and {\bf S. Masoud Sadjadi} and Ariel Carey and Michael Robinson},
TITLE = {Orchestrating WSRF-based Grid Services},
NUMBER = {FIU-SCIS-2007-04-01},
INSTITUTION = {School of Computing and Information Sciences, Florida International University},
ADDRESS = {11200 SW 8th St., Miami, FL 33199},
ABSTRACT = {Grid computing aims to create an accessible virtual supercomputer
by integrating distributed computers to form a parallel infrastructure
for processing applications. To enable service-oriented Grid
computing, the Grid computing architecture was aligned with current
Web service technologies. Thereby making it possible for Grid
applications to be exposed as Web services. The WSRF set of specifications
standardized the association of state information withWeb services (WS-
Resource) while providing interfaces for the management of state data.
Key to the realization of the benefits of Grid computing is the ability
to integrate WS-Resources to create higher-level applications. The Business
Process Execution Language (BPEL) is the leading standard for
integrating Web services and as such has a natural affinity to the integration
of Grid services. In this paper, we share our experience on using
BPEL to integrate, create, and manage WS-Resources that implement
the factory/instance pattern.
},
KEYWORDS = {BPEL, Grid Computing, WSRF, OGSA-DAI, Grid Service Composition.},
NOTE = {},
MONTH = {April},
YEAR = {2007},
AUTHOR1_URL = {http://www.cs.fiu.edu/~sadjadi/},
AUTHOR1_EMAIL = {sadjadi@cs.fiu.edu},
PDF = {TechRep-FIU-SCIS-2007-04-01-WSRF-BPEL.pdf},
CONTACT = {sadjadi@cs.fiu.edu}
}
@TECHREPORT{TGE-TechRep,
AUTHOR = {{\bf S. Masoud Sadjadi} and J. Martinez and T. Soldo and L. Atencio
R. M. Badia and J. Ejarque},
TITLE = {Improving Separation of Concerns in the Development of Scientific Applications},
NUMBER = {FIU-SCIS-2007-02-01},
INSTITUTION = {School of Computing and Information Sciences, Florida International University},
ADDRESS = {11200 SW 8th St., Miami, FL 33199},
ABSTRACT = {High performance computing (HPC) is gaining popularity in solving scientific applications. Using the current programming standards, however, it takes an HPC expert to efficiently take advantage of HPC facilities; a skill that a scientist does not necessarily have. This lack of separation of concerns has resulted in scientific applications with rigid code, which entangles non-functional concerns (i.e., the parallel code) into functional concerns (i.e., the core business logic). Effectively, this tangled code hinders the maintenance and evolution of these applications. In this paper, we introduce Transparent Grid Enabler (TGE) that separates the task of developing the business logic of a scientific application from the task of improving its performance. TGE achieves this goal by integrating two existing software tools, namely, TRAP/J and GRID superscalar. A simple matrix multiplication program is used as a case study to demonstrate the current use and capabilities of TGE.
},
KEYWORDS = {Transparent Grid Enablement, High Performance Computing, TRAP/J, GRID superscalar.},
NOTE = {},
MONTH = {February},
YEAR = {2007},
AUTHOR1_URL = {http://www.cs.fiu.edu/~sadjadi/},
AUTHOR1_EMAIL = {sadjadi@cs.fiu.edu},
PDF = {TechRep-FIU-SCIS-2007-02-01-TGE.pdf},
CONTACT = {sadjadi@cs.fiu.edu}
}
@TECHREPORT{TRAP-BPEL-TechRep,
AUTHOR = {Onyeka Ezenwoye and {\bf S. Masoud Sadjadi}},
TITLE = {TRAP/BPEL: A Framework for Dynamic Adaptation of Composite Services},
NUMBER = {FIU-SCIS-2006-06-02},
INSTITUTION = {School of Computing and Information Sciences, Florida International University},
ADDRESS = {11200 SW 8th St., Miami, FL 33199},
ABSTRACT = {TRAP/BPEL is a framework that adds autonomic behavior into existing
BPEL processes automatically and transparently. We define an autonomic
BPEL process as a composite Web service that is capable of responding to changes
in its execution environment (e.g., a failure in a partner Web service). Unlike other
approaches, TRAP/BPEL does not require any manual modifications to the original
code of the BPEL processes and there is no need to extend the BPEL language
nor its BPEL engine. Furthermore, TRAP/BPEL promotes the reuse of code in
BPEL processes as well as in their corresponding autonomic behavior. In this paper,
we describe the details of the TRAP/BPEL framework and use a case study
to demonstrate the feasibility and effectiveness of our approach.
},
KEYWORDS = {TRAP/BPEL, generic proxy, self-management, dynamic service discovery.},
NOTE = {},
MONTH = {June},
YEAR = {2006},
AUTHOR1_URL = {http://www.cs.fiu.edu/~sadjadi/},
AUTHOR1_EMAIL = {sadjadi@cs.fiu.edu},
PDF = {TechRep-FIU-SCIS-2006-06-02-TRAP-BPEL.pdf},
CONTACT = {sadjadi@cs.fiu.edu}
}
@TECHREPORT{RocustBPEL-2-TechRep,
AUTHOR = {Onyeka Ezenwoye and {\bf S. Masoud Sadjadi}},
TITLE = {RobustBPEL-2: Transparent Autonomization in Aggregate Web Services Using Dynamic Proxies},
NUMBER = {FIU-SCIS-2006-06-01},
INSTITUTION = {School of Computing and Information Sciences, Florida International University},
ADDRESS = {11200 SW 8th St., Miami, FL 33199},
ABSTRACT = {Web services paradigm is allowing applications to electronically interact
with one another over the Internet. BPEL facilitates this interaction by providing
a platform with which Web services can be integrated.
Using RobustBPEL-1, we demonstrated how an aggregate Web service, defined
as a BPEL process, can be instrumented automatically to monitor its partner Web
services at runtime and replace failed services via a generated proxy. While in
the previous work the proxy is statically bound to a limited number of alternative
Web services, in this paper we extended the RobustBPEL-1 toolkit to generate
a proxy that dynamically discovers and binds to existing services. Further,
we present details of the generation process and the architecture of dynamically
adaptable BPEL processes and their corresponding dynamic proxies. Finally, we
use two case studies to demonstrate how generated dynamic proxies are used
to support self-healing and self-optimization (specifically, to improve the faulttolerance
and performance) in instrumented BPEL processes.
},
KEYWORDS = {Web service monitoring, BPEL processes, dynamic proxies, self-healing,
self-optimization, dynamic service discovery.},
NOTE = {},
MONTH = {June},
YEAR = {2006},
AUTHOR1_URL = {http://www.cs.fiu.edu/~sadjadi/},
AUTHOR1_EMAIL = {sadjadi@cs.fiu.edu},
PDF = {TechRep-FIU-SCIS-2006-06-01-RobustBPEL-2.pdf},
CONTACT = {sadjadi@cs.fiu.edu}
}
@TECHREPORT{ASM-KDD-TechRep,
AUTHOR = {Tao Li and {\bf S. Masoud Sadjadi} and Juan Carlos Martinez and Lokesh Sasikumar and Manoj Pillai},
TITLE = {Data Mining for Autonomic System Management: A Case Study at FIU-SCIS},
NUMBER = {FIU-SCIS-2006-03-01},
INSTITUTION = {School of Computing and Information Sciences, Florida International University},
ADDRESS = {11200 SW 8th St., Miami, FL 33199},
ABSTRACT = {Over the years, the advancements in science and technology have
led to the increased complexity in computing systems. The systems are thus
becoming increasingly more complex with growing number of heterogeneous software
and hardware components, increasingly more difficult to monitor, manage and
maintain. As a result, it is not a trivial task to provide high performance,
high dependability, and high manageability for such computing systems. In
this paper, we first present an integrated data-driven architecture for
computing system management and then present a case study on Autonomic System
Manager: a software system we developed that is currently being used by the
system and network administrators of School of Computing and Information Sciences
(SCIS) at Florida International University (FIU).
},
KEYWORDS = {Data mining, autonomic computing, self management, self protection,
network and system management, anomaly detection.},
NOTE = {},
MONTH = {March},
YEAR = {2006},
AUTHOR1_URL = {http://www.cs.fiu.edu/~sadjadi/},
AUTHOR1_EMAIL = {sadjadi@cs.fiu.edu},
PDF = {http://www.cs.fiu.edu/~sadjadi/Publications/TechRep-FIU-SCIS-2006-03-01-ASM-KDD-2006.pdf},
CONTACT = {sadjadi@cs.fiu.edu}
}
@TECHREPORT{RobustBPEL-COMPSAC-TechRep,
AUTHOR = {Onyeka Ezenwoye and {\bf S. Masoud Sadjadi}},
TITLE = {Transparent Autonomization in AggregateWeb Services Using
Dynamic Proxies},
NUMBER = {FIU-SCIS-2006-02-01},
INSTITUTION = {School of Computing and Information Sciences, Florida International University},
ADDRESS = {11200 SW 8th St., Miami, FL 33199},
ABSTRACT = {
We recently introduced RobustBPEL [13], a software toolkit that provides a systematic approach to
making existing aggregate Web services more tolerant to the failure of their constituent Web services.
Using RobustBPEL, we demonstrated how an aggregate Web service, defined as a BPEL process, can
be instrumented automatically to monitor its partnerWeb services at runtime and replace failed services
via a generated proxy. While in the previous work the proxy is statically bound to a limited number of
alternative Web services, in this paper we propose an extension to the RobustBPEL toolkit to generate
a proxy that dynamically discovers and binds to existing services. Further, we present details of the
generation process, the architecture of the dynamic proxy, and finally use a case study to demonstrate
how the generated dynamic proxy is used to support self-healing and self-optimization (specifically, to
improve the fault-tolerance and performace) in an instrumented BPEL process.
},
KEYWORDS = {Web service monitoring, BPEL processes, self-healing, self-optimization,
dynamic service discovery.},
NOTE = {},
MONTH = {February},
YEAR = {2006},
AUTHOR1_URL = {http://www.cs.fiu.edu/~sadjadi/},
AUTHOR1_EMAIL = {sadjadi@cs.fiu.edu},
PDF = {http://www.cs.fiu.edu/~sadjadi/Publications/Technical Report FIU-SCIS-2006-02-01-RobustBPEL-DynamicProxies.pdf},
CONTACT = {sadjadi@cs.fiu.edu}
}
@TECHREPORT{MobileServiceClouds-SelfMan-TechRep,
AUTHOR = {Farshad A. Samimi and Philip K. McKinley and {\bf S. Masoud Sadjadi}},
TITLE = {Mobile Service Clouds: A Self-Managing Infrastructure
for Autonomic Mobile Computing Services},
NUMBER = {MSU-CSE-06-7},
INSTITUTION = {Department of Computer Science, Michigan State University},
ADDRESS = {East Lansing, Michigan},
ABSTRACT = {
We recently introduced Service Clouds, a distributed infrastructure
designed to facilitate rapid prototyping and deployment of autonomic communication
services. In this paper, we propose a model that extends Service Clouds
to the wireless edge of the Internet. This model, called Mobile Service Clouds,
enables dynamic instantiation, composition, configuration, and reconfiguration
of services on an overlay network to support self-management in mobile computing.
We have implemented a prototype of this model and applied it to the problem
of dynamically instantiating and migrating proxy services for mobile hosts. We
conducted a case study involving data streaming across a combination of Planet-
Lab nodes, local proxies, and wireless hosts. Results are presented demonstrating
the effectiveness of the prototype in establishing new proxies and migrating their
functionality in response to node failures.},
KEYWORDS = {autonomic networking, distributed service composition, self-managing
system, overlay network, mobile computing, quality of service.},
NOTE = {},
MONTH = {February},
YEAR = {2006},
AUTHOR1_URL = {http://www.cs.fiu.edu/~sadjadi/},
AUTHOR1_EMAIL = {sadjadi@cs.fiu.edu},
PDF = {http://www.cs.fiu.edu/~sadjadi/Publications/TechRep-MSU-CSE-06-7-MobileServiceClouds.pdf},
CONTACT = {sadjadi@cs.fiu.edu}
}
@TECHREPORT{CVM-COMPSAC-TechRep,
AUTHOR = {Yi Deng and {\bf S. Masoud Sadjadi} and Peter Clarke and Chi Zhang and Vagelis Hristidis and Raju
Rangaswami and Nagarajan Prabakar},
TITLE = {A Communication Virtual Machine},
NUMBER = {FIU-SCIS-2006-02},
INSTITUTION = {School of Computing and Information Sciences, Florida International University},
ADDRESS = {11200 SW 8th St., Miami, FL 33199},
ABSTRACT = {
The convergence of data, voice and multimedia
communication over digital networks, coupled with
continuous improvement in network capacity and
reliability has significantly enriched the ways we
communicate. However, the stovepipe approach used
to develop today’s communication applications and
tools results in rigid technology, limited utility, lengthy
and costly development cycle, difficulty in integration,
and hinders innovation. In this paper, we present a
fundamentally different approach, which we call
Communication Virtual Machine (CVM) to address
these problems. CVM provides a user-centric, modeldriven
approach for conceiving, synthesizing and
delivering communication solutions across application
domains. We argue that CVM represents a far more
effective paradigm for engineering communication
solutions. The concept, architecture, modeling
language, prototypical design and implementation of
CVM are discussed.},
KEYWORDS = {Model driven, communication application,
multimedia, middleware, telemedicine.},
NOTE = {},
MONTH = {February},
YEAR = {2006},
AUTHOR1_URL = {http://www.cs.fiu.edu/~sadjadi/},
AUTHOR1_EMAIL = {sadjadi@cs.fiu.edu},
PDF = {http://www.cs.fiu.edu/~sadjadi/Publications/TechRep-FIU-SCIS-2006-02-CVM-COMPSAC.pdf},
CONTACT = {sadjadi@cs.fiu.edu}
}
@TECHREPORT{UCM-ICDCS-2006-TechRep,
AUTHOR = {Chi Zhang and {\bf S. Masoud Sadjadi} and Weixiang Sun and Raju Rangaswami and Yi Deng},
TITLE = {User-Centric Communication Middleware},
NUMBER = {FIU-SCIS-2005-11-01},
INSTITUTION = {School of Computing and Information Sciences, Florida International University},
ADDRESS = {11200 SW 8th St., Miami, FL 33199},
ABSTRACT = {The development of communication applications today follows a vertical development
approach where each application is built on top of low-level network abstractions
such as the socket interface. This stovepipe development process is a major
inhibitor that drives up the cost of development and slows down the pace of
innovation of new generation of communication applications. In this paper, we
propose a user-centric communication middleware (UCM) that provides a unified
higher-level abstraction for the class of multimedia communication applications.
We investigate the minimum set of necessary requirements for this abstraction from
the perspective of next-generation communication applications, and provide an API
that exemplifies this abstraction. We demonstrate how UCM encapsulates the complexity
of network-level communication control and media delivery. Further, we show how its
extensible and self-managing design supports dynamic adaptation in response to changes
in network conditions and application requirements with negligible overhead. Finally,
we argue that UCM enables rapid development of portable communication applications,
which can be easily deployed on IP-based networking infrastructure.},
KEYWORDS = {Multimedia communication applications, user-centric middleware, autonomic computing.},
NOTE = {},
MONTH = {November},
YEAR = {2005},
AUTHOR1_URL = {http://www.cs.fiu.edu/~sadjadi/},
AUTHOR1_EMAIL = {sadjadi@cs.fiu.edu},
PDF = {http://www.cs.fiu.edu/~sadjadi/Publications/TechRep-FIU-SCIS-2005-11-23-UCM.pdf},
CONTACT = {sadjadi@cs.fiu.edu}
}
@TECHREPORT{AggregateWS-BPEL-TechRep,
AUTHOR = {Onyeka Ezenwoye and {\bf S. Masoud Sadjadi}},
TITLE = {Composing AggregateWeb Services in BPEL},
NUMBER = {FIU-SCIS-2005-10-01},
INSTITUTION = {School of Computing and Information Sciences, Florida International University},
ADDRESS = {11200 SW 8th St., Miami, FL 33199},
ABSTRACT = {Web services are increasingly being used to expose applications over the Internet.
These Web services are being integrated within and across enterprises to create
higher function services. BPEL is a workflow language that facilitates this integration.
Although both academia and industry acknowledge the need for workflow languages, there
are few technical papers focused on BPEL. In this paper, we provide an overview of
BPEL and discuss its promises, limitations and challenges.},
KEYWORDS = {Web services, workflow language, BPEL, business processes, application-to-application
integration, and business-to-business integration.},
NOTE = {},
MONTH = {October},
YEAR = {2005},
AUTHOR1_URL = {http://www.cs.fiu.edu/~sadjadi/},
AUTHOR1_EMAIL = {sadjadi@cs.fiu.edu},
PDF = {http://www.cs.fiu.edu/~sadjadi/Publications/TechRep-FIU-SCIS-2005-10-01-AggregateWS.pdf},
CONTACT = {sadjadi@cs.fiu.edu}
}
@TECHREPORT{CVM-IEEE-Software-2006-TechRep,
AUTHOR = {Yi Deng and {\bf S. Masoud Sadjadi} and Peter Clarke and Chi Zhang and Vagelis Hristidis and Raju
Rangaswami and Nagarajan Prabakar},
TITLE = {A Unified Architectural Model for On-Demand User-Centric Communications},
NUMBER = {FIU-SCIS-2005-09},
INSTITUTION = {School of Computing and Information Sciences, Florida International University},
ADDRESS = {11200 SW 8th St., Miami, FL 33199},
ABSTRACT = {The rapid growth of networking technologies has drastically changed the way we
communicate and enabled a wide range of communication applications. However,
these applications have been conceived, designed, and developed separately with
little or no connection to each other, resulting in a fragmented and incompatible
set of technologies and products. Building new communication applications requires
a lengthy and costly development cycle, which severely limits the pace of innovation.
Current applications are also typically incapable of responding to changes in user
communication needs as well as changing network infrastructure and device technology.
In this article, we address these issues and present the Unified Communication Model
(UCM), a new and user-centric approach for conceiving, generating, and delivering
communication applications on-demand. We also introduce a prototype design and
implementation of UCM and discuss future research directions toward realizing next
generation communication applications.},
KEYWORDS = {Unified communication model, software generation, on-demand multimedia communication
applications, autonomic computing.},
NOTE = {},
MONTH = {September},
YEAR = {2005},
AUTHOR1_URL = {http://www.cs.fiu.edu/~sadjadi/},
AUTHOR1_EMAIL = {sadjadi@cs.fiu.edu},
PDF = {http://www.cs.fiu.edu/~sadjadi/Publications/TechRep-FIU-SCIS-2005-09-CVM.pdf},
CONTACT = {sadjadi@cs.fiu.edu}
}
@TECHREPORT{RobustBPEL-1-TechRep,
AUTHOR = {Onyeka Ezenwoye and {\bf S. Masoud Sadjadi}},
TITLE = {Enabling Robustness in Existing BPEL Processes},
NUMBER = {FIU-SCIS-2005-08},
INSTITUTION = {School of Computing and Information Sciences, Florida International University},
ADDRESS = {11200 SW 8th St., Miami, FL 33199},
ABSTRACT = {Web services are increasingly being used to expose applications over the Internet.
To promote efficiency and the reuse of software, these web services are being
integrated both within enterprises and across enterprises, creating higher function
services. BPEL is a workflow language that can be used to facilitate this integration.
Unfortunately, the autonomous nature of web services leaves BPEL processes susceptible
to the failures of their constituent services. In this paper, we present a systematic
approach to making existing BPEL processes more fault tolerant by monitoring the
involved web services at runtime, and by replacing delinquent web services dynamically.
To show the feasibility of our approach, we developed a prototype implementation that
generates more robust BPEL processes from existing ones automatically. The use of the
prototype is demonstrated using an existing loan approval BPEL process.},
KEYWORDS = {ECommerce, web service monitoring, robust BPEL processes, dynamic service discovery.},
NOTE = {},
MONTH = {August},
YEAR = {2005},
AUTHOR1_URL = {http://www.cs.fiu.edu/~sadjadi/},
AUTHOR1_EMAIL = {sadjadi@cs.fiu.edu},
PDF = {http://www.cs.fiu.edu/~sadjadi/Publications/TechRep-FIU-SCIS-2005-08-RobustBPEL.pdf},
CONTACT = {sadjadi@cs.fiu.edu}
}
@TECHREPORT{TRAP-MPAC-TechRep,
AUTHOR = {Farshad A. Samimi and Philip K. McKinley and {\bf S. Masoud Sadjadi} and
Peng Ge},
TITLE = {Kernel-Middleware Interaction to Support Adaptation in
Pervasive Computing Environments},
NUMBER = {MSU-CSE-04-30},
INSTITUTION = {Department of Computer Science, Michigan State University},
ADDRESS = {East Lansing, Michigan},
ABSTRACT = {In pervasive computing environments, conditions are highly
variable and resources are limited. In order to meet the
needs of applications, systems must adapt dynamically to
changing situations. Since adaptation at one system layer
may be insufficient, cross-layer, or vertical approaches to
adaptation may be needed. Moreover, adaptation in
distributed systems often requires horizontal cooperation
among hosts. This cooperation is not only limited to the
source and destination(s) of a data stream, but might also
include intermediate hosts in an overlay network or mobile
ad hoc network. We refer to this combined capability as
universal adaptation. We contend that the model defining
interaction between adaptive middleware and the operating
system is critical to realizing universal adaptation. We
explore this hypothesis by evaluating the Kernel-Middleware
eXchange (KMX), a specific model for cross-layer,
cross-system adaptation. We present the KMX architecture and
discuss its potential role in supporting universal
adaptation in pervasive computing environments. We then
describe a prototype implementation of KMX and show results
of an experimental case study in which KMX is used to
improve the quality of video streaming to mobile nodes in a
hybrid wired-wireless network. },
KEYWORDS = {},
NOTE = {},
MONTH = {August},
YEAR = {2004},
AUTHOR1_URL = {http://www.cse.msu.edu/~farshad/},
AUTHOR1_EMAIL = {farshad@cse.msu.edu},
AUTHOR2_URL = {http://www.cse.msu.edu/~mckinley/},
AUTHOR2_EMAIL = {mckinley@cse.msu.edu},
PAGES = {8},
FILE = {},
URL = {},
CONTACT = {mckinley@cse.msu.edu}
}
@TECHREPORT{CompositionalAdaptationTaxonomy-TechRep,
AUTHOR = {Philip K. McKinley and {\bf S. Masoud Sadjadi} and
Eric P. Kasten and Betty H. C. Cheng},
TITLE = {A Taxonomy of Compositional Adaptation},
NUMBER = {MSU-CSE-04-17},
INSTITUTION = {Department of Computer Science, Michigan State University},
ADDRESS = {East Lansing, Michigan},
ABSTRACT = {Driven by the emergence of pervasive computing and the
increasing need for self-managed systems, many approaches
have been proposed for building software that can
dynamically adapt to its environment. These adaptations
involve not only changes in program flow, but also run-time
recomposition of the software itself. We discuss the
supporting technologies that enable dynamic recomposition
and classify different approaches according to how, when and
where recomposition occurs. We also highlight key challenges
that need to be addressed to realize the full potential of
run-time adaptable software. This survey is intended to be a
living document, updated periodically to summarize and
classify new contributions to the field. The document is
maintained under the RAPIDware project web site,
specifically, at http://www.cse.msu.edu/rapidware/survey.
},
KEYWORDS = {adaptive software, compositional adapation, middleware,
survey, taxonomy, pervasive computing, autonomic computing,
computational reflection, separation of concerns,
component-based design, aspect-oriented programming,
object-oriented programming.},
NOTE = {},
MONTH = {May},
YEAR = {2004},
AUTHOR1_URL = {http://www.cse.msu.edu/~mckinley},
AUTHOR1_EMAIL = {mckinley@cse.msu.edu},
AUTHOR2_URL = {},
AUTHOR2_EMAIL = {sadjadis@cse.msu.edu},
PAGES = {},
FILE = {},
PDF = {CompositionalAdaptationTaxonomy-TechRep.pdf},
URL = {},
CONTACT = {sadjadis@cse.msu.edu}
}
@TECHREPORT{IWQoS-TechRep,
AUTHOR = {Zhinan Zhou and Philip K. McKinley and
{\bf S. Masoud Sadjadi}},
TITLE = {On Quality-of-Service and Energy Consumption Tradeoffs in
FEC-Encoded Audio Streaming},
NUMBER = {MSU-CSE-04-16},
INSTITUTION = {Department of Computer Science, Michigan State University},
ADDRESS = {East Lansing, Michigan},
ABSTRACT = {This paper addresses the energy consumption of forward error
correction (FEC) protocols as used to improve
quality-of-service (QoS) for wireless computing devices. The
paper also characterizes the effect on energy consumption
and QoS of the power saving mode in 802.11 wireless local
area networks (WLANs). Experiments are described in which
FEC-encoded audio streams are multicast to mobile computers
across a WLAN. Results of these experiments quantify the
tradeoffs between improved QoS, due to FEC, and additional
energy consumption caused by receiving and decoding
redundant packets. Two different approaches to FEC are
compared relative to these metrics. The results of this
study enable the development of adaptive software mechanisms
that attempt to manage these tradeoffs in the presence of
highly dynamic wireless environments. },
KEYWORDS = {energy consumption, quality-of-service, forward error correction,
mobile computing, handheld computer, adaptive middleware},
NOTE = {},
MONTH = {April},
YEAR = {2004},
AUTHOR1_URL = {},
AUTHOR1_EMAIL = {zhouzhin@cse.msu.edu},
AUTHOR2_URL = {},
AUTHOR2_EMAIL = {sadjadis@cse.msu.edu},
PAGES = {21},
FILE = {},
URL = {},
CONTACT = {sadjadis@cse.msu.edu}
}
@TECHREPORT{AdaptiveMiddlewareSurvey-TechRep,
AUTHOR = {{\bf S. M. Sadjadi} and P. K. McKinley},
TITLE = {A Survey of Adaptive Middleware},
NUMBER = {MSU-CSE-03-35},
INSTITUTION = {Computer Science and Engineering, Michigan State University},
ADDRESS = {East Lansing, Michigan},
ABSTRACT = {
Developing distributed applications is a difficult task
due to three major problems: the complexity of programming
interprocess communication, the need to support services
across heterogeneous platforms, and the need to adapt to
changing conditions. Traditional middleware (such as CORBA,
DCOM, and Java RMI) addresses the first two problems to
some extent through the use of a ``black-box" approach,
such as encapsulation in object-oriented programming.
However, traditional middleware is limited in its ability
to support adaptation. To address all the three problems,
{\em adaptive} middleware has evolved from traditional
middleware. In addition to the object-oriented programming
paradigm, adaptive middleware employs several other key
technologies including computational reflection,
component-based design, aspect-oriented programming, and
software design patterns. This survey paper proposes a
three-dimensional taxonomy that categorizes different
adaptive middleware approaches. Examples of each category
are described and compared in detail. Suggestions for
future research are also provided. },
KEYWORDS = {
adaptive middleware, taxonomy, computational reflection,
component-based design, aspect-oriented programming,
software design patterns, static adaptation, dynamic
adaptation, quality of service, dependable systems,
embedded systems.},
NOTE = {},
MONTH = {December},
YEAR = {2003},
AUTHOR1_URL = {http://www.cs.fiu.edu/~sadjadi/},
AUTHOR1_EMAIL = {sadjadis@cse.msu.edu},
AUTHOR2_URL = {http://www.cse.msu.edu/~mckinley},
AUTHOR2_EMAIL = {mckinley@cse.msu.edu},
PAGES = {1--38},
FILE = {},
URL = {},
PDF = {AdaptiveMiddlewareSurvey.pdf},
PS = {AdaptiveMiddlewareSurvey.ps},
CONTACT = {sadjadis@cse.msu.edu}
}
@TECHREPORT{QET-TechRep,
AUTHOR = {P. K. McKinley and Z. Zhou and {\bf S. M. Sadjadi}},
TITLE = {Tradeoffs between {QoS} and Energy Consumption in
{FEC}-Supported Wireless Handheld Computers},
NUMBER = {MSU-CSE-03-34},
INSTITUTION = {Department of Computer Science, Michigan State University},
ADDRESS = {East Lansing, Michigan},
ABSTRACT = {Abstract—This paper investigates the energy consumption of
forward error correction (FEC) protocols as used to improve
quality-of-service (QoS) for wireless handheld devices. Also
addressed is the effect on energy consumption and QoS of the
power saving mode in 802.11 wireless local area networks
(WLANs). Experiments are conducted in which FEC-encoded
audio streams are multicast to multiple HP/Compaq iPAQ
handheld computers across a WLAN. The results of these
experiments help to quantify the tradeoff between improved
packet delivery rate, due to FEC, and additional energy
consumption caused by receipt and decoding of redundant
packets. Moreover, the results enable the development of
adaptive software mechanisms that attempt to manage these
tradeoffs in the presence of highly dynamic environments.
},
KEYWORDS = {energy consumption, quality-of-service, forward error correction},
NOTE = {},
MONTH = {December},
YEAR = {2003},
AUTHOR1_URL = {www.cse.msu.edu/~mckinley},
AUTHOR1_EMAIL = {mckinley@cse.msu.edu},
AUTHOR2_URL = {www.cse.msu.edu/~zhouzhin},
AUTHOR2_EMAIL = {zhouzhin@cse.msu.edu},
PAGES = {10},
FILE = {},
URL = {},
CONTACT = {sadjadis@cse.msu.edu}
}
@TECHREPORT{PerCom-TechRep,
AUTHOR = {{\bf S. M. Sadjadi} and P. K. McKinley},
TITLE = {Supporting Transparent and Generic Adaptation in Pervasive Computing Environments},
NUMBER = {MSU-CSE-03-32},
INSTITUTION = {Department of Computer Science, Michigan State University},
ADDRESS = {East Lansing, Michigan},
ABSTRACT = { This paper addresses the design of middleware to
support run-time adaptation in pervasive computing
environments. The particular problem we address here
is how to support adaptation to changing network connection capabilities
as a mobile user interacts with heterogeneous elements
in a wireless network infrastructure.
The goal is to enable adaptation to such changes automatically
and, with respect to the core application code, transparently.
We propose a solution based the use of {\em generic proxies},
which can intercept and process communication requests
using rules and actions that can be introduced to the system
during execution.
To explore their design and operation, we have incorporated
generic proxies into ACT~\cite{ACT-TechRep}, a system we designed previously
to support adaptation in CORBA applications.
Details of ACT-based generic proxies are presented, followed
by results of a case study involving adaptation of a surveillance
application in a heterogeneous wireless environment.
},
KEYWORDS = {middleware, dynamic adaptation, transparent adaptation,
generic proxy, dynamic weaving, quality-of-service, mobile computing},
NOTE = {},
MONTH = {November},
YEAR = {2003},
AUTHOR1_URL = {http://www.cse.msu.edu/~sadjadis},
AUTHOR1_EMAIL = {sadjadis@cse.msu.edu},
AUTHOR2_URL = {http://www.cse.msu.edu/~mckinley},
AUTHOR2_EMAIL = {mckinley@cse.msu.edu},
PAGES = {},
FILE = {},
URL = {http://www.cse.msu.edu/cgi-user/web/tech/document?ID=556},
CONTACT = {sadjadis@cse.msu.edu}
}
@TECHREPORT{TRAP-TechRep,
AUTHOR = {{\bf S. M. Sadjadi} and P. K. McKinley and R. E. K. Stirewalt and B. H.C. Cheng},
TITLE = {{TRAP}: Transparent Reflective Aspect Programming},
NUMBER = {MSU-CSE-03-31},
INSTITUTION = {Computer Science and Engineering, Michigan State University},
ADDRESS = {East Lansing, Michigan},
ABSTRACT = {
This paper introduces transparent reflective aspect programming
(TRAP), a generator framework to support
efficient, dynamic, and traceable adaptation in software.
TRAP enables adaptive functionality to be added to
an existing application without modifying its source code.
To reduce overhead, TRAP enables the
developer to select, at compile time,
a subset of classes to support adaptation through
run-time aspect weaving.
TRAP uses aspect-oriented programming and behavioral
reflection to automatically generate the
required aspects and reflective classes
associated with the selected types.
At run time, new adaptive behavior can be introduced
to the application transparently
with respect to the original code.
TRAP can be applied to any object-oriented language that
supports structural reflection.
A prototype, TRAP/J, which has been developed for use with
Java applications, is described.
A case study is presented
in which TRAP was used to enable an existing
audio-streaming application to operate effectively in
a wireless network environment
by adapting to changing conditions.
},
KEYWORDS = {dynamic adaptation, aspect-oriented programming, computational reflection,
behavioral reflection, adaptive middleware, transparent adaptation, quality-of-service,
mobile computing},
PDF = {http://www.cs.fiu.edu/~sadjadi/Publications/TRAP-TechRep.pdf},
PS = {http://www.cs.fiu.edu/~sadjadi/Publications/TRAP-TechRep.ps},
NOTE = {},
MONTH = {November},
YEAR = {2003},
AUTHOR1_URL = {http://www.cs.fiu.edu/~sadjadi/},
AUTHOR1_EMAIL = {sadjadis@cse.msu.edu},
AUTHOR2_URL = {http://www.cse.msu.edu/~mckinley},
AUTHOR2_EMAIL = {mckinley@cse.msu.edu},
PAGES = {},
URL = {http://www.cse.msu.edu/cgi-user/web/tech/document?ID=555},
CONTACT = {sadjadis@cse.msu.edu}
}
@TECHREPORT{ACT-TechRep,
AUTHOR = {{\bf S. M. Sadjadi} and P. K. McKinley},
TITLE = {{ACT}: An Adaptive {CORBA} Template to Support Unanticipated
Adaptation},
NUMBER = {MSU-CSE-03-22},
INSTITUTION = {Department of Computer Science, Michigan State University},
ADDRESS = {East Lansing, Michigan},
ABSTRACT = { This paper proposes an Adaptive CORBA Template (ACT), which
enables run-time improvements to CORBA applications in
response to unanticipated changes in either their functional
requirements or their execution environments. ACT enhances
CORBA applications by weaving adaptive code into the
applications' object request brokers (ORBs) at run time. The
woven code intercepts and adapts the requests, replies, and
exceptions that pass through the ORBs. ACT itself is
language- and ORB-independent. Specifically, ACT can be used
to develop an object-oriented framework in any language that
supports dynamic loading of code and can be applied to any
CORBA ORB that supports portable interceptors. Moreover, ACT
can be integrated with other adaptive CORBA frameworks and
can be used to support interoperation among otherwise
incompatible frameworks. To evaluate the performance and
functionality of ACT, we implemented a prototype in Java to
support unanticipated adaptation in non-functional concerns,
such as quality-of-service and system-resource management.
Our experimental results show that the overhead introduced
by the ACT infrastructure is negligible, while the
adaptations offered are highly flexible.
},
KEYWORDS = {middleware, CORBA, dynamic adaptation, interoperability,
request interceptor, dynamic weaving, proxy,
quality-of-service, mobile computing},
MONTH = {August},
YEAR = {2003},
AUTHOR1_URL = {http://www.cse.msu.edu/~sadjadis},
AUTHOR1_EMAIL = {sadjadis@cse.msu.edu},
AUTHOR2_URL = {http://www.cse.msu.edu/~mckinley},
AUTHOR2_EMAIL = {mckinley@cse.msu.edu},
PAGES = {},
FILE = {},
URL = {http://www.cse.msu.edu/cgi-user/web/tech/document?ID=546},
PDF = {http://www.cs.fiu.edu/~sadjadi/Publications/ACT-TechRep.pdf},
CONTACT = {mckinley@cse.msu.edu}
}
@TECHREPORT{MetaSockets-TechRep,
AUTHOR = {{\bf S. M. Sadjadi} and P. K. McKinley and
E. P. Kasten},
TITLE = {{MetaSockets}: Run-Time Support for Adaptive Communication
Services},
NUMBER = {MSU-CSE-02-22},
INSTITUTION = {Department of Computer Science, Michigan State University},
ADDRESS = {East Lansing, Michigan},
ABSTRACT = {Rapid improvements in mobile computing devices and wireless
networks promise to provide a foundation for ubiquitous
computing. However, comparable advances are needed in the
design of mobile computing applications and supporting
middleware. Distributed software must be able to adapt to
dynamic situations related to several cross-cutting
concerns, including quality-of-service, fault-tolerance,
energy management, and security. We previously introduced
Adaptive Java, an extension to the Java programming
language, which provides language constructs and compiler
support for the development of adaptive software. This paper
describes the use of Adaptive Java to develop an adaptable
communication component called the MetaSocket. MetaSockets
are created from existing Java socket classes, but their
structure and behavior can be adapted at run time in
response to external stimuli. MetaSockets can be used for
several distributed computing tasks, including audits of
traffic patterns for intrusion detection, adaptive error
control on wireless networks, and dynamic energy management
for handheld and wearable computers. This paper focuses on
the internal architecture and operation of MetaSockets. We
describe how their adaptive behavior is implemented using
Adaptive Java programming language constructs, as well as
how MetaSockets interact with other adaptive components,
such as decision makers and event mediators. Results of
experiments on a mobile computing testbed demonstrate how
MetaSockets respond to dynamic wireless channel conditions
in order to improve the quality of interactive audio streams
delivered to iPAQ handheld computers. },
KEYWORDS = {adaptive middleware, reflection, aspect-oriented programming,
forward error correction},
NOTE = {},
MONTH = {July},
YEAR = {2002},
AUTHOR1_URL = {},
AUTHOR1_EMAIL = {sadjadis@cse.msu.edu},
AUTHOR2_URL = {},
AUTHOR2_EMAIL = {mckinley@cse.msu.edu},
PAGES = {},
FILE = {},
URL = {http://www.cse.msu.edu/cgi-user/web/tech/document?ID=518},
PS = {http://www.cs.fiu.edu/~sadjadi/Publications/MetaSockets.ps.gz},
PDF = {http://www.cs.fiu.edu/~sadjadi/Publications/MetaSockets.pdf},
CONTACT = {mckinley@cse.msu.edu}
}
@TECHREPORT{WOSS-TechRep,
AUTHOR = {Z. Yang and B. H.C. Cheng and R. E. K. Stirewalt and J. Sowell and {\bf S. M. Sadjadi} and
P. K. McKinley},
TITLE = {An Aspect-Oriented Approach to Dynamic Adaptation},
NUMBER = {MSU-CSE-02-21},
INSTITUTION = {Department of Computer Science, Michigan State University},
ADDRESS = {East Lansing, Michigan},
ABSTRACT = {This paper presents an aspect-oriented approach to dynamic
adaptation. A systematic process for defining where, when,
and how an adaptation is to be incorporated into an
application is presented. A formal model for describing
characteristics of dynamically adaptive applications is
introduced, which enables precise descriptions of different
approaches to dynamic adaptation. },
KEYWORDS = {aspect-oriented programming, adaptation, security,
group communication},
NOTE = {},
MONTH = {July},
YEAR = {2002},
AUTHOR1_URL = {},
AUTHOR1_EMAIL = {yangzhe1@cse.msu.edu},
AUTHOR2_URL = {},
AUTHOR2_EMAIL = {chengb@cse.msu.edu},
PAGES = {},
FILE = {},
URL = {http://www.cse.msu.edu/cgi-user/web/tech/document?ID=517},
CONTACT = {chengb@cse.msu.edu}
}
@TECHREPORT{AdaptiveJava-TechRep,
AUTHOR = {E. P. Kasten and P. K. McKinley and {\bf S. M. Sadjadi} and R. E. K. Stirewalt},
TITLE = {Separating Introspection and Intercession to Support Metamorphic Distributed Systems},
INSTITUTION = {Department of Computer Science, Michigan State University},
YEAR = {2002},
NUMBER = {MSU-CSE-02-1},
ADDRESS = {East Lansing, Michigan},
MONTH = {January},
ABSTRACT = {Many middleware platforms use computational reflection to support adaptive functionality. Most approaches intertwine the activity of observing behavior (introspection) with the activity of changing behavior (intercession). This paper explores the use of language constructs to separate these parts of reflective functionality. This separation and ``packaging'' of reflective primitives is intended to facilitate the design of correct and consistent adaptive middleware. A prototype implementation is described in which this functionality is realized through extensions to the Java programming language. A case study is described in which metamorphic socket components are created from regular socket classes and used to realize adaptive behavior on wireless network connections. },
KEYWORDS = {Adaptive middleware, reflection, component design, mobile computing, wireless networks, forward error correction.},
AUTHOR1_URL = {},
AUTHOR1_EMAIL = {kasten@cse.msu.edu},
AUTHOR2_URL = {},
AUTHOR2_EMAIL = {mckinley@cse.msu.edu},
PAGES = {},
FILE = {},
URL = {http://www.cse.msu.edu/cgi-user/web/tech/document?ID=497},
PDF = {http://www.cs.fiu.edu/~sadjadi/Publications/AdaptiveJava-tech.pdf},
CONTACT = {mckinley@cse.msu.edu}
}