21 |
A Concurrency and Time Centered Framework for Certification of Autonomous Space SystemsDechev, Damian 2009 December 1900 (has links)
Future space missions, such as Mars Science Laboratory, suggest the engineering of some of the most complex man-rated autonomous software systems. The present process-oriented certification methodologies are becoming prohibitively expensive and do not reach the level of detail of providing guidelines for the development and validation of concurrent software. Time and concurrency are the most critical notions in an autonomous space system. In this work we present the design and implementation of the first concurrency and time centered framework for product-oriented software certification of autonomous space systems. To achieve fast and reliable concurrent interactions, we define and apply the notion of Semantically Enhanced Containers (SEC). SECs are data structures that are designed to provide the flexibility and usability of the popular ISO C++ STL containers, while at the same time they are hand-crafted to guarantee domain-specific policies, such as conformance to a given concurrency model. The application of nonblocking programming techniques is critical to the implementation of our SEC containers. Lock-free algorithms help avoid the hazards of deadlock, livelock, and priority inversion, and at the same time deliver fast and scalable performance. Practical lock-free algorithms are notoriously difficult to design and implement and pose a number of hard problems such as ABA avoidance, high complexity, portability, and meeting the linearizability correctness requirements. This dissertation presents the design of the first lock-free dynamically resizable array. Our approach o ers a set of practical, portable, lock-free, and linearizable STL vector operations and a fast and space effcient implementation when compared to the alternative lock- and STM-based techniques. Currently, the literature does not offer an explicit analysis of the ABA problem, its relation to the most commonly applied nonblocking programming techniques, and the possibilities for its detection and avoidance. Eliminating the hazards of ABA is left to the ingenuity of the software designer. We present a generic and practical solution to the fundamental ABA problem for lock-free descriptor-based designs. To enable our SEC container with the property of validating domain-specific invariants, we present Basic Query, our expression template-based library for statically extracting semantic information from C++ source code. The use of static analysis allows for a far more efficient implementation of our nonblocking containers than would have been otherwise possible when relying on the traditional run-time based techniques. Shared data in a real-time cyber-physical system can often be polymorphic (as is the case with a number of components part of the Mission Data System's Data Management Services). The use of dynamic cast is important in the design of autonomous real-time systems since the operation allows for a direct representation of the management and behavior of polymorphic data. To allow for the application of dynamic cast in mission critical code, we validate and improve a methodology for constant-time dynamic cast that shifts the complexity of the operation to the compiler's static checker. In a case study that demonstrates the applicability of the programming and validation techniques of our certification framework, we show the process of verification and semantic parallelization of the Mission Data System's (MDS) Goal Networks. MDS provides an experimental platform for testing and development of autonomous real-time flight applications.
|
22 |
A Concurrency and Time Centered Framework for Certification of Autonomous Space SystemsDechev, Damian 2009 December 1900 (has links)
Future space missions, such as Mars Science Laboratory, suggest the engineering of some of the most complex man-rated autonomous software systems. The present process-oriented certification methodologies are becoming prohibitively expensive and do not reach the level of detail of providing guidelines for the development and validation of concurrent software. Time and concurrency are the most critical notions in an autonomous space system. In this work we present the design and implementation of the first concurrency and time centered framework for product-oriented software certification of autonomous space systems. To achieve fast and reliable concurrent interactions, we define and apply the notion of Semantically Enhanced Containers (SEC). SECs are data structures that are designed to provide the flexibility and usability of the popular ISO C++ STL containers, while at the same time they are hand-crafted to guarantee domain-specific policies, such as conformance to a given concurrency model. The application of nonblocking programming techniques is critical to the implementation of our SEC containers. Lock-free algorithms help avoid the hazards of deadlock, livelock, and priority inversion, and at the same time deliver fast and scalable performance. Practical lock-free algorithms are notoriously difficult to design and implement and pose a number of hard problems such as ABA avoidance, high complexity, portability, and meeting the linearizability correctness requirements. This dissertation presents the design of the first lock-free dynamically resizable array. Our approach o ers a set of practical, portable, lock-free, and linearizable STL vector operations and a fast and space effcient implementation when compared to the alternative lock- and STM-based techniques. Currently, the literature does not offer an explicit analysis of the ABA problem, its relation to the most commonly applied nonblocking programming techniques, and the possibilities for its detection and avoidance. Eliminating the hazards of ABA is left to the ingenuity of the software designer. We present a generic and practical solution to the fundamental ABA problem for lock-free descriptor-based designs. To enable our SEC container with the property of validating domain-specific invariants, we present Basic Query, our expression template-based library for statically extracting semantic information from C++ source code. The use of static analysis allows for a far more efficient implementation of our nonblocking containers than would have been otherwise possible when relying on the traditional run-time based techniques. Shared data in a real-time cyber-physical system can often be polymorphic (as is the case with a number of components part of the Mission Data System's Data Management Services). The use of dynamic cast is important in the design of autonomous real-time systems since the operation allows for a direct representation of the management and behavior of polymorphic data. To allow for the application of dynamic cast in mission critical code, we validate and improve a methodology for constant-time dynamic cast that shifts the complexity of the operation to the compiler's static checker. In a case study that demonstrates the applicability of the programming and validation techniques of our certification framework, we show the process of verification and semantic parallelization of the Mission Data System's (MDS) Goal Networks. MDS provides an experimental platform for testing and development of autonomous real-time flight applications.
|
23 |
Time-triggered Controller Area Network (ttcan) Communication Scheduling: A Systematic ApproachKeskin, Ugur 01 August 2008 (has links) (PDF)
Time-Triggered Controller Area Network (TTCAN) is a hybrid communication
paradigm with combining both time-triggered and event-triggered traffic
scheduling. Different from the standard Controller Area Network (CAN),
communication in TTCAN is performed according to a pre-computed, fixed
(during system run) schedule that is called as TTCAN System Matrix. Thus,
communication performance of TTCAN network is directly related to structure of
the system matrix, which makes the design of system matrix a crucial process.
The study in this thesis consists of the extended work on the development of a
systematic approach for system matrix construction. Methods for periodic
message scheduling and an approach for aperiodic message scheduling are
proposed with the aim of constructing a feasible system matrix, combining three
important aspects: message properties, protocol constraints and system
performance requirements in terms of designated performance metrics. Also,
system matrix design, analyses and performance evaluation are performed on
example message sets with the help of two developed software tools.
|
24 |
Metodologia orientada a aspectos para a especificação de sistemas tempo-real embarcados distribuídos / Aspect-Oriented Methodology to Specify Distributed Real-time Embedded SystemsFreitas, Edison Pignaton de January 2007 (has links)
Sistemas de tempo-real embarcados distribuídos se caracterizam pela complexidade e especificidade de seus projetos. Tanto a complexidade quanto a especificidade apresentam forte influência dos diversos requisitos ligados às restrições advindas das três características que distinguem tais sistemas, i.e. presença de fortes restrições temporais, restrições de sistemas embarcados e distribuição de processamento. Estes requisitos, chamados de requisitos não-funcionais, afetam diversas partes do sistema de maneira não uniforme, tornando-se por esta razão difícil o seu gerenciamento. Metodologias orientadas a objetos não apresentam mecanismos específicos para tratar tais requisitos, o que implica na aplicação de um significativo esforço ao se realizar o reuso ou a manutenção de componentes afetados por requisitos de natureza nãofuncional. Novas tecnologias têm surgido com o objetivo de contornar este problema, notadamente a orientação a aspectos. Este paradigma propõe a separação no tratamento dos requisitos não-funcionais contribuindo com a modularização do sistema. Esta dissertação propõe a aplicação de orientação a aspectos para a especificação de sistemas tempo-real embarcados distribuídos. Para isto realizou-se a adaptação de uma metodologia de desenvolvimento de sistemas orientada a aspectos, a FRIDA (From RequIrements to Design using Aspects), contextualizando-a para o domínio de interesse. A utilização desta metodologia provê suporte ao mapeamento de requisitos em elementos de projeto de modo a promover a rastreabilidade entre as fases de análise e projeto. Na fase de projeto é proposta a utilização de aspectos em conjunto com elementos do perfil RT-UML para o tratamento dos requisitos identificados e especificados na fase de análise. / Distributed real-time embedded systems generally have complex and very specific projects. Those characteristics are influenced by several requirements that have relation with constraints about the time, embedded and distribution restrictions. Those requirements, called non-functional requirements, can affect the whole system in a nonuniform way, what makes it difficult to handle with this kind of requirement. Objectoriented methodologies do not present specific mechanisms to handle those requirements, what imply in a significant effort to perform reuse and maintainability tasks in those components affected by non-functional requirements. New technologies are emerging to fulfill this gap, noteworthy the aspect orientation. This paradigm proposes the separation in handling functional and non-functional requirements, giving a contribution to the system modularity. This dissertation proposes the use of aspect orientation to specify distributed realtime embedded systems. To support this proposal, it was performed an adaptation of an aspect-oriented method called FRIDA (From RequIrements to Design using Aspects). The use of this method supports the mapping of requirements in design model elements, in order to promote traceability between analysis and design phases. The presented approach proposes the use of RT-UML together with aspect oriented elements in design phase aiming to improve the handling of those requirements specified in the analysis phase.
|
25 |
An aspect-oriented model-driven engineering approach for distributed embedded real-time systems / Uma abordagem de engenharia guiada por modelos para o projeto de sistemas tempo-real embarcados e distribuídosWehrmeister, Marco Aurélio January 2009 (has links)
Atualmente, o projeto de sistemas tempo-real embarcados e distribuídos está crescendo em complexidade devido à sua natureza heterogênea e ao crescente número e diversidade de funções que um único sistema desempenha. Sistemas de automação industrial, sistemas eletrônicos em automóveis e veículos aéreos, equipamentos médicos, entre outros, são exemplos de tais sistemas. Tais sistemas são compostos por componentes distintos (blocos de hardware e software), os quais geralmente são projetados concorrentemente utilizando modelos, ferramentas e linguagens de especificação e implementação diferentes. Além disso, estes sistemas tem requisitos específicos e importantes, os quais não representam (por si só) as funcionalidades esperadas do sistema, mas podem afetar a forma como o sistema executa suas funcionalidades e são muito importantes para a realização do projeto com sucesso. Os chamados requisitos não-funcionais são difíceis de tratar durante todo o ciclo de projeto porque normalmente um único requisito não-funcional afeta vários componentes diferentes. A presente tese de doutorado propõe a integração automatizada das fases de projeto de sistemas tempo-real embarcados e distribuídos focando em aplicações na área da automação. A abordagem proposta usa técnicas de engenharia guiada por modelos (do inglês Model Driven Engineering ou MDE) e projeto orientado a aspectos (do inglês Aspect-Oriented Design ou AOD) juntamente com o uso de plataformas previamente desenvolvidas (ou desenvolvida por terceiros) para projetar os componentes de sistemas tempo-real embarcados e distribuídos. Adicionalmente, os conceitos de AOD permitem a separação no tratamento dos requisitos de naturezas diferentes (i.e. requisitos funcionais e não-funcionais), melhorando a modularização dos artefatos produzidos (e.g. modelos de especificação, código fonte, etc.). Além disso, esta tese propõe uma ferramenta de geração de código, que suporta a transição automática das fases iniciais de especificação para as fases seguintes de implementação. Esta ferramenta usa um conjunto de regras de mapeamento, que descrevem como elementos nos níveis mais altos de abstração são mapeados (ou transformados) em elementos dos níveis mais baixos de abstração. Em outras palavras, tais regras de mapeamento permitem a transformação automática da especificação inicial, as quais estão mais próximo do domínio da aplicação, em código fonte para os componentes de hardware e software, os quais podem ser compilados e sintetizados por outras ferramentas para se obter a realização/implementação do sistema tempo-real embarcado e distribuído. / Currently, the design of distributed embedded real-time systems is growing in complexity due to the increasing amount of distinct functionalities that a single system must perform, and also to concerns related to designing different kinds of components. Industrial automation systems, embedded electronics systems in automobiles or aerial vehicles, medical equipments and others are examples of such systems, which includes distinct components (e.g. hardware and software ones) that are usually designed concurrently using distinct models, tools, specification, and implementation languages. Moreover, these systems have domain specific and important requirements, which do not represent by themselves the expected functionalities, but can affect both the way that the system performs its functionalities as well as the overall design success. The so-called nonfunctional requirements are difficult to deal with during the whole design because usually a single non-functional requirement affects several distinct components. This thesis proposes an automated integration of distributed embedded real-time systems design phases focusing on automation systems. The proposed approach uses Model- Driven Engineering (MDE) techniques together with Aspect-Oriented Design (AOD) and previously developed (or third party) hardware and software platforms to design the components of distributed embedded real-time systems. Additionally, AOD concepts allow a separate handling of requirement with distinct natures (i.e. functional and non-functional requirements), improving the produced artifacts modularization (e.g. specification model, source code, etc.). In addition, this thesis proposes a code generation tool, which supports an automatic transition from the initial specification phases to the following implementation phases. This tool uses a set of mapping rules, describing how elements at higher abstraction levels are mapped (or transformed) into lower abstraction level elements. In other words, suchmapping rules allow an automatic transformation of the initial specification, which is closer to the application domain, in source code for software and hardware components that can be compiled or synthesized by other tools, obtaining the realization/ implementation of the distributed embedded real-time system.
|
26 |
Analyse et dimensionnement de réseaux hétérogènes embarqués / Analysis and dimensioning of embedded heterogeneous networksAhmed Nacer, Abdelaziz 09 March 2018 (has links)
Avec l’apparition des nouvelles technologies de communication, le nombre des systèmes embarqués avionique et automobile est en constante augmentation. La gestion des communications entre ces systèmes devient alors de plus en plus complexe à mettre en oeuvre dans un contexte où les contraintes temporelles et environnementales sont très fortes et où le taux d’échanges de messages en augmentation continuelle. L’utilisation optimale des réseaux pour acheminer les données tout en respectant les contraintes temporelles imposées est essentielle du point de vue de la sûreté de fonctionnement. Historiquement, pour répondre aux problématiques d’efficacité et de sûreté, les industriels ont développé une palette de réseaux embarqués dédiés à leurs applications cibles (CAN, LIN, . . . ). Ces réseaux présentaient des débits relativement faibles à un moment où un besoin croissant en bande passante se faisait ressentir. le choix d’utiliser le concept de composants dit ‘sur étagères’ (off the shelf COTS) permettait alors de pallier à ce nouveau besoin. Dans un souci de conservation des capacités des réseaux à garantir les contraintes temporelles imposées par les systèmes embarqués temps réel, les industriels ont dû adapter ce concept de composants sur étagères aux systèmes embarqués. L’intérêt de l’utilisation de ces composants est un gain non négligeable en bande passante et en poids pour des coûts de développements relativement faibles. L’introduction de ces composants nouveaux s’est faite de telle sorte que leur impact sur les standards préexistants et les systèmes connectés soit minimal. C’est ainsi que les réseaux dit ‘hétérogènes’ ont vu leur apparition. Ces réseaux constituent une hybridation entre les technologies embarquées historiques et les composants sur étagère. Ils consistent en des réseaux d’extrémité utilisant des technologies éprouvées (telles que le CAN) interconnectés via des passerelles à un réseau fédérateur (backbone) utilisant des composants sur étagères. Dès lors, le défi majeur à relever lors de l’utilisation d’un réseau fédérateur est de respecter les contraintes temporelles des applications sollicitant les différents réseaux. L’objectif est mis à mal sur les points d’interconnexion des réseaux hétérogènes (Passerelles). Ainsi l’approche principale utilisée pour le passage d’un réseau à un autre est l’encapsulation de trames. Pour atteindre l’optimalité de performance de cette technique plusieurs paramètres sont à prendre en compte tels que le nombre de trames à encapsuler, les ordonnancements utilisés, le coût en bande passante ainsi que l’impact sur les distributions de délais (gigue). Dans l’optique de préservation des performances des réseaux, l’objet de nos travaux porte sur l’étude, la comparaison et la proposition de techniques permettant l’interconnexion de réseaux hétérogènes temps réels à la fois pour des applications à faibles et à fortes contraintes temporelles. Après un état de l’art sur les réseaux temps réel, nous spécifions différentes techniques d’interconnexion de réseaux hétérogènes, puis, nous présentons une étude de cas basée sur une architecture réseau interconnectant différents bus CAN via un réseau fédérateur sans fil Wi-Fi. L’étude que nous avons menée montre, par le biais de différentes simulations, que cette architecture réseau est une bonne candidate pour la transmission de flux à contraintes temporelles faibles. Une architecture réseau interconnectant différents bus CAN via un réseau fédérateur Ethernet commuté est ensuite considérée dans une seconde étude de cas ciblant les applications à fortes contraintes temporelles. Dans un premier temps, nous prenons en compte le cas d’un réseau fédérateur Ethernet-PQSE et, dans un second temps, le cas d’Ethernet-AVB. Cette étude nous permet de montrer l’impact des différentes techniques d’interconnexion sur les délais des flux du réseau. / With the emergence of new communication technologies, the number of avionics and automotive embedded systems is constantly increasing. The management of communications between these systems becomes increasingly complex to implement in a context where temporal and environmental constraints are very strong and where messages exchange rate is continuously increasing. The optimal use of networks to transmit data while fulfilling the imposed temporal constraints is essential from a safety point of view. Historically, in order to address safety and efficiency issues, manufacturers have developed a range of embedded networks dedicated to their target applications (CAN, LIN, . . . ). These networks have relatively low bit rates at a point of time where a growing need for bandwidth was felt. To overcome this new need, the choice of using the concept of so-called ’off-theshelf’ components (COTS) has been made. In order to preserve the networks abilities to guarantee the temporal constraints imposed by the real time embedded systems, manufacturers had to adapt the concept of off-the-shelf components to embedded systems. The benefits of using these components is a non-negligible gain in bandwidth and weight for relatively low development costs. The introduction of these new components has been made in such a way that their impact on pre-existing standards and connected systems is minimal. thereby, so-called ’heterogeneous’ networks have emerged. These networks are a hybridization of historical embedded technologies and off-the-shelf components. They consist of stub networks using proven technologies (such as CAN) interconnected via gateways to a backbone network using off-the-shelf components. Thus, the major challenge while using a heterogeneous network is to respect the temporal constraints of the applications requesting the different parts of the networks. This objective can be damaged at the interconnection points of the heterogeneous networks (Gateways). The main used approach to pass frames from one network to another is the encapsulation. To achieve the optimum performances of this technique, several parameters have to be considered such as the number of frames encapsulated, the used scheduling policy, the bandwidth cost as well as the impact on delay distributions (jitter). In order to preserve networks performances, the aim of our work is to study, compare and propose techniques ennabling the interconnection of real-time heterogeneous networks for application with both soft and hard temporal constraints. After a state of the art on real-time networks, we have specified different techniques for the interconnection of heterogeneous networks, then we have presented a case study based on a network architecture interconnecting different CAN buses via a wireless backbone network (Wi-Fi ). The study we conducted shows, through various simulations, that this network architecture is a good contender for the transmission of flows with soft temporal constraints. A network architecture interconnecting different CAN busses via a switched Ethernet backbone is considered in a second case study targeting applications with hard temporal constraints. Two different Ethernet backbone networks are taken into account. We studied first, the case of a switched Ethernet-PQSE backbone network. Then the case of a switched Ethernet-AVB backbone is considered. This study enabled us to highlight the impact of the different used interconnection techniques on network flows delays.
|
27 |
An aspect-oriented model-driven engineering approach for distributed embedded real-time systems / Uma abordagem de engenharia guiada por modelos para o projeto de sistemas tempo-real embarcados e distribuídosWehrmeister, Marco Aurélio January 2009 (has links)
Atualmente, o projeto de sistemas tempo-real embarcados e distribuídos está crescendo em complexidade devido à sua natureza heterogênea e ao crescente número e diversidade de funções que um único sistema desempenha. Sistemas de automação industrial, sistemas eletrônicos em automóveis e veículos aéreos, equipamentos médicos, entre outros, são exemplos de tais sistemas. Tais sistemas são compostos por componentes distintos (blocos de hardware e software), os quais geralmente são projetados concorrentemente utilizando modelos, ferramentas e linguagens de especificação e implementação diferentes. Além disso, estes sistemas tem requisitos específicos e importantes, os quais não representam (por si só) as funcionalidades esperadas do sistema, mas podem afetar a forma como o sistema executa suas funcionalidades e são muito importantes para a realização do projeto com sucesso. Os chamados requisitos não-funcionais são difíceis de tratar durante todo o ciclo de projeto porque normalmente um único requisito não-funcional afeta vários componentes diferentes. A presente tese de doutorado propõe a integração automatizada das fases de projeto de sistemas tempo-real embarcados e distribuídos focando em aplicações na área da automação. A abordagem proposta usa técnicas de engenharia guiada por modelos (do inglês Model Driven Engineering ou MDE) e projeto orientado a aspectos (do inglês Aspect-Oriented Design ou AOD) juntamente com o uso de plataformas previamente desenvolvidas (ou desenvolvida por terceiros) para projetar os componentes de sistemas tempo-real embarcados e distribuídos. Adicionalmente, os conceitos de AOD permitem a separação no tratamento dos requisitos de naturezas diferentes (i.e. requisitos funcionais e não-funcionais), melhorando a modularização dos artefatos produzidos (e.g. modelos de especificação, código fonte, etc.). Além disso, esta tese propõe uma ferramenta de geração de código, que suporta a transição automática das fases iniciais de especificação para as fases seguintes de implementação. Esta ferramenta usa um conjunto de regras de mapeamento, que descrevem como elementos nos níveis mais altos de abstração são mapeados (ou transformados) em elementos dos níveis mais baixos de abstração. Em outras palavras, tais regras de mapeamento permitem a transformação automática da especificação inicial, as quais estão mais próximo do domínio da aplicação, em código fonte para os componentes de hardware e software, os quais podem ser compilados e sintetizados por outras ferramentas para se obter a realização/implementação do sistema tempo-real embarcado e distribuído. / Currently, the design of distributed embedded real-time systems is growing in complexity due to the increasing amount of distinct functionalities that a single system must perform, and also to concerns related to designing different kinds of components. Industrial automation systems, embedded electronics systems in automobiles or aerial vehicles, medical equipments and others are examples of such systems, which includes distinct components (e.g. hardware and software ones) that are usually designed concurrently using distinct models, tools, specification, and implementation languages. Moreover, these systems have domain specific and important requirements, which do not represent by themselves the expected functionalities, but can affect both the way that the system performs its functionalities as well as the overall design success. The so-called nonfunctional requirements are difficult to deal with during the whole design because usually a single non-functional requirement affects several distinct components. This thesis proposes an automated integration of distributed embedded real-time systems design phases focusing on automation systems. The proposed approach uses Model- Driven Engineering (MDE) techniques together with Aspect-Oriented Design (AOD) and previously developed (or third party) hardware and software platforms to design the components of distributed embedded real-time systems. Additionally, AOD concepts allow a separate handling of requirement with distinct natures (i.e. functional and non-functional requirements), improving the produced artifacts modularization (e.g. specification model, source code, etc.). In addition, this thesis proposes a code generation tool, which supports an automatic transition from the initial specification phases to the following implementation phases. This tool uses a set of mapping rules, describing how elements at higher abstraction levels are mapped (or transformed) into lower abstraction level elements. In other words, suchmapping rules allow an automatic transformation of the initial specification, which is closer to the application domain, in source code for software and hardware components that can be compiled or synthesized by other tools, obtaining the realization/ implementation of the distributed embedded real-time system.
|
28 |
Metodologia orientada a aspectos para a especificação de sistemas tempo-real embarcados distribuídos / Aspect-Oriented Methodology to Specify Distributed Real-time Embedded SystemsFreitas, Edison Pignaton de January 2007 (has links)
Sistemas de tempo-real embarcados distribuídos se caracterizam pela complexidade e especificidade de seus projetos. Tanto a complexidade quanto a especificidade apresentam forte influência dos diversos requisitos ligados às restrições advindas das três características que distinguem tais sistemas, i.e. presença de fortes restrições temporais, restrições de sistemas embarcados e distribuição de processamento. Estes requisitos, chamados de requisitos não-funcionais, afetam diversas partes do sistema de maneira não uniforme, tornando-se por esta razão difícil o seu gerenciamento. Metodologias orientadas a objetos não apresentam mecanismos específicos para tratar tais requisitos, o que implica na aplicação de um significativo esforço ao se realizar o reuso ou a manutenção de componentes afetados por requisitos de natureza nãofuncional. Novas tecnologias têm surgido com o objetivo de contornar este problema, notadamente a orientação a aspectos. Este paradigma propõe a separação no tratamento dos requisitos não-funcionais contribuindo com a modularização do sistema. Esta dissertação propõe a aplicação de orientação a aspectos para a especificação de sistemas tempo-real embarcados distribuídos. Para isto realizou-se a adaptação de uma metodologia de desenvolvimento de sistemas orientada a aspectos, a FRIDA (From RequIrements to Design using Aspects), contextualizando-a para o domínio de interesse. A utilização desta metodologia provê suporte ao mapeamento de requisitos em elementos de projeto de modo a promover a rastreabilidade entre as fases de análise e projeto. Na fase de projeto é proposta a utilização de aspectos em conjunto com elementos do perfil RT-UML para o tratamento dos requisitos identificados e especificados na fase de análise. / Distributed real-time embedded systems generally have complex and very specific projects. Those characteristics are influenced by several requirements that have relation with constraints about the time, embedded and distribution restrictions. Those requirements, called non-functional requirements, can affect the whole system in a nonuniform way, what makes it difficult to handle with this kind of requirement. Objectoriented methodologies do not present specific mechanisms to handle those requirements, what imply in a significant effort to perform reuse and maintainability tasks in those components affected by non-functional requirements. New technologies are emerging to fulfill this gap, noteworthy the aspect orientation. This paradigm proposes the separation in handling functional and non-functional requirements, giving a contribution to the system modularity. This dissertation proposes the use of aspect orientation to specify distributed realtime embedded systems. To support this proposal, it was performed an adaptation of an aspect-oriented method called FRIDA (From RequIrements to Design using Aspects). The use of this method supports the mapping of requirements in design model elements, in order to promote traceability between analysis and design phases. The presented approach proposes the use of RT-UML together with aspect oriented elements in design phase aiming to improve the handling of those requirements specified in the analysis phase.
|
29 |
Metodologia orientada a aspectos para a especificação de sistemas tempo-real embarcados distribuídos / Aspect-Oriented Methodology to Specify Distributed Real-time Embedded SystemsFreitas, Edison Pignaton de January 2007 (has links)
Sistemas de tempo-real embarcados distribuídos se caracterizam pela complexidade e especificidade de seus projetos. Tanto a complexidade quanto a especificidade apresentam forte influência dos diversos requisitos ligados às restrições advindas das três características que distinguem tais sistemas, i.e. presença de fortes restrições temporais, restrições de sistemas embarcados e distribuição de processamento. Estes requisitos, chamados de requisitos não-funcionais, afetam diversas partes do sistema de maneira não uniforme, tornando-se por esta razão difícil o seu gerenciamento. Metodologias orientadas a objetos não apresentam mecanismos específicos para tratar tais requisitos, o que implica na aplicação de um significativo esforço ao se realizar o reuso ou a manutenção de componentes afetados por requisitos de natureza nãofuncional. Novas tecnologias têm surgido com o objetivo de contornar este problema, notadamente a orientação a aspectos. Este paradigma propõe a separação no tratamento dos requisitos não-funcionais contribuindo com a modularização do sistema. Esta dissertação propõe a aplicação de orientação a aspectos para a especificação de sistemas tempo-real embarcados distribuídos. Para isto realizou-se a adaptação de uma metodologia de desenvolvimento de sistemas orientada a aspectos, a FRIDA (From RequIrements to Design using Aspects), contextualizando-a para o domínio de interesse. A utilização desta metodologia provê suporte ao mapeamento de requisitos em elementos de projeto de modo a promover a rastreabilidade entre as fases de análise e projeto. Na fase de projeto é proposta a utilização de aspectos em conjunto com elementos do perfil RT-UML para o tratamento dos requisitos identificados e especificados na fase de análise. / Distributed real-time embedded systems generally have complex and very specific projects. Those characteristics are influenced by several requirements that have relation with constraints about the time, embedded and distribution restrictions. Those requirements, called non-functional requirements, can affect the whole system in a nonuniform way, what makes it difficult to handle with this kind of requirement. Objectoriented methodologies do not present specific mechanisms to handle those requirements, what imply in a significant effort to perform reuse and maintainability tasks in those components affected by non-functional requirements. New technologies are emerging to fulfill this gap, noteworthy the aspect orientation. This paradigm proposes the separation in handling functional and non-functional requirements, giving a contribution to the system modularity. This dissertation proposes the use of aspect orientation to specify distributed realtime embedded systems. To support this proposal, it was performed an adaptation of an aspect-oriented method called FRIDA (From RequIrements to Design using Aspects). The use of this method supports the mapping of requirements in design model elements, in order to promote traceability between analysis and design phases. The presented approach proposes the use of RT-UML together with aspect oriented elements in design phase aiming to improve the handling of those requirements specified in the analysis phase.
|
30 |
An aspect-oriented model-driven engineering approach for distributed embedded real-time systems / Uma abordagem de engenharia guiada por modelos para o projeto de sistemas tempo-real embarcados e distribuídosWehrmeister, Marco Aurélio January 2009 (has links)
Atualmente, o projeto de sistemas tempo-real embarcados e distribuídos está crescendo em complexidade devido à sua natureza heterogênea e ao crescente número e diversidade de funções que um único sistema desempenha. Sistemas de automação industrial, sistemas eletrônicos em automóveis e veículos aéreos, equipamentos médicos, entre outros, são exemplos de tais sistemas. Tais sistemas são compostos por componentes distintos (blocos de hardware e software), os quais geralmente são projetados concorrentemente utilizando modelos, ferramentas e linguagens de especificação e implementação diferentes. Além disso, estes sistemas tem requisitos específicos e importantes, os quais não representam (por si só) as funcionalidades esperadas do sistema, mas podem afetar a forma como o sistema executa suas funcionalidades e são muito importantes para a realização do projeto com sucesso. Os chamados requisitos não-funcionais são difíceis de tratar durante todo o ciclo de projeto porque normalmente um único requisito não-funcional afeta vários componentes diferentes. A presente tese de doutorado propõe a integração automatizada das fases de projeto de sistemas tempo-real embarcados e distribuídos focando em aplicações na área da automação. A abordagem proposta usa técnicas de engenharia guiada por modelos (do inglês Model Driven Engineering ou MDE) e projeto orientado a aspectos (do inglês Aspect-Oriented Design ou AOD) juntamente com o uso de plataformas previamente desenvolvidas (ou desenvolvida por terceiros) para projetar os componentes de sistemas tempo-real embarcados e distribuídos. Adicionalmente, os conceitos de AOD permitem a separação no tratamento dos requisitos de naturezas diferentes (i.e. requisitos funcionais e não-funcionais), melhorando a modularização dos artefatos produzidos (e.g. modelos de especificação, código fonte, etc.). Além disso, esta tese propõe uma ferramenta de geração de código, que suporta a transição automática das fases iniciais de especificação para as fases seguintes de implementação. Esta ferramenta usa um conjunto de regras de mapeamento, que descrevem como elementos nos níveis mais altos de abstração são mapeados (ou transformados) em elementos dos níveis mais baixos de abstração. Em outras palavras, tais regras de mapeamento permitem a transformação automática da especificação inicial, as quais estão mais próximo do domínio da aplicação, em código fonte para os componentes de hardware e software, os quais podem ser compilados e sintetizados por outras ferramentas para se obter a realização/implementação do sistema tempo-real embarcado e distribuído. / Currently, the design of distributed embedded real-time systems is growing in complexity due to the increasing amount of distinct functionalities that a single system must perform, and also to concerns related to designing different kinds of components. Industrial automation systems, embedded electronics systems in automobiles or aerial vehicles, medical equipments and others are examples of such systems, which includes distinct components (e.g. hardware and software ones) that are usually designed concurrently using distinct models, tools, specification, and implementation languages. Moreover, these systems have domain specific and important requirements, which do not represent by themselves the expected functionalities, but can affect both the way that the system performs its functionalities as well as the overall design success. The so-called nonfunctional requirements are difficult to deal with during the whole design because usually a single non-functional requirement affects several distinct components. This thesis proposes an automated integration of distributed embedded real-time systems design phases focusing on automation systems. The proposed approach uses Model- Driven Engineering (MDE) techniques together with Aspect-Oriented Design (AOD) and previously developed (or third party) hardware and software platforms to design the components of distributed embedded real-time systems. Additionally, AOD concepts allow a separate handling of requirement with distinct natures (i.e. functional and non-functional requirements), improving the produced artifacts modularization (e.g. specification model, source code, etc.). In addition, this thesis proposes a code generation tool, which supports an automatic transition from the initial specification phases to the following implementation phases. This tool uses a set of mapping rules, describing how elements at higher abstraction levels are mapped (or transformed) into lower abstraction level elements. In other words, suchmapping rules allow an automatic transformation of the initial specification, which is closer to the application domain, in source code for software and hardware components that can be compiled or synthesized by other tools, obtaining the realization/ implementation of the distributed embedded real-time system.
|
Page generated in 0.0676 seconds