Spelling suggestions: "subject:"model deriven"" "subject:"model dcdriven""
341 |
[en] A MODEL-DRIVEN WIZARD TO AID IN DEVELOPING WEB APPLICATIONS / [pt] UM ASSISTENTE DIRIGIDO POR MODELOS PARA AUXÍLIO AO DESENVOLVIMENTO DE APLICAÇÕES WWWMILENA OSSORIO LAMI 22 February 2016 (has links)
[pt] As aplicações na WWW são exemplos de aplicações hipermídia. O desenvolvimento destas aplicações, mesmo utilizando metodologias de projeto, tem uma complexidade elevada. Existem propostas dirigidas por modelos para ajudar ao projetista, mas estas requerem de uma curva de aprendizado alta para os não familiarizados com os modelos. Este trabalho aborda este problema oferecendo uma abordagem que, fazendo uso de uma metodologia dirigida por modelos, permite a autoria de aplicações em um ambiente mais próximo à intenção do usuário. Se apresenta uma ferramenta com características de assistente (wizard) que permite a criação de aplicações através de exemplos, utilizando interfaces com dados concretos. O assistente usa aspectos da técnica de programação por exemplo e do estilo de interação de manipulação direta que contribuem para facilitar o desenvolvimento. / [en] Web applications can be seen as examples of hypermedia applications. Developing such applications is a complex endeavor, even when using design methods. There are model-driven methods aimed at helping the designer, but they still require a steep learning curve for those unfamiliar with the models. This work addresses this problem through a model-driven wizard that helps the designer through the use of examples and concrete data-driven interfaces. This wizard uses direct manipulation techniques to help easing the designer s tasks.
|
342 |
A study to define an automatic model transformation approach based on semantic and syntactic comparisons / Etude d'une approche de transformation de modèles automatisée basée sur des comparaisons sémantique et syntaxiqueWang, Tiexin 10 December 2015 (has links)
Les modèles sont de plus en plus utilisés que ce soit pour la description d’un point de vue d’un système complexe ou pour l’échange d’information. Cependant, le partage d’information, le transfert d’information d’un modèle à un autre est aujourd’hui une problématique liée à l’interopérabilité des systèmes. Cette problématique peut être abordée selon trois approches : intégrée (tous les modèles identiques), unifiée (tous les modèles font référence à un modèle pivot), fédérée (pas de règles précises sur les modèles). Bien que des standards existent, ils sont rarement respectés avec rigueur. L’approche fédérée semble par conséquent l’approche la plus réaliste. Cependant, cette approche est complexe car les différents modèles, bien que comportant des concepts communs, peuvent avoir une structure et un vocabulaire très hétérogène pour décrire le même concept. Par conséquent, il faut identifier les concepts communs des différents modèles avant de définir les règles de transformation permettant de passer d’un format à un autre. Cette thèse propose une méthodologie permettant d’atteindre ces objectifs, elle se base d’une part sur la proposition d’un méta-méta-modèle permettant d’unifier la description de la structure des modèles, i.e. le méta-modèle, et d’autre part sur le calcul de distance entre chaque élément des modèles qui permettront de déduire les règles de transformation. Cette mesure de distance reflète la distance à la fois syntaxique, écritures différentes d’un même terme, ainsi que sémantique liée à l’utilisation de synonyme. La recherche de synonyme est basée sur l’utilisation de base de connaissance, représentée sous forme d’ontologie, tel que WordNet. / The models are increasingly used both for the description of a view of a complex system or for information exchange. However, to share the information, transferring information from one model to another is an issue related to the interoperability of systems now. This problem can be approached in three ways: integrated (all identical models), unified (all models refer to a pivot model), federated (no specific rules on the models). Although standards exist, they are rarely respected rigorously. The federated approach therefore seems to be the most realistic approach. However, because of the different models, this approach is complicated. Models can have a very heterogeneous structure and different vocabulary to describe the same concept. Therefore, we must identify the common concepts of different models before defining the transformation rules for transforming from one format to another. This thesis proposes a methodology to achieve these goals. It is partly based on the proposal of a meta-meta-model (to unify the description of the model structure), i.e. the meta-model, and secondly calculating the distance between each element of models to deduce the transformation rules. This distance reflecting both syntactic distance (words occurrence) and semantic relation that related to the synonymous. Researching synonym relation is based on the use of knowledge base, represented as ontology, such as WordNet.
|
343 |
Interface-Based Software Development / Interface-Based Software DevelopmentRais, Aziz January 2017 (has links)
Even though there are many software development and project management methodologies available, research and practice both show that IT software development projects still fail, and that the quality of software products does not always meet customers' expectations. There might be multiple causes for such failures, but some of these reasons can be seen to influence or create others. Therefore, the larger the project is, the higher its risk of failure, especially if the teams involved work remotely (distributed and outsourced). This increase in project complexity is considered the motivation for this paper. Similarly, there are other factors that can result in a project's failure and customers' dissatisfaction regarding software quality. All such factors identified by research conducted by organizations specializing in this area are analyzed in order to identify a common root of IT project failures. Once the root causes of these failures have been identified and analyzed, the goal of the Interface based software development methodology is to solve them. The solution offered by an Interface based software development methodology is to improve understanding of software requirements and to describe these requirements with interfaces in an object-oriented way. Interface based software development will support and drive development towards service-oriented architecture (SOA) and component-based development (CBD). The goal of interface based software development is to increase software testability and maintainability and to make it more easily feasible to execute various software development processes in parallel.
|
344 |
Self-adaptation for Internet of things applications / Auto-adaptation pour les applications de l’Internet des objetsAcosta Padilla, Francisco Javier 12 December 2016 (has links)
L'Internet des Objets (IdO) couvre peu à peu tous les aspects de notre vie. À mesure que ces systèmes deviennent plus répandus, le besoin de gérer cette infrastructure complexe comporte plusieurs défis. En effet, beaucoup de petits appareils interconnectés fournissent maintenant plus d'un service dans plusieurs aspects de notre vie quotidienne, qui doivent être adaptés à de nouveaux contextes sans l'interruption de tels services. Cependant, ce nouveau système informatique diffère des systèmes classiques principalement sur le type, la taille physique et l'accès des nœuds. Ainsi, des méthodes typiques pour gérer la couche logicielle sur de grands systèmes distribués comme on fait traditionnellement ne peuvent pas être employées dans ce contexte. En effet, cela est dû aux capacités très différentes dans la puissance de calcul et la connectivité réseau, qui sont très contraintes pour les appareils de l'IdO. De plus, la complexité qui était auparavant gérée par des experts de plusieurs domaines, tels que les systèmes embarqués et les réseaux de capteurs sans fil (WSN), est maintenant accrue par la plus grande quantité et hétérogénéité des logiciels et du matériel des nœuds. Par conséquent, nous avons besoin de méthodes efficaces pour gérer la couche logicielle de ces systèmes, en tenant compte les ressources très limitées. Cette infrastructure matérielle sous-jacente pose de nouveaux défis dans la manière dont nous administrons la couche logicielle de ces systèmes. Ces défis peuvent entre divisés en : Intra-nœud, sur lequel nous faisons face à la mémoire limitée et à la puissance de calcul des nœuds IdO, afin de gérer les mises à jour sur ces appareils ; Inter-noeud, sur lequel une nouvelle façon de distribuer les mises à jour est nécessaire, en raison de la topologie réseau différente et le coût en énergie pour les appareils alimentés par batterie ; En effet, la puissance de calcul limitée et la durée de vie de chaque nœud combiné à la nature très distribuée de ces systèmes, ajoute de la complexité à la gestion de la couche logicielle distribuée. La reconfiguration logicielle des nœuds dans l'Internet des objets est une préoccupation majeure dans plusieurs domaines d'application. En particulier, la distribution du code pour fournir des nouvelles fonctionnalités ou mettre à jour le logiciel déjà installé afin de l'adapter aux nouvelles exigences, a un impact énorme sur la consommation d'énergie. La plupart des algorithmes actuels de diffusion du code sur l'air (OTA) sont destinés à diffuser un microprogramme complet à travers de petits fragments, et sont souvent mis en œuvre dans la couche réseau, ignorant ainsi toutes les informations de guidage de la couche applicative. Première contribution : Un moteur de modèles en temps d'exécution représentant une application de l'IdO en cours d'exécution sur les nœuds à ressources limitées. La transformation du méta-modèle Kevoree en code C pour répondre aux contraintes de mémoire spécifiques d'un dispositif IdO a été réalisée, ainsi que la proposition des outils de modélisation pour manipuler un modèle en temps d'exécution. Deuxième contribution : découplage en composants d'un système IdO ainsi qu'un algorithme de distribution de composants efficace. Le découplage en composants d'une application dans le contexte de l'IdO facilite sa représentation sur le modèle en temps d'exécution, alors qu'il fournit un moyen de changer facilement son comportement en ajoutant/supprimant des composants et de modifier leurs paramètres. En outre, un mécanisme pour distribuer ces composants en utilisant un nouvel algorithme appelé Calpulli est proposé. / The Internet of Things (IoT) is covering little by little every aspect on our lives. As these systems become more pervasive, the need of managing this complex infrastructure comes with several challenges. Indeed, plenty of small interconnected devices are now providing more than a service in several aspects of our everyday life, which need to be adapted to new contexts without the interruption of such services. However, this new computing system differs from classical Internet systems mainly on the type, physical size and access of the nodes. Thus, typical methods to manage the distributed software layer on large distributed systems as usual cannot be employed on this context. Indeed, this is due to the very different capacities on computing power and network connectivity, which are very constrained for IoT devices. Moreover, the complexity which was before managed by experts on several fields, such as embedded systems and Wireless Sensor Networks (WSN), is now increased by the larger quantity and heterogeneity of the node’s software and hardware. Therefore, we need efficient methods to manage the software layer of these systems, taking into account the very limited resources. This underlying hardware infrastructure raises new challenges in the way we administrate the software layer of these systems. These challenges can be divided into: intra-node, on which we face the limited memory and CPU of IoT nodes, in order to manage the software layer and ; inter-node, on which a new way to distribute the updates is needed, due to the different network topology and cost in energy for battery powered devices. Indeed, the limited computing power and battery life of each node combined with the very distributed nature of these systems, greatly adds complexity to the distributed software layer management. Software reconfiguration of nodes in the Internet of Things is a major concern for various application fields. In particular, distributing the code of updated or new software features to their final node destination in order to adapt it to new requirements, has a huge impact on energy consumption. Most current algorithms for disseminating code over the air (OTA) are meant to disseminate a complete firmware through small chunks and are often implemented at the network layer, thus ignoring all guiding information from the application layer. First contribution: A models@runtime engine able to represent an IoT running application on resource constrained nodes. The transformation of the Kevoree meta-model into C code to meet the specific memory constraints of an IoT device was performed, as well as the proposition of modelling tools to manipulate a model@runtime. Second contribution: Component decoupling of an IoT system as well as an efficient component distribution algorithm. Components decoupling of an application in the context of the IoT facilitates its representation on the model@runtime, while it provides a way to easily change its behaviour by adding/removing components and changing their parameters. In addition, a mechanism to distribute such components using a new algorithm, called Calpulli is proposed.
|
345 |
Proposition d’un cadre méthodologique pour le management de la continuité d’activité : application à la prise en charge à domicile / A proposition of a methodological framework for the Business Continuity Management : application to homecareRejeb, Olfa 02 December 2013 (has links)
Dans le contexte actuel, les technologies d'information et de communication sont reconnues comme un élément inévitable pour améliorer les pratiques métiers. Dans le secteur de la prise en charge à domicile, par exemple, elles sont un élément déterminant dans la faisabilité d'un tel service au patient. Cependant, ces organisations évoluent dans un environnement très dynamique et incertain. Au regard de ces perturbations endogènes et exogènes auxquelles sont confrontées les organisations, elles se doivent de réagir de manière agile aux aléas et faire preuve de résilience. Le management de la continuité d'activité (MCA) est une approche de management des organisations qui répond à ces attentes. C'est dans ce contexte que se situent nos travaux de thèse cofinancés par la région Midi-Pyrénées. Notre motivation est la définition d'un cadre méthodologique pour mettre en œuvre le management de la continuité d'activité au sein d'un système socio-technique, cadre qui soutiendrait une nouvelle démarche d'ingénierie d'entreprise dirigée par les modèles. Après avoir fait une synthèse des connaissances sur la théorie du management de la continuité d'activité, un problème de structuration de ces connaissances est formulé. Un cadre méthodologique pour le management de la continuité d'activité est ensuite proposé. Il repose sur (i) la définition et la conception d'un méta modèle de référence fondé sur l'intégration entre management de la continuité d'activité et ingénierie d'entreprise ; (ii) le développement d'un ensemble de matrices d'évaluation de la criticité destinés à soutenir l'analyse d'impact de MCA ; et enfin sur (iii) la définition d'un langage de modélisation étendu aux concepts de MCA. Un cas d'études du domaine de la prise en charge à domicile vient illustrer le bien-fondé de l'application de ce cadre méthodologique sur une base réelle et concrète. / In the present context, Information and Communication technologies are recognized as an inevitable element to improve business practices. Particularly in the home-care field in order to meet challenges of coordination and care continuity. However, these organizations operate in a highly dynamic and uncertain environment. In view of these endogenous and exogenous disruptions, they have to react in an agile way to face risks and to ensure their resilience. The Business Continuity Management (BCM) meets these expectations. Our motivation in this research work is to define a methodological framework to implement the business continuity management within a socio -technical system as an integral part of a new approach to model driven enterprise engineering. After delivering a synthesis of related work to Business Continuity Management, a research question concerning the structuring of this knowledge has been addressed. A methodological framework for business continuity management is then suggested. It is based on (i) the definition and the design of a meta-model integrating BCM and enterprise engineering, (ii) the development of a set criticality assessment matrix to support the business impact analysis, and finally on (iii) the definition of a modeling language adapted to concepts of BCM. A case study from the home-care sector illustrates the foundation of the methodological framework.
|
346 |
Facilités de typage pour l'ingénierie des langages / Typing facilities for language engineeringGuy, Clément 10 December 2013 (has links)
Le nombre et la complexité toujours croissants des préoccupations prises en compte dans les systèmes logiciels complexes (e.g., sécurité, IHM, scalabilité, préoccupations du domaine d'application) poussent les concepteurs de tels systèmes à séparer ces préoccupations afin de les traiter de manière indépendante. L'ingénierie dirigée par les modèles (IDM) prône la séparation des préoccupations au sein de langages de modélisation dédiés. Les langages de modélisation dédiés permettent de capitaliser le savoir et le savoir-faire associés à une préoccupation au travers des constructions du langage et des outils associés. Cependant la définition et l'outillage d'un langage dédié demande un effort de développement important pour un public par définition réduit. Nous proposons dans cette thèse une relation liant les modèles et une interface de modèle permettant de faciliter la mise en place de facilités de typage pour la définition et l'outillage d'un langage dédié. Cette interface expose les éléments de modèle et les transformations de modèles associés à un langage de modélisation dédié. Nous représentons une telle interface par un type de modèles supportant des relations de sous-typage et d'héritage. Dans ce but nous définissons : une relation de typage entre les modèles et les langages de modélisation dédiés permettant de considérer les modèles comme des entités de première classe ; des relations de sous-typage entre langages de modélisation dédiés permettant la réutilisation de la syntaxe abstraite et des transformations de modèles. / The ever growing number and complexity of concerns in software intensive systems (e.g., safety, HMI, scalability, business domain concerns, etc.) leads designers of such systems to separate these concerns to deal with them independently. Model-Driven Engineering (MDE) advocates the separation of concerns in Domain-Specific Modeling Languages (DSMLs). DSMLs are used to capitalize the knowledge and know-how associated with a concern through the language constructs and its associated tools. However, both definition and tooling of a DSML require a significant development effort for a limited audience. In this thesis, we propose a relationship between models and model interfaces in order to ease the design of typing facilities for the definition and tooling of a DSML. This interface exposes the model elements and model transformations associated with a DSML. We represent such an interface by a model type supporting subtyping and inheritance relationships. For this purpose we define : a typing relationship between models and DSMLs allowing to consider models as first-class entities; subtyping relationships between DSMLs enabling the reuse of abstract syntax and model transformations.
|
347 |
A proposal for the evolution of model-driven software / Uma proposta para a evolução da engenharia de software dirigida por modelosThiago Gottardi 19 March 2018 (has links)
In the Model-Driven Software Engineering (MDSE) context, software production can be performed by defining models. Despite the advantages of this methodology, different domains require specific support tools and modeling languages, which, in turn, must be developed along with the final software. Because of this, developers face problems when applying the method. The objective of this work is twofold: 1) to identify the most critical problems when developing with this method; 2) discuss and provide possible solutions to those problems. The critical problems were identified by performing a systematic mapping, empirical studies, collaborations and interviews with specialists. It has been identified that MDSE, according to basic literature, has an excessively high abstraction level which leads to a lack of adequate processes and developer training, besides the need for modeling tools. A new method is necessary to allow developers to treat models and source-code differently. Therefore, in this thesis, the need for evolving MDSE processes is discussed. In this manner, this work introduces a new development method described as a possible concrete evolution of MDSE that defines a paradigm for software development. This method is defined along with domain specific languages, a tool-chain and sample software systems. After conducting analytic and experimental studies, it has been concluded that these applications also represent a valuable contribution for implementing service-oriented systems which can be employed in real world applications. / No contexto da Engenharia de Software Dirigida por Modelos (MDSE), a produção de software pode ser realizada por meio de definições de modelos. Apesar dos benefícios desse método de desenvolvimento, diferentes domínios exigem a especificação de linguagens de modelagem e ferramentas específicas, que, por sua vez, precisam ser desenvolvidos em conjunto com o software final. Desta forma, desenvolvedores encontram problemas ao utilizar este método. Este trabalho possui duplo objetivo: 1) identificar os problemas mais críticos deste método; 2) discutir e fornecer possíveis soluções aos problemas. A identificação de problemas foi realizada por meio de um mapeamento sistemático, estudos empíricos, colaborações e entrevistas com especialistas. Foi identificado que MDSE, de acordo com a literatura básica, possui um nível de abstração excessivamente alto, acarretando em carência de processos adequados e de treinamento de desenvolvedores que vão além de problemas de necessidade de ferramentas de modelagem. Portanto, nesta tese, discute-se a necessidade de evoluir processos de MDSE que permita aos desenvolvedores uma nova forma de tratar modelos e código-fonte. Para tanto, neste trabalho também é descrito um novo método de desenvolvimento, descrito como uma possível evolução concreta do MDSE, o qual define um paradigma para desenvolver software. Este método é exemplificado em várias aplicações dentro deste trabalho. Após conduzir estudos analíticos e experimentais, concluiu-se que estas aplicações também possibilitam uma contribuição significativa no domínio de software orientado a serviços que podem ser empregadas em software do mundo real.
|
348 |
Geração parcial de código Java a partir de especificações formais Z. / Partial generation of Java code from Z formal specifications.Alvaro Heiji Miyazawa 03 October 2008 (has links)
Especificações formais são úteis para descrever o que um sistema deve fazer sem definir como, e, em virtude da sua natureza formal e da possibilidade de abstração, é possível analisá-las sistematicamente. No entanto, o uso de especificações formais como parte do desenvolvimento de software não constitui prática comum. Isso se dá, em parte, pelo fato de existirem apenas um pequeno número de metodologias e ferramentas adequadas que dêem suporte a esse desenvolvimento. O primeiro objetivo deste trabalho é propor uma metodologia de desenvolvimento que possibilite, a partir de uma especificação formal em notação Z, produzir uma implementação dessa especificação em Java. Essa metodologia centra-se na geração do esqueleto da aplicação Java e na instrumentação desse esqueleto com mecanismos de verificação de condições (invariantes, pré e pós-condições) e rastreamento de violações dessas condições. Através desses mecanismos, possibilita-se intercalar desenvolvimento formal e informal no processo global de desenvolvimento de software. O segundo objetivo é desenvolver uma ferramenta que implemente parte dessa metodologia, produzindo uma implementação parcial que deverá ser complementada pelo usuário. / Formal specifications are useful for describing what a system should do, without defining how, and, owing to its formal nature, it is possible to analyse them systematically. However useful formal specifications are, their usage as part of the software development process is rather rare. This is, in part, due to the scarcity of both methodologies and tools that support this development. The first goal of this work is to define a software development methodology that enables the developer to produce a Java application from a formal specification written in Z. This methodology will rely strongly on the generation of Java application skeletons and instrumentation of the generated code with means of verifying conditions (invariants, pre and post-conditions) e tracing violations of these conditions. Through this mechanisms, it is possible to mix formal and informal development in the global software development process. The second goal of this work is to develop a tool that will implement part of this methodology, producing a partial implementation that must be complemented by the developer.
|
349 |
Utilisation de l'ingénierie dirigée par les modèles pour l'agrégation continue de données hétérogènes : application à la supervision de réseaux de gaz / Model-based Interoperability IoT Hub for the aggregation of data from heterogeneous systems : application to the Smart Gas Distribution NetworksAhmed, Ahmed 17 December 2018 (has links)
Durant les dix dernières années, l'infrastructure informatique et l'infrastructure industrielle ont évolué de manière à passer de systèmes monolithiques à des systèmes hétérogènes, autonomes et largement distribués. Tous les systèmes ne peuvent pas coexister de manière isolée et exigent que leurs données soient partagées de manière à accroître la productivité de l'entreprise. En fait, nous progressons vers des systèmes complexes plus vastes où des millions des systèmes doivent être intégrés. Ainsi, l'exigence d'une solution d'interopérabilité peu coûteuse et rapide devient un besoin essentiel. Aujourd'hui, les solutions imposent les normes ou les middlewares pour gérer cette problématique. Cependant, ces solutions ne sont pas suffisantes et nécessitent souvent des développements ad-hoc spécifiques. Ainsi, ce travail propose l'étude et le développement d'une architecture d'interopérabilité générique, modulaire, agnostique et extensible basée sur des principes de l'architecture dirigée par les modèles et les concepts de la séparation de préoccupations. Il vise à promouvoir l'interopérabilité et l'échange de données entre les systèmes hétérogènes en temps réels sans obliger les systèmes à se conformer à des normes ou technologies spécifiques. La proposition s'applique à des cas d'usages industriels dans le contexte de réseau de distribution de gaz français. La validation théorique et empirique de notre proposition corrobore note hypothèses que l'interopérabilité entre les systèmes hétérogènes peut être atteinte en utilisant les concepts de la séparation de préoccupations et de l'ingénierie dirigée par les modèles et que le coût et le temps pour promouvoir l'interopérabilité est réduit en favorisant les caractéristiques de la réutilisabilité et de l'extensibilité. / Over the last decade, the information technology and industrial infrastructures have evolved from containing monolithic systems to heterogeneous, autonomous, and widely distributed systems. Most systems cannot coexist while completely isolated and need to share their data in order to increase business productivity. In fact, we are moving towards larger complex systems where millions of systems and applications need to be integrated. Thus, the requirement of an inexpensive and fast interoperability solution becomes an essential need. The existing solutions today impose standards or middleware to handle this issue. However, these solutions are not sufficient and often require specific ad-hoc developments. Thus, this work proposes the study and the development of a generic, modular, agnostic and extensible interoperability architecture based on modeling principles and software engineering aspects. It aims to promote interoperability and data exchange between heterogeneous systems in real time without requiring systems to comply with specific standards or technologies. The industrial use cases for this work takes place in the context of the French gas distribution network. The theoretical and empirical validation of our proposal corroborates assumptions that the interoperability between heterogeneous systems can be achieved by using the aspects of separation of concerns and model-driven engineering. The cost and time to promote the interoperability are also reduced by promoting the characteristics of re-usability and extensibility.
|
350 |
Creating a Domain-Specific Modeling Language for Educational Card GamesBorror, Kaylynn Nicole 21 July 2021 (has links)
No description available.
|
Page generated in 0.0533 seconds