• Refine Query
  • Source
  • Publication year
  • to
  • Language
  • 262
  • 123
  • 18
  • 17
  • 9
  • 7
  • 6
  • 6
  • 3
  • 3
  • 2
  • 2
  • 2
  • 1
  • 1
  • Tagged with
  • 513
  • 513
  • 147
  • 143
  • 123
  • 121
  • 72
  • 60
  • 52
  • 49
  • 48
  • 48
  • 47
  • 44
  • 37
  • About
  • The Global ETD Search service is a free service for researchers to find electronic theses and dissertations. This service is provided by the Networked Digital Library of Theses and Dissertations.
    Our metadata is collected from universities around the world. If you manage a university/consortium/country archive and want to be added, details can be found on the NDLTD website.
61

Reference architectures: factors for their sustainability / Arquiteturas de referência: fatores para sua sustentabilidade

Volpato, Tiago 30 August 2018 (has links)
Software architectures have played an essential role in determining the quality of software systems. In this scenario, reference architectures is a special type of software architecture that has successfully supported the development, standardization, and evolution of a set of systems. Considering their relevance, many reference architectures are established for diverse domains, such as health, automotive, robotics, and transportation systems. These application domains continually evolve and their reference architectures also need to evolve to continue to be efficient for such domains. However, many of them have not been adequately evolved. Diverse elements, such as design decisions and adherence to good design practices, influence the ability of reference architectures to support continuous changes while maintaining their efficiency; therefore, a major challenge is to ensure the sustainability in reference architectures. Hence, it is quite interesting to be able to analyze the sustainability of these architectures. The main objective of this Masters project is to establish a model concerning factors for analyze sustainability in reference architectures. In order to evaluate our proposal, a survey was conducted with experts to validate such model. 90% of experts agree that the model can be useful to indicate whether a reference architecture is sustainable or not, and 80% of experts think that our model can be useful for building newly sustainable reference architectures. / Arquiteturas de software desempenham um papel essencial na determinação da qualidade de sistemas de software. Nesse cenário, arquitetura de referência é um tipo especial de arquitetura de software que tem apoiado com êxito o desenvolvimento, padronização e evolução dos sistemas. Considerando sua relevância, muitas arquiteturas de referência foram estabelecidas para diversos domínios, tais como saúde, automotivo e robótica. No entanto, esses domínios de aplicações continuamente evoluem e suas arquiteturas de referência também precisam evoluir para continuar apoiando tais domínios. Diversos elementos, tais como as decisões do projeto e aderência às boas práticas de projeto, influenciam a capacidade das arquiteturas de referência para suportar mudanças contínuas, mantendo sua eficiência. Portanto, um grande desafio é garantir a sustentabilidade em arquiteturas de referência. Assim, o objetivo principal deste projeto de Mestrado é estabelecer um modelo com fatores para analisar a sustentabilidade em arquiteturas de referência. Para avaliar nossa proposta, um survey com especialistas foi conduzido vala validar tal modelo. 90% dos especialistas concordam que o modelo pode ser usado para indicar se uma arquitetura de referência é sustentável ou não, e 80% dos especialistas consideram que nosso modelo pode ser útil para projetar novas arquiteturas de referências sustentáveis.
62

ProSA-RAT: Um processo para estabelecimento de arquiteturas de referência com informações de teste de software / ProSA-RAT: A process for establishing reference architectures with software testing information

