• Save
Dru - Desenvolvimento para Reuso
Upcoming SlideShare
Loading in...5
×
 

Dru - Desenvolvimento para Reuso

on

  • 493 views

Trabalho de Reengenharia de Sistemas.

Trabalho de Reengenharia de Sistemas.

Statistics

Views

Total Views
493
Views on SlideShare
493
Embed Views
0

Actions

Likes
0
Downloads
0
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Dru - Desenvolvimento para Reuso Dru - Desenvolvimento para Reuso Document Transcript

  • DRU – Desenvolvimento para ReusoJuliana S. Cindra*.*Instituto Federal de Educação, Ciência e Tecnologia Fluminense -Campos dos Goytacazes/RJjucindra@gmail.comAbstract. This paper aims to present the process DRU – Reuse Development,Level C MPS.Br, partially showing how this process has been used in Brazil,which companies use data and some of Level C. And present also sometechniques or procedures that enable the implementation of this process.Resumo. Este trabalho tem como objetivo apresentar o processo DRU –Desenvolvimento para Reuso, do Nível C do MPS.Br, mostrando de formaparcial como este processo tem sido utilizado no Brasil, quais empresasutilizam e alguns dados do Nível C. Bem como apresentar também algumastécnicas ou procedimentos que possibilitam a implantação deste processo.1. MPS.Br (Melhoria de Processos de Software Brasileiro)A qualidade de software é um conjunto de atividades relacionadas com garantia daqualidade de software. E é identificada como umas das áreas de conhecimento daengenharia de software. O MPS.Br é um modelo brasileiro de qualidade de processo desoftware e também um movimento para melhoria da qualidade de software.Além de se basear na realidade do mercado brasileiro de software, o MPS.Brtambém utiliza o CMMI (Integração do modelo de capacidade e maturidade, emportuguês), e as normas ISO IEC 12207 e 15504 como base.A graduação da escala de implementação do MPS.BR varia entre os níveis G aoA, onde o nível G é o menor nível e o nível A é o nível mais elevado da escala. Cadanível trata de um assunto dentro da qualidade de software, e a cada um deles é atingidoum determinado grau de qualidade. Este trabalho focará no Nível C, mas precisamenteno processo DRU, onde os projetos encontram-se em estado definido, podendo assimimplantar tal processo para reutilização.Figura dos níveis do MPS.Br
  • 2. O Nível CO Nível C do MPS.Br equivale ao Nivel 3 do padrão de qualidade CMMI, onde seusprocessos são bem definidos. Esses processos do Nível C são a Gerência de Risco –GRI; a Análise de Decisão e Resolução – ADR; a Gerência de Reutilização – GRU(evolução); e o Desenvolvimento para Reutilização – DRU.Pode-se ser observado alguns dados interessantes sobre as empresas que seencontram nos Nível C do MPS.Br, de acordo com o IMPS (Resultado de desempenhode organizações que adotaram o modelo MPS) [Softex]:[http://www.blogcmmi.com.br/avaliacao/lista-de-empresas-mps-br-no-brasil]Empresas que atingiram o Nível C em 2010:BRQ – RJ (validade até 25.ago.13)BRQ – PR (válido até: 25.fev.13)CAST – SP (validade até 13.ago.13)FÓTON – DF (válido até: 18.mai.13)MONTREAL – RJ (validade até 14.dez.13)PD CASE – MG (validade até 09.set.13)POWERLOGIC – MG (válido até: 09.mar.13)SYNAPSIS – RJ e CE (válido até: 01.jul.12)SYNOS – MG (válido até: 16.jul.12)[http://www.blogcmmi.com.br/avaliacao/lista-de-empresas-mps-br-no-brasil]2.1. O caso PowerlogicDentre estas empresas citadas acima, apenas a empresa Powerlogic até então,teria sido aprovada na avaliação da implantação do processo DRU do Nível C doMPS.Br. Utilizando processos baseados em métodos ágeis (notadamente o Scrum),
  • altamente pragmáticos. Como destaque de sua certificação foi constatado um alto nívelde automação alcançado com o uso de ferramental próprio de AML (ApplicationLifecycle Management), o Powerlogic jAML.Segundo o site da Powerlogic, ela é uma empresa totalmente brasileira quedesenvolve softwares para o mercado corporativo como também para o governo, e épercursora do movimento open source no Brasil. Sua área de atuação seria ofornecimento de soluções JavaEE, e o desenvolvimento de swites de software opensource que abrange todas as áreas do ciclo de vida de um desenvolvimento.De acordo com estas informações seu domínio é bem definido, daí apossibilidade de desenvolver para reuso.3. O processo DRUO desenvolvimento para reutilização talvez pode ser explicado como a identificação deoportunidades de reutilização sistemática na organização, e estabelecimento deprograma de reutilização para o desenvolvimento de ativos a partir de engenharia dedomínios de aplicação.Este processo do Nível C possui alguns resultados esperados para que possa serconsiderado atingigo o objetivo de desenvolver softwares para reutilização, e nãoapenas gerenciar o processo de reúso. Além de utilizar soluções já pensadas, prontas, oobjetivo deste processo é transformar de consumidor de soluções reusáveis parafabricante de tais soluções de reuso. Para isto é nessário que sejam atingidas algumasmetas que são os resultados esperados deste processo, descritos a seguir:DRU 1. Domínios de aplicação em que serão investigadas oportunidades dereutilização ou nos quais se pretende praticar reutilização são identificados, detectandoos respectivos potenciais de reutilização;DRU 2. A capacidade de reutilização sistemática da organização é avaliada eações corretivas são tomadas, caso necessário;DRU 3. Um programa de reutilização, envolvendo propósitos, escopo, metas eobjetivos, é planejado com a finalidade de atender às necessidades de reutilização dedomínios;DRU 4. O programa de reutilização é implantado, monitorado e avaliado;DRU 5. Propostas de reutilização são avaliadas de forma a garantir que oresultado da reutilização seja apropriado para a aplicação alvo;DRU 6. Formas de representação para modelos de domínio e arquiteturas dedomínio são selecionadas;DRU 7. Um modelo de domínio que capture características, capacidades,conceitos e funções comuns, variantes, opcionais e obrigatórios é desenvolvido e seuslimites e relações com outros domínios são estabelecidos e mantidos;DRU 8. Uma arquitetura de domínio descrevendo uma família de aplicaçõespara o domínio é desenvolvida e mantida por todo seu ciclo de vida;
  • DRU 9. Ativos do domínio são especificados; adquiridos ou desenvolvidos, emantidos por todo seu ciclo de vida.4. Desenvolvimento de software para reusoO reuso de software oferece várias vantagens para as empresas e projetos, comoqualidade, economia, eficiência e agilidade. Que é a otimização das quatro variáveisdeterminantes para o sucesso dos projetos de software: qualidade, custo, produtividade etempo.Para que estas vantagens oferecidas pela reutilização de sofware sejam de fatoaproveitadas, é necessário que haja um planejamento estruturado para evitar problemasque possam desestimular o reuso. Além de fatores técnicos que podem contribuir para anão utilização do reuso de sofware, como por exemplo o fato de a maioria dasferramentas CASE ainda não possuirem integração com bibliotecas de componentes,existe também o fator psicológico de profissionais que preferem reescrever do quereutilizar código.A partir do momento que a reutilização de sofwares passa a ser algo maisnatural, ou seja, já ter passado por algumas experiências com reuso de código dandomaturidade neste processo. E já sabendo a área específica de atuação da empresa, quepode ser determinada através de engenharia de domínio. Pode-se então passar para umoutro nível da reutilização que é não o consumo, mas o desenvolvimento de ativos.4.1. Técnicas utilizadasAtualmente as técnicas utilizadas para a reutilização de sofware costumam ser:Arquitetura Baseada em Serviços (SOA); Desenvolvimento baseado em componentes; eLinhas de produtos de sofware. A Arquitetura Baseada em Serviços (SOA), estabelece oreuso na divisão da lógica que é feita no serviço. O desenvolvimento baseado emComponentes, estabelece o reuso na componentização de recursos de sistemas. E a linhade produtos de Software, estabelece o reuso no planejamento, onde um sistema éconstruido baseado em sistemas de sofware similares.Um exemplo de reutilização utilizando a Arquitetura Baseada em Serviços(SOA), são os web services, que é uma solução de comunicação entre aplicações, deforma que novas aplicações possam interagir com outras já existentes, e sistemas feitosem plataformas diferentes tornem-se compatíveis. Pela arquitetura SOA ser baseada nacomputação distribuída, os recursos reutilizáveis são os serviços oferecidos pelossistemas que os implementam, não sendo necessário escrever novamente a mesmasolução, visto que esta encontra-se disponível para os sistemas clientes.Como exemplo de reutilização para o desenvolvimento baseado em componente,pode-se citar os plugins, que são pequenas implementações de código que realizamfunções bem específicas, que podem ser adicionados ao sistema, mas que sua ausêncianão impacta na funcionalidade original. Para o desenvolvimento de componentes existeainda um termo bem utilizado no meio do desenvolvimento para reutilização que são as
  • Bibliotecas de Componentes, estas são repositórios onde são armazenadosclassificados, e catalogados componentes para reuso.Por último, para as linhas de produtos de sofwares pode-se citar como umexemplo simples os frameworks, que são estruturas base de sistemas, um esqueleto, ouseja, possui características comuns aos sistemas, onde o sistema específico édesenvovido baseado neste “pré-pronto”. A linha de produto de sofware tem comocaracterística a similaridade aos processos de produção de fábrica, onde é visado o reusoe os possíveis múltiplos produtos da mesma família, como em um linha de produção.Na linha de produto de software todo o código que irá ser reutilizado é planejado,desenhado, e concebido tendo em vista a possibilidade de modificação e reutilização deforma a se enquadrar aos vários sistemas.5. ConclusãoO MPS.Br não impõe as técnicas ou os procedimentos que deverão ser utilizados parase alcançar as metas de cada processo dos níveis, apenas determina o resultado que deveser obtido, desta forma garante a liberdade de escolha dos métodos que serão utilizadospara tal.A princípio o desenvolvimento para reuso pode parecer algo custoso ou que nãová valer a pena o trabalho. Mas encarando o desenvolvimento para reuso, assim como ogerenciamento de recursos reutilizáveis como investimentos de longo prazo, pode-senum futuro reduzir de forma significativa os custos e o trabalho no desenvolvimento desistemas. Como também pode vir a ser uma fonte de renda para a empresadesenvolvedora dos ativos, podendo disponibilizar as soluções para venda.ReferênciasMonteiro, P., Reis M. and Viana, J. (2010) “Integração de Metodologia Ágil comModelo de Maturidade de Software”.Softex (2010) “Mps.Br”, http://www.softex.br/mpsBr/_apresentacoes/apresentacao.asp?id=2337, Outubro.http://www.powerlogic.com.br/powerportal/site.do?evento=portlet&pIdPlc=ecpTaxonomiaMenuPortal&app=site&tax=9244&lang=pt_BR&pg=6701&taxp=0&http://www.sensedia.com/br/entrevista/58/claudia-werner-em-entrevista-para-da-insighthttp://docs.google.com/viewer?a=v&q=cache:L-
  • GeHwtZ2HIJ:www.dimap.ufrn.br/~jair/ES/slides/LinhaProdutoSoftware.pdf+linha+de+produto+de+sofware,+framework&hl=pt-BR&gl=br&pid=bl&srcid=ADGEESiVo0gUvoQymoUmVpXdjjDKM0BDjeFd-A7ZnwqXy3uPjVnyH6N3h5F3VbDgUhOnRTBcT-3dtmRU2DIe0s-9V1xsyyBy4BhwBjUjnPvpC6gRmqnnLkluFxS9R4a1jkI5Pz97JLbp&sig=AHIEtbQxtH7nf1COHO-vVmU8jwLkW6cNBQhttp://www.inf.ufsc.br/~ricardo/ine660600.htmlhttp://twiki.fe.up.pt/bin/view/ERSS0607/Reutiliza%e7%e3oDeSoftware#AdHocAnchorhttp://www.sensedia.com/br/reuso-de-softwarehttp://docs.google.com/viewer?a=v&q=cache:ys3mLLYNiWAJ:www.bibliotecadigital.unicamp.br/document/%3Fview%3Dvtls000392817+desenvolvimento+baseado+em+componentes,+plugins&hl=pt-BR&gl=br&pid=bl&srcid=ADGEESikpHl5M_vGbxOu6sUCPa6vb-inLP_msihfFcPRgC8lvxNNLd_vgnBWBimTM6BvDYIFkPSFuBfCtiji7Z18GgmqpUoq6BPH05TJYipPTd9mJYq4wdGKGwUdkEjgLulBKoHtnzz3&sig=AHIEtbTMxhqk6_GYPzyNbt_WP1Yr_bS7og