Ferramentas

Ferramentas desenvolvidas pelos pesquisadores do LabES.

AIMTool

A ferramenta AIMTool tem como objetivo fornecer apoio automatizado às atividades de modelagem e geração automática de conteúdos educacionais. A ferramenta é baseada na abordagem AIM-CID (Abordagem Integrada de Modelagem - Conceitual, Instrucional e Didática) , a qual estabelece um conjunto de modelos para estruturação e representação do conhecimento. A AIM-Tool permite a construção compartilhada e distribuída dos modelos estabelecidos na AIM-CD (conceitual, instrucional e didático) . Além disso, as especificações derivadas são utilizadas na geração automática de conteúdos, que podem ser personalizados de acordo com interesses pedagógicos, perfil do aprendiz, duração do curso, público-alvo, entre outros parâmetros.

aimtool_logo.jpg
Pascal Mutants

A ferramenta Pascal Mutants possibilita que, nos estágios iniciais do aprendizado da linguagem Pascal, os conceitos relativos ao teste de software, mais especificamente o teste de mutação, sejam introduzidos aos alunos. Para tal, a ferramenta automatiza os vários aspectos relacionados à aplicação desse critério de teste e apresenta uma interface gráfica com o usuário que permite que os usuários interajam com os conceitos introduzidos. Além disso, a implementação do framework serve como um passo inicial para a estruturação, organização e implementação de ferramentas similares.

JaBUTi

O teste de software é uma atividade de difícil realização e, por isso, sujeita a erros e propensa a ter alto custo. Para melhorar a qualidade da atividade de teste, várias técnicas têm sido propostas. O teste estrutural é a técnica que utiliza a estrutura de uma implementação para derivar os requisitos de teste. Exemplos de critérios estruturais são a cobertura de comandos ou de desvios. Da mesma forma, informações de fluxo de dados podem ser utilizadas por critérios estruturais. A JaBUTi é uma ferramenta de suporte ao teste estrutural para programas Java. Nela estão implementados critérios baseados em fluxo de controle e critérios baseados em fluxo de dados. Uma das características que diferenciam a JaBUTi é o fato que toda a análise estática necessária para a realização do teste é feita sobre o programa objeto, ou seja, sobre o bytecode Java e não sobre o programa fonte.

jabuti.jpg
PROGTEST

O ambiente PROGTEST é um ambiente para submissão e avaliação automática de trabalhos de programação baseado em atividades de teste . A ideia é fornecer apoio automatizado para avaliar os programas e casos de teste submetidos pelos alunos. Para isso, ferramentas de teste de cobertura podem ser integradas à PROGTEST, fornecendo apoio para aplicar os critérios de teste e avaliar a cobertura dos casos de teste, obtida a partir de execução dos programas. Tanto a qualidade do código como a qualidade dos testes podem ser analisadas com base nos critérios adotados. Em sua versão atual, a PROGTEST encontra-se integrada à ferramenta JaBUTi, que apóia o teste estrutural de programas e componentes Java.

progtest.gif
GREN-Wizard

GREN Wizard is a tool that helps instantiating the GREN framework for Business Resource Management (Gerenciamento de Recursos de Negócios, in Portuguese).
The wizard was designed so that framework users need only to know the GRN Pattern Language in order to obtain the Smalltalk code for their specific applications. So, the interaction with GREN-Wizard screens is similar to using the GRN Pattern Language. You will be asked what patterns to use, what variants are more appropriate to your specific application, and which classes play each role in the pattern variant used. After, you will be offered several choices to proceed with the application of other patterns of the GRN Pattern Language.

Poke-Tool

A Poke-tool (Potential Uses Criteria TOOL) é uma ferramenta de apoio ao teste estrutural de programa que vem sendo desenvolvida desde 1989 na Faculdade de Engenharia e Computação (FEEC) na Universidade Estadual de Campinas (UNICAMP) e no Instituto de Ciências Matemáticas e de Computação (ICMC) da Universidade de São Paulo (USP). Ela apóia,  especificamente, o teste estrutural de acordo com os critérios todos nós, todos arcos, todos usos, todos c-usos, todos p-usos, todos potenciais usos, todos potenciais usos/du e todos potenciais du-caminhos.

Captor-AO

A Software Product Line (SPL) consists of a set of software systems that share common features and fulfill the specific requirements of a particular domain. In order to make the products instantiation process faster and less prone to errors, the project of a SPL can adopt the utilization of application generators, which can automatically generate the SPL artifacts based on the specification of the variabilities of a particular product. Additionally, it can be noticed that certain crosscutting features of a product line have potencial to be reused in different domains, so they can be implemented using aspect oriented programming (AOP).

In this work, a process is proposed for the development of SPLs and automatic generation of products, considering the crosscutting concerns present in each application domain. The crosscutting concerns are related to the common features that are scattered around program divisions or modules of different domains. The process proposed here has the goal of enhancing the reuse of SPL features using AOP, allowing the design of SPL in a more cohesive way and, thus, easing its maintenance and evolution. Aiming at decreasing the effort needed to instantiate products from these SPL, this work also presents an extension to the Captor application generator, named Captor-AO.

Peônia

O ambiente Peônia foi desenvolvido para facilitar o compartilhamento e a aplicação de Padrões de Software no desenvolvimento de projetos. Como Padrões de Software abrangem várias categorias, podendo ser aplicados em diversos estágios de um projeto, o Ambiente Peônia sugere a aplicação de Padrões de acordo com as etapas de um Processo de Desenvolvimento. O Ambiente Peônia também permite que Requisitos de Teste sejam associados aos Padrões de Software facilitando o teste das aplicações desenvolvidas utilizando os padrões.

GREN

GREN, a framework for Business Resource Management (Gerenciamento de Recursos de Negócios, in Portuguese), is designed to be used by developers of applications in the domain of business resource management. GREN intends to be a gray-box framework, because it is being designed to be used both by inheritance or by composition. For various of the framework hot-spots there will be pre-built classes that can be used by the application developer, but he or she will also have the possibility of making new classes, through inheritance, when necessary.