Simão, Diógenes Dias 12 September 2017 (has links)
Arquiteturas de software e teste de software desempenham um papel essencial no processo de desenvolvimento de produtos de software de alta qualidade. Com base em um mapeamento sistemático, pode-se observar que as atividades de estabelecimento de arquiteturas de software não consideram representar informações de teste de software associadas às visões da arquitetura, em particular de arquiteturas de referência. Este trabalho tem por objetivo propor um processo que induza a representação de informações de teste de software no estabelecimento de arquiteturas de referência. Dessa forma, além de se abstrair a essência de um conjunto de arquiteturas de software de um domínio de aplicação, facilitando o projeto de novas arquiteturas por meio do reúso e padronização de elementos arquiteturais, promove-se também o reúso e a padronização de informações de teste. Este trabalho é realizado a partir do modelo RAModel e do processo ProSA-RA. O RAModel apresenta um conjunto de elementos essenciais para o projeto de arquiteturas de referência. O ProSA-RA por sua vez apresenta um processo que sistematiza o estabelecimento de arquiteturas de referência, considerando os elementos do RAModel. Em particular, propõe-se um processo denominado ProSA-RAT . Esse processo viabiliza a definição de processos de teste adequados a domínios de aplicação específicos promovendo o reúso e padronização de informações de teste nas etapas iniciais de processos de desenvolvimento baseados em arquitetura. Um estudo de viabilidade do ProSA-RAT foi conduzido e um exemplo no domínio de robótica é apresentado. / Software architectures and software testing play an essential role in the development process of high quality software products. Based on a systematic mapping, it could be observed that the activities of establishing software architectures do not consider to represent software test information associated with the architecture views, in particular of reference architectures. The objective of this work is to propose a process that induces the representation of software test information in the establishment of reference architectures. Thus, in addition to abstracting the essence of a set of architectures of an application domain, facilitating the design of new architectures through the reuse and standardization of architectural elements, reuse and standardization of test information are also promoted. This work is carried out using the RAModel and the ProSA-RA. RAModel presents a set of essential elements for the design of reference architectures. ProSA-RA, on the other hand, presents a process that systematizes the establishment of reference architectures, considering the elements of the RAModel. In particular, a process named ProSA-RAT is proposed. This process facilitates the definition of test processes adequate to specific application domains by promoting the reuse and standardization of test information in the early stages of architecture based development processes. A feasibility study of ProSA-RAT has been carried out and an example in the field of robotics is presented.
63

Uso de composição automática de serviços e similaridade para análise de integração de processos de negócio. / Use of automatic service composition and similarity for the analysis of business process integration.

Viana, Phillip Luiz 06 May 2013 (has links)
Com a tendência de aumento do uso de tecnologias móveis conectadas à web, é comum que empresas (provedores) provejam seus serviços na web para que possam atender requisições de usuários em diversas situações. Muitas vezes é necessário que serviços de dois ou mais provedores sejam compostos automaticamente para que uma única requisição de usuário seja atendida no momento imediatamente anterior à execução do serviço: é a composição automática de serviços. Quando uma composição de serviços é executada, ela está automatizando um processo de negócio relativo à requisição do usuário. O objetivo dessa pesquisa é contribuir com um modelo arquitetural de sistema básico de composição automática de serviços baseado em semântica. Este modelo contempla a utilização de similaridade entre conceitos de uma ontologia de um domínio específico, desta maneira possibilitando que uma mesma requisição de um usuário possa ser atendida de diversas maneiras distintas e com serviços heterogêneos. A proposta é validada através de um protótipo em software e a experimentação é aplicada no domínio do turismo. / With the trend towards increased use of mobile technologies over the web, companies (providers) have been increasingly providing their services on the web to fulfill user requests in various situations. It is often necessary that two or more services from different providers are automatically composed in order to meet a single user request at the moment immediately previous to the service execution: this is called automatic composition of services. The objective of this research is to contribute with a semantics based automatic composition model that uses similarity between concepts of an ontology to generate alternative business processes, thus enabling a single user request to be met in several different ways using heterogeneous services. The proposal is validated through a software prototype and the experimentation is applied in the tourism domain.
64

Proposta de ferramenta para desenvolvimento de simuladores interativos para treinamento. / A proposal for tools to interactive training simulation development.

