SlideShare uma empresa Scribd logo
DRU – Desenvolvimento para Reuso
Juliana S. Cindra*.
*Instituto Federal de Educação, Ciência e Tecnologia Fluminense -
Campos dos Goytacazes/RJ
jucindra@gmail.com
Abstract. 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 some
techniques 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 forma
parcial como este processo tem sido utilizado no Brasil, quais empresas
utilizam e alguns dados do Nível C. Bem como apresentar também algumas
té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 da
qualidade de software. E é identificada como umas das áreas de conhecimento da
engenharia de software. O MPS.Br é um modelo brasileiro de qualidade de processo de
software 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.Br
também utiliza o CMMI (Integração do modelo de capacidade e maturidade, em
portuguê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 ao
A, onde o nível G é o menor nível e o nível A é o nível mais elevado da escala. Cada
nível trata de um assunto dentro da qualidade de software, e a cada um deles é atingido
um determinado grau de qualidade. Este trabalho focará no Nível C, mas precisamente
no processo DRU, onde os projetos encontram-se em estado definido, podendo assim
implantar tal processo para reutilização.
Figura dos níveis do MPS.Br
2. O Nível C
O Nível C do MPS.Br equivale ao Nivel 3 do padrão de qualidade CMMI, onde seus
processos 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 se
encontram nos Nível C do MPS.Br, de acordo com o IMPS (Resultado de desempenho
de 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 Powerlogic
Dentre 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 do
MPS.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ível
de automação alcançado com o uso de ferramental próprio de AML (Application
Lifecycle Management), o Powerlogic jAML.
Segundo o site da Powerlogic, ela é uma empresa totalmente brasileira que
desenvolve 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 o
fornecimento de soluções JavaEE, e o desenvolvimento de swites de software open
source que abrange todas as áreas do ciclo de vida de um desenvolvimento.
De acordo com estas informações seu domínio é bem definido, daí a
possibilidade de desenvolver para reuso.
3. O processo DRU
O desenvolvimento para reutilização talvez pode ser explicado como a identificação de
oportunidades de reutilização sistemática na organização, e estabelecimento de
programa de reutilização para o desenvolvimento de ativos a partir de engenharia de
domínios de aplicação.
Este processo do Nível C possui alguns resultados esperados para que possa ser
considerado atingigo o objetivo de desenvolver softwares para reutilização, e não
apenas gerenciar o processo de reúso. Além de utilizar soluções já pensadas, prontas, o
objetivo deste processo é transformar de consumidor de soluções reusáveis para
fabricante de tais soluções de reuso. Para isto é nessário que sejam atingidas algumas
metas que são os resultados esperados deste processo, descritos a seguir:
DRU 1. Domínios de aplicação em que serão investigadas oportunidades de
reutilização ou nos quais se pretende praticar reutilização são identificados, detectando
os respectivos potenciais de reutilização;
DRU 2. A capacidade de reutilização sistemática da organização é avaliada e
ações corretivas são tomadas, caso necessário;
DRU 3. Um programa de reutilização, envolvendo propósitos, escopo, metas e
objetivos, é planejado com a finalidade de atender às necessidades de reutilização de
domí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 o
resultado da reutilização seja apropriado para a aplicação alvo;
DRU 6. Formas de representação para modelos de domínio e arquiteturas de
domí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 seus
limites 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ções
para o domínio é desenvolvida e mantida por todo seu ciclo de vida;
DRU 9. Ativos do domínio são especificados; adquiridos ou desenvolvidos, e
mantidos por todo seu ciclo de vida.
4. Desenvolvimento de software para reuso
O reuso de software oferece várias vantagens para as empresas e projetos, como
qualidade, economia, eficiência e agilidade. Que é a otimização das quatro variáveis
determinantes para o sucesso dos projetos de software: qualidade, custo, produtividade e
tempo.
Para que estas vantagens oferecidas pela reutilização de sofware sejam de fato
aproveitadas, é necessário que haja um planejamento estruturado para evitar problemas
que possam desestimular o reuso. Além de fatores técnicos que podem contribuir para a
não utilização do reuso de sofware, como por exemplo o fato de a maioria das
ferramentas CASE ainda não possuirem integração com bibliotecas de componentes,
existe também o fator psicológico de profissionais que preferem reescrever do que
reutilizar código.
A partir do momento que a reutilização de sofwares passa a ser algo mais
natural, ou seja, já ter passado por algumas experiências com reuso de código dando
maturidade neste processo. E já sabendo a área específica de atuação da empresa, que
pode ser determinada através de engenharia de domínio. Pode-se então passar para um
outro nível da reutilização que é não o consumo, mas o desenvolvimento de ativos.
4.1. Técnicas utilizadas
Atualmente as técnicas utilizadas para a reutilização de sofware costumam ser:
Arquitetura Baseada em Serviços (SOA); Desenvolvimento baseado em componentes; e
Linhas de produtos de sofware. A Arquitetura Baseada em Serviços (SOA), estabelece o
reuso na divisão da lógica que é feita no serviço. O desenvolvimento baseado em
Componentes, estabelece o reuso na componentização de recursos de sistemas. E a linha
de 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, de
forma que novas aplicações possam interagir com outras já existentes, e sistemas feitos
em plataformas diferentes tornem-se compatíveis. Pela arquitetura SOA ser baseada na
computação distribuída, os recursos reutilizáveis são os serviços oferecidos pelos
sistemas que os implementam, não sendo necessário escrever novamente a mesma
soluçã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 realizam
funções bem específicas, que podem ser adicionados ao sistema, mas que sua ausência
não impacta na funcionalidade original. Para o desenvolvimento de componentes existe
ainda 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 armazenados
classificados, e catalogados componentes para reuso.
Por último, para as linhas de produtos de sofwares pode-se citar como um
exemplo simples os frameworks, que são estruturas base de sistemas, um esqueleto, ou
seja, possui características comuns aos sistemas, onde o sistema específico é
desenvovido baseado neste “pré-pronto”. A linha de produto de sofware tem como
característica a similaridade aos processos de produção de fábrica, onde é visado o reuso
e 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 de
forma a se enquadrar aos vários sistemas.
5. Conclusão
O MPS.Br não impõe as técnicas ou os procedimentos que deverão ser utilizados para
se alcançar as metas de cada processo dos níveis, apenas determina o resultado que deve
ser obtido, desta forma garante a liberdade de escolha dos métodos que serão utilizados
para tal.
A princípio o desenvolvimento para reuso pode parecer algo custoso ou que não
vá valer a pena o trabalho. Mas encarando o desenvolvimento para reuso, assim como o
gerenciamento de recursos reutilizáveis como investimentos de longo prazo, pode-se
num futuro reduzir de forma significativa os custos e o trabalho no desenvolvimento de
sistemas. Como também pode vir a ser uma fonte de renda para a empresa
desenvolvedora dos ativos, podendo disponibilizar as soluções para venda.
Referências
Monteiro, P., Reis M. and Viana, J. (2010) “Integração de Metodologia Ágil com
Modelo 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-insight
http://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=AHIEtbQ
xtH7nf1COHO-vVmU8jwLkW6cNBQ
http://www.inf.ufsc.br/~ricardo/ine660600.html
http://twiki.fe.up.pt/bin/view/ERSS0607/Reutiliza%e7%e3oDeSoftware#AdHocAnchor
http://www.sensedia.com/br/reuso-de-software
http://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_vgnBWBimTM6BvDYIFkPSFuBfCtiji7Z18Ggmqp
Uoq6BPH05TJYipPTd9mJYq4wdGKGwUdkEjgLulBKoHtnzz3&sig=AHIEtbTMx
hqk6_GYPzyNbt_WP1Yr_bS7og

Mais conteúdo relacionado

PDF
Fermine como ferramenta de apoio à implantação do nível G do MPS.Br
PDF
UM ESTUDO SOBRE SOA
PDF
Mps.br guia de_implementacao_parte_5_2016
PDF
MAPEAMENTO ENTRE A METODOLOGIA ÁGIL FDD E O MODELO DE QUALIDADE MPS.BR NOS N...
PDF
Renan st matsushita-2010
PDF
Engenharia de Software - Pontos de função
PDF
Definicao.Melhoria.Processos.Fabrica.SL
PDF
Projeto de Software - PIC Eletrônico - Gerência de Projetos UFAM 2012/2
Fermine como ferramenta de apoio à implantação do nível G do MPS.Br
UM ESTUDO SOBRE SOA
Mps.br guia de_implementacao_parte_5_2016
MAPEAMENTO ENTRE A METODOLOGIA ÁGIL FDD E O MODELO DE QUALIDADE MPS.BR NOS N...
Renan st matsushita-2010
Engenharia de Software - Pontos de função
Definicao.Melhoria.Processos.Fabrica.SL
Projeto de Software - PIC Eletrônico - Gerência de Projetos UFAM 2012/2

Mais procurados (20)

PDF
Engenharia de Software - Wikipedia
PDF
O emprego do_rup_na_uml_-_trabalho_poo_2012
PDF
PMBOK & RUP - UFAM 2012/2 - Gerência de Projetos
PDF
201406Carvalho
PDF
Implementing Product Line Variabilities
PDF
Frameworks da web - Uma ferramenta de reutilização de software
PPT
MPS.BR
PPTX
RAD - Métodos ágeis
PDF
PDF
Es17 predicao de defeitos em software
PDF
TDC2016POA | Trilha Arquetetura - Revitalizando aplicações desktop usando Ce...
PDF
Documento de requisitos
PDF
Revista Engenharia de Software n° 44
PPTX
Reuso de software
PDF
AAB307 - Frameworks and Application Blocks - wcamb
PDF
PROPOSTA DE ADAPTAÇÃO DAS PRÁTICAS DO SCRUM PARA O MPS.BR NIVEL G
DOCX
Processos de software
PDF
Interação entre MDA e PMBOK para Suporte ao Desenvolvimento de Aplicações Com...
PDF
Es06 teste de software
Engenharia de Software - Wikipedia
O emprego do_rup_na_uml_-_trabalho_poo_2012
PMBOK & RUP - UFAM 2012/2 - Gerência de Projetos
201406Carvalho
Implementing Product Line Variabilities
Frameworks da web - Uma ferramenta de reutilização de software
MPS.BR
RAD - Métodos ágeis
Es17 predicao de defeitos em software
TDC2016POA | Trilha Arquetetura - Revitalizando aplicações desktop usando Ce...
Documento de requisitos
Revista Engenharia de Software n° 44
Reuso de software
AAB307 - Frameworks and Application Blocks - wcamb
PROPOSTA DE ADAPTAÇÃO DAS PRÁTICAS DO SCRUM PARA O MPS.BR NIVEL G
Processos de software
Interação entre MDA e PMBOK para Suporte ao Desenvolvimento de Aplicações Com...
Es06 teste de software
Anúncio

Destaque (7)

PPTX
Desenvolvimento baseado em componentes
PPT
Engenharia De Software Baseada Em Componentes
PPTX
TCC - Engenharia de Software Baseada em Componentes
PDF
02 Introdução à engenharia de software - conceitos fundamentais
PPT
Engenharia de Software Baseada em Componentes
PDF
PPT
Modelo Espiral
Desenvolvimento baseado em componentes
Engenharia De Software Baseada Em Componentes
TCC - Engenharia de Software Baseada em Componentes
02 Introdução à engenharia de software - conceitos fundamentais
Engenharia de Software Baseada em Componentes
Modelo Espiral
Anúncio

Semelhante a Dru - Desenvolvimento para Reuso (20)

ODP
Reuso desw
PPTX
Reuso v16 0
PPT
Engenharia de software reuso claudia maria lima
ODP
Trabalho de Reengenharia de Software
PPTX
Engenharia de Software Reuso Engenharia de Software Reuso Engenharia de Softw...
PPT
Tees Final
PPTX
Aula processo de reuso de software
PDF
Meetup tecnologia - desenvolvimento, infra e processos
PPT
Rejuvenescimento Software
PDF
Apresentacao gerenciamento projetos_mpsbr_scrum
PDF
Aula_4_e_5_-_RUP_Rapid_Unified_Process_Software_Engineering
PPTX
Apresentação FITEM 2012
PPS
Arquitetura de Software
PDF
Linha de Produto de Software: Diferentes produtos para diferentes clientes
DOC
Trabalho individual
PDF
Fabrica.Software.Concepcao.Licoes.Aprendidas
DOCX
Jucelir
PDF
Implantacao.Processo.Fabrica.SL
PPTX
Slide sobre o estudo do MPS.BR
Reuso desw
Reuso v16 0
Engenharia de software reuso claudia maria lima
Trabalho de Reengenharia de Software
Engenharia de Software Reuso Engenharia de Software Reuso Engenharia de Softw...
Tees Final
Aula processo de reuso de software
Meetup tecnologia - desenvolvimento, infra e processos
Rejuvenescimento Software
Apresentacao gerenciamento projetos_mpsbr_scrum
Aula_4_e_5_-_RUP_Rapid_Unified_Process_Software_Engineering
Apresentação FITEM 2012
Arquitetura de Software
Linha de Produto de Software: Diferentes produtos para diferentes clientes
Trabalho individual
Fabrica.Software.Concepcao.Licoes.Aprendidas
Jucelir
Implantacao.Processo.Fabrica.SL
Slide sobre o estudo do MPS.BR

Mais de Juliana Cindra (9)

PPT
Trabalho Web Services
PDF
Trabalho de Sistemas Distribuídos
PDF
AVALIAÇÃO DA QUALIDADE DE UM SISTEMA DE GESTÃO ACADÊMICA ATRAVÉS DA MINERAÇÃO...
PDF
Exercicio de UML - Documentacao Restaurante
PPT
Padrões de Projeto - Observer
PPT
Padrão de Projeto - Adapter
ODP
Fermine como ferramenta de apoio à implantação do nível G do MPS.Br
ODP
Torre de Hanoi
PPT
Rail road
Trabalho Web Services
Trabalho de Sistemas Distribuídos
AVALIAÇÃO DA QUALIDADE DE UM SISTEMA DE GESTÃO ACADÊMICA ATRAVÉS DA MINERAÇÃO...
Exercicio de UML - Documentacao Restaurante
Padrões de Projeto - Observer
Padrão de Projeto - Adapter
Fermine como ferramenta de apoio à implantação do nível G do MPS.Br
Torre de Hanoi
Rail road

Dru - Desenvolvimento para Reuso

  • 1. DRU – Desenvolvimento para Reuso Juliana S. Cindra*. *Instituto Federal de Educação, Ciência e Tecnologia Fluminense - Campos dos Goytacazes/RJ jucindra@gmail.com Abstract. 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 some techniques 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 forma parcial como este processo tem sido utilizado no Brasil, quais empresas utilizam e alguns dados do Nível C. Bem como apresentar também algumas té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 da qualidade de software. E é identificada como umas das áreas de conhecimento da engenharia de software. O MPS.Br é um modelo brasileiro de qualidade de processo de software 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.Br também utiliza o CMMI (Integração do modelo de capacidade e maturidade, em portuguê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 ao A, onde o nível G é o menor nível e o nível A é o nível mais elevado da escala. Cada nível trata de um assunto dentro da qualidade de software, e a cada um deles é atingido um determinado grau de qualidade. Este trabalho focará no Nível C, mas precisamente no processo DRU, onde os projetos encontram-se em estado definido, podendo assim implantar tal processo para reutilização. Figura dos níveis do MPS.Br
  • 2. 2. O Nível C O Nível C do MPS.Br equivale ao Nivel 3 do padrão de qualidade CMMI, onde seus processos 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 se encontram nos Nível C do MPS.Br, de acordo com o IMPS (Resultado de desempenho de 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 Powerlogic Dentre 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 do MPS.Br. Utilizando processos baseados em métodos ágeis (notadamente o Scrum),
  • 3. altamente pragmáticos. Como destaque de sua certificação foi constatado um alto nível de automação alcançado com o uso de ferramental próprio de AML (Application Lifecycle Management), o Powerlogic jAML. Segundo o site da Powerlogic, ela é uma empresa totalmente brasileira que desenvolve 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 o fornecimento de soluções JavaEE, e o desenvolvimento de swites de software open source que abrange todas as áreas do ciclo de vida de um desenvolvimento. De acordo com estas informações seu domínio é bem definido, daí a possibilidade de desenvolver para reuso. 3. O processo DRU O desenvolvimento para reutilização talvez pode ser explicado como a identificação de oportunidades de reutilização sistemática na organização, e estabelecimento de programa de reutilização para o desenvolvimento de ativos a partir de engenharia de domínios de aplicação. Este processo do Nível C possui alguns resultados esperados para que possa ser considerado atingigo o objetivo de desenvolver softwares para reutilização, e não apenas gerenciar o processo de reúso. Além de utilizar soluções já pensadas, prontas, o objetivo deste processo é transformar de consumidor de soluções reusáveis para fabricante de tais soluções de reuso. Para isto é nessário que sejam atingidas algumas metas que são os resultados esperados deste processo, descritos a seguir: DRU 1. Domínios de aplicação em que serão investigadas oportunidades de reutilização ou nos quais se pretende praticar reutilização são identificados, detectando os respectivos potenciais de reutilização; DRU 2. A capacidade de reutilização sistemática da organização é avaliada e ações corretivas são tomadas, caso necessário; DRU 3. Um programa de reutilização, envolvendo propósitos, escopo, metas e objetivos, é planejado com a finalidade de atender às necessidades de reutilização de domí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 o resultado da reutilização seja apropriado para a aplicação alvo; DRU 6. Formas de representação para modelos de domínio e arquiteturas de domí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 seus limites 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ções para o domínio é desenvolvida e mantida por todo seu ciclo de vida;
  • 4. DRU 9. Ativos do domínio são especificados; adquiridos ou desenvolvidos, e mantidos por todo seu ciclo de vida. 4. Desenvolvimento de software para reuso O reuso de software oferece várias vantagens para as empresas e projetos, como qualidade, economia, eficiência e agilidade. Que é a otimização das quatro variáveis determinantes para o sucesso dos projetos de software: qualidade, custo, produtividade e tempo. Para que estas vantagens oferecidas pela reutilização de sofware sejam de fato aproveitadas, é necessário que haja um planejamento estruturado para evitar problemas que possam desestimular o reuso. Além de fatores técnicos que podem contribuir para a não utilização do reuso de sofware, como por exemplo o fato de a maioria das ferramentas CASE ainda não possuirem integração com bibliotecas de componentes, existe também o fator psicológico de profissionais que preferem reescrever do que reutilizar código. A partir do momento que a reutilização de sofwares passa a ser algo mais natural, ou seja, já ter passado por algumas experiências com reuso de código dando maturidade neste processo. E já sabendo a área específica de atuação da empresa, que pode ser determinada através de engenharia de domínio. Pode-se então passar para um outro nível da reutilização que é não o consumo, mas o desenvolvimento de ativos. 4.1. Técnicas utilizadas Atualmente as técnicas utilizadas para a reutilização de sofware costumam ser: Arquitetura Baseada em Serviços (SOA); Desenvolvimento baseado em componentes; e Linhas de produtos de sofware. A Arquitetura Baseada em Serviços (SOA), estabelece o reuso na divisão da lógica que é feita no serviço. O desenvolvimento baseado em Componentes, estabelece o reuso na componentização de recursos de sistemas. E a linha de 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, de forma que novas aplicações possam interagir com outras já existentes, e sistemas feitos em plataformas diferentes tornem-se compatíveis. Pela arquitetura SOA ser baseada na computação distribuída, os recursos reutilizáveis são os serviços oferecidos pelos sistemas que os implementam, não sendo necessário escrever novamente a mesma soluçã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 realizam funções bem específicas, que podem ser adicionados ao sistema, mas que sua ausência não impacta na funcionalidade original. Para o desenvolvimento de componentes existe ainda um termo bem utilizado no meio do desenvolvimento para reutilização que são as
  • 5. 'Bibliotecas de Componentes', estas são repositórios onde são armazenados classificados, e catalogados componentes para reuso. Por último, para as linhas de produtos de sofwares pode-se citar como um exemplo simples os frameworks, que são estruturas base de sistemas, um esqueleto, ou seja, possui características comuns aos sistemas, onde o sistema específico é desenvovido baseado neste “pré-pronto”. A linha de produto de sofware tem como característica a similaridade aos processos de produção de fábrica, onde é visado o reuso e 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 de forma a se enquadrar aos vários sistemas. 5. Conclusão O MPS.Br não impõe as técnicas ou os procedimentos que deverão ser utilizados para se alcançar as metas de cada processo dos níveis, apenas determina o resultado que deve ser obtido, desta forma garante a liberdade de escolha dos métodos que serão utilizados para tal. A princípio o desenvolvimento para reuso pode parecer algo custoso ou que não vá valer a pena o trabalho. Mas encarando o desenvolvimento para reuso, assim como o gerenciamento de recursos reutilizáveis como investimentos de longo prazo, pode-se num futuro reduzir de forma significativa os custos e o trabalho no desenvolvimento de sistemas. Como também pode vir a ser uma fonte de renda para a empresa desenvolvedora dos ativos, podendo disponibilizar as soluções para venda. Referências Monteiro, P., Reis M. and Viana, J. (2010) “Integração de Metodologia Ágil com Modelo 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-insight http://docs.google.com/viewer?a=v&q=cache:L-
  • 6. 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=AHIEtbQ xtH7nf1COHO-vVmU8jwLkW6cNBQ http://www.inf.ufsc.br/~ricardo/ine660600.html http://twiki.fe.up.pt/bin/view/ERSS0607/Reutiliza%e7%e3oDeSoftware#AdHocAnchor http://www.sensedia.com/br/reuso-de-software http://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_vgnBWBimTM6BvDYIFkPSFuBfCtiji7Z18Ggmqp Uoq6BPH05TJYipPTd9mJYq4wdGKGwUdkEjgLulBKoHtnzz3&sig=AHIEtbTMx hqk6_GYPzyNbt_WP1Yr_bS7og