• Refine Query
  • Source
  • Publication year
  • to
  • Language
  • 12
  • 9
  • 4
  • 4
  • 3
  • 2
  • 2
  • 2
  • Tagged with
  • 39
  • 15
  • 11
  • 11
  • 8
  • 8
  • 6
  • 6
  • 6
  • 5
  • 4
  • 4
  • 4
  • 3
  • 3
  • About
  • The Global ETD Search service is a free service for researchers to find electronic theses and dissertations. This service is provided by the Networked Digital Library of Theses and Dissertations.
    Our metadata is collected from universities around the world. If you manage a university/consortium/country archive and want to be added, details can be found on the NDLTD website.
21

Visualizing, Assessing and Re-Modularizing Object-Oriented Architectural Elements

Abdeen, Hani 24 November 2009 (has links) (PDF)
To cope with the complexity of large object-oriented software systems, developers organize classes into subsystems using the concepts of module or package. Such modular structure helps software systems to evolve when facing new requirements. The organization of classes into packages and/or subsystems represents the software modularization. the software modularization usually follows interrelationships between classes. Ideally, packages should to be loosely coupled and cohesive to a certain extent. However, Studies show that as software evolves to meet requirements and environment changes, the software modularization gradually drifts and looses quality. As a consequence, the software modularization must be maintained. It is thus important to understand, to assess and to optimize the organization of packages and their relationships. Our claim is that the maintenance of large and complex software modularizations needs approaches that help in: (1) understanding package shapes and relationships; (2) assessing the quality of a modularization, as well as the quality of a single package within a given modularization; (3) optimizing the quality of an existing modulariza- tion. In this thesis, we concentrate on three research fields: software visualizations, metrics and algorithms. At first, we define two visualizations that help maintainers: (1) to understand packages structure, usage and relationships; (2) to spot patterns; and (3) to identify misplaced classes and structural anomalies. In addition to visual- izations, we define a suite of metrics that help in assessing the package design quality (i.e., package cohesion and coupling). We also define metrics that assess the quality of a collection of inter-dependent packages from different view points, such as the degree of package coupling and cycles. Finally, we define a search-based algorithm that automatically reduces package coupling and cycles only by moving classes over existing packages. Our optimization approach takes explicitly into account the origi- nal class organization and package structure. It also allows maintainers to control the optimization process by specifying: (1) the maximal number of classes that may change their packages; (2) the classes that are candidate for moving and the classes that should not; (3) the packages that are candidate for restructuring and the packages that should not; and (4) the maximal number of classes that a given package can entail. The approaches presented in this thesis have been applied to real large object- oriented software systems. The results we obtained demonstrate the usefulness of our visualizations and metrics; and the effectiveness of our optimization algorithm.
22

An object-oriented drawing package in Smalltalk/V /

Mortensen, Sigrid E. January 1991 (has links)
Thesis (M.S.)--Rochester Institute of Technology, 1991. / Includes bibliographical references (p. 80-82).
23

Construção de uma interface KQML em SMALLTALK

Vieira, Richard Gregory Silva January 2000 (has links)
Dissertação (mestrado) - Universidade Federal de Santa Catarina, Centro Tecnológico. / Made available in DSpace on 2012-10-17T21:48:19Z (GMT). No. of bitstreams: 0Bitstream added on 2014-09-25T16:04:49Z : No. of bitstreams: 1 174000.pdf: 1911771 bytes, checksum: 1696907804a5be5e416e1c523ff19078 (MD5) / Com a inteligência artificial distribuída e os sistemas multiagentes, surge também a necessidade de novas formas de comunicação e arquiteturas. Atualmente, já existem diversos modelos de comunicação e linguagens para a comunicação entre agentes. Dentre as várias propostas de linguagem de comunicação entre agentes, o KQML tornou-se um padrão de fato. Existe ainda outra proposta, a FIPA, a qual tem uma linguagem de comunicação entre agentes chamada ACL. Esta proposta, porém, não está tão difundida quanto o KQML. Este trabalho busca a criação de uma biblioteca, ou melhor, de uma interface KQML para o Squeak smalltalk, que tenha como capacidade implementar o tratamento sintático e que provenha facilidades para o tratamento semântico. Propõe ainda a implementação de um tratamento de rede, que permitirá a conexão entre agentes e tratará o envio de mensagens entre os mesmos.
24