Ferraz, Rodrigo Barroca Dias 19 July 2010 (has links)
Simulações man-in-the-loop, ou human-in-the-loop reproduzem virtualmente ambientes reais ou imaginários para o usuário, sendo aplicadas em diversas áreas como, entretenimento, treinamento, experimento e reabilitação. Na área de treinamento, os simuladores são cada vez mais empregados visando principalmente a redução de custos e riscos, além do controle total das condições do treinamento. Simuladores de treinamento têm sido utilizados em diversas áreas, como medicina (simuladores de procedimentos cirúrgicos), aviação, trânsito, náutica, industrial, militar, entre outras. Uma das dificuldades no desenvolvimento de simuladores para treinamento é projetar e implementar o modelo do ambiente virtual em software. Apesar de existirem diversas ferramentas (livres ou comerciais) que podem auxiliar no desenvolvimento dos simuladores, poucas se propõem à modelagem do sistema e sua execução, e estas são, em sua maioria, proprietárias. O principal objetivo deste trabalho é conceber uma ferramenta genérica para auxiliar na modelagem, estruturação e implementação de simuladores de ambientes virtuais voltados para treinamento, partindo da proposta de uma arquitetura de software baseada na decomposição estrutural do sistema a ser simulado. A utilização de uma ferramenta genérica tem a finalidade de reduzir o tempo e o custo de desenvolvimento de simuladores de treinamento, facilitando a integração simultânea de diversas equipes de trabalho e a reutilização de componentes de softwares para outras aplicações. Foi concebida uma arquitetura de software baseada nos trabalhos da literatura e desenvolvido um protótipo da ferramenta genérica. Para avaliar a ferramenta foi realizado um estudo de caso baseado no software de um simulador de aeronave de asas rotativas, modelo Bell Jet Ranger III e nos procedimentos operacionais reais. O estudo foi realizado por meio da adaptação parcial do software do simulador original utilizando a ferramenta proposta. Os resultados obtidos mostraram a viabilidade da utilização da arquitetura e da ferramenta genérica para o desenvolvimento de simuladores de treinamento. / Man-in-the-loop or human-in-the-loop simulations reproduce virtually real or imaginary environments to the user, being used for several purposes, such as, entertainment, training, experiment and rehabilitation. In training area, the simulators are more and more used aiming, specially for costs and risks reduction besides the total control of training conditions. Training simulators have been used in several areas such as medicine (surgical procedures simulators), evaluation, traffic, nautical, industrial, military, among others. One of the difficulties in the simulator development for training is to project and implement the virtual environment model in software. Even though there are several free and commercial tools that might help in simulator development, few of them focus on system modeling and execution, and those are, in it\'s majority, proprietary. The main purpose of this work is to design a generic tool to assist the modeling, structuring and implementation of virtual environment simulators for training, starting from the proposal of a software architecture based on the structural decomposition of the system to be simulated. The use of a generic tool aims to reduce time and cost of developing training simulators, facilitating simultaneous integration of various workgroups and reuse of software components for other applications. Initially, a software architecture for training simulators was designed based on academic researches and a prototype of a generic tool was developed. To evaluate this tool, a case study was conducted based on the Bell Jet Ranger III rotorcraft simulator software and real operational procedures. The study was performed by partially adapting the original simulator software using the proposed tool. The results showed the feasibility of using the purposed architecture and generic tool for training simulators development.
65

Proposta de ferramenta para desenvolvimento de simuladores interativos para treinamento. / A proposal for tools to interactive training simulation development.

