Spelling suggestions: "subject:"domainspecific anguage"" "subject:"domainspecific 1anguage""
41 |
Approche langage au développement logiciel : application au domaine des systèmes d’informatique ubiquitaireMercadal, Julien 10 October 2011 (has links)
Face à l'augmentation de la taille et de la complexité des systèmeslogiciels, il convient de les décrire à un plus haut niveaud'abstraction (i.e., au-delà du code) avant de concrètement lesimplémenter. Toutefois, l'utilisation de ces descriptions de hautniveau dans les processus de construction et de vérification dessystèmes reste très rudimentaire, ne permettant pas de véritablementguider et faciliter le développement logiciel. Cette thèse propose une nouvelle approche pour rendre plus simple etplus sûr le développement de systèmes logiciels. Cette approche reposesur l'utilisation de langages dédiés et sur un couplage fort entre unecouche de spécification et d'architecture et une couched'implémentation. Elle consiste tout d'abord à décrire à un hautniveau d'abstraction différents aspects, à la fois fonctionnels et nonfonctionnels, d'un système dans la couche de spécification etd'architecture. Ces descriptions sont ensuite analysées et utiliséespour personnaliser la couche d'implémentation, afin de faciliter laconstruction et la vérification du système logiciel. Nous illustrons notre approche dans le domaine de l'informatiqueubiquitaire. À la suite d'une analyse complète du domaine, nous avonsconçu deux langages dédiés à l'orchestration d'objets communicants,Pantaxou et Pantagruel. / The sheer size and complexity of today's software systems posechallenges for both their programming and verification, making itcritical to raise the level of abstraction of software developmentbeyond the code. However, the use of high-level descriptions in thedevelopment process still remains rudimentary, improving and guidingthis process marginally.This thesis proposes a new approach to making software developmentsimpler and safer. This approach is based on the use ofdomain-specific languages and a tight coupling between a specificationand architecture layer, and an implementation layer. It consists ofdescribing functional and non-functional aspects of a software systemat a high level of abstraction, using the specification andarchitecture layer. These high-level descriptions are then analyzedand used to customize the implementation layer, greatly facilitatingthe programming and verification of the software system.We have validated our approach in the domain of pervasive computingsystems development. From a complete domain analysis, we haveintroduced two domain-specific languages, Pantaxou and Pantagruel,dedicated to the orchestration of networked smart devices.
|
42 |
Approche pour le développement de logiciels intégrant des concepts de qualité de service / A step-wise approach for integrating QoS throughout software development processGeoffroy, Stéphanie 12 February 2014 (has links)
Dans les domaines critiques tels que l’avionique, le ferroviaire ou encore l’automobile, il faut, afin de pouvoir certifier un système, démontrer qu’il réalise la fonction pour laquelle il a été conçu, selon des exigences temporelles spécifiées. En effet, un rendu temporel trop long peut rendre des données erronées, et ainsi mettre en danger la sûreté des personnes. Aujourd’hui, la plupart des approches proposent d’assurer ces exigences de Qualité de service au niveau des couches basses, e.g., au travers d’une bande passante déterministe, d’allocation statique d’intervalles de temps, et d’un ordonnancement prédéfini. Ces contraintes assurent que les applications ne peuvent dépasser le temps d’exécution alloué ; les applications récupèrent de ce fait des exigences qui sont découplées de leur fonctionnalité. En revanche, il faut aussi pouvoir certifier des exigences temporelles spécifiques à une application. De là, les garanties au niveau des couches basses ne sont plus suffisantes. Il faudrait pouvoir prendre en compte ces exigences dès la phase de conception des applications. Aujourd’hui, la plupart des approches existant dans ce domaine se concentrent sur le support de QoS à des phases isolées du processus de développement logiciel, empêchant la traçabilité des exigences. Cette thèse propose une approche dirigée par la conception pour supporter les exigences de QoS tout au long du processus de développement logiciel, intégrée dans une méthodologie outillée, appelée DiaSuite. L’extension de QoS enrichit le langage de conception DiaSpec avec la capacité d’instancier les exigences de QoS sur les composants logiciels. Un support de surveillance à l’exécution de ces exigences temporelles est ensuite généré, directement à partir de la spécification. Cette thèse intègre uniformément les concepts temporels avec les concepts de gestion d’erreurs, au travers de la méthodologie DiaSuite, afin de proposer une couche de supervision qui puisse effectuer une reconfiguration applicative, dans le cas de violation de contrat de QoS. Les contributions de cette thèse sont évaluées au regard du respect des critères de cohérence et de conformité, illustrés au travers d’une étude de cas dans le domaine avionique. / In critical domains such as avionics, railways or automotive, to certify a system, it is required to demonstrate that it achieves its function, with respect to specified timing requirements. Indeed, longer-than-predicted function computing can make data erroneous, leading potentially to endanger people lives. Today, most approaches propose to ensure these Quality of Service requirements at platform level, e.g., through deterministic bandwidth, static time slots allocation and predefined scheduling. These constraints ensure applications can’t overpass allocated time slots; applications are then fed with requirements decoupled to their functionality. However, it shall be possible to certify timing requirements, dedicated to an application. Hence, guarantees at platform-level are not sufficient anymore. It should be possible to take into account these requirements from the stage of application design. Today, most of existing approaches in this domain, focus on supporting QoS at individual stages of the software development process, preventing requirements traceability. This thesis proposes a design-driven approach to supporting QoS throughout software development process, integrated in a tool-based methodology, namely DiaSuite. The QoS extension enriches the DiaSpec design language, with the capability to instantiate QoS requirements onto software components. A runtime execution support to monitoring these timing requirements, is then generated, directly from the specification. This thesis uniformly integrates timing concepts with error ones, around DiaSuite methodology, to propose a supervision layer that could lead to application reconfiguration in case of QoS contract violation. Contributions of this thesis are evaluated through respect of coherence and conformance critera, illustrated through a case study in avionics.
|
43 |
Adapting a system-theoretic hazard analysis method for interoperability of information systems in health careCosta Rocha, Oscar Aleixo 25 April 2022 (has links)
The adoption of Health Information Systems (HIS) by primary care clinics and practitioners has become a standard in the healthcare industry. This increase in HIS utilization enables the informatization and automation of many paper-based clinical workflows, such as clinical referrals, through systems interoperability. The healthcare industry defines several interoperability standards and mechanisms to support the exchange of data among HIS. For example, the health authorities, Interior Health and Northern Health, created the CDX system to provide interoperability for HIS across British Columbia using SOAP Web Services and HL7 Clinical Document Architecture (CDA) interoperability standards. The CDX interoperability allows HIS such as Electronic Medical Record (EMR) systems to exchange information with other HIS, such as patients clinical records, clinical notes and laboratory testing results. In addition, to ensure the EMR systems adhere to the CDX specification, these health authorities conduct conformance testing with the EMR vendors to certify the EMR systems. However, conformance testing can only cover a subset of the systems' specifications and a few use cases. Therefore, systems properties that are not closely associated with the systems (i.e. emergent properties) are hard, or even impractical, to assure using only conformance testing. System safety is one of these properties that are particularly significant for EMR systems because it deals with patient safety. A well-known approach for improving systems safety is through hazard analysis. For scenarios where the human factor is an essential part of the system, such as EMR systems, the System-Theoretic Process Analysis (STPA) is more appropriate than traditional hazard analysis techniques. In this work, we perform a hazard analysis using STPA on the CDX conformance profile in order to evaluate and improve the safety of the CDX system interoperability. In addition, we utilize and customize a tool named FASTEN to support and facilitate the analysis. To conclude, our analysis identified a number of new safety-related constraints and improved a few other already specified constraints. / Graduate
|
44 |
Type-Safe Modeling for OptimizationThai, Nhan January 2021 (has links)
Mathematical optimization has many applications in operations research, image processing, and machine learning, demanding not only computational efficiency but also convenience and correctness in constructing complex models. In this work, we introduce HashedExpression, an open-source algebraic modeling lan- guage (AML) that allows users to express unconstrained, box-constrained, and scalar-expressions-constrained optimization problems, aimed at embeddability, type-safety, and high-performance through symbolic transformation and code generation. Written in Haskell, a statically-typed, purely functional program- ming language, HashedExpression places a great emphasis on modeling correct- ness by providing users with a type-safe, correct-by-construction interface that uses Haskell type-level programming to express constraints on correctness which the compiler uses to flag many modelling errors as type errors (at compile time). We show how type-safety can be added in steps, first matching expressions’ shape and then associated physical units. The library implements symbolic ex- pressions with a hashed indexing scheme to implement common subexpression elimination (CSE). It abstracts away details of the underlying lookup table via monadic type class instances. We explain how using symbolic expressions with CSE enables performance-enhance transformations and automatic computation of derivatives without the issue of “expression swelling”. For high-performance purposes, we generate low-level C/C++ code for symbolic expressions and pro- vide bindings to open-source optimization solvers such as Ipopt or L-BFGS-B. We explain how this architecture lays the groundwork for future work on par- allelization including SIMDization and targetting multi-core CPUs and GPUs, and other hardware acceleration. / Thesis / Master of Science (MSc)
|
45 |
Creating An Editor For The Implementation of WorkFlow+: A Framework for Developing Assurance CasesChiang, Thomas January 2021 (has links)
As vehicles become more complex, the work required to ensure that they are
safe increases enormously. This in turn results in a much more complicated
task of testing systems, subsystems, and components to ensure that they are
safe individually as well as when they are integrated. As a result, managing
the safety engineering process for vehicle development is of major interest to all
automotive manufacturers. The goal of this research is to introduce a tool that
provides support for a new framework for modeling safety processes, which can
partially address some of these challenges. WorkFlow+ is a framework that was
developed to combine both data flow and process flow to increase traceability,
enable users to model with the desired granularity safety engineering workflow
for their products, and produce assurance cases for regulators and evaluators
to be able to validate that the product is safe for the users and the public.
With the development of an editor, it will bring WorkFlow+ to life. / Thesis / Master of Applied Science (MASc)
|
46 |
Achieving Full Attack Coverage and Compiling Guidelines for enterpriseLangSadiq, Joshua, Hagelberg, Anton January 2021 (has links)
As the number of digital systems grows yearly, thereis a need for good cyber security. Lack of such security can beattributed to the demand on resources or even knowledge. To fillthis gap, tools such as enterpriseLang can be used by the enduserto find flaws within his system, which he can revise. Thisallows a user with inadequate knowledge of cyber security tocreate safer IT architecture. The authors of this paper took partin the development of enterpriseLang and its improvement. Thiswas done by suggesting improvements based on certain designguidelines, as well as attempting to achieve 100% attack coverageand improving the defense coverage.The results show a coverage increase of 0.6% for a specificmodel’s attack steps. Further more, we find that nearly 84.6%of the compiled guidelines are met, followed by 7.7% that werenot fully met and a similar amount that were non-applicable toenterpriseLang. As the language is still in development, thereremains much work that can improve it. A few suggestionswould be to increase the attack coverage by 100%, increasingthe defense coverage and improving enterpriseLang to fulfill thedesign guidelines, which would ultimately ease future projectswithin this domain. / Då antalet digitala system ständigt ökar göräven behovet för cybersäkerhet. Avsaknad av sådan säkerhet kanåläggas avsaknaden av kunskap och resurser. För att fylla dettagap utvecklas ständigt nya medel. Ett sådant är enterpriseLangsom kan användas av en utvecklare för att hitta säkerhetsbristeri sitt system. Detta tillåter en utvecklare med låg kunskap inomcybersäkerhet att utveckla säkrare system, applikationer och produkter.Skribenterna av denna avhandling tog del i utvecklingenoch förbättringen av enterpriseLang. Detta gjordes genom attföreslå förbättringar baserade på särskilda designriktlinjer ochett försök att uppnå 100 % täckning av attack-steg.Resultaten visar på en ökning av 0.6% anfallstäckning för enspecifik modell. Vidare visar de att 84.6 % av riktlinjerna äruppfyllda, 7.7% var inte uppfyllda och 7.7% var inte relevantaför enterpriseLang. Då språket ännu är i utvecklingsstadietfinns ännu mycket arbete kvar att göra. Några förslag är attöka anfallstäckningen till 100%, öka försvarstäckningen samtförbättra språket så den når upp till alla designriktlinjer. / Kandidatexjobb i elektroteknik 2021, KTH, Stockholm
|
47 |
Validation DSL for client-server applicationsFedorenko, Vitalii M. 10 1900 (has links)
<p>Given the nature of client-server applications, most use some freeform interface, like web forms, to collect user input. The main difficulty with this approach is that all parameters obtained in this fashion need to be validated and normalized to protect the application from invalid entries. This is the problem addressed here: how to take client input and preprocess it before passing the data to a back-end, which concentrates on business logic. The method of implementation is a rule engine that uses Groovy internal domain-specific language (DSL) for specifying input requirements. We will justify why the DSL is a good fit for a validation rule engine, describe existing techniques used in this area and comprehensively address the related issues of accidental complexity, security, and user experience.</p> / Master of Science (MSc)
|
48 |
[en] SHDM.NET: A FRAMEWORK AND DEVELOPMENT ENVIRONMENT DRIVEN BY ONTOLOGIES FOR HYPERMEDIA APPLICATIONS / [pt] SHDM.NET: UM FRAMEWORK E AMBIENTE DE DESENVOLVIMENTO DIRIGIDO POR ONTOLOGIAS PARA APLICAÇÕES HIPERMÍDIALUIZ ANTONIO RICCI 09 April 2007 (has links)
[pt] Esta dissertação apresenta a forma como foi desenvolvida
uma arquitetura
de desenvolvimento dirigida por modelos combinada com um
ambiente de
desenvolvimento para dar apoio ao desenvolvimento de
aplicações Web,
utilizando SHDM/OOHDM como métodos de desenvolvimento.
Os
modelos,
descritos através de uma interface gráfica, são
processados pela ferramenta. A
interface da aplicação também é descrita utilizando
modelos, e a interface
produzida é definida por uma ontologia de interface
concreta, especificada em
RDFS, que faz o mapeamento entre os elementos de
interface
concretos e alguma
tecnologia de destino como ASP.Net e XAML. O principal
objetivo é tornar mais
fácil o desenvolvimento de uma aplicação Web utilizando
Visual Studio 2005
como IDE e SHDM como método de desenvolvimento,
permitindo
que o
arquiteto de software concentre seus esforços na
modelagem
da aplicação. O
SHDM .Net produz uma aplicação completa, criando
linguagens específicas de
domínio para cada modelo desenvolvido. A principal
funcionalidade do SHDM
.Net é a integração entre as fases de análise e de
desenvolvimento de um projeto. / [en] This dissertation presents how a model driven development
architecture and
environment framework to support Web application
development are being
developed using SHDM/OOHDM as development methods. The
models are
described through graphical diagrams that are processed by
the environment. The
application interface is also produced using models, and
the interface produced is
defined by concrete interface ontologies, specified in
RDFS, that maps the
concrete widgets to some target technology such as ASP.Net
and XAML. The
main purpose is to ease the development of a web
application using Visual Studio
.Net 2005 as an IDE and SHDM as the development method,
allowing the
application architect to focus on the application
modeling. SHDM .Net generates
a complete runnable application; also producing domain-
specific languages for
each application modeled, resulting in a programming model
much more concise
and natural. The main feature of SHDM .Net is the
integration between the
analysis and development phases of a project.
|
49 |
Ontologias e DSLs na geração de sistemas de apoio à decisão, caso de estudo SustenAgro / Ontologies and DSLs in the generation of decision support systems, SustenAgro study caseSuarez, John Freddy Garavito 03 May 2017 (has links)
Os Sistemas de Apoio à Decisão (SAD) organizam e processam dados e informações para gerar resultados que apoiem a tomada de decisão em um domínio especifico. Eles integram conhecimento de especialistas de domínio em cada um de seus componentes: modelos, dados, operações matemáticas (que processam os dados) e resultado de análises. Nas metodologias de desenvolvimento tradicionais, esse conhecimento deve ser interpretado e usado por desenvolvedores de software para implementar os SADs. Isso porque especialistas de domínio não conseguem formalizar esse conhecimento em um modelo computável que possa ser integrado aos SADs. O processo de modelagem de conhecimento é realizado, na prática, pelos desenvolvedores, parcializando o conhecimento do domínio e dificultando o desenvolvimento ágil dos SADs (já que os especialistas não modificam o código diretamente). Para solucionar esse problema, propõe-se um método e ferramenta web que usa ontologias, na Web Ontology Language (OWL), para representar o conhecimento de especialistas, e uma Domain Specific Language (DSL), para modelar o comportamento dos SADs. Ontologias, em OWL, são uma representação de conhecimento computável, que permite definir SADs em um formato entendível e accessível a humanos e máquinas. Esse método foi usado para criar o Framework Decisioner para a instanciação de SADs. O Decisioner gera automaticamente SADs a partir de uma ontologia e uma descrição naDSL, incluindo a interface do SAD (usando uma biblioteca de Web Components). Um editor online de ontologias, que usa um formato simplificado, permite que especialistas de domínio possam modificar aspectos da ontologia e imediatamente ver as consequência de suasmudanças no SAD.Uma validação desse método foi realizada, por meio da instanciação do SAD SustenAgro no Framework Decisioner. O SAD SustenAgro avalia a sustentabilidade de sistemas produtivos de cana-de-açúcar na região centro-sul do Brasil. Avaliações, conduzidas por especialistas em sustentabilidade da Embrapa Meio ambiente (parceiros neste projeto), mostraram que especialistas são capazes de alterar a ontologia e DSL usadas, sem a ajuda de programadores, e que o sistema produz análises de sustentabilidade corretas. / Decision Support Systems (DSSs) organize and process data and information to generate results to support decision making in a specific domain. They integrate knowledge from domain experts in each of their components: models, data, mathematical operations (that process the data) and analysis results. In traditional development methodologies, this knowledge must be interpreted and used by software developers to implement DSSs. That is because domain experts cannot formalize this knowledge in a computable model that can be integrated into DSSs. The knowledge modeling process is carried out, in practice, by the developers, biasing domain knowledge and hindering the agile development of DSSs (as domain experts cannot modify code directly). To solve this problem, a method and web tool is proposed that uses ontologies, in the Web Ontology Language (OWL), to represent experts knowledge, and a Domain Specific Language (DSL), to model DSS behavior. Ontologies, in OWL, are a computable knowledge representations, which allow the definition of DSSs in a format understandable and accessible to humans and machines. This method was used to create the Decisioner Framework for the instantiation of DSSs. Decisioner automatically generates DSSs from an ontology and a description in its DSL, including the DSS interface (using a Web Components library). An online ontology editor, using a simplified format, allows that domain experts change the ontology and immediately see the consequences of their changes in the in the DSS. A validation of this method was done through the instantiation of the SustenAgro DSS, using the Decisioner Framework. The SustenAgro DSS evaluates the sustainability of sugarcane production systems in the center-south region of Brazil. Evaluations, done by by sustainability experts from Embrapa Environment (partners in this project), showed that domain experts are capable of changing the ontology and DSL program used, without the help of software developers, and that the system produced correct sustainability analysis.
|
50 |
A Language-centered Approach to support environmental modeling with Cellular AutomataTheisselmann, Falko 13 January 2014 (has links)
Die Anwendung von Methodiken und Technologien aus dem Bereich der Softwaretechnik auf den Bereich der Umweltmodellierung ist eine gemeinhin akzeptierte Vorgehensweise. Im Rahmen der "modellgetriebenen Entwicklung"(MDE, model-driven engineering) werden Technologien entwickelt, die darauf abzielen, Softwaresysteme vorwiegend auf Basis von im Vergleich zu Programmquelltexten relativ abstrakten Modellen zu entwickeln. Ein wesentlicher Bestandteil von MDE sind Techniken zur effizienten Entwicklung von "domänenspezifischen Sprachen"( DSL, domain-specific language), die auf Sprachmetamodellen beruhen. Die vorliegende Arbeit zeigt, wie modellgetriebene Entwicklung, und insbesondere die metamodellbasierte Beschreibung von DSLs, darüber hinaus Aspekte der Pragmatik unterstützen kann, deren Relevanz im erkenntnistheoretischen und kognitiven Hintergrund wissenschaftlichen Forschens begründet wird. Hierzu wird vor dem Hintergrund der Erkenntnisse des "modellbasierten Forschens"(model-based science und model-based reasoning) gezeigt, wie insbesondere durch Metamodelle beschriebene DSLs Möglichkeiten bieten, entsprechende pragmatische Aspekte besonders zu berücksichtigen, indem sie als Werkzeug zur Erkenntnisgewinnung aufgefasst werden. Dies ist v.a. im Kontext großer Unsicherheiten, wie sie für weite Teile der Umweltmodellierung charakterisierend sind, von grundsätzlicher Bedeutung. Die Formulierung eines sprachzentrierten Ansatzes (LCA, language-centered approach) für die Werkzeugunterstützung konkretisiert die genannten Aspekte und bildet die Basis für eine beispielhafte Implementierung eines Werkzeuges mit einer DSL für die Beschreibung von Zellulären Automaten (ZA) für die Umweltmodellierung. Anwendungsfälle belegen die Verwendbarkeit von ECAL und der entsprechenden metamodellbasierten Werkzeugimplementierung. / The application of methods and technologies of software engineering to environmental modeling and simulation (EMS) is common, since both areas share basic issues of software development and digital simulation. Recent developments within the context of "Model-driven Engineering" (MDE) aim at supporting the development of software systems at the base of relatively abstract models as opposed to programming language code. A basic ingredient of MDE is the development of methods that allow the efficient development of "domain-specific languages" (DSL), in particular at the base of language metamodels. This thesis shows how MDE and language metamodeling in particular, may support pragmatic aspects that reflect epistemic and cognitive aspects of scientific investigations. For this, DSLs and language metamodeling in particular are set into the context of "model-based science" and "model-based reasoning". It is shown that the specific properties of metamodel-based DSLs may be used to support those properties, in particular transparency, which are of particular relevance against the background of uncertainty, that is a characterizing property of EMS. The findings are the base for the formulation of an corresponding specific metamodel- based approach for the provision of modeling tools for EMS (Language-centered Approach, LCA), which has been implemented (modeling tool ECA-EMS), including a new DSL for CA modeling for EMS (ECAL). At the base of this implementation, the applicability of this approach is shown.
|
Page generated in 0.073 seconds