Desarrollo de una herramienta gráfica de exploración de robots con ROS

Schkolnik Müller, Demian Aley January 2015 (has links)
Ingeniero Civil en Computación / ROS, un middleware para robots, ofrece gran variedad de herramientas para su utilización. Sin embargo, carece de una importante herramienta: Algo que permita visualizar de forma dinámica sus componentes, y poder así entender sistemas complejos de mejor forma. Esta memoria consistió en desarrollar una herramienta, que es capaz de visualizar, mediante un grafo, un sistema completo creado en ROS, pudiendo ver cuáles son sus distintos componentes y cómo interactúan. Además, la herramienta incluye la opción de visualizar tres tipos de mensajes comunes presentes en ROS. El trabajo se realizó en el lenguaje de programación Smalltalk, y usando el ambiente de desarrollo Pharo. Para las visualizaciones se utilizó el motor de visualizaciones Roassal, basado en Pharo. El trabajo se dividió en cuatro grandes etapas. La primera etapa consistió en un trabajo de investigación, haciendo una revisión de las herramienta a usar en el desarrollo, junto a un análisis de los mensajes comunes de ROS y como se representaban. Esto sería usado en la segunda etapa. La segunda etapa consistió en el desarrollo de una API, que permitiera comunicación entre Pharo y ROS. Para ello se hizo uso de las herramientas de consola presentes en ROS. Junto a la API, se desarrollaron una serie de tests, a modo de robustecer la API frente a posibles cambios en ROS. La tercera etapa consistió en la creación del grafo general de ROS. Este grafo nos muestra el sistema completo creado en ROS, indicándonos también de qué forma interactúan los componentes entre ellos. En esta etapa, la comunicación con ROS se hace exclusivamente a través de la API implementada en la segunda etapa. La cuarta y última etapa consistió en la creación de las visualizaciones para tres mensajes comunes de ROS. Estas visualizaciones son dinámicas, es decir, cambian en tiempo real cuando los mensajes cambian. El presente trabajo presenta primero el estudio previo, explicando las herramientas, lenguajes y funcionalidades que se usarán en el desarrollo. Esta sección también incluye información de herramientas similares existentes, y explica las falencias de éstas y la justificación de la creación de una nueva herramienta. La segunda parte de este trabajo contiene el desarrollo de la herramienta, comenzando por la API, para luego seguir con el grafo general y las visualizaciones. A modo de conclusión, la herramienta creada presenta una manera eficaz y usable de explorar robots creados con ROS, y fue creada de manera modular y extensible, generando algunas visualizaciones de ejemplo. Puede servir como base para un trabajo futuro, que genere más visualizaciones así como también incluya un sistema de inserción de mensajes.
25

Implementing a smalltalk to Java translator