Rodrigo Barroca Dias Ferraz 19 July 2010 (has links)
Simulações man-in-the-loop, ou human-in-the-loop reproduzem virtualmente ambientes reais ou imaginários para o usuário, sendo aplicadas em diversas áreas como, entretenimento, treinamento, experimento e reabilitação. Na área de treinamento, os simuladores são cada vez mais empregados visando principalmente a redução de custos e riscos, além do controle total das condições do treinamento. Simuladores de treinamento têm sido utilizados em diversas áreas, como medicina (simuladores de procedimentos cirúrgicos), aviação, trânsito, náutica, industrial, militar, entre outras. Uma das dificuldades no desenvolvimento de simuladores para treinamento é projetar e implementar o modelo do ambiente virtual em software. Apesar de existirem diversas ferramentas (livres ou comerciais) que podem auxiliar no desenvolvimento dos simuladores, poucas se propõem à modelagem do sistema e sua execução, e estas são, em sua maioria, proprietárias. O principal objetivo deste trabalho é conceber uma ferramenta genérica para auxiliar na modelagem, estruturação e implementação de simuladores de ambientes virtuais voltados para treinamento, partindo da proposta de uma arquitetura de software baseada na decomposição estrutural do sistema a ser simulado. A utilização de uma ferramenta genérica tem a finalidade de reduzir o tempo e o custo de desenvolvimento de simuladores de treinamento, facilitando a integração simultânea de diversas equipes de trabalho e a reutilização de componentes de softwares para outras aplicações. Foi concebida uma arquitetura de software baseada nos trabalhos da literatura e desenvolvido um protótipo da ferramenta genérica. Para avaliar a ferramenta foi realizado um estudo de caso baseado no software de um simulador de aeronave de asas rotativas, modelo Bell Jet Ranger III e nos procedimentos operacionais reais. O estudo foi realizado por meio da adaptação parcial do software do simulador original utilizando a ferramenta proposta. Os resultados obtidos mostraram a viabilidade da utilização da arquitetura e da ferramenta genérica para o desenvolvimento de simuladores de treinamento. / Man-in-the-loop or human-in-the-loop simulations reproduce virtually real or imaginary environments to the user, being used for several purposes, such as, entertainment, training, experiment and rehabilitation. In training area, the simulators are more and more used aiming, specially for costs and risks reduction besides the total control of training conditions. Training simulators have been used in several areas such as medicine (surgical procedures simulators), evaluation, traffic, nautical, industrial, military, among others. One of the difficulties in the simulator development for training is to project and implement the virtual environment model in software. Even though there are several free and commercial tools that might help in simulator development, few of them focus on system modeling and execution, and those are, in it\'s majority, proprietary. The main purpose of this work is to design a generic tool to assist the modeling, structuring and implementation of virtual environment simulators for training, starting from the proposal of a software architecture based on the structural decomposition of the system to be simulated. The use of a generic tool aims to reduce time and cost of developing training simulators, facilitating simultaneous integration of various workgroups and reuse of software components for other applications. Initially, a software architecture for training simulators was designed based on academic researches and a prototype of a generic tool was developed. To evaluate this tool, a case study was conducted based on the Bell Jet Ranger III rotorcraft simulator software and real operational procedures. The study was performed by partially adapting the original simulator software using the proposed tool. The results showed the feasibility of using the purposed architecture and generic tool for training simulators development.
66

Uso de composição automática de serviços e similaridade para análise de integração de processos de negócio. / Use of automatic service composition and similarity for the analysis of business process integration.

Phillip Luiz Viana 06 May 2013 (has links)
Com a tendência de aumento do uso de tecnologias móveis conectadas à web, é comum que empresas (provedores) provejam seus serviços na web para que possam atender requisições de usuários em diversas situações. Muitas vezes é necessário que serviços de dois ou mais provedores sejam compostos automaticamente para que uma única requisição de usuário seja atendida no momento imediatamente anterior à execução do serviço: é a composição automática de serviços. Quando uma composição de serviços é executada, ela está automatizando um processo de negócio relativo à requisição do usuário. O objetivo dessa pesquisa é contribuir com um modelo arquitetural de sistema básico de composição automática de serviços baseado em semântica. Este modelo contempla a utilização de similaridade entre conceitos de uma ontologia de um domínio específico, desta maneira possibilitando que uma mesma requisição de um usuário possa ser atendida de diversas maneiras distintas e com serviços heterogêneos. A proposta é validada através de um protótipo em software e a experimentação é aplicada no domínio do turismo. / With the trend towards increased use of mobile technologies over the web, companies (providers) have been increasingly providing their services on the web to fulfill user requests in various situations. It is often necessary that two or more services from different providers are automatically composed in order to meet a single user request at the moment immediately previous to the service execution: this is called automatic composition of services. The objective of this research is to contribute with a semantics based automatic composition model that uses similarity between concepts of an ontology to generate alternative business processes, thus enabling a single user request to be met in several different ways using heterogeneous services. The proposal is validated through a software prototype and the experimentation is applied in the tourism domain.
67

