Cadastre-se Revistas DevMedia Cursos
 

Space de Vinícius Rodrigues de Souza
Busca Autor


Últimas 20 atualizações de Vinícius Rodrigues de Souza

Artigo - O Papel Evolutivo do Software - Engenharia de Software 28

Esse artigo faz parte da revista Engenharia de Software 28 edição especial. Clique aqui para ler todos os artigos desta edição

Manutenção

O Papel Evolutivo do Software

Conceitos básicos sobre manutenção e evolução de software

 

De que se trata o artigo:

Esse artigo apresenta algumas definições de manutenção de software, os tipos existentes, os impactos de sua aplicação e como é utilizada durante o desenvolvimento de um sistema.

 

Para que serve:

A manutenção de software é um processo de melhoria de um software já desenvolvido, ou que está sendo desenvolvido. Com a manutenção também é possível corrigir erros que são encontrados durante a utilização do sistema pelo usuário ou por testes realizados pelos desenvolvedores.

 

Em que situação o tema é útil:

A manutenção de software visa prever e corrigir quaisquer problemas que possam ocorrer, ou que venham a ocorrer, durante a utilização de um produto de software.

 

Manutenção significa um conjunto de modificações realizadas no software que pode ocorrer durante o desenvolvimento ou após a sua entrega, ou seja, durante a sua utilização. As modificações podem ser de várias formas e para atingir objetivos distintos. São utilizadas para a correção de erros, atualização do sistema, aperfeiçoamento do software ou para sua adaptação a uma nova realidade.

A manutenção de software, até pouco tempo, sempre foi considerada na etapa de desenvolvimento algo secundário, de pouco valor. Era considerada por muitos como uma fonte de gastos que comprometiam a criação de software. 

Durante o desenvolvimento, os sistemas eram elaborados sem a preocupação de que um dia eles precisariam sofrer alguma alteração para se adequarem às novas necessidades do usuário. Quando isso ocorria, a manutenção era feita de forma precária, pois não existia um gerenciamento adequado para que fossem feitas as mudanças. Com isso, tais mudanças poderiam gerar novos erros que aumentariam ainda mais o tempo necessário para que fossem feitas as correções desejadas pelo usuário.

Atualmente, um problema chave para as organizações é implementar e gerenciar a manutenção em seus sistemas legados. Sistemas legados são sistemas imprescindíveis para os negócios de uma organização. Em geral, possuem documentação precária ou inexistente e passaram, ao longo dos anos, por manutenções realizadas por diversos profissionais, sem seguir boas práticas de engenharia de software.

Nesse artigo, nesse artigo serão apresentados conceitos básicos de manutenção e evolução de software, incluindo definições e processos realizados durante a manutenção de software, bem como os tipos de manutenção e exemplos de refatoração que podem ser realizados durante este processo.

Evolução de Software

Os sistemas geralmente refletem situações do mundo real e, com isso, há uma necessidade que o software mude acompanhando as mudanças de requisitos impostos pelo ambiente em que está inserido. Se o sistema não sofre essas mudanças, pode ficar obsoleto e cair em desuso.

O envelhecimento de um software é um processo inevitável, mas é possível de ser compreendido e suas causas previstas, para que sejam minimizados os impactos dos danos causados por esse envelhecimento. Ele pode se dividir em duas vertentes: quando as mudanças necessárias não são implementadas e o sistema não é adequado às novas regras de negócio utilizadas, e a segunda é quando as adaptações são feitas de maneira desordenada e acarretam problemas para o sistema como um todo, gerando novos erros e diminuindo sua manutenibilidade.

As desvantagens causadas pelo envelhecimento de um software são a perda de desempenho devido a modificações não adequadas na sua estrutura interna, geração de novos erros devido a alterações indevidas no código e perda de usuários devido à falta de meios para concorrer com versões mais recentes de sistemas semelhantes, como por exemplo, a utilização em sistemas operacionais diferentes.

Através dessas características, qualquer software que não tenha sido projetado para atuar baseado num tempo de vida muito curto, pode vir a sofrer os efeitos nocivos do envelhecimento. Apesar de inevitável, estes efeitos podem ser retardados ou consideravelmente diminuídos, desde que sejam seguidos alguns cuidados no desenvolvimento e evolução do software em questão. Dentre alguns cuidados está a manutenção de software.