Engelbrecht, Roelof Lourens 05 October 2005 (has links)
A number of essential issues in translating Smalltalk to Java are addressed. The fIrst chapter gives a brief overview of Smalltalk and Java with respect to the relevant language features that will be translated. In the next section a convention is proposed for mapping Smalltalk method selectors to Java method names. The dynamic nature of Smalltalk instance methods is compared with Java's static type model as well as a solution to simulate the dynamic nature of Smalltalk in Java. A Java class hierarchy that parallels the Smalltalk class hierarchy (including the metaclass objects) is suggested. A further proposal is given for translating the dynamic attributes of Smalltalk class methods to the same behaviour to Java. These proposals are used to support ways of mapping both Smalltalk instance methods, as well as Smalltalk class methods to their Java counterparts. Ways of translating Smalltalk class variables, Smalltalk class instance variables and Smalltalk global variables are illustrated. A method for translating Smalltalk blocks to Java inner classes is implemented using Java exceptions to unwind the call stack. Various types of Small talk blocks are translated with increasing complexity. The various types of blocks translated are simple blocks; blocks with references to variables in the enclosing context; blocks with block arguments; blocks that need to refer to their own context executed from other contexts; blocks with multiple exit points as well as nested blocks. Some performance tests to illustrate the impact of using exceptions in Java are also reported. The next section introduces the Small talk grammar with the necessary productions used to implement a parser. Lexical and syntax analysis are explained. A brief overview of a recursive descent parser is given where an example of Smalltalk source code is parsed and all the relevant parse nodes illustrated. The encoding in each parse node to Java source is shown. The last section focuses on similar initiatives being pursued and compares the solutions in the dissertation against them. This dissertation focuses on key areas of the Smalltalk to Java translation process, but a few peculiar and unique Smalltalk features are not addressed. These are discussed in the last section and some suggestions are made on how the translations can be achieved. / Dissertation (MSc (Computer Science))--University of Pretoria, 2006. / Computer Science / unrestricted
26

Aplikace pro vzdálenou editaci DEVS modelů a řízení simulace na simulačním serveru / Application for Remote DEVS Modelling and Simulation

Kolařík, Jan January 2013 (has links)
This thesis describes the design and implementation of an client-server application. This application is used to remote access to models of systems, which are saved on the server. Application also provides editation of the models and their simulation. In the thesis there is a design of Communication Protocol between the client and server too. For the implementation of the client and prototype of the server was used Qt library. Server is realized as a part of existing simulation core (SmallDEVS), which is implemented by Smalltalk.
27

Webový prohlížeč pro Squeak Smalltalk / Web Browser for Squeak Smalltalk

Šlemr, Martin January 2008 (has links)
This Master's thesis is about web browser Scamper in Squeak Smalltalk system environment, it's actual progress, new design and implementation, which respect CSS box model and visual formatting model including tables. Also describe web browsers generally and Internet technologies such HTTP protocol, or structure MIME. Next part of this document is describing Squeak Smalltalk system and it's graphic environment Morphic.
28

Behavior Cards - ett programmeringsverktyg för barn / Behavior Cards - a programming tool for children

Scholz, Robert January 2005 (has links)
This thesis presents the work of developing and testing a programming tool specially designed for children. The purpose of this tool is to make children capable of creating visual simulations and games that consist of actors interacting in a virtual world. The name of the programming tool is Behavior Cards, which comes from the fact that actors are programmed by giving them cards representing different kinds of behaviors. Behaviors are to some extent pre-programmed and can include general events specifying how the actors should act in different situations, in contrast to specifying every possible situation that can occur. The idea is that Behavior Cards should be easier to use than a more traditional text based programming tool, but it should also be expressive within the domain of visual games. These goals can be accomplished by using different types of representations – such as icons, symbols and text – combined with an interaction technique based on direct manipulation of objects. Two versions of Behavior Cards have been developed and tested together with 11-year-old children. The results show that behaviors were useful for programming relatively advanced visual programs in a quick and effective manner, and that the children were able to learn and use the concept for creating simple programs. Further studies are needed to examine if children also can analyze and solve more complex programming problems. / Arbetet som den här uppsatsen beskriver omfattar utveckling och testning av ett programmeringsverktyg för barn. Syftet med verktyget är att barn ska kunna skapa visuella simulationer och spel genom att programmera aktörer som agerar och interagerar med varandra i en värld. Programmeringsverktygets namn är Behavior Cards, vilket kommer av att aktörernas agerande programmeras genom att tilldela dem kort som representerar olika typer av beteenden. Beteenden är till viss del förprogrammerade och kan innehålla generella händelser för hur aktörer ska agera i olika situationer, i motsats till att definiera varje tänkbar situation som kan uppkomma. Tanken är att programmerandet ska vara enklare än med traditionella, textbaserade, programmeringsspråk, men samtidigt kraftfullt inom den specifika domänen. Detta kan åstadkommas genom att använda olika typer av representationer – såsom ikoner, symboler och text – i kombination med en interaktionsteknik baserad på direktmanipulation av objekt. Två prototyper av programmeringsverktyget har utvecklats och testats på barn i 11-årsåldern. Resultaten visar att beteenden är tillämpbart för att programmera relativt avancerade visuella program på ett snabbt och effektivt sätt, och att barnen kunde lära sig och använda konceptet för att skapa enkla program. Det krävs dock fördjupade studier för att ta reda på om barn kan analysera samt lösa mer komplexa programmeringsproblem.
29