Um roteiro para o ensino de qualidade de arquitetura de software guiado por requisitos não funcionais. / A roadmap for teching software architecture quality guided by non-functional requirements.

Renato Manzan de Andrade 19 August 2015 (has links)
A qualidade da arquitetura de software pode impactar diretamente a satisfação do usuário, uma vez que define se os atributos de qualidade serão atingidos, principalmente os requisitos não funcionais. Apesar disso, os conceitos de qualidade de arquitetura de software não são tratados com a devida importância pelos currículos dos cursos de graduação e pós-graduação dos cursos de Computação. A ausência de conhecimento sobre qualidade de arquitetura de software, dos trade-offs entre atributos de qualidade e de como medir esses atributos durante o ciclo de desenvolvimento de software faz com que egressos dos cursos de Computação somente aprendam que os atributos de qualidade de arquitetura são fatores crucias para o sucesso de um projeto da pior forma possível, ou seja, após muitos projetos fracassados em sua vida profissional, colocando em risco toda sua trajetória de carreira. Este trabalho de pesquisa propõe um método experimental (roteiro) para o ensino de qualidade de arquitetura de software guiado por atributos de qualidade, principalmente requisitos não funcionais, utilizando uma abordagem prática, iterativa e dirigida pelo processo de negócio com o objetivo de auxiliar no processo de aprendizagem da importância dos atributos de qualidade de arquitetura de software e medição desses atributos durante todo o ciclo de vida de um sistema. Para a elaboração do roteiro de ensino proposto foram utilizadas normas relacionadas à qualidade do produto e do processo de software, modelos de referência para sistemas de processamento distribuído, métodos de avaliação de arquiteturas de software e teorias pedagógicas relacionadas ao processo de ensino/aprendizagem. Para avaliação do roteiro de ensino proposto, o mesmo foi aplicado em disciplinas de graduação e pós-graduação em Engenharia de Computação, mais especificamente em disciplinas da área de Engenharia de Software. / The software architecture quality directly affects user satisfaction, since it defines if quality criteria will be achieved, especially regarding the non-functional requirements. However, software architecture quality concepts are not handled with due importance by undergraduate and graduate computer curricula. The lack of knowledge about software architecture quality, quality attribute trade-offs and how to measure these attributes during the software development cycle makes computer graduates/engineers only learn that software architecture quality is a key to a successful project in the worst way possible, i.e., after many failed projects in their professional lives, jeopardizing their entire career trajectory. This research proposes a experimental method (roadmap) for teaching software architecture quality guided by quality attributes, primarily by non-functional requirements, using an iterative and practical approach, driven by business process. This will help to teach the importance of software architecture quality and of measuring these attributes throughout the system life cycle. For developing the proposed roadmap, standards related to software product and process quality, reference models for distributed processing systems, methods for software architectures evaluation and pedagogical theories related to the learning process were used. To evaluate the proposed roadmap, it was applied in undergraduate and graduate Computer Engineering courses, specifically in Software Engineering disciplines.
68

Models and Implementations of Online Laboratories; A Definition of a Standard Architecture to Integrate Distributed Remote Experiments

