19,178 research outputs found

    Automatic Layout of Data Flow Diagrams in KIELER and Ptolemy II

    Get PDF
    Data flow diagrams are successfully applied in the area of model-based design of complex embedded systems. However, their creation and maintenance can be very time-consuming, because many tools offer little support for the editing and visualization of graphical models. The KIELER project explores new concepts for the pragmatics of graphical modeling and develops algorithms for automatic layout of specific classes of diagrams. These concepts and algorithms are implemented as extensions of the Eclipse framework, which offers generic approaches to create IDEs for graphical modeling. We have developed a specialized layout algorithm for data flow diagrams. In addition to the embedding in KIELER, we applied this algorithm to Ptolemy, a framework for research on models of computation for use in embedded systems. The results show that our algorithm is well suited for the actor oriented diagrams of Ptolemy, and it can serve as a basis to facilitate the editing of Ptolemy diagrams

    Using One-Dimensional Compaction for Smaller Graph Drawings

    Get PDF
    We review the technique of one-dimensional compaction and use it as part of two new methods tackling problems in the context of automatic diagram layout: First, a postprocessing of the layer-based layout algorithm, also known as Sugiyama layout, and second a placement algorithm for connected components with external extensions. We apply our methods to dataflow diagrams from practical applications and find that the first method significantly reduces the width of left-to-right drawn diagrams. The second method allows to properly arrange disconnected graphs that have hierarchycrossing edges. Keywords: one-dimensional compaction, diagram layout, layer-based layout, Sugiyama layout, disconnected graphs, dataflow diagram

    Drawing Layered Hypergraphs

    Get PDF
    Orthogonally drawn hypergraphs have important applications, e.g. in actor-oriented data flow diagrams for modeling complex software systems. Graph drawing algorithms based on the approach by Sugiyama et al. place nodes into consecutive layers and try to minimize the number of edge crossings by finding suitable orderings of the nodes in each layer. With orthogonal hyperedges, however, the exact number of crossings is not determined until the edges are actually routed in a later phase of the algorithm, which makes it hard to evaluate the quality of a given node ordering beforehand. In this report, we present and evaluate two crossing counting algorithms that predict the number of crossings between orthogonally routed hyperedges much more accurately than previous methods. We also describe methods for routing hyperedges that span multiple layers and for handling junction points

    Design and implementation of the Quarc network on-chip

    Get PDF
    Networks-on-Chip (NoC) have emerged as alternative to buses to provide a packet-switched communication medium for modular development of large Systems-on-Chip. However, to successfully replace its predecessor, the NoC has to be able to efficiently exchange all types of traffic including collective communications. The latter is especially important for e.g. cache updates in multicore systems. The Quarc NoC architecture has been introduced as a Networks-on-Chip which is highly efficient in exchanging all types of traffic including broadcast and multicast. In this paper we present the hardware implementation of the switch architecture and the network adapter (transceiver) of the Quarc NoC. Moreover, the paper presents an analysis and comparison of the cost and performance between the Quarc and the Spidergon NoCs implemented in Verilog targeting the Xilinx Virtex FPGA family. We demonstrate a dramatic improvement in performance over the Spidergon especially for broadcast traffic, at no additional hardware cost

    Edge Label Placement in Layered Graph Drawing

    Get PDF
    Many visual languages based on node-link diagrams use edge labels. We describe different strategies of placing edge labels in the context of the layered approach to graph drawing and investigate ways of encoding edge direction in labels. We evaluate the label placement strategies based on both common aesthetic criteria and a controlled experiment. We find that placing labels on their edge can lead to more compact diagrams. Also, placing labels with additional arrows indicating edge direction can help users navigate in large diagrams and is generally preferred by participants of our experiment, outperforming other ways of indicating edge direction

    Solar Splash Senior Design Project

    Get PDF
    Indiana University Purdue University IndianapolisThe Solar Splash senior project is the first attempt at creating an entirely solar propelled watercraft. The initial project intent was to design and create a supplement meets the specifications and compete in the competition. With this in mind, a budget approach was taken in order to be able to fund the task at hand. As the project progressed toward the end of the low-level design phase it was evident that the competition would not occur. At the midpoint of the project, the goals and objectives had changed entirely. The new focus was targeted at proving the operation of the systems involved in the watercraft. Having been faced with a new series of objectives and an entirely new scope, the project began to appear doable. The primary focus of the project at this point entirely relied on simulation data and data analysis. The idea was not reinventing the wheel but rather verifying that the wheel rolled. Using the designed propulsion, solar and sensors systems, with the help of a combination of software programs, the idea of a budget solution can be seen. The software used tell the story of the boat that would have been created had the project continued down the original proposed path. As systems were tested and analyzed, they were also adjusted and improved upon. The analysis process consumed a lot of time but acted as a highlighter for all the flaws that the system suffered from. This document introduces the design concepts and schematics of the Solar Splash senior design project. Within are detailed drawings and diagrams for the electrical systems devised for the construction operation of the watercraft. This report is a means of displaying the layout of the final product and how all systems tie together. The report will contain detailed information on not only hardware aspects but also software and how those will bridge together. The report is meant to be in layman’s terms and should be easily interpreted at all levels. The bulk of the information found in the report will be found in the testing sections where analysis of a theoretical boat is done. The motor design, solar design, and fluid dynamic analysis of the boat hull and propeller can be found in their respective section. The innerworkings, testing processes and thoughts behind each decision can also be found in these sections. The document begins with a table of contents identifying each main and subcategory of information. The next page is the document identification, revision history, and lesser known definitions. Following that is the introduction and scope. Specification requirements for the ‘general requirements’, ‘electrical requirements’ and ‘mechanical requirements’ are found on the following page. A system flowchart can be found in the high-level Design along with the design decision matrices for each system. The design portion then begins starting with the System-wide design changes and decisions. The hardware and software designs and schematics follow and cover the proposed schematics and drawings for the system. Cost breakdowns for each individual system are also found in the low-level section. Testing methodologies, results and an explanation of the testing software can be found after the low-level design. A summation of all these testing results is found near the tail of the document. Conclusions, recommendations, and appendixes can be found as the last three sections, respectively.Electrical Engineering Technolog

    The walking robot project

    Get PDF
    A walking robot was designed, analyzed, and tested as an intelligent, mobile, and a terrain adaptive system. The robot's design was an application of existing technologies. The design of the six legs modified and combines well understood mechanisms and was optimized for performance, flexibility, and simplicity. The body design incorporated two tripods for walking stability and ease of turning. The electrical hardware design used modularity and distributed processing to drive the motors. The software design used feedback to coordinate the system and simple keystrokes to give commands. The walking machine can be easily adapted to hostile environments such as high radiation zones and alien terrain. The primary goal of the leg design was to create a leg capable of supporting a robot's body and electrical hardware while walking or performing desired tasks, namely those required for planetary exploration. The leg designers intent was to study the maximum amount of flexibility and maneuverability achievable by the simplest and lightest leg design. The main constraints for the leg design were leg kinematics, ease of assembly, degrees of freedom, number of motors, overall size, and weight

    Live Visualization of Database Behavior for Large Software Landscapes: The RACCOON Approach

    Get PDF
    Databases are essential components within large software landscapes, since they are employed in almost every information system. Based on the growing complexity of software systems and a steadily increasing amount of data which is collected, processed, and stored in databases, it is difficult to obtain a live overview of these software landscapes. This often leads to an insufficient knowledge of the actual internal structure and behavior of employed databases. Furthermore, databases are often involved in performance issues within information systems. A solution to these problems is employing live visualizations of databases and related communication from applications within the software landscape. These visualizations allow operators to understand their databases in detail and to analyze database queries performed by applications. Based on established visualization concepts like the entity relationship diagrams and the 3D city metaphor, operators can be supported in the task of database comprehension. Established monitoring techniques, like dynamic and static analysis, can be used to capture necessary information from applications and databases. In this paper, we present our live visualization approach of databases and associated communication for large software landscapes. Our visualization offers two different views – a landscape-level and a database-level perspective. The landscape-level perspective provides an overview of monitored applications and related databases. The database-level perspective reveals database schemas within a database, shows contained tables and relationships, and allows for the inspection of executed queries based on the monitoring information collected at runtime

    Generating graphical and projectional editors

    Full text link
    En ingénierie dirigée par les modèles, les langages spécifiques au domaine (DSL) offrent des notations adaptées à un domaine précis pour représenter ses différents concepts. De nombreux outils permettent la définition de DSLs en explicitant les relations entre un concept et ses représentations. En fonction de la sémantique du domaine, l’ingénieur du langage peut choisir entre des notations textuelles ou graphiques. Les langages de modélisation graphique nécessitent une gestion de la position, la taille et la disposition des éléments visuels afin de maximiser leur expressivité visuelle. La plupart des éditeurs de modélisation manquent de support automatique pour gérer ces propriétés de la syntaxe concrète. Les éditeurs projectionnels permettent aux utilisateurs de se concentrer sur la conception de leur modèle en limitant les modifications de la syntaxe concrète. Cependant, bien qu’ils offrent de multiples notations, ces éditeurs ne permettent pas la création de langage graphique. Dans ce mémoire, nous proposons une nouvelle approche pour concevoir des éditeurs graphiques et projectionnels. Nous avons créé une extension d’un éditeur projectionnel orienté vers le web, Gentleman, qui nous a permis d’extraire différentes exigences. Au cours du mémoire, nous décrivons leurs impacts sur les projections et proposons des lignes directrices ainsi que des exemples d’implémentation. Comme l’édition projectionnelle demande une gestion spécifique de l’interaction, nous présentons différentes approches pour interagir avec les représentations graphiques utilisant les nouvelles informations disponibles dans les projections. Étant donné que la plupart des exigences se concentrent sur la disposition des projections, nous avons défini plusieurs algorithmes simples de disposition qui couvrent une large gamme de structures pouvant être retrouvées dans un éditeur graphique. Enfin, afin d’évaluer cette approche, nous avons exploré la génération de trois éditeurs graphiques et projectionnels pour différents domaines: les machines d’états, les diagrammes de séquences et les partitions de musique.In model-driven engineering, domain specific-languages (DSL) provide tailored notations towards a specific problem domain to represent its different concepts. Multiple tools allow the definition of DSL by specifying the relations between a concept and its representations. Depending on the semantics of the domain, the language engineer can choose between textual or graphical notations. Graphical modeling languages require proper management of position, size, and layout to maximize their visual expressiveness. Most modeling editors lack automated support to manage these graphical concrete syntax properties. It is a time-consuming effort that affects the understandability of the model. Projectional editors prevent end-users from modifying the concrete syntax so they can focus on the modeling task. However, while they offer multiple notations, these editors lack support for graphical languages. During this thesis, we propose a new approach to design graphical and projectional editors. We created an extension of a web-oriented projectional editor, Gentleman, that allowed us to extract different requirements. During the thesis, we describe their impact on the projections and propose guidelines and examples of implementation. Because projectional editing requires specific management of the interaction, we present multiple approaches to interact with the graphical representations, using the new information available in the graphics. Since most of the requirements were focusing on the disposition of the projection, we define multiple simple layout algorithms that cover a large range of structures that can be found in a graphical editor. Finally, we explore the generation of three graphical and projectional editors for different domains: statecharts, sequence diagrams, and music sheet

    Transient View Generation in Eclipse

    Get PDF
    Graph-based model visualizations can effectively communicate information, but their creation and maintenance require a lot of manual effort and hence reduce productivity. In this report we build on the concept of Model Driven Visualization by presenting a meta model for graphical views and an infrastructure for configurable automatic layout. This enables the transient views approach, in which we efficiently derive and draw graph representations from arbitrary models
    • …
    corecore