Diseño e Implementación de PHANtom, un Lenguaje de Aspectos para Pharo Smalltalk

Galdames Grünberg, Daniel Andrés January 2011 (has links)
La programación orientada a aspectos es un paradigma de programación que intenta solucionar el problema de las funcionalidades transversales, esto es, funcionalidades de la aplicación que están dispersas por muchas áreas del código, y no pueden separarse en forma eficiente usando el paradigma de programación orientada a objetos. Un aspecto representa una funcionalidad transversal de la aplicación. Éste incluye en su definición un pointcut, que representa un conjunto de puntos en la ejecución de la aplicación que van a ser capturados por el aspecto, y un advice, que representa la funcionalidad del aspecto, esto es, el código que va a ser ejecutado en los puntos capturados. En este trabajo se diseñó e implementó un lenguaje de aspectos para el lenguaje de programación Pharo Smalltalk, donde se incluyeron características destacadas de otros lenguajes de aspectos, junto a nuevas funcionalidades que le otorgan un mayor control y flexibilidad al lenguaje desarrollado. El lenguaje desarrollado incluye un sistema de definición de patrones para la definición de los pointcuts, reglas de precedencia globales y a nivel de pointcut. También contiene modificadores de clases similares a las inter-type declarationsde AspectJ, y un sistema de control dinámico en el orden de ejecución de los advice. Para el lenguaje desarrollado se implementó el concepto de membranas computacionales. Éstas son una forma de controlar el alcance que tienen los aspectos en el sistema, permitiendo controlar problemas como la reentrancia en los aspectos, esto es, cuando un aspecto captura un evento desencadenado por sí mismo. Junto a esto, las membranas computacionales son capaces de controlar la visibilidad que los aspectos tienen sobre el sistema donde son instalados. Se creó una suite de test usando el framework para test unitarios de Pharo Smalltalk, para comprobar el correcto funcionamiento del lenguaje desarrollado, además, se comprobó el grado de cobertura de la suite de test usando el software Hapao. Finalmente, se comprobó el funcionamiento del lenguaje de aspectos desarrollado, usándolo para refactorizar algunas partes del software de análisis dinámico de código Spy. Se realizaron algunos benchmark para comprobar el sobrecosto generado por la infraestructura de aspectos desarrollada, donde se pudo apreciar un sobrecosto variable, siendo elevado en algunos casos.
30

Simulační server pro DEVS / Simulation Sever for DEVS

Šimara, Michal January 2013 (has links)
The purpose of this master's thesis was to design and implement the simulation server for the DEVS that is using already existing SmallDEVS system. The work is aimed to description of the DEVS formalism, SmallDEVS and implemented simulation server. This server provides functions to create new DEVS models, edit already existing models and control simulation. In addition server saves information about state changes during the simulation process, so we can find out the state of the model at any simulation time. It allows to analyze this data and get more information about the simulation process, which was not possible until now. There is a complete description of the communication protocol between client and server in this document. If a new function is implemented in the SmallDEVS system, this protocol can be easily updated. A prototype of client was implemented during this project to test the implemented simulation server. The client implements this communication protocol and allows the user to work with the SmallDEVS system on the server.

Page generated in 0.0431 seconds