De acordo com Sommerville,

...
Exibição do post interrompida. Para ler conteúdo completo, clique aqui
06/09/2010 09:47:00





Artigo - Artigo Engenharia de Software 17 - Prototipação no Desenvolvimento de Software

Esse artigo faz parte da revista Engenharia de Software 17 edição especial. Clique aqui para ler todos os artigos desta edição



Projeto

Prototipação no Desenvolvimento de Software

Aprenda a criar protótipos de interfaces com a ferramenta Axure

 

De que trata o artigo:

Esse artigo apresenta algumas definições sobre a prototipação no desenvolvimento de sistemas de informação, seus diferentes tipos como prototipação de baixa e alta fidelidade, prototipação throw-away e prototipação evolutiva, wireframes, suas aplicações, vantagens e desvantagens. Além disso, mostra a utilização de uma ferramenta capaz de gerar protótipos de vários tipos dependendo de qual linha o desenvolvedor deseja seguir.

 

Para que serve:

...
Exibição do post interrompida. Para ler conteúdo completo, clique aqui
02/10/2009 02:25:00





Artigo - Artigo Engenharia de Software 16 - Teste funcional utilizando o Abbot Framework

Esse artigo faz parte da revista Engenharia de Software 16 edição especial. Clique aqui para ler todos os artigos desta edição



Validação, Verificação e Teste

Teste funcional utilizando o Abbot Framework

Automatizando testes em aplicações Java Desktop

 

De que trata o artigo:

Esse artigo apresenta a utilização do framework Abbot Java GUI Test Framework, capaz de executar testes funcionais baseado em eventos a fim de antecipar possíveis problemas durante a utilização de um software. O Abbot framework é uma biblioteca Java para GUI (Graphic User Interface), que fornece métodos para reproduzir ações do usuário e examinar o estado dos componentes GUI. O framework pode ser utilizado diretamente a partir do código Java inserido na aplicação ou acessados sem programação através da utilização de scripts através do Costello Script para Abbot.

 

Para que serve:

...
Exibição do post interrompida. Para ler conteúdo completo, clique aqui
03/09/2009 11:07:00





Artigo - Artigo Engenharia de Software 7 - Teste de Desempenho de Aplicações Web com Apache JMeter

Esse artigo faz parte da revista Engenharia de Software 7 edição especial. Clique aqui para ler todos os artigos desta edição

Validação, Verificação e Teste

Teste de Desempenho de Aplicações Web com Apache JMeter

 

De que se trata o artigo:

Esse artigo apresenta a configuração e utilização da ferramenta Apache JMeter, capaz de executar testes de desempenho em sistemas baseados na Web, a fim de se antecipar a possíveis problemas de sobrecarga na utilização do software.

 

Para que serve:

Apache JMeter é uma aplicação desenvolvida totalmente em Java que auxilia na geração de testes de desempenho para aplicações Web. Ela é capaz de simular acessos simultâneos na aplicação e possibilita a visualização dos resultados para avaliação do desempenho por meio de gráficos e tabelas.

 

Em que situação o tema é útil:

  O intuito desse processo é assegurar que a arquitetura desenvolvida para atender a uma solução realmente consiga suportar a quantidade de usuários previstos para acessar o aplicativo, sendo possível mensurar alguns atributos determinantes para um bom funcionam

...
Exibição do post interrompida. Para ler conteúdo completo, clique aqui
15/11/2008 13:20:00





 

É graduando em Sistemas de Informação pela Faculdade Metodista Granbery, graduando em Engenharia Civil pela universidade Federal de Juiz de Fora e estagiário na Prefeitura de Juiz de Fora na área de desenvolvimento e testes de software.
Arquivo de atualizações
 2010
 2009
 2008

Estatísticas do Autor:
Número de posts: 4
Características dos posts deste autor:
Conteúdo:
Utilidade:
2 0
 
DevMedia Group - Tel: (21) 3382-5038 - www.devmedia.com.br
Todos os Direitos Reservados a DevMedia Group