Unknown Date (has links)
Hands-on laboratory experiences are a key part of all engineering programs. Currently there is high demand for online engineering courses, but offering lab experiences online still remain a great challenge. Remote laboratories have been under development for more than 20 years and are part of a bigger category, called online laboratories, which includes also virtual laboratories. Development of remote laboratories in academic settings has been held back because of the lack of standardization of technology, processes, operation and their integration with formal educational environments. Remote laboratories can be used in educational settings for a variety of reasons, for instance, when the equipment is not available in the physical laboratory; when the physical laboratory space available is not sufficient to either set up the experiments or permit access to all on-site students in the course; or when the teacher needs to provide online laboratory experiences to students taking courses via distance education. This dissertation proposes a new approach for the development and deployment of online laboratories over online platforms. The research activities performed include: The design and implementation of an architecture of a system for Smart Adaptive Remote Laboratories (SARL) integrated to educational environments to improve the remote laboratory users experience through the implementation of a modular architecture and the use of context information about the users and laboratory activities; the design pattern and implementation for the Remote Laboratory Management System (RLMS); the definition and implementation of an xAPI-based activity tracking system for online laboratories with support for both centralized and distributed architectures of Learning Record Stores (LRS); the definition of Smart Laboratory Learning Object (SLLO) capable of being integrated in different educational environments, including the implementation of a Lab Authoring module; and finally, the definition of a reliability model to detect and report failures and possible causes and countermeasures applying ruled based systems. The architecture proposed complies with the just approved IEEE 1876 Standard for Networked Smart Learning for Online Laboratories and supports virtual, remote, hybrid and mobile laboratories. A full set of low-cost online laboratory experiment stations were designed and implemented to support the Introduction to Logic Design course, providing true hands-on lab experience to students through the a low-cost, student-built mobile laboratory platform connected via USB to the SARL System. The SARL prototype have been successfully integrated to a Virtual Learning Environment (VLE) and a variety of configurations tested that can support privacy and security requirements of different stakeholders. The prototype online laboratory experiments developed have contributed and been featured in IEEE 1876 standard, as well as been integrated into an Industry Connections Actionable Data Book (ADB) that was featured in the Frankfurt Book Fair in 2017. SARL is being developed as the infrastructure to support a Latin American and Caribbean network of online laboratories. / Includes bibliography. / Dissertation (Ph.D.)--Florida Atlantic University, 2019. / FAU Electronic Theses and Dissertations Collection
69

A rationale-based model for architecture design reasoning

