Spelling suggestions: "subject:"comain byspecific"" "subject:"comain specifific""
241 |
Building environment rule and analysis (BERA) language and its application for evaluating building circulation and spatial programLee, Jin Kook 18 January 2011 (has links)
This study aims to design and implement a domain-specific computer programming language: the Building Environment Rule and Analysis (BERA) Language. As a result of the growing area of Building Information Modeling (BIM), there has been a need to develop highly customized domain-specific programming languages for handling issues in building models in the architecture, engineering and construction (AEC) industry. The BERA Language attempts to deal with building information models in an intuitive way in order to define and analyze rules in design stages. The application of the BERA Language aims to provide efficiency in defining, analyzing and checking rules. Specific example applications implemented in this dissertation are on the evaluation of two key aspects: building circulation and spatial programming.
The objective of this study is to accomplish an effectiveness and ease of use without precise knowledge of general-purpose languages that are conventionally used in BIM software development. To achieve the goal, this study proposes an abstraction of the universe of discourse - it is the BERA Object Model (BOM). It is a human-centered abstraction of complex state of building models rather than the computation-oriented abstraction. By using BOM, users can enjoy the ease of use and portability of BIM data, rather than complex and platform-dependent data structures. This study also has reviewed and demonstrated its potential for extensibility of BOM. Not only its lateral extensions such as structural building elements, but also the vertical extensions such as additional properties for existing BOM objects are good examples. In current BERA Language Tool, many computed and derived properties/relations have been proposed and implemented, as well as some basic data directly from the given building model.
Target users of the BERA Language are domain experts such as architects, designers, reviewers, owners, managers, students, etc., rather than BIM software developers. It means that the people who are interested in the building environment rule and analysis are the potential users. The BERA Language Tool comprises many libraries to alleviate common but unnecessary problems and limitations that are encountered when users attempt to analyze and evaluate building models using commercially available tools. Combined with other libraries which populate rich and domain-specific datasets for certain purposes, the BERA Language will be fairly versatile to define rules and analyze various building environmental conditions.
|
242 |
HybridMDSD: Multi-Domain Engineering with Model-Driven Software Development using Ontological FoundationsLochmann, Henrik 04 March 2010 (has links) (PDF)
Software development is a complex task. Executable applications comprise a mutlitude of diverse components that are developed with various frameworks, libraries, or communication platforms. The technical complexity in development retains resources, hampers efficient problem solving, and thus increases the overall cost of software production. Another significant challenge in market-driven software engineering is the variety of customer needs. It necessitates a maximum of flexibility in software implementations to facilitate the deployment of different products that are based on one single core.
To reduce technical complexity, the paradigm of Model-Driven Software Development (MDSD) facilitates the abstract specification of software based on modeling languages. Corresponding models are used to generate actual programming code without the need for creating manually written, error-prone assets. Modeling languages that are tailored towards a particular domain are called domain-specific languages (DSLs). Domain-specific modeling (DSM) approximates
technical solutions with intentional problems and fosters the unfolding of specialized expertise. To cope with feature diversity in applications, the Software Product Line Engineering (SPLE)
community provides means for the management of variability in software products, such as feature models and appropriate tools for mapping features to implementation assets.
Model-driven development, domain-specific modeling, and the dedicated management of variability in SPLE are vital for the success of software enterprises. Yet, these paradigms exist in isolation and need to be integrated in order to exhaust the advantages of every single approach. In this thesis, we propose a way to do so.
We introduce the paradigm of Multi-Domain Engineering (MDE) which means model-driven development with multiple domain-specific languages in variability-intensive scenarios. MDE strongly emphasize the advantages of MDSD with multiple DSLs as a neccessity for efficiency in software development and treats the paradigm of SPLE as indispensable means to achieve a maximum degree of reuse and flexibility. We present HybridMDSD as our solution approach to implement the MDE paradigm.
The core idea of HybidMDSD is to capture the semantics of particular DSLs based on properly defined semantics for software models contained in a central upper ontology. Then, the resulting semantic foundation can be used to establish references between arbitrary domain-specific models (DSMs) and sophisticated instance level reasoning ensures integrity and allows to handle partiucular change adaptation scenarios. Moreover, we present an approach to automatically generate composition code that integrates generated assets from separate DSLs. All necessary development tasks are arranged in a comprehensive development process. Finally, we validate the introduced approach with a profound prototypical implementation and an industrial-scale case study. / Softwareentwicklung ist komplex: ausführbare Anwendungen beinhalten und vereinen eine Vielzahl an Komponenten, die mit unterschiedlichen Frameworks, Bibliotheken oder Kommunikationsplattformen entwickelt werden. Die technische Komplexität in der Entwicklung bindet Ressourcen, verhindert effiziente Problemlösung und führt zu insgesamt hohen Kosten bei der Produktion von Software. Zusätzliche Herausforderungen entstehen durch die Vielfalt und Unterschiedlichkeit an Kundenwünschen, die der Entwicklung ein hohes Maß an Flexibilität in Software-Implementierungen abverlangen und die Auslieferung verschiedener Produkte auf Grundlage einer Basis-Implementierung nötig machen.
Zur Reduktion der technischen Komplexität bietet sich das Paradigma der modellgetriebenen Softwareentwicklung (MDSD) an. Software-Spezifikationen in Form abstrakter Modelle werden hier verwendet um Programmcode zu generieren, was die fehleranfällige, manuelle Programmierung ähnlicher Komponenten überflüssig macht. Modellierungssprachen, die auf eine bestimmte Problemdomäne zugeschnitten sind, nennt man domänenspezifische Sprachen (DSLs). Domänenspezifische Modellierung (DSM) vereint technische Lösungen mit intentionalen Problemen und ermöglicht die Entfaltung spezialisierter Expertise. Um der Funktionsvielfalt in Software Herr zu werden, bietet der Forschungszweig der Softwareproduktlinienentwicklung (SPLE) verschiedene Mittel zur Verwaltung von Variabilität in Software-Produkten an. Hierzu zählen Feature-Modelle sowie passende Werkzeuge, um Features auf Implementierungsbestandteile abzubilden.
Modellgetriebene Entwicklung, domänenspezifische Modellierung und eine spezielle Handhabung von Variabilität in Softwareproduktlinien sind von entscheidender Bedeutung für den Erfolg von Softwarefirmen. Zur Zeit bestehen diese Paradigmen losgelöst voneinander und müssen integriert werden, damit die Vorteile jedes einzelnen für die Gesamtheit der Softwareentwicklung entfaltet werden können. In dieser Arbeit wird ein Ansatz vorgestellt, der dies ermöglicht.
Es wird das Multi-Domain Engineering Paradigma (MDE) eingeführt, welches die modellgetriebene Softwareentwicklung mit mehreren domänenspezifischen Sprachen in variabilitätszentrierten Szenarien beschreibt. MDE stellt die Vorteile modellgetriebener Entwicklung mit mehreren DSLs als eine Notwendigkeit für Effizienz in der Entwicklung heraus und betrachtet das SPLE-Paradigma als unabdingbares Mittel um ein Maximum an Wiederverwendbarkeit und Flexibilität zu erzielen. In der Arbeit wird ein Ansatz zur Implementierung des MDE-Paradigmas, mit dem Namen HybridMDSD, vorgestellt.
|
243 |
支援虛實互動展演之程式環境 / Programming Support for Cyber-Physical Interactive Performance Art蕭奕凱, Hsiao, Yi Kai Unknown Date (has links)
本研究係發想自政治大學「未來馬戲團」的展演活動表演方式,嘗試改進表演方式中的程式技術,以程式化方式整合展演藝術中實體與虛擬的互動平台,我們希望提供導演撰寫較為口語或展演描述方式的腳本敘述如『when ... other-wise ...』,如此一來就可以任意組合實體演員的肢體動作與指示虛擬環境的特效,因此我們採用了一套介接實體與虛擬環境應用程式的領域專屬語言- Digital In-teractive Performance Sketch (DIPS),用以開發客製化的展演程式庫,並佈署於本團隊自行開發的執行引擎 Wearable Item Service runtimE (WISE),提供導演在這個引擎上透過這個DIPS編寫前述口語的程式腳本,讓程式自行互動,達成展演效果的自動變化。
我們的系統會接收來自展演人員穿配的連網感應器上的訊號,並且根據導演寫好的腳本規則,自動根據接收到的裝置訊號判斷出該指示虛擬環境做出什麼樣的效果,以達到展演效果自動變化,完成虛擬與實體展互動的程式支援。
為了減少腳本程式撰寫前須具備的程式邏輯訓練,本研究開發一款所見即所得(WYSIWYG)的視覺化腳本編輯器 DIPS Creator,提供腳本編寫者可以直覺的方式組合編輯器中的展演詞彙方塊,完成腳本設計。
本研究展示了如何以較為口語或展演語意的方式敘述展演規則,以實現虛實互動的程式化,並且提供了具有彈性的客製化展演函式庫及圖形化展演規則編輯器的製作方式,未來可增加多演員層次的抽象支援以展現本研究系統的更多程式化能力,並加入表演階段設計、雙向溝通與規則互斥等能力,擴充系統功能。 / This research was inspired by “The Future Circus”, a cyber-physical interactive performance art developed in National Chengchi University. In this thesis, we pro-pose some mechanisms to support such performance art programmatically in a more effective manner. Specially, we provide a high-level scripting tool for directors to de-scribe the performance rules abstractly in the form of “when ... otherwise ...”, so that directors can compose arbitrary actions and effects easily. Underlying such abstract rules are a domain specific language – Digital Interactive Performance Sketch (DIPS), and a middleware. Wearable Item Service runtime (WISE), developed by our research team.
Given a script with those abstract rules, our system will receive signals sent from a sensor on wearable devices of actors, and then it will command cyber environment perform effects, the performance effects or actions according to rules written by the director. Through our integration efforts, the performance effects in the cyber environment will change automatically in a programmatic way. Besides, for users without prior scripting experience, we developed a WYSIWYG GUI editor, DIPS Creator, that allows users to write a script intuitively by dragging and dropping pre-built rule blocks.
We conduct a few experiments with real sensor device to demonstrate the programming support of our tool. The preliminary results are satisfactory in terms of prototype support. To further extend our tool for practical performance, we describe in detail a few directions such as support for multiple actor performance stage model-ing, and integrity check of related rules that will make our system more powerful.
|
244 |
Effective reuse of coupling technologies for Earth System ModelsDunlap, Ralph S. 16 September 2013 (has links)
Designing and implementing coupled Earth System Models (ESMs) is a challenge for climate scientists and software engineers alike. Coupled models incorporate two or more independent numerical models into a single application, allowing for the simulation of complex feedback effects. As ESMs increase in sophistication, incorporating higher fidelity models of geophysical processes, developers are faced with the issue of managing increasing software complexity.
Recently, reusable coupling software has emerged to aid developers in building coupled models. Effective reuse of coupling infrastructure means increasing the number of coupling functions reused, minimizing code duplication, reducing the development time required to couple models, and enabling flexible composition of coupling infrastructure with existing constituent model implementations. Despite the widespread availability of software packages that provide coupling infrastructure, effective reuse of coupling technologies remains an elusive goal: coupling models is effort-intensive, often requiring weeks or months of developer time to work through implementation details, even when starting from a set of existing software components. Coupling technologies are never used in isolation: they must be integrated with multiple existing constituent models to provide their primary services, such as model-to-model data communication and transformation. Unfortunately, the high level of interdependence between coupling concerns and scientific concerns has resulted in high interdependence between the infrastructure code and the scientific code within a model’s implementation. These dependencies are a source of complexity which tends to reduce reusability of coupling infrastructure.
This dissertation presents mechanisms for increasing modeler productivity based on improving reuse of coupling infrastructure and raising the level of abstraction at which modelers work. This dissertation argues that effective reuse of coupling technologies can be achieved by decomposing existing coupling technologies into a salient set of implementation-independent features required for coupling high-performance models, increasing abstraction levels at which model developers work, and facilitating integration of coupling infrastructure with constituent models via component-based modularization of coupling features. The contributions of this research include:
(1) a comprehensive feature model that identifies the multi-dimensional design space of coupling technologies used in high-performance Earth System Models,
(2) Cupid, a domain-specific language and compiler for specifying coupling configurations declaratively and generating their implementations automatically, and
(3) Component-based Coupling Operators (CC-Ops), a modular approach to code reuse of coupling infrastructure based on component technologies for high-performance scientific settings.
The Cupid domain-specific language is evaluated by specifying a coupling configuration for an example fluid dynamics model and measuring the amount of code generated by the Cupid compiler compared to a hand coded version. The CC-Op approach is evaluated by implementing several CC-Ops using an existing high-performance component framework and measuring performance in terms of scalability and overhead.
|
245 |
Conception et mise en oeuvre d'une plate-forme pour la sûreté de fonctionnement des services WebSalatgé, Nicolas 08 December 2006 (has links) (PDF)
Basés sur les protocoles XML, SOAP et WSDL, les Services Web (SW) sont la technologie de base pour le développement d'Architectures Orientées Services (AOS). Ces architectures permettent de mettre en place des applications faiblement couplées avec un fort degré de configuration dynamique. Elles se basent sur la notion de relation de "services" formalisée par un contrat qui unit le client et le prestataire de services. Ce contrat est le point charnière de ce type d'applications. D'un point de vue purement marketing, les Services Web peuvent être développés pour satisfaire les besoins des clients, être facile à maintenir et aussi fournir un haut niveau de qualité de service. Les prestataires de Services Web doivent s'assurer de la fiabilité et de la disponibilité de leur infrastructure individuelle de Services Web. Cependant, les prestataires ne peuvent pas tenir compte de tous les besoins possibles des clients et des contraintes liées au développement de l'application donnée. Cela signifie que des mécanismes additionnels doivent être développés et ciblés pour un contexte d'utilisation donné. C'est exactement le type de problèmes que j'ai examiné dans mes travaux. Les développeurs d'application regardent les Services Web comme des COTS (Component Off-The Shell) et ignorent donc leurs implémentations et leurs comportements en présence de fautes. De ce point de vue, les clients ont besoin de développer des mécanismes de tolérances aux fautes spécifiques bien adaptés à leurs applications. Dans ce but, mes travaux de thèse m'ont conduit à proposer une plate-forme pour aider les clients à réaliser des connecteurs spécifiques de tolérance aux fautes (SFTC - Specifique Fault Tolerance Connectors) qui implémentent des filtres et autres techniques de détection d'erreurs (c.à.d des assertions exécutables) ainsi que des mécanismes de recouvrement qui sont déclenchés quand les Services Web ne satisfont plus les caractéristiques de sûreté demandées. De plus, le même Services Web peut être employé dans plusieurs applications orientées services avec différentes contraintes et peut donc tirer profit de plusieurs connecteurs (SFTCs). Le problème est similaire à l'utilisation des composants COTS dans les systèmes critiques de sûreté, et des travaux précédents ont déjà prouvé que des mécanismes tels que les wrappers étaient une solution possible. La différence dans le contexte des Architectures Orientées Services est que des wrappers prédéfinis ne peuvent pas être spécifiés pour satisfaire tous les besoins possibles. L'approche doit être plus adaptative pour permettre à des mécanismes de sûreté : 1) d'être définis au cas par cas pour une utilisation donnée du Service Web et 2) d'avoir une forte dynamique afin d'être modifiés selon les besoins. Ainsi, mes travaux de recherches ont permis de fournir aux développeurs d'Architectures Orientées Services: 1) un langage nommé DeWeL pour décrire les caractéristiques de sûreté de fonctionnement du connecteur et 2) l'infrastructure IWSD pour dynamiquement contrôler et exécuter les connecteurs dans des applications critiques. L'objectif final est de fournir aux développeurs d' Architectures Orientées Services une infrastructure et des outils capables de les aider à déployer des applications orientées services tolérants les fautes.
|
246 |
Formalisierung gestischer Eingabe für Multitouch-SystemeKammer, Dietrich 03 July 2014 (has links) (PDF)
Die Mensch-Computer-Interaktion wird dank neuer Eingabemöglichkeiten jenseits von Tastatur und Maus reicher, vielseitiger und intuitiver. Durch den Verzicht auf zusätzliche Geräte beim Umgang mit Computern geht seitens der Eingabeverarbeitung jedoch eine erhöhte Komplexität einher: Die Programmierung gestischer Eingabe für Multitouch-Systeme ist in derzeitigen Frameworks abgesehen von den verfügbaren Standard-Gesten mit hohem Aufwand verbunden.
Die entwickelte Gestenformalisierung für Multitouch (GeForMT) definiert eine domänenspezifische Sprache zur Beschreibung von Multitouch-Gesten. Statt wie verwandte Formalisierungsansätze detaillierte Filter für die Rohdaten zu definieren, bedient sich GeForMT eines bildhaften Ansatzes, um Gesten zu beschreiben. Die Konzeption von Gesten wird unterstützt, indem beispielsweise in einem frühen Stadium der Entwicklung Konflikte zwischen ähnlichen Gesten aufgedeckt werden. Die formalisierten Gesten lassen sich direkt in den Code einbetten und vereinfachen damit die Programmierung. Das zugrundeliegende Framework sorgt für die Verbindung zu den Algorithmen der Gestenerkennung. Die Übertragung des semiotischen Ansatzes zur Formalisierung auf andere Formen gestischer Eingabe wird abschließend diskutiert.
|
247 |
LWiSSy: uma linguagem espec?fica de dom?nio para modelagem de sistemas de redes de sensores e atuadores sem fioDantas, Priscilla Victor 28 September 2012 (has links)
Made available in DSpace on 2014-12-17T15:48:05Z (GMT). No. of bitstreams: 1
PriscillaVD_DISSERT.pdf: 2033070 bytes, checksum: 27c8a6f6a0e802c19b0f74553cc6db23 (MD5)
Previous issue date: 2012-09-28 / The field of Wireless Sensor and Actuator Networks (WSAN) is fast increasing and has attracted the interest of both the research community and the industry because of several factors, such as the applicability of such networks in different application domains (aviation, civil engineering, medicine, and others). Moreover, advances in wireless communication and the reduction of hardware components size also contributed for a fast spread of these networks. However, there are still several challenges and open issues that need to be tackled in order to achieve the full potential of WSAN usage. The development of WSAN systems is one of the most relevant of these challenges considering the number of variables involved in this process. Currently, a broad range of WSAN platforms and low level programming languages are available to build WSAN systems. Thus, developers need to deal with details of different sensor platforms and low-level programming abstractions of sensor operational systems on one hand, and they also need to have specific (high level) knowledge about the distinct application domains, on the other hand. Therefore, in order to decouple the handling of these two different levels of knowledge, making easier the development process of WSAN systems, we propose LWiSSy (Domain Language for Wireless Sensor and Actuator Networks Systems), a domain specific language (DSL) for WSAN.
The use of DSLs raises the abstraction level during the programming of systems and modularizes the system building in several steps. Thus, LWiSSy allows the domain experts to directly contribute in the development of WSANs without having knowledge on low level sensor platforms, and network experts to program sensor nodes to meet application requirements without having specific knowledge on the application domain. Additionally, LWiSSy enables the system decomposition in different levels of abstraction according to structural and behavioral features and granularities (network, node group and single node level programming) / As Redes de Sensores e Atuadores Sem Fio (RSASF) v?m emergindo rapidamente e t?m atra?do o interesse da comunidade de pesquisa e da ind?stria, gra?as a v?rios fatores, dentre eles a aplicabilidade desse tipo de rede nos mais diversos dom?nios de aplica??es (avia??o, engenharia civil, medicina, dentre outros). Al?m disso, avan?os na comunica??o sem fio e miniaturiza??o dos componentes de hardware tamb?m contribu?ram para a r?pida prolifera??o dessas redes. Apesar disso, ainda existem alguns desafios a serem transpostos a fim de se atingir o pleno potencial de utiliza??o das RSASF. Dentre estes, o desenvolvimento de sistemas de RSASF aparece como um dos mais relevantes atualmente, haja vista a quantidade de vari?veis envolvidas no processo de desenvolvimento. Atualmente, uma vasta gama de plataformas de RSASF e diversas linguagens de programa??o de baixo n?vel podem ser empregadas no desenvolvimento desses sistemas. Dessa forma, ? necess?rio que o desenvolvedor possua tanto conhecimento de baixo n?vel relativo ? plataforma da RSASF, quanto conhecimento espec?fico do dom?nio de cada uma das aplica??es presentes no sistema. A fim de efetuar o desacoplamento da utiliza??o destes conhecimentos durante o processo de desenvolvimento, de forma a facilitar tal processo, este trabalho prop?e LWiSSy (Domain Language for Wireless Sensor and Actuator Networks Systems), uma linguagem para modelagem de sistemas para RSASF baseada no uso de DSLs (Domain Specific Language). As DSLs, pelo fato de aumentarem o n?vel de abstra??o da programa??o e modularizarem a constru??o de sistemas em v?rias etapas, permitir?o que ambos os especialistas envolvidos (dom?nio e redes) possam contribuir diretamente durante o desenvolvimento do sistema e de maneira mais desacoplada do que ocorre atualmente. Al?m dos benef?cios supracitados, LWiSSy possibilitar? ainda a decomposi??o do sistema em diferentes n?veis de abstra??o, haja vista a necessidade de representar diferentes caracter?sticas (estrutural e comportamental) e granulosidades (programa??o em n?vel de rede, em n?vel de grupos de n?s e em n?vel de n?) em um ?nico sistema
|
248 |
Um m?todo para desenvolvimento de abordagens generativas com composi??o de linguagens espec?ficas de dom?nioCampos Neto, Edmilson Barbalho 05 August 2013 (has links)
Made available in DSpace on 2014-12-17T15:48:08Z (GMT). No. of bitstreams: 1
EdmilsonBCN_DISSERT.pdf: 2688212 bytes, checksum: bae476692f237de556a79c9741333002 (MD5)
Previous issue date: 2013-08-05 / The software systems development with domain-specific languages has
become increasingly common. Domain-specific languages (DSLs) provide increased
of the domain expressiveness, raising the abstraction level by facilitating the
generation of models or low-level source code, thus increasing the productivity of
systems development. Consequently, methods for the development of software
product lines and software system families have also proposed the adoption of
domain-specific languages. Recent studies have investigated the limitations of
feature model expressiveness and proposing the use of DSLs as a complement or
substitute for feature model. However, in complex projects, a single DSL is often
insufficient to represent the different views and perspectives of development, being
necessary to work with multiple DSLs. In order to address new challenges in this
context, such as the management of consistency between DSLs, and the need to
methods and tools that support the development with multiple DSLs, over the past
years, several approaches have been proposed for the development of generative
approaches. However, none of them considers matters relating to the composition of
DSLs. Thus, with the aim to address this problem, the main objectives of this
dissertation are: (i) to investigate the adoption of the integrated use of feature models
and DSLs during the domain and application engineering of the development of
generative approaches; (ii) to propose a method for the development of generative
approaches with composition DSLs; and (iii) to investigate and evaluate the usage of
modern technology based on models driven engineering to implement strategies of
integration between feature models and composition of DSLs / A utiliza??o de linguagens espec?ficas de dom?nios para o desenvolvimento
de sistemas de software tem se tornado cada vez mais comum. Elas propiciam um
aumento da expressividade do dom?nio, elevando o seu n?vel de abstra??o atrav?s
de facilidades para gera??o de modelos ou c?digos de baixo-n?vel, que aumentam
assim a produtividade do desenvolvimento de sistemas. Como consequ?ncia,
m?todos para o desenvolvimento de linhas de produtos de software e fam?lias de
sistemas tamb?m t?m proposto a utiliza??o de linguagens espec?ficas de dom?nio
(domain-specific languages DSLs). Estudos recentes t?m investigado os limites de
expressividade do modelo de features, e propondo o uso de DSLs em sua
substitui??o ou complemento. Contudo, em projetos complexos, uma ?nica DSL
muitas vezes ? insuficiente para representar as diferentes vis?es e perspectivas do
desenvolvimento, sendo necess?rio trabalhar com m?ltiplas DSLs. Com isso surgem
novos desafios, tais como a ger?ncia de consist?ncia entre as DSLs, e a
necessidade de m?todos e ferramentas que ofere?am suporte ao desenvolvimento
com m?ltiplas DSLs. Ao longo dos ?ltimos anos, diversas abordagens t?m sido
propostas para o desenvolvimento de abordagens generativas, entretanto, nenhuma
delas considera quest?es relacionadas ? composi??o de DSLs. Assim, visando
abordar tal problem?tica, os principais objetivos desta disserta??o s?o: (i) investigar
a ado??o do uso integrado de modelos de features e DSLs tanto na engenharia de
dom?nio quanto de aplica??o de desenvolvimento de abordagens generativas; (ii)
propor um m?todo para o desenvolvimento de abordagens generativas com
composi??o de DSLs; e (iii) investigar e avaliar o uso de tecnologias atuais de
engenharia dirigida por modelos na implementa??o de estrat?gias de integra??o
entre modelos de features e composi??o de DSLs
|
249 |
[en] LINDAX.: A LANGUAGE FOR DESCRIBING ADAPTABLE COMMUNICATION SYSTEMS / [pt] LINDAX: UMA LINGUAGEM DE DESCRIÇÃO DE SISTEMAS DE COMUNICAÇÃO ADAPTÁVEISANTONIO TADEU AZEVEDO GOMES 25 August 2005 (has links)
[pt] No cenário atual do setor de telecomunicações, percebe-se
uma tendência
crescente em direção ao uso de sistemas de comunicação que
permitam a criação
rápida e de baixo custo de serviços. Na busca por
arquiteturas de rede que
respondam a essa tendência, vários grupos têm centrado seus
esforços em
pesquisas na área de redes programáveis. O surgimento da
tecnologia de
processamento de rede no mercado de equipamentos de
telecomunicações abriu
ainda maior espaço para pesquisas nessa área. Nesse
contexto, é imprescindível
que os processos de criação de serviços sejam bem
estruturados e, o quanto
possível, sistemáticos. Esta tese, inserida em um projeto
desenvolvido no
Laboratório TeleMídia da PUC-Rio, adota uma abordagem de
criação de serviços
em que técnicas de Arquitetura de Software e de
Desenvolvimento Baseado em
Componentes são aplicadas consistentemente e de modo
ubíquo, desde
especificações de alto nível de serviços até a
implementação de software básico
em unidades programáveis de processamento de rede. Os
objetivos principais são
expressar a adaptabilidade de múltiplos aspectos nesses
serviços e,
simultaneamente, reduzir a sobrecarga cognitiva em
projetistas e programadores,
decorrente dessa multiplicidade de aspectos. Para isso, foi
desenvolvida uma
linguagem de especificação baseada em XML, chamada Lindax,
que permite
descrever arquiteturalmente diversos aspectos de sistemas
de comunicação - por
meio de um arcabouço sintático único para DSLs - e
restrições de adaptação em
cada aspecto particular - por meio de estruturas de estilos
arquiteturais.
Complementando o trabalho, um conjunto de ferramentas de
manipulação de
descrições arquiteturais em LindaX é definido. Essas
ferramentas permitem o
refinamento para diferentes linguagens formais ou a síntese
de configurações e
mecanismos de controle de adaptações para diversas
plataformas. / [en] It is increasingly noticeable, in the current
telecommunications market, a
trend towards using communication systems that allow rapid
and cheap
deployment of new services. In pursuit of network
architectures that keep up with
such trend, significant research has been carried out on
programmable networks.
This field is set to gain further impetus from developments
in network
processor-based equipment. In this context, it is crucial
that service creation
processes be well structured and, as far as possible,
systematic. This thesis, which
is part of an ongoing project at the TeleMídia Laboratory,
PUC-Rio, adopts a
service creation approach in which techniques from Software
Architecture and
Component-Based Software Development are uniformly and
ubiquitously applied
at all levels of a communication system, ranging from high-
level service
specifications to low-level software implementation running
in network
processors. The main aim is to express adaptibility in
cross-cutting service aspects
and, meanwhile, cut down on the cognitive overhead usually
imposed upon
designers and programmers due to such multiplicity of
concerns. For the sake of
the aforementioned aim, an XML-based specification
language, called LindaX,
has been developed. Such language allows various system
aspects to be
architecturally described - by means of a single syntactic
framework for DSLs -
as well as adaptable in a constrained way - through style
structures.
Complementing the work, a toolset for handling LindaX
architecture descriptions
has been defined, which allows their refinement to
different formal languages or
their synthesis onto system configurations and adaptation
controlling mechanisms
for diverse platforms.
|
250 |
A DSEL in C++ for lowest-order methods for diffusive problem on general meshes / Programmation générative appliquée au prototypage d'Applications performantes sur des architectures massivement parallèles pour l'approximation volumes finis de systèmes physiques complexesGratien, Jean-Marc 27 May 2013 (has links)
Les simulateurs industriels deviennent de plus en plus complexes car ils doivent intégrer de façon performante des modèles physiques complets et des méthodes de discrétisation évoluées. Leur mise au point nécessite de gérer de manière efficace la complexité des modèles physiques sous-jacents, la complexité des méthodes numériques utilisées, la complexité des services numériques de bas niveau nécessaires pour tirer parti des architectures matérielle modernes et la complexité liée aux langages informatiques. Une réponse partielle au problème est aujourd'hui fournie par des plate-formes qui proposent des outils avancés pour gérer de façon transparente la complexité liée au parallélisme. Cependant elles ne gèrent que la complexité du matériel et les services numériques de bas niveau comme l'algèbre linéaire. Dans le contexte des méthodes Éléments Finis (EF), l'existence d'un cadre mathématique unifié a permis d'envisager des outils qui permettent d'aborder aussi la complexité issue des méthodes numériques et celle liée aux problèmes physiques, citons, par exemple, les projets Freefem++, Getdp, Getfem++, Sundance, Feel++ et Fenics. Le travail de thèse a consisté à étendre cette approche aux méthodes d'ordre bas pour des systèmes d'EDPs, méthodes qui souffraient jusqu'à maintenant d'une absence d'un cadre suffisamment général permettant son extension à des problèmes différents. Des travaux récents ont résolue cette difficulté, par l'introduction d'une nouvelle classe de méthodes d'ordre bas inspirée par les éléments finis non conformes. Cette formulation permet d'exprimer dans un cadre unifié les schémas VF multi-points et les méthodes DFM/VFMH. Ce nouveau cadre a permis la mise au point d'un langage spécifique DSEL en C++ qui permet de développer des applications avec un haut niveau d'abstraction, cachant la complexité des méthodes numériques et des services bas niveau garanties de haute performances. La syntaxe et les techniques utilisées sont inspirée par celles de Feel++. Le DSEL a été développé à partir de la plate-forme Arcane, et embarqué dans le C++. Les techniques de DSEL permettent de représenter un problème et sa méthode de résolution avec une expression, parsée à la compilation pour générer un programme, et évaluée à l'exécution pour construire un système linéaire que l'on peut résoudre pour trouver la solution du problème. Nous avons mis au point notre DSEL à l'aide d'outils standard issus de la bibliothèque Boost puis l'avons validé sur divers problèmes académiques non triviaux tels que des problèmes de diffusion hétérogène et le problème de Stokes. Dans un deuxième temps, dans le cadre du projet ANR HAMM (Hybrid Architecture and Multiscale Methods), nous avons validé notre approche en complexifiant le type de méthodes abordées et le type d'architecture matérielle cible pour nos programmes. Nous avons étendu le formalisme mathématique sur lequel nous nous basons pour pouvoir écrire des méthodes multi-échelle puis nous avons enrichi notre DSEL pour pouvoir implémenter de telles méthodes. Afin de pouvoir tirer partie de façon transparente des performances de ressources issues d'architectures hybrides proposant des cartes graphiques de type GPGPU, nous avons mis au point une couche abstraite proposant un modèle de programmation unifié qui permet d'accéder à différents niveaux de parallélisme plus ou moins fin en fonction des spécificités de l'architecture matérielle cible. Nous avons validé cette approche en évaluant les performances de cas tests utilisant des méthodes multi-échelle sur des configurations variés de machines hétérogènes. Pour finir nous avons implémenté des applications variées de type diffusion-advection-réaction, de Navier-Stokes incompressible et de type réservoir. Nous avons validé la flexibilité de notre approche et la capacité qu'elle offre à appréhender des problèmes variés puis avons étudié les performances des diverses implémentations. / Industrial simulation software has to manage : the complexity of the underlying physical models, usually expressed in terms of a PDE system completed with algebraic closure laws, the complexity of numerical methods used to solve the PDE systems, and finally the complexity of the low level computer science services required to have efficient software on modern hardware. Nowadays, this complexity management becomes a key issue for the development of scientific software. Some frameworks already offer a number of advanced tools to deal with the complexity related to parallelism in a transparent way. However, all these frameworks often provide only partial answers to the problem as they only deal with hardware complexity and low level numerical complexity like linear algebra. High level complexity related to discretization methods and physical models lack tools to help physicists to develop complex applications. New paradigms for scientific software must be developed to help them to seamlessly handle the different levels of complexity so that they can focus on their specific domain. Generative programming, component engineering and domain-specific languages (either DSL or DSEL) are key technologies to make the development of complex applications easier to physicists, hiding the complexity of numerical methods and low level computer science services. These paradigms allow to write code with a high level expressive language and take advantage of the efficiency of generated code for low level services close to hardware specificities. In the domain of numerical algorithms to solve partial differential equations, their application has been up to now limited to Finite Element (FE) methods, for which a unified mathematical framework has been existing for a long time. Such kinds of DSL have been developed for finite element or Galerkin methods in projects like Freefem++, Getdp, Getfem++, Sundance, Feel++ and Fenics. A new consistent unified mathematical frame has recently emerged and allows a unified description of a large family of lowest-order methods. This framework allows then, as in FE methods, the design of a high level language inspired from the mathematical notation, that could help physicists to implement their application writing the mathematical formulation at a high level. We propose to develop a language based on that frame, embedded in the C++ language. Our work relies on a mathematical framework that enables us to describe a wide family of lowest order methods including multiscale methods based on lowest order methods. We propose a DSEL developed on top of Arcane platform, based on the concepts presented in the unified mathematical frame and on the Feel++ DSEL. The DSEL is implemented with the Boost.Proto library by Niebler, a powerful framework to build a DSEL in C++. We have proposed an extension of the computational framework to multiscale methods and focus on the capability of our approach to handle complex methods.Our approach is extended to the runtime system layer providing an abstract layer that enable our DSEL to generate efficient code for heterogeneous architectures. We validate the design of this layer by benchmarking multiscale methods. This method provides a great amount of independent computations and is therefore the kind of algorithms that can take advantage efficiently of new hybrid hardware technology. Finally we benchmark various complex applications and study the performance results of their implementations with our DSEL.
|
Page generated in 0.0702 seconds