conexões de saberes

Download Conexões  de  Saberes

Post on 12-Jan-2016

42 views

Category:

Documents

0 download

Embed Size (px)

DESCRIPTION

Conexes de Saberes. Amirton Chagas Paola Accioly abc@cin.ufpe.br prga@cin.ufpe.br. O Programa Conexes de Saberes. O Conexes de Saberes oferece a jovens universitrios de origem popular a possibilidade de desenvolver a capacidade de produzir conhecimentos cientficos - PowerPoint PPT Presentation

TRANSCRIPT

  • CONEXES DE SABERESAmirton ChagasPaola Accioly

    abc@cin.ufpe.brprga@cin.ufpe.br

  • O PROGRAMA CONEXES DE SABERESO Conexes de Saberes oferece a jovens universitrios de origem popular a possibilidade de desenvolver a capacidade de produzir conhecimentos cientficos

    Criar capacidade de intervir em seu territrio de origem.

    Possibilita a avaliao dos estudantes sobre o impacto das polticas pblicas desenvolvidas em espaos populares.

    Os participantes do programa recebem apoio financeiro e metodolgico.*

  • O PROGRAMA CONEXES DE SABERESEst implementado em diversas universidades do pas, se adequando realidade e as necessidades locais de cada instituio.

    Necessita de um sistema para gerenciar o seu funcionamento

    No necessrio um sistema completamente diferente para cada universidade. Apesar das diferenas em cada local, existe uma vasta base comum a todas as instituies

    Possibilidade de criar uma Linha de Produtos de software para atender as necessidades especficas de cada instituio*

  • ESCOPO DO ESTUDOPara tornar possvel a realizao do estudo de caso por uma equipe reduzida, limitamos o escopo de nosso estudo em Features s reas relacionadas Atividades

    Os refactorings de OO sugeridos ao realizar a anlise de clones foram implementados independente da restrio de escopo acima.

  • FEATURE MODEL

  • FEATURES CADASTROA Feature obrigatra de Cadastro composta por outras 4 features, das quais uma obrigatria e as outras 3 so opcionais

    Tem como objetivo fornecer uma tela de cadastro que se adqe s necessidades do produto, disponibilizando os campos requeridos para cada verso.

  • FEATURES CADASTROMecanismo usado: AOPPermite que posteriormente qualquer um dos outros campos atualmente obrigatrios se torne opcional sem maiores mudanas;Mantm a legibilidade do cdigo base, fato que no ocorreria caso usssemos Compilao Condicional por exemplo.Possibilidade de adaptao ferramenta FLiP

    Alternativas possveis:CGT Mecanismo muito pesado para uma variao simples. Matar mosquito com um canhoPolimorfismo de Subtipo Exigiria a criao de diversas classes muito semelhantes entre si.

  • FEATURES - CADASTROAlternativas possveis:Compilao Condicional Grande impacto na leitura do cdigoParametrizao por Arquivos de Propriedade Foi considerada a segunda melhor opo para esta feature, perdendo para aspectos apenas no fato de no ser suportada por FLiP.

  • FEATURES RELATRIOA Feature opcional de Relatrio composta por mais duas features, opcionais com a possibilidade de ocorrncia simultnea.A possibilidade de existncia das subfeatures de Relatrio est restringida pela escolha dos itens da primeira parteUso de constraints no modelo

    Sua funo gerar relatrios operacionais do programa, auxiliando os gestores a tomar decises de quais novas atividades devem ser criadas, e quais das atuais merecem maior ateno

  • FEATURES - RELATRIOMecanismo usado: AOP + Polimorfismo de SubtipoMotivos semelhantes aos da escolha por AOP em cadastro;O uso de um RelatorioGenerico facilitou a implementao dos Relatrios como um todoPermite que a adio de novos relatrios seja feita de forma transparente, apenas adicionando novos aspectos;Mantm a legibilidade do cdigo base, fato que no ocorreria caso usssemos Compilao Condicional por exemplo.Possibilidade de adaptao ferramenta FLiP

  • FEATURES - RELATRIOAlternativas possveis:Compilao Condicional Impacto na leitura do cdigo, tcnica ficaria muito espalhadaComponentes Seria possvel, porm, assim como CGT para a feature de Cadastro, seria um grande esforo que pode ser resolvido com tcnicas mais simples de mesmo grau de eficincia.

  • REESTRUTURAO DO ESTUDO DE CASOFoi necessria a criao de packages para manter os aspectosFacilitar a implementao, usando within para evitar loops infinitosbr.ufpe.cin.conexao.gui.aspectos

    Parte do cdigo que j existia migrou para os aspectosTodo o cdigo existente que era relacionado com qualquer uma das features passou a ser parte do aspecto desta featureExemplo:br.ufpe.cin.conexao.gui.CadastroAtividade

  • NOVAS VARIAES INTRODUZIDASForam includas as variaes relativas s features de Relatrio por Carga Horria e por Faixa Etria.

  • NOVOS PONTOS DE VARIAOForam includos novos pontos de variao para as features relativas a Relatrios, anteriormente no consideradas.Estes pontos de variao so:Tela principal da GUI (br.ufpe.cin.conexao.gui.FramePrincipal), para adicionar itens de menu que possibilitem a navegao at as telas dos RelatriosO pacote br.ufpe.cin.conexao.gui, que dependendo da incluso ou no da feature ter classes adicionadas ou removidas.

  • CLONES ANTES DA REESTRUTURAO

  • CLONES APS A REESTRUTURAO

  • CLONESAnlise dos clones levou deteco de algumas ms escolhas de projeto utilizadas na implementaoResolvidas comRefatoraes simples com OORemoo de classes sem sentido, stubsSubstituio de objetos de classes ineficientes prprias por outras mais eficientes de Java.Apesar disto, na mdia, o cdigo era bom e precisou de poucas alteraes

    Anlise dos clones no levou a descoberta de novas features / variaes / variation pointsO tamanho reduzido do sistema talvez deva ser levado em conta neste fato

  • DIFICULDADESAmbiente... Foi muito complicado conseguir mquinas no CIn para trabalhar durante os horrios reservados realizao do estudoGrads reservados, e nos que sobram, poucas mquinas que funcionam

    Curva de aprendizado do Captain FeatureNo incio complicado de usar. Aps se acostumar, aceitvel

    Instalao e uso de FLiPA ferramenta se mostrou complicada desde o incio. Resistia a ser instalada em certas mquinas, e em algumas, aps a instalao, simplesmente no funcionava

  • DIFICULDADESTcnicas disponveis em FLiPA disponibilizao de apenas Compilao Condicional e Aspectos em FLiP nos fez voltar nosso estudo basicamente s possibildades de usar estas duas abordagens.Algumas das extraes de FLiP para AOP no funcionaram, o que nos levou a usar a ferramenta no para realizar o estudo como um todo, mas apenas por teste/aprendizado

  • ATIVIDADES TEMPO * Exigiu a programao de novas classes do zero

    AtividadeTcnicaTempoIdentificao de featuresClones e Manualmente05 horasDesenho do modelo de featuresCaptainFeature02 horasOutras atividades iniciais01 horasExtrao das features*FLiP e Manualmente04 horasIncluso dos ponto de variaoManualmente03 horasAdio das variaes*08 horasReestruturao do cdigo*Clones / OO04 horasMontagem do configuration knowledge05 horasOverhead de instalao de FLiP / Problemas com o CIn06 horas

  • CONCLUSESEnquanto na primeira parte do projeto, utilizamos os mecanismos de forma arbitrria, a ttulo de conhecimento para verificar seu funcionamento, nesta parte usamos conscientemente alguns mecanismos, analisando vantagens e desvantagens em relao aos outros disponveisA anlise dos clones fez com que o cdigo ficasse mais limpo, e apesar de no termos encontrado novas features ou variaes, foi muito til.

  • Dvidas?

    *************