Tang, Antony Shui Sum, n/a January 2007 (has links)
Large systems often have a long life-span and their system and software architecture design comprise many intricately related elements. The verification and maintenance of these architecture designs require an understanding of how and why the system are constructed. Design rationale is the reasoning behind a design and it provides an explanation of the design. However, the reasoning is often undocumented or unstructured in practice. This causes difficulties in the understanding of the original design, and makes it hard to detect inconsistencies, omissions and conflicts without any explanations to the intricacies of the design. Research into design rationale in the past has focused on argumentation-based design deliberations. Argumentation-based design rationale models provide an explicit representation of design rationale. However, these methods are ineffective in communicating design reasoning in practice because they do not support tracing to design elements and requirements in an effective manner. In this thesis, we firstly report a survey of practising architects to understand their perception of the value of design rationale and how they use and document this knowledge. From the survey, we have discovered that practitioners recognize the importance of documenting design rationale and frequently use them to reason about their design choices. However, they have indicated certain barriers to the use and documentation of design rationale. The results have indicated that there is no systematic approach to using and capturing design rationale in current architecture design practice. Using these findings, we address the issues of representing and applying architecture design rationale. We have constructed a rationale-based architecture model to represent design rationale, design objects and their relationships, which we call Architecture Rationale and Element Linkage (AREL). AREL captures both qualitative and quantitative rationale for architecture design. Quantitative rationale uses costs, benefits and risks to justify architecture decisions. Qualitative rationale documents the issues, arguments, alternatives and tradeoffs of a design decision. With the quantitative and qualitative rationale, the AREL model provides reasoning support to explain why architecture elements exist and what assumptions and constraints they depend on. Using a causal relationship in the AREL model, architecture decisions and architecture elements are linked together to explain the reasoning of the architecture design. Architecture Rationalisation Method (ARM) is a methodology that makes use of AREL to facilitate architecture design. ARM uses cost, benefit and risk as fundamental elements to rank and compare alternative solutions in the decision making process. Using the AREL model, we have proposed traceability and probabilistic techniques based on Bayesian Belief Networks (BBN) to support architecture understanding and maintenance. These techniques can help to carry out change impact analysis and rootcause analysis. The traceability techniques comprise of forward, backward and evolution tracings. Architects can trace the architecture design to discover the change impacts by analysing the qualitative reasons and the relationships in the architecture design. We have integrated BBN to AREL to provide an additional method where probability is used to evaluate and reason about the change impacts in the architecture design. This integration provides quantifiable support to AREL to perform predictive, diagnostic and combined reasoning. In order to align closely with industry practices, we have chosen to represent the rationale-based architecture model in UML. In a case study, the AREL model is applied retrospectively to a real-life bank payment systems to demonstrate its features and applications. Practising architects who are experts in the electronic payment system domain have been invited to evaluate the case study. They have found that AREL is useful in helping them understand the system architecture when they compared AREL with traditional design specifications. They have commented that AREL can be useful to support the verification and maintenance of the architecture because architects do not need to reconstruct or second-guess the design reasoning. We have implemented an AREL tool-set that is comprised of commercially available and custom-developed programs. It enables the capture of architecture design and its design rationale using a commercially available UML tool. It checks the well-formedness of an AREL model. It integrates a commercially available BBN tool to reason about the architecture design and to estimate its change impacts.
70

Role oriented adaptive design

Colman, Alan Wesley, n/a January 2006 (has links)
Software systems are becoming inexorably more open, distributed, pervasive, mobile and connected. This thesis addresses the problem of how to build adaptive software systems. These systems need to reliably achieve system-level goals in volatile environments, where the system itself may be built from components of uncertain behaviour, and where the requirements for the software system may be changing. This thesis adopts the systemtheoretic concept of ontogenic adaptation from biology, and applies it to software architecture. Ontogenic adaptation is the ability of an individual system to maintain its organisational integrity by reconfiguring and regulating itself. A number of approaches to adaptive software architecture have been recently proposed that, to varying degrees, enable limited adaptive behaviour and reconfiguration, but none possess all the properties needed for ontogenic adaptation. We introduce a meta-model and framework called Role Oriented Adaptive Design (ROAD) that is consistent with the concept of maintaining organisational integrity through ontogenic adaptation. The ROAD meta-model defines software applications as networks of functional roles which are executed by players (objects, components, services, agents, people, or rolecomposites). These flexible organisational structures are adaptive because the relationships (contracts) between roles, and the bindings between roles and players, can be regulated and reconfigured at run-time. Such flexible organisational role-structures are encapsulated into composites each with its own organiser. Because self-managed composites are themselves role-players, these composites can be distributed and recursively composed. The organisers of the composites form a management system over which requirements and performance data pass. Rather than being monolithic constructions, ROAD software applications are dynamic, self-managed compositions of loosely-coupled, and potentially, distributed entities. The concepts in the ROAD meta-model have been implemented in a programming framework which can be extended by the application programmer to create adaptive applications. Central to this framework are dynamic contracts. These contracts define the role structure, control interactions between the role instances, and measure the performance of those interactions. Adaptivity is achieved by monitoring and manipulating these contracts, along with the role-player bindings. Contracts have been implemented using the mechanism of �association aspects�. The applicability of the ROAD framework to the domain of Service-Oriented Computing is demonstrated. The framework is further evaluated in terms of its ability to express the concept of ontogenic adaptation and also in terms of the overhead its runtime infrastructure imposes on interactions.

Page generated in 0.0929 seconds