13
Programação orientada a Aspectos Radio Manager System

Programação orientada a Aspectos Radio Manager System

Embed Size (px)

Citation preview

Page 1: Programação orientada a Aspectos Radio Manager System

Programação orientada a AspectosRadio Manager System

Page 2: Programação orientada a Aspectos Radio Manager System

Equipe

•Caio César Neves de Oliveira•João da Rocha Pascoal Neto•João Paulo Sabino de Moraes•Mário Barbosa de Araújo Júnior•Tiago Farias Silva

Page 3: Programação orientada a Aspectos Radio Manager System

Radio Manager System - RMS

•Sistema de organização e gerenciamento de estações de rádio FM

•Visa facilitar o trabalho da equipe organizadora de eventos da estação

•Oferece suporte a decisões relativas à programação da rádio FM▫Geração de Relatórios▫Estatísticas▫Dados pessoais e financeiros

Page 4: Programação orientada a Aspectos Radio Manager System

Principais funcionalidades• Gerenciar funcionários• Gerenciar programas da rádio• Gerenciar músicas• Gerar relatório financeiro• Gerar relatório de RH

• Número de classes: 68• Número de linhas de código: 15.034

Page 5: Programação orientada a Aspectos Radio Manager System

Concerns

•Interface Gráfica▫Direcionado para a classe da GUI

•Fachada▫Direcionado para a classe Fachada e

Interface•Transação

▫Espalhado em diversas classes que realizam transação

•Negócio▫Espalhado em todas as classes de negócio

Page 6: Programação orientada a Aspectos Radio Manager System

Concerns•Controle de Negócio

▫Espalhado nas classes que controlam funcionalidades de outras classes

•Exceção▫Relacionado às classes de Excção do sistema

•Dados▫Direcionado às classes que se comunicam com

classes de transação•Debug

▫Relacionado com comandos de print para debug

Page 7: Programação orientada a Aspectos Radio Manager System

Concerns•Foram considerados concerns, requisitos

satisfatórios ao objetivo geral do nosso sistema.

• Interface, exceção, negócios e dados são necessários para estabelecer a base do sistema.

•Os concerns 'transação' e 'controle de negócios' são úteis ao banco de dados e às técnicas de manipulação de dados respectivamente.

Page 8: Programação orientada a Aspectos Radio Manager System

Problemas surgidos e dúvidas quanto aos concerns•Houve dúvida quanto a criação do

concern Fachada possuindo Fachada e Interface

•Impossibilidade de criação do concern Eventos

•Os concerns possuem apenas o nome dos métodos ou os atributos das classes▫Deficiências do ConcernTagger

Page 9: Programação orientada a Aspectos Radio Manager System

Atividade de atribuição de concerns•10.222 linhas de códigos marcadas•Tempo total levado para marcar: 9-12h,

14-17h = aproximadamente 6h•Não há trechos de código pertencente a

mais de um concern

Page 10: Programação orientada a Aspectos Radio Manager System

Código relacionado

Page 11: Programação orientada a Aspectos Radio Manager System

Código relacionado

Page 12: Programação orientada a Aspectos Radio Manager System

Métricas

Page 13: Programação orientada a Aspectos Radio Manager System

Conclusões

•As métricas ajudaram a identificar os concerns com maiores focos de crosscutting

•Foram geradas pelo framework ConcernTagger e tudo depende se identificarmos corretamente os concerns pra cada atributo e método

•Debug é um exemplo de concern que não é cross-cutting

•Negócio e Transação são exemplo de cross-cutting concerns em relação a Dados