Buscar

7 Gerenciamento de Configuração

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 55 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 55 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 55 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Gerenciamento de Configuração de SoftwareGerenciamento de Configuração de Software
luther.fernandes@gmail.com
“Milhares de árvores são 
plantadas nas florestas do 
mundo graças aos esquilos; 
para se prevenir no inverno eles 
enterram suas nozes em diversos 
locais e simplesmente as 
esquecem...”
“Milhares de árvores são 
plantadas nas florestas do 
mundo graças aos esquilos; 
para se prevenir no inverno eles 
enterram suas nozes em diversos 
locais e simplesmente as 
esquecem...”
“Gerenciar é conduzir ações que viabilizem expectativas em realizações 
sustentáveis, envolvendo:Planejamento, Monitoração, Controle (trabalho 
das pessoas) e Processos”. 
Pressman
“Gerenciar é conduzir ações que viabilizem expectativas em realizações 
sustentáveis, envolvendo:Planejamento, Monitoração, Controle (trabalho 
das pessoas) e Processos”. 
Pressman
Introdução
Gerenciamento de Configuração de SoftwareGerenciamento de Configuração de Software
luther.fernandes@gmail.com
Um repositUm repositóório rio éé definido em termos definido em termos 
de Metamodelo no qual as de Metamodelo no qual as 
informainformaçções são armazenadas o ões são armazenadas o 
dados podem ser visualizados e dados podem ser visualizados e 
acessados pelas ferramentas e pelos acessados pelas ferramentas e pelos 
engenheiros de softwareengenheiros de software
Mantida a seguranMantida a segurançça e a integridade a e a integridade 
dos dados e com que facilidade o dos dados e com que facilidade o 
modelo existente pode ser estendido modelo existente pode ser estendido 
para satisfazer a novas para satisfazer a novas 
necessidades.necessidades.
O RepositO Repositóóriorio
Gerenciamento de Configuração de SoftwareGerenciamento de Configuração de Software
luther.fernandes@gmail.com
Nos primeiros tempos da engenharia Nos primeiros tempos da engenharia 
de software, o repositde software, o repositóório era sem rio era sem 
ddúúvida uma pessoa vida uma pessoa —— o o 
programador que tinha de se lembrar programador que tinha de se lembrar 
da localizada localizaçção de todas as ão de todas as 
informainformaçções relevantes a um projeto ões relevantes a um projeto 
de software, aquele que tinha de se de software, aquele que tinha de se 
lembrar de todas as informalembrar de todas as informaçções que ões que 
nunca foram escritas e reconstruir nunca foram escritas e reconstruir 
informainformaçções perdidas.ões perdidas.
O RepositO Repositóório SCM rio SCM –– Origens Origens 
Gerenciamento de Configuração de SoftwareGerenciamento de Configuração de Software
luther.fernandes@gmail.com
Nos primNos primóórdios da engenharia de rdios da engenharia de 
software, os itens de configurasoftware, os itens de configuraçção ão 
eram mantidos na forma de eram mantidos na forma de 
documentos impressos (ou documentos impressos (ou 
cartões perfurados!), colocados cartões perfurados!), colocados 
em pastas de arquivos ou em pastas de arquivos ou 
naquelas pastas de três furos, e naquelas pastas de três furos, e 
armazenados em armarmazenados em armáários de arios de açço. o. 
O RepositO Repositóório SCMrio SCM
Gerenciamento de Configuração de SoftwareGerenciamento de Configuração de Software
luther.fernandes@gmail.com
Infelizmente, o uso de uma pessoa Infelizmente, o uso de uma pessoa 
como como ““centro de centro de 
armazenamentoarmazenamento””(embora esteja de (embora esteja de 
acordo com a definiacordo com a definiçção Websterão Webster’’s s 
Dictionary) não funciona muito bem. Dictionary) não funciona muito bem. 
Hoje, o repositHoje, o repositóório rio éé uma uma ““coisacoisa”” ——
um banco de dados que age como o um banco de dados que age como o 
centro de armazenagem de centro de armazenagem de 
informainformaçções de engenharia de ões de engenharia de 
software. O papel da pessoa (o software. O papel da pessoa (o 
engenheiro de software) engenheiro de software) éé interagir interagir 
com o repositcom o repositóório usando ferramentas rio usando ferramentas 
integradas com ele.integradas com ele.
O RepositO Repositóório SCMrio SCM
Gerenciamento de Configuração de SoftwareGerenciamento de Configuração de Software
luther.fernandes@gmail.com
LocalizaLocalizaçção ão -- (1) encontrar um item de (1) encontrar um item de 
configuraconfiguraçção quando necessão quando necessáário era muitas rio era muitas 
vezes difvezes difíícil, cil, 
Confiabilidade Confiabilidade -- (2) determinar quais itens (2) determinar quais itens 
foram alterados, quando e por quem, era em foram alterados, quando e por quem, era em 
geral um desafio, geral um desafio, 
Versionamento (3) Versionamento (3) -- criar uma nova versão de criar uma nova versão de 
um programa existente era um processo um programa existente era um processo 
demorado e sujeito a erros e demorado e sujeito a erros e 
IntegraIntegraçção ão -- (4) descrever rela(4) descrever relaçções detalhadas ões detalhadas 
ou complexas entre itens de configuraou complexas entre itens de configuraçção era ão era 
praticamente imposspraticamente impossíível.vel.
Essa abordagem de arquivos fEssa abordagem de arquivos fíísicos era problemsicos era problemáática por diversas razões:tica por diversas razões:
Gerenciamento de Configuração de SoftwareGerenciamento de Configuração de Software
luther.fernandes@gmail.com
AlAléém das Item de Configuram das Item de Configuraçção (SCI)s derivadas ão (SCI)s derivadas 
dos artefatos de software, muitas organizados artefatos de software, muitas organizaçções ões 
de engenharia de software tambde engenharia de software tambéém colocam m colocam 
ferramentas de software sob o controle de ferramentas de software sob o controle de 
configuraconfiguraçção. ão. 
Isto Isto éé, são versões espec, são versões especííficas de editores, ficas de editores, 
compiladores, browsers e outras ferramentas compiladores, browsers e outras ferramentas 
automautomááticas são ticas são ““congeladascongeladas”” como parte da como parte da 
configuraconfiguraçção do software. ão do software. 
Itens de configuraItens de configuraçção de softwareão de software
Gerenciamento de Configuração de SoftwareGerenciamento de Configuração de Software
luther.fernandes@gmail.com
Os Item de ConfiguraOs Item de Configuraçção ão 
(SCI)s são organizados para (SCI)s são organizados para 
formar objetos de formar objetos de 
configuraconfiguraçção que devem ser ão que devem ser 
catalogados no banco de catalogados no banco de 
dados do projeto com um dados do projeto com um 
nome nome úúnico. nico. 
Gerenciamento de Configuração de SoftwareGerenciamento de Configuração de Software
luther.fernandes@gmail.com
Atualmente,os Item de Atualmente,os Item de 
ConfiguraConfiguraçção (SCI)s são ão (SCI)s são 
mantidos em um banco de dados mantidos em um banco de dados 
de projeto ou repositde projeto ou repositóório. rio. 
O DicionO Dicionáário Webster define a rio Webster define a 
palavra repository (repositpalavra repository (repositóório) rio) 
como como ““qualquer coisa ou pessoa qualquer coisa ou pessoa 
considerada um centro de considerada um centro de 
acumulaacumulaçção ou armazenagemão ou armazenagem””. . 
O RepositO Repositóório SCMrio SCM
Gerenciamento de Configuração de SoftwareGerenciamento de Configuração de Software
luther.fernandes@gmail.com
O RepositO Repositóório SCMrio SCM
Um objeto de configuraUm objeto de configuraçção tem um ão tem um 
nome, atributos e nome, atributos e éé ““conectadoconectado”” a a 
outros objetos por relaoutros objetos por relaçções. Cada ões. Cada 
um dos objetos estum dos objetos estáá relacionado relacionado 
com os outros, como mostram as com os outros, como mostram as 
setas. Uma seta curva indicauma setas. Uma seta curva indica uma 
relarelaçção de composião de composiçção.ão.
Gerenciamento de Configuração de SoftwareGerenciamento de Configuração de Software
luther.fernandes@gmail.com
Objetos de Configuração Objetos de Configuração 
Especificação do Projeto
Modelo de Dados
Especificação de Testes
Componente N
Código Fonte
Gerenciamento de Configuração de SoftwareGerenciamento de Configuração de Software
luther.fernandes@gmail.com
O papel do repositO papel do repositóóriorio
O repositO repositóório de SCM rio de SCM éé um conjunto um conjunto 
de mecanismos e estruturas de dados de mecanismos e estruturas de dados 
que permitem a uma equipe de que permitem a uma equipe de 
software possa conduzir e gerenciar software possa conduzir e gerenciar 
alteraalteraçções de maneira eficaz. ões de maneira eficaz. 
Isso inclui funIsso inclui funçções comuns num ões comuns num 
sistema moderno de gestão de banco sistema moderno de gestão de banco 
de dados garantida a integridade dos de dados garantida a integridade dos 
dados, compartilhamento e dados, compartilhamento e 
integraintegraçção. ão. 
Gerenciamento de Configuração de SoftwareGerenciamento de Configuração de Software
luther.fernandes@gmail.com
O papel do RepositO papel do Repositóóriorio
Um repositUm repositóório de SCM provê um rio de SCM provê um 
centralizador (hub) para a centralizador (hub) para a 
integraintegraçção das ferramentas de ão das ferramentas de 
software, no centro do fluxo do software, no centro do fluxo do 
processo de software e pode processo de software e pode 
impor estrutura e formato impor estrutura e formato 
uniformes para os artefatos.uniformes para os artefatos.
Gerenciamento de Configuração de SoftwareGerenciamento de Configuração de Software
luther.fernandes@gmail.com
As caracterAs caracteríísticas e o contesticas e o conteúúdo do do do 
repositrepositóório são mais bem rio são mais bem 
compreendidas quando são compreendidas quando são 
observadas a partir de duas observadas a partir de duas 
perspectivas: perspectivas: 
1 1 -- o que deve ser armazenado no o que deve ser armazenado no 
repositrepositóório rio 
2 2 -- Quais os serviQuais os serviçços especos especííficos que ficos que 
são fornecidos pelo repositsão fornecidos pelo repositóório. rio. 
Uma divisão detalhada dos tipos de representaUma divisão detalhada dos tipos de representaçções, documentos e outros ões, documentos e outros 
produtos que são armazenados no repositprodutos que são armazenados no repositóório tb devem ser rio tb devem ser 
disponibilizados. .disponibilizados. .
CaracterCaracteríísticas gerais e contesticas gerais e conteúúdo do 
Gerenciamento de Configuração de SoftwareGerenciamento de Configuração de Software
luther.fernandes@gmail.com
Um repositUm repositóório robusto proporciona rio robusto proporciona 
duas classes diferentes de serviduas classes diferentes de serviçços:os:
(1) servi(1) serviçços que podem ser os que podem ser 
esperados de qualquer sistema esperados de qualquer sistema 
sofisticado de gerenciamento de sofisticado de gerenciamento de 
banco de dadosbanco de dados
(2) servi(2) serviçços que são especos que são especííficos ao ficos ao 
ambiente de engenharia de software.ambiente de engenharia de software.
CaracterCaracteríísticas gerais e contesticas gerais e conteúúdo do 
Gerenciamento de Configuração de SoftwareGerenciamento de Configuração de Software
luther.fernandes@gmail.com
Um repositUm repositóório rio úútil til àà equipe de engenharia de equipe de engenharia de 
software deve tambsoftware deve tambéém ter as seguintes m ter as seguintes 
caractercaracteríísticas:sticas:
(1) integrar ou suportar diretamente as (1) integrar ou suportar diretamente as 
funfunçções de gestão de processo, ões de gestão de processo, 
(2) suportar regras espec(2) suportar regras especííficas que governam ficas que governam 
a funa funçção SCM e os dados mantidos no ão SCM e os dados mantidos no 
repositrepositóório, rio, 
(3) proporcionar uma interface para outras (3) proporcionar uma interface para outras 
ferramentas de engenharia de software, e ferramentas de engenharia de software, e 
(4) acomodar o armazenamento de objetos de (4) acomodar o armazenamento de objetos de 
dados sofisticados (por exemplo, texto, dados sofisticados (por exemplo, texto, 
grgrááficos, vficos, víídeo, deo, ááudio, etc).udio, etc).
CaracterCaracteríísticas gerais e contesticas gerais e conteúúdo do 
Gerenciamento de Configuração de SoftwareGerenciamento de Configuração de Software
luther.fernandes@gmail.com
CaracterCaracteríísticas gerais e contesticas gerais e conteúúdo do 
Gerenciamento de Configuração de SoftwareGerenciamento de Configuração de Software
luther.fernandes@gmail.com
Para suportar a SCM, o repositPara suportar a SCM, o repositóório deve ter rio deve ter 
um conjunto de ferramentas que proporcione um conjunto de ferramentas que proporcione 
suporte para as seguintes caractersuporte para as seguintes caracteríísticas:sticas:
Versionamento Versionamento -- ÀÀ medida que um projeto medida que um projeto 
avanavançça, serão criadas muitas versões (dos a, serão criadas muitas versões (dos 
artefatos individuais. artefatos individuais. 
RecuperaRecuperaçção ão -- O repositO repositóório deve ser capaz rio deve ser capaz 
de salvar todas essas versões para de salvar todas essas versões para 
possibilitar uma gestão eficaz das versões do possibilitar uma gestão eficaz das versões do 
produto e permitir aos desenvolvedores produto e permitir aos desenvolvedores 
retroceder a versões anteriores durante o retroceder a versões anteriores durante o 
teste e depurateste e depuraçção.ão.
CaracterCaracteríísticas gerais e contesticas gerais e conteúúdo do 
Gerenciamento de Configuração de SoftwareGerenciamento de Configuração de Software
luther.fernandes@gmail.com
Controle Controle -- O repositO repositóório deve ser capaz de rio deve ser capaz de 
controlar uma grande variedade de tipos de controlar uma grande variedade de tipos de 
objetos, incluindo texto, grobjetos, incluindo texto, grááficos, bitmaps, ficos, bitmaps, 
documentos complexos e objetos especiais documentos complexos e objetos especiais 
como definicomo definiçções de tela e relatões de tela e relatóório, arquivos rio, arquivos 
de objeto, dados de testes e resultados. Um de objeto, dados de testes e resultados. Um 
repositrepositóório desenvolvido rastreia versões rio desenvolvido rastreia versões 
de objetos com nde objetos com nííveis arbitrveis arbitráários de rios de 
granularidade; por exemplo, podem ser granularidade; por exemplo, podem ser 
rastreados uma definirastreados uma definiçção de dados especial ão de dados especial 
ou um conjunto de mou um conjunto de móódulos.dulos.
CaracterCaracteríísticas gerais e contesticas gerais e conteúúdo do 
Gerenciamento de Configuração de SoftwareGerenciamento de Configuração de Software
luther.fernandes@gmail.com
O repositO repositóório gerencia uma grande rio gerencia uma grande 
variedade de relavariedade de relaçções entre os ões entre os 
elementos de dados armazenados nele. elementos de dados armazenados nele. 
Isso inclui relaIsso inclui relaçções entre entidades e ões entre entidades e 
processos corporativos, entre as partes processos corporativos, entre as partes 
do projeto de uma aplicado projeto de uma aplicaçção, entre ão, entre 
componentes de projeto e arquitetura de componentes de projeto e arquitetura de 
informainformaçções corporativas, entre ões corporativas, entre 
elementos de projeto e outros artefatos, elementos de projeto e outros artefatos, 
e assim por diante. Algumas dessas e assim por diante.Algumas dessas 
relarelaçções são meramente associaões são meramente associaçções e ões e 
outras são relaoutras são relaçções de dependências ou ões de dependências ou 
de obrigatoriedade.de obrigatoriedade.
Acompanhamento de dependências e gestão de alteraAcompanhamento de dependências e gestão de alteraçções.ões.
Gerenciamento de Configuração de SoftwareGerenciamento de Configuração de Software
luther.fernandes@gmail.com
A habilidade em manter controle de todas A habilidade em manter controle de todas 
as relaas relaçções ões éé crucial para a integridade das crucial para a integridade das 
informainformaçções armazenadas no repositões armazenadas no repositóório e rio e 
para a gerapara a geraçção de outros produtos ão de outros produtos 
baseados nele e uma das contribuibaseados nele e uma das contribuiçções ões 
mais importantes do conceito de repositmais importantes do conceito de repositóório rio 
para o aperfeipara o aperfeiççoamento do processo de oamento do processo de 
software. software. 
Por exemplo, se um diagrama de classe Por exemplo, se um diagrama de classe 
UML UML éé modificado, o repositmodificado, o repositóório pode rio pode 
detectar se as classes relacionadas, as detectar se as classes relacionadas, as 
descridescriçções de interface e os componentes ões de interface e os componentes 
de cde cóódigo tambdigo tambéém requerem modificam requerem modificaçções e ões e 
podem chamar a atenpodem chamar a atençção do desenvolvedor ão do desenvolvedor 
para as Casses afetadas.para as Casses afetadas.
Acompanhamento de dependências e gestão de alteraAcompanhamento de dependências e gestão de alteraçções.ões.
Gerenciamento de Configuração de SoftwareGerenciamento de Configuração de Software
luther.fernandes@gmail.com
Essa funEssa funçção especial depende da ão especial depende da 
gestão de link e proporciona a gestão de link e proporciona a 
habilidade para controlar todos os habilidade para controlar todos os 
componentes de projeto e componentes de projeto e 
construconstruçção e outros produtos que ão e outros produtos que 
resultam de uma especificaresultam de uma especificaçção ão 
especial de requisitos especial de requisitos 
(acompanhamento adiante). (acompanhamento adiante). 
AlAléém disso, ela proporciona a m disso, ela proporciona a 
habilidade para identificar que habilidade para identificar que 
requisitos geraram determinado requisitos geraram determinado 
produto (retroacompanhamento).produto (retroacompanhamento).
Controle de requisitos.Controle de requisitos.
Gerenciamento de Configuração de SoftwareGerenciamento de Configuração de Software
luther.fernandes@gmail.com
Uma pista de auditoria estabelece Uma pista de auditoria estabelece 
informainformaçções adicionais sobre ões adicionais sobre 
quando, por que e por quem foram quando, por que e por quem foram 
feitas as alterafeitas as alteraçções. As ões. As 
informainformaçções sobre a origem das ões sobre a origem das 
alteraalteraçções podem ser colocadas ões podem ser colocadas 
como atributos de objetos como atributos de objetos 
especespecííficos no repositficos no repositóório. rio. 
Pistas de auditoria.Pistas de auditoria.
Gerenciamento de Configuração de SoftwareGerenciamento de Configuração de Software
luther.fernandes@gmail.com
Um mecanismo de disparo do Um mecanismo de disparo do 
repositrepositóório rio éé úútil para avisar o til para avisar o 
desenvolvedor ou a ferramenta que desenvolvedor ou a ferramenta que 
estestáá sendo usada para iniciar a sendo usada para iniciar a 
aquisiaquisiçção de informaão de informaçções de ões de 
auditoria (como, por exemplo, a auditoria (como, por exemplo, a 
razão de uma alterarazão de uma alteraçção) sempre ão) sempre 
que um elemento de projeto for que um elemento de projeto for 
modificado.modificado.
Gerenciamento de Configuração de SoftwareGerenciamento de Configuração de Software
luther.fernandes@gmail.com
O Processo SCMO Processo SCM
O processo de gestão de configuraO processo de gestão de configuraçção de software ão de software 
define uma sdefine uma séérie de tarefas que têm quatro objetivos rie de tarefas que têm quatro objetivos 
primprimáários: rios: 
(1) identificar todos os itens que coletivamente (1) identificar todos os itens que coletivamente 
definem a configuradefinem a configuraçção do software,ão do software,
(2) gerenciar altera(2) gerenciar alteraçções de um ou mais desses ões de um ou mais desses 
itens, itens, 
(3) facilitar a constru(3) facilitar a construçção de diferentes versões de ão de diferentes versões de 
uma aplicauma aplicaçção e ão e 
(4) assegurar que a qualidade do software seja (4) assegurar que a qualidade do software seja 
mantida mantida àà medida que a configuramedida que a configuraçção evolui com o ão evolui com o 
tempo. tempo. 
Gerenciamento de Configuração de SoftwareGerenciamento de Configuração de Software
luther.fernandes@gmail.com
O Processo SCMO Processo SCM
Um processo que atinja Um processo que atinja 
esses objetivos não precisa esses objetivos não precisa 
ser burocrser burocráático ou pesado, tico ou pesado, 
mas deve ser caracterizado mas deve ser caracterizado 
de maneira que permita a de maneira que permita a 
equipe de software equipe de software 
desenvolver respostas a uma desenvolver respostas a uma 
sséérie de questões rie de questões 
complexas:complexas:
Gerenciamento de Configuração de SoftwareGerenciamento de Configuração de Software
luther.fernandes@gmail.com
O Processo SCMO Processo SCM
Como uma equipe de software identifica os Como uma equipe de software identifica os 
elementos discretos de uma configuraelementos discretos de uma configuraçção de ão de 
software?software?
•• Como uma organizaComo uma organizaçção lida com as vão lida com as váárias rias 
versões de um programa (e sua documentaversões de um programa (e sua documentaçção) ão) 
de maneira que venha a permitir que a alterade maneira que venha a permitir que a alteraçção ão 
seja acomodada eficientemente?seja acomodada eficientemente?
•• Como uma organizaComo uma organizaçção controla alteraão controla alteraçções ões 
antes e depois que o software antes e depois que o software éé entregue ao entregue ao 
cliente?cliente?
•• Quem tem a responsabilidade de aprovar e Quem tem a responsabilidade de aprovar e 
classificar as alteraclassificar as alteraçções solicitadas?ões solicitadas?
•• Como podemos assegurar que as alteraComo podemos assegurar que as alteraçções ões 
foram feitas corretamente?foram feitas corretamente?
•• Que mecanismo Que mecanismo éé usado para alertar outras usado para alertar outras 
pessoas sobre as alterapessoas sobre as alteraçções que são feitas?ões que são feitas?
Gerenciamento de Configuração de SoftwareGerenciamento de Configuração de Software
luther.fernandes@gmail.com
O Processo SCMO Processo SCM
Um registro da Item de Um registro da Item de 
ConfiguraConfiguraçção (SCI) inclui ão (SCI) inclui 
nome, data de crianome, data de criaçção, ão, 
designadesignaçção da versão etc. ão da versão etc. 
para fins de auditoria da para fins de auditoria da 
configuraconfiguraçção e relato para ão e relato para 
aqueles que precisam ter aqueles que precisam ter 
conhecimento. conhecimento. 
E para fins de auditoria da E para fins de auditoria da 
configuraconfiguraçção e relato para ão e relato para 
aqueles que precisam ter aqueles que precisam ter 
conhecimento. conhecimento. 
Gerenciamento de Configuração de SoftwareGerenciamento de Configuração de Software
luther.fernandes@gmail.com
Camadas do Processo SCMCamadas do Processo SCM Versões Versões 
de 1 a Nde 1 a N
Gerenciamento de Configuração de SoftwareGerenciamento de Configuração de Software
luther.fernandes@gmail.com
Controle de VersãoControle de Versão O controle de versão combina procedimentos e Ocontrole de versão combina procedimentos e 
ferramentas para gerenciar diferentes ferramentas para gerenciar diferentes 
versões dos objetos de configuraversões dos objetos de configuraçção ão 
criados durante o processo de software. criados durante o processo de software. 
Um sistema de controle de versão Um sistema de controle de versão 
implementa ou estimplementa ou estáá diretamente integrado diretamente integrado 
com quatro recursos principais: com quatro recursos principais: 
(1)(1) uma banco de dados de projeto uma banco de dados de projeto 
(reposit(repositóório) que armazena todos os rio) que armazena todos os 
objetos de configuraobjetos de configuraçção relevantes, ão relevantes, 
(2) um recurso de gestão de versão que (2) um recurso de gestão de versão que 
armazena todas as versões de um objeto armazena todas as versões de um objeto 
de configurade configuraçção (ou permite que qualquer ão (ou permite que qualquer 
versão seja construversão seja construíída usando diferenda usando diferençças as 
das versõesdas versões
anteriores), anteriores), 
Gerenciamento de Configuração de SoftwareGerenciamento de Configuração de Software
luther.fernandes@gmail.com
Controle de VersãoControle de Versão
Uma facilidade de construir que permite Uma facilidade de construir que permite 
coletar todos os objetos de configuracoletar todos os objetos de configuraçção ão 
relevantes e construir uma versão relevantes e construir uma versão 
especespecíífica do software. Alfica do software. Aléém disso, os m disso, os 
sistemas de controle de versão e sistemas de controle de versão e 
controle de alteracontrole de alteraçção muitas vezes ão muitas vezes 
implementam um recurso chamado implementam um recurso chamado 
acompanhamento de tacompanhamento de tóópicos (tambpicos (tambéém m 
conhecido como acompanhamento de conhecido como acompanhamento de 
bug), que permite bug), que permite àà equipe de software equipe de software 
registrar e acompanhar o status de todos registrar e acompanhar o status de todos 
os problemas pendentes associados com os problemas pendentes associados com 
cada objeto de configuracada objeto de configuraçção.ão.
Gerenciamento de Configuração de SoftwareGerenciamento de Configuração de Software
luther.fernandes@gmail.com
Alguns sistemas de controle de Alguns sistemas de controle de 
versão criam um conjunto de versão criam um conjunto de 
modificamodificaçções ões —— uma coleuma coleçção de ão de 
todas as alteratodas as alteraçções (em relaões (em relaçção a ão a 
alguma configuraalguma configuraçção referencial) que ão referencial) que 
são necesssão necessáárias para criar uma rias para criar uma 
versão especversão especíífica do software. fica do software. 
Dart [Dar91] observa que um conjunto Dart [Dar91] observa que um conjunto 
de modificade modificaçções ões ““captura todas as captura todas as 
alteraalteraçções a todos os arquivos na ões a todos os arquivos na 
configuraconfiguraçção juntamente com a razão ão juntamente com a razão 
para aquelas alterapara aquelas alteraçções e os detalhes ões e os detalhes 
de quem as fez e quandode quem as fez e quando””..
Gerenciamento de Configuração de SoftwareGerenciamento de Configuração de Software
luther.fernandes@gmail.com
Uma abordagem de modelagem de Uma abordagem de modelagem de 
sistema contsistema contéém: m: 
(1)(1) um gabarito que inclui um gabarito que inclui 
hierarquia de componentes e hierarquia de componentes e 
uma uma ““ordem de construordem de construççãoão””
para os componentespara os componentes
descrevendo como o sistema deve descrevendo como o sistema deve 
ser construser construíído, do, 
(2) regras de constru(2) regras de construçção ão 
e e 
(3) regras de verifica(3) regras de verificaçção.ão.
Gerenciamento de Configuração de SoftwareGerenciamento de Configuração de Software
luther.fernandes@gmail.com
Durante as Durante as úúltimas dltimas déécadas cadas 
foram propostas muitas foram propostas muitas 
abordagens automabordagens automááticas ticas 
diferentes para o controle de diferentes para o controle de 
versão. A diferenversão. A diferençça prima primáária ria 
entre as abordagens entre as abordagens éé a a 
sofisticasofisticaçção dos atributos ão dos atributos 
usados para construir versões usados para construir versões 
especespecííficas e variantes de um ficas e variantes de um 
sistema e os mecanismos do sistema e os mecanismos do 
processo de construprocesso de construçção.ão.
Controle de Versão de ProgramasControle de Versão de Programas
Gerenciamento de Configuração de SoftwareGerenciamento de Configuração de Software
luther.fernandes@gmail.com
CVS (*) um sistema de controle de versão CVS (*) um sistema de controle de versão 
predominante de cpredominante de cóódigo aberto digo aberto 
transparente transparente àà rede [que] rede [que] éé úútil para til para 
qualquer um, desde desenvolvedores qualquer um, desde desenvolvedores 
individuais atindividuais atéé grandes equipes grandes equipes 
distribudistribuíídasdas”” [CVS07]. [CVS07]. 
Sua estrutura clienteSua estrutura cliente--servidor permite aos servidor permite aos 
usuusuáários acessar arquivos via conexões na rios acessar arquivos via conexões na 
Internet, e sua filosofia de cInternet, e sua filosofia de cóódigo aberto o digo aberto o 
torna dispontorna disponíível vel ààs plataformas mais s plataformas mais 
populares. O CVS estpopulares. O CVS estáá dispondisponíível sem vel sem 
custo para ambientes Windows, Mac OS, custo para ambientes Windows, Mac OS, 
LINUX e UNIX. LINUX e UNIX. 
Controle de Versão de Controle de Versão de 
Programas Programas -- CVSCVS
(*) System version Control(*) System version Control
Gerenciamento de Configuração de SoftwareGerenciamento de Configuração de Software
luther.fernandes@gmail.com
A realidade do controle de alteraA realidade do controle de alteraçções em um moderno ões em um moderno 
contexto de engenharia de softwarecontexto de engenharia de software
foi resumida elegantemente por James Bach [Bac98]:foi resumida elegantemente por James Bach [Bac98]:
O controle de alteraO controle de alteraçções ões éé vital. Mas as forvital. Mas as forçças que o as que o 
tornam necesstornam necessáário tambrio tambéém o tornam inconveniente.m o tornam inconveniente.
Temos medo das alteraTemos medo das alteraçções porque uma pequena ões porque uma pequena 
perturbaperturbaçção no cão no cóódigo pode criar uma enormedigo pode criar uma enorme
falha no produto. Elas podem reparar uma grande falha no produto. Elas podem reparar uma grande 
falha ou habilitar novos e maravilhososfalha ou habilitar novos e maravilhosos
recursos. Temos medo das alterarecursos. Temos medo das alteraçções porque um ões porque um úúnico nico 
desenvolvedor irresponsdesenvolvedor irresponsáável poderia afundar ovel poderia afundar o
projeto todo; embora ideias brilhantes possam surgir projeto todo; embora ideias brilhantes possam surgir 
nas mentes desses brincalhões, um controle denas mentes desses brincalhões, um controle de
processo de alteraprocesso de alteraçções pesado poderia efetivamente ões pesado poderia efetivamente 
desencorajdesencorajáá--los no seu trabalho criativo.los no seu trabalho criativo.
Controle de alteraControle de alteraççõesões
Gerenciamento de Configuração de SoftwareGerenciamento de Configuração de Software
luther.fernandes@gmail.com
Bach reconhece que temos aqui uma lei de equilBach reconhece que temos aqui uma lei de equilííbrio. brio. 
Se tivermos muito controle das alteraSe tivermos muito controle das alteraçções,ões,
criaremos problemas. Se tivermos pouco controle, criaremos problemas. Se tivermos pouco controle, 
criaremos outros problemas. Em um grande projeto de criaremos outros problemas. Em um grande projeto de 
software, alterasoftware, alteraççõesnão controladas levam ões não controladas levam 
rapidamente ao caos.rapidamente ao caos.
Para projetos assim, o controle de alteraPara projetos assim, o controle de alteraçções combina ões combina 
procedimentos humanos e ferramentasprocedimentos humanos e ferramentas
automatizadas, proporcionando um mecanismo para o automatizadas, proporcionando um mecanismo para o 
controle de alteracontrole de alteraçções. O processo deões. O processo de
controle de alteracontrole de alteraçções estões estáá ilustrado ilustrado 
esquematicamente na Figura 22.5. esquematicamente na Figura 22.5. 
Controle de alteraControle de alteraççõesões
Gerenciamento de Configuração de SoftwareGerenciamento de Configuração de Software
luther.fernandes@gmail.com
Uma solicitaUma solicitaçção de alteraão de alteraçção ão éé apresentada e apresentada e 
avaliada para determinar o mavaliada para determinar o méérito trito téécnico, efeitos cnico, efeitos 
colaterais potenciais, impacto global sobre outros colaterais potenciais, impacto global sobre outros 
objetos de configuraobjetos de configuraçção e funão e funçções do sistema e o ões do sistema e o 
custo projetado da alteracusto projetado da alteraçção. ão. 
Os resultados da avaliaOs resultados da avaliaçção são apresentados ão são apresentados 
como um relatcomo um relatóório de alterario de alteraçções, usado por uma ões, usado por uma 
autoridade de controle de alteraautoridade de controle de alteraçções (change ões (change 
control authority control authority —— CCA) CCA) —— uma pessoa ou grupo uma pessoa ou grupo 
de pessoas que toma a decisão fi nal sobre o de pessoas que toma a decisão fi nal sobre o 
status e prioridade da alterastatus e prioridade da alteraçção.ão.
Uma ordem de alteraUma ordem de alteraçção de engenharia ão de engenharia 
(engineering change order (engineering change order -- ECO) ECO) éé gerada para gerada para 
cada alteracada alteraçção aprovada. A ECO descreve a ão aprovada. A ECO descreve a 
alteraalteraçção a ser feita, as restrião a ser feita, as restriçções que devem ser ões que devem ser 
respeitadas e o critrespeitadas e o critéério para revisar e auditar.rio para revisar e auditar.
Controle de alteraControle de alteraççõesões
Gerenciamento de Configuração de SoftwareGerenciamento de Configuração de Software
luther.fernandes@gmail.com
Os objetos a ser alterados podem ser Os objetos a ser alterados podem ser 
colocados em um diretcolocados em um diretóório que rio que éé controlado controlado 
apenas pelo engenheiro de software que estapenas pelo engenheiro de software que estáá
fazendo a alterafazendo a alteraçção. Um sistema de controle ão. Um sistema de controle 
de versão (ver o quadro Ferramentas de de versão (ver o quadro Ferramentas de 
software sobre CVS) atualiza o arquivo software sobre CVS) atualiza o arquivo 
original logo que a alteraoriginal logo que a alteraçção foi feita. Como ão foi feita. Como 
alternativa, os objetos a ser alterados podem alternativa, os objetos a ser alterados podem 
ser ser ““retiradosretirados”” do banco de dadosdo banco de dados
do projeto (repositdo projeto (repositóório), as alterario), as alteraçções ser ões ser 
feitas e aplicadas feitas e aplicadas ààs atividades SQA s atividades SQA 
apropriadas. apropriadas. 
Controle de alteraControle de alteraççõesões
Os objetos são Os objetos são ““colocadoscolocados”” no banco de dados e usados mecanismos de controle de no banco de dados e usados mecanismos de controle de 
versão apropriados para criar a prversão apropriados para criar a próóxima versão do software.xima versão do software.
Gerenciamento de Configuração de SoftwareGerenciamento de Configuração de Software
luther.fernandes@gmail.com
Esses mecanismos de controle de Esses mecanismos de controle de 
versão, integrados ao processo de versão, integrados ao processo de 
controle de alteracontrole de alteraçções,ões,
implementam dois elementos implementam dois elementos 
importantes da gestão de alteraimportantes da gestão de alteraçções ões ——
controle de acesso e controlecontrole de acesso e controle
de sincronizade sincronizaçção. ão. 
Controle de AlteraControle de Alteraççõesões
Gerenciamento de Configuração de SoftwareGerenciamento de Configuração de Software
luther.fernandes@gmail.com
O controle de acesso identifica quais O controle de acesso identifica quais 
os engenheiros de software têm os engenheiros de software têm 
autoridade para acessar e modifi car autoridade para acessar e modifi car 
um objeto de configuraum objeto de configuraçção em ão em 
particular. O controle de sincronizaparticular. O controle de sincronizaççãoão
ajuda a assegurar que alteraajuda a assegurar que alteraçções ões 
paralelas, executadas por duas paralelas, executadas por duas 
pessoas diferentes, de modo que nãopessoas diferentes, de modo que não
sobrescrevam uma sobrescrevam uma àà outra.outra.
Controle de AlteraControle de Alteraççõesões
Gerenciamento de Configuração de SoftwareGerenciamento de Configuração de Software
luther.fernandes@gmail.com
Os desenvolvedores para WebApp muitas vezes Os desenvolvedores para WebApp muitas vezes 
usam um modelo de processo iterativo, usam um modelo de processo iterativo, 
incremental, que aplica muitos princincremental, que aplica muitos princíípios pios 
derivados do desenvolvimento derivados do desenvolvimento áágil de software gil de software 
(Cap(Capíítulo 3). Por meio dessa abordagem, uma tulo 3). Por meio dessa abordagem, uma 
equipe de engenharia muitas vezes desenvolve equipe de engenharia muitas vezes desenvolve 
um incremento para WebApp em um perum incremento para WebApp em um perííodo de odo de 
tempo muito curto usando uma abordagem tempo muito curto usando uma abordagem 
focada no cliente. focada no cliente. 
Controle de AlteraControle de Alteraççõesões
Gerenciamento de Configuração de SoftwareGerenciamento de Configuração de Software
luther.fernandes@gmail.com
Incrementos subsequentes Incrementos subsequentes 
adicionam conteadicionam conteúúdo e do e 
funcionalidade, e cada um deles funcionalidade, e cada um deles 
tende a implementar alteratende a implementar alteraçções que ões que 
levam a um contelevam a um conteúúdo aperfeido aperfeiççoado, oado, 
melhor utilizamelhor utilizaçção, melhor estão, melhor estéética, tica, 
melhor navegamelhor navegaçção, melhor ão, melhor 
desempenho e maior segurandesempenho e maior segurançça. a. 
Portanto, no mundo Portanto, no mundo áágil das gil das 
WebApps, a alteraWebApps, a alteraçção ão éé vista de vista de 
forma um tanto diferente.forma um tanto diferente.
Controle de AlteraControle de Alteraççõesões
Gerenciamento de Configuração de SoftwareGerenciamento de Configuração de Software
luther.fernandes@gmail.com
Controle de AlteraControle de Alteraççõesões
Sem controles eficazes, alteraSem controles eficazes, alteraçções ões 
imprimpróóprias a uma WebApp podem levar prias a uma WebApp podem levar 
a: uma colocaa: uma colocaçção não autorizada de ão não autorizada de 
informainformaçções sobre novos produtos, ões sobre novos produtos, 
funcionalidade errônea ou mal testada funcionalidade errônea ou mal testada 
que causa frustraque causa frustraçção nos visitantes de ão nos visitantes de 
um site, brechas na seguranum site, brechas na segurançça que a que 
põem em risco os sistemas internos da põem em risco os sistemas internos da 
empresa e outras consequências empresa e outras consequências 
economicamente desagradeconomicamente desagradááveis ou atveis ou atéé
mesmo desastrosas.mesmo desastrosas.
Gerenciamento de Configuração de SoftwareGerenciamento de Configuração de Software
luther.fernandes@gmail.com
As estratAs estratéégias gerais para gias gerais para 
gestão de configuragestão de configuraçção de ão de 
software (SCM) descritas software (SCM) descritas 
são aplicsão aplicááveis, veis,observando que as observando que as 
ttááticas e as ferramentas ticas e as ferramentas 
devem ser adaptadas de devem ser adaptadas de 
acordo com a natureza as acordo com a natureza as 
aplicaaplicaçções orientadas ões orientadas 
para WEB ( WebApps). para WEB ( WebApps). 
Controle de AlteraControle de Alteraççõesões
Gerenciamento de Configuração de SoftwareGerenciamento de Configuração de Software
luther.fernandes@gmail.com
Na medida em que as WebApps se Na medida em que as WebApps se 
tornam cada vez mais importantes tornam cada vez mais importantes 
para a sobrevivência dos negpara a sobrevivência dos negóócios, cios, 
crescem as necessidades da gestão crescem as necessidades da gestão 
de configurade configuraçção. ão. 
. As estrat. As estratéégias gerais para gestão de gias gerais para gestão de 
configuraconfiguraçção de software (SCM) são ão de software (SCM) são 
aplicaplicááveis, mas as tveis, mas as tááticas e as ticas e as 
ferramentas devem ser adaptadas ferramentas devem ser adaptadas 
para se conformarem com a natureza para se conformarem com a natureza 
especial das WebApps. especial das WebApps. 
Controle de AlteraControle de Alteraççõesões
Gerenciamento de Configuração de SoftwareGerenciamento de Configuração de Software
luther.fernandes@gmail.com
Quatro aspectos [Dar99] deverão ser Quatro aspectos [Dar99] deverão ser 
considerados ao desenvolvermos tconsiderados ao desenvolvermos tááticas ticas 
para gestão de configurapara gestão de configuraçção de WebApp.ão de WebApp.
ConteConteúúdo. Uma WebApp tdo. Uma WebApp tíípica contpica contéém um m um 
vasto conjunto de contevasto conjunto de conteúúdo do —— texto, texto, 
grgrááficos, applets, scripts, arquivos de ficos, applets, scripts, arquivos de 
ááudio/vudio/víídeo, formuldeo, formuláários, elementos de rios, elementos de 
ppáágina ativos, tabelas, dados encadeados e gina ativos, tabelas, dados encadeados e 
muitos outros. muitos outros. 
O desafio O desafio éé organizar esse mar de conteorganizar esse mar de conteúúdo do 
em um conjunto racional de objetos de em um conjunto racional de objetos de 
configuraconfiguraçção e, então, estabelecer ão e, então, estabelecer 
mecanismos de controle de configuramecanismos de controle de configuraçção ão 
apropriados para esses objetos. apropriados para esses objetos. 
Controle de AlteraControle de Alteraççõesões
Gerenciamento de Configuração de SoftwareGerenciamento de Configuração de Software
luther.fernandes@gmail.com
Uma abordagem Uma abordagem éé modelar o contemodelar o conteúúdo do 
da Webda Web--App usando tApp usando téécnicas cnicas 
convencionais de modelagem de dados, convencionais de modelagem de dados, 
anexando um conjunto de propriedades anexando um conjunto de propriedades 
especializadas a cada objeto. A natureza especializadas a cada objeto. A natureza 
estestáática/dinâmica de cada objeto e sua tica/dinâmica de cada objeto e sua 
longevidade projetada (por exemplo, longevidade projetada (por exemplo, 
objeto temporobjeto temporáário, de existência fixa ou rio, de existência fixa ou 
permanente) são exemplos de permanente) são exemplos de 
propriedades necesspropriedades necessáárias para rias para 
estabelecer uma abordagem de SCM estabelecer uma abordagem de SCM 
eficaz. eficaz. 
Controle de AlteraControle de Alteraççõesões
Gerenciamento de Configuração de SoftwareGerenciamento de Configuração de Software
luther.fernandes@gmail.com
Quatro aspectos [Dar99] deverão ser Quatro aspectos [Dar99] deverão ser 
considerados ao desenvolvermosconsiderados ao desenvolvermos
ttááticas para gestão de configuraticas para gestão de configuraçção de WebApp.ão de WebApp.
Pessoas. Devido ao fato de que uma Pessoas. Devido ao fato de que uma 
porcentagem significativa do desenvolvimento de porcentagem significativa do desenvolvimento de 
WebApp continua a ser executada de maneira ad WebApp continua a ser executada de maneira ad 
hoc, qualquer pessoa envolvida na WebApp pode hoc, qualquer pessoa envolvida na WebApp pode 
criar contecriar conteúúdo (e frequentemente o faz). Muitos do (e frequentemente o faz). Muitos 
criadores de contecriadores de conteúúdo não possuem do não possuem 
conhecimentos em engenharia de software e conhecimentos em engenharia de software e 
ignoram completamente a necessidade de gestão ignoram completamente a necessidade de gestão 
de configurade configuraçção. Consequentemente, a aplicaão. Consequentemente, a aplicaçção ão 
cresce e cresce e éé alterada de maneira não controlada.alterada de maneira não controlada.
Controle de AlteraControle de Alteraççõesões
Gerenciamento de Configuração de SoftwareGerenciamento de Configuração de Software
luther.fernandes@gmail.com
Escalabilidade. As tEscalabilidade. As téécnicas e controles aplicados cnicas e controles aplicados 
a uma pequena WebApp não são bem escala uma pequena WebApp não são bem escalááveis. veis. 
Não Não éé raro uma simples WebApp crescer raro uma simples WebApp crescer 
significativamente enquanto são implementadas significativamente enquanto são implementadas 
interconexões com sistemas de informainterconexões com sistemas de informaçção ão 
existentes, bancos de dados, armazexistentes, bancos de dados, armazéém de dados e m de dados e 
gateways e portais. gateways e portais. 
ÀÀ medida que cresce o tamanho e a medida que cresce o tamanho e a 
complexidade, pequenas mudancomplexidade, pequenas mudançças podem ter as podem ter 
efeitos amplos e inesperados que podem se efeitos amplos e inesperados que podem se 
tornar problemtornar problemááticos. Portanto, o rigor dos ticos. Portanto, o rigor dos 
mecanismos de configuramecanismos de configuraçção deverão deveráá ser ser 
diretamente proporcional diretamente proporcional àà escala de aplicaescala de aplicaçção.ão.
Controle de AlteraControle de Alteraççõesões
Gerenciamento de Configuração de SoftwareGerenciamento de Configuração de Software
luther.fernandes@gmail.com
PolPolííticas. Quem ticas. Quem éé o o ““donodono”” de uma WebApp? Essa de uma WebApp? Essa éé
uma pergunta feita em empresas grandes e pequenas, uma pergunta feita em empresas grandes e pequenas, 
e sua resposta tem um impacto significativo sobre as e sua resposta tem um impacto significativo sobre as 
atividades de gerenciamento e controle. Em alguns atividades de gerenciamento e controle. Em alguns 
casos os desenvolvedores para Web estão instalados casos os desenvolvedores para Web estão instalados 
fora da organizafora da organizaçção de TI, criando dificuldades ão de TI, criando dificuldades 
potenciais de comunicapotenciais de comunicaçção. Dart [Dar99] sugere as ão. Dart [Dar99] sugere as 
seguintes perguntas para ajudar a entender as polseguintes perguntas para ajudar a entender as polííticas ticas 
associadas com engenharia para Web:associadas com engenharia para Web:
Quem assume a responsabilidade pela exatidão das Quem assume a responsabilidade pela exatidão das 
informainformaçções no site?ões no site?
•• Quem garante que os processos de controle de Quem garante que os processos de controle de 
qualidade foram obedecidos antes que as informaqualidade foram obedecidos antes que as informaçções ões 
fossem publicadas no site?fossem publicadas no site?
•• Quem Quem éé responsresponsáável por fazer alteravel por fazer alteraçções?ões?
•• Quem assume o custo da alteraQuem assume o custo da alteraçção?ão?
Controle de AlteraControle de Alteraççõesões
Gerenciamento de Configuração de SoftwareGerenciamento de Configuração de Software
luther.fernandes@gmail.com
As respostas a essas perguntas ajudam a determinar As respostas a essas perguntas ajudam a determinar 
as pessoas na organizaas pessoas na organizaçção que devem adotar um ão que devem adotar um 
processo de gestão de configuraprocesso de gestão de configuraçção para WebApps.ão para WebApps.
A gestãode configuraA gestão de configuraçção para WebApps continua a ão para WebApps continua a 
evoluir (por exemplo, [Ngu06]). Um processo de SCM evoluir (por exemplo, [Ngu06]). Um processo de SCM 
convencional pode ser muito desajeitado, mas uma convencional pode ser muito desajeitado, mas uma 
nova geranova geraçção de ferramentas de gestão de conteão de ferramentas de gestão de conteúúdo do 
especificamente projetadas para a engenharia surgiu especificamente projetadas para a engenharia surgiu 
nos nos úúltimos anos.ltimos anos.
Essas ferramentas estabelecem um processo que Essas ferramentas estabelecem um processo que 
adquire as informaadquire as informaçções existentes (de uma ampla ões existentes (de uma ampla 
variedade de objetos WebApp), gerencia as alteravariedade de objetos WebApp), gerencia as alteraçções ões 
nos objetos, estrutura essas alteranos objetos, estrutura essas alteraçções para que ões para que 
possam ser apresentadas a um usupossam ser apresentadas a um usuáário final e as rio final e as 
apresenta ao ambiente do lado do cliente para ser apresenta ao ambiente do lado do cliente para ser 
exibidas.exibidas.
Controle de AlteraControle de Alteraççõesões
Gerenciamento de Configuração de SoftwareGerenciamento de Configuração de Software
luther.fernandes@gmail.com
A gestão de conteA gestão de conteúúdo estdo estáá relacionada relacionada 
com a gestão de configuracom a gestão de configuraçção no ão no 
sentido de que um sistema de gestão de sentido de que um sistema de gestão de 
conteconteúúdo (CMS) estabelece um do (CMS) estabelece um 
processo (suportado por ferramentas processo (suportado por ferramentas 
apropriadas) que adquire o conteapropriadas) que adquire o conteúúdo do 
existente (de uma ampla variedade de existente (de uma ampla variedade de 
objetos de configuraobjetos de configuraçção de WebApp), ão de WebApp), 
estrutura esse conteestrutura esse conteúúdo de maneira que do de maneira que 
ele possa ser apresentado a um usuele possa ser apresentado a um usuáário rio 
final e, então, fornecefinal e, então, fornece--o ao ambiente no o ao ambiente no 
lado do cliente para ser exibido. lado do cliente para ser exibido. 
ConclusãoConclusão
Gerenciamento de Configuração de SoftwareGerenciamento de Configuração de Software
luther.fernandes@gmail.com
Gerenciamento de Configuração de SoftwareGerenciamento de Configuração de Software
luther.fernandes@gmail.com
Estudo de CasoEstudo de Caso

Continue navegando