Valores e princípios na programação de um sistema de rede

Valores e princípios na programação de um sistema de rede
INFORMATICA
Para atender rapidamente às necessidades do cliente, quase sempre um dos valores mais importantes é a simplicidade na execução das tarefas necessárias para se alcançar aquele objetivo. Normalmente o que o cliente quer é muito mais simples do que aquilo que os programadores constroem.

Por isso, tenha em mente que em geral, a solução mais simples, tende a ser a ideal, pois resolve o problema de forma mais rápida, retornando para o cliente de forma mais rápida, com menor custo e esforço e deverá gerar um esforço de suporte e manutenção reduzido no futuro, quando esse mesmo sistema apresentar algum erro ou precisar ser modificado por conta de algum novo requisito.

Projeto simples significa dizer que caso o cliente tenha pedido que na primeira versão a ser entregue, apenas o usuário "admin" possa acessar o sistema e ter acesso a todos os módulos, será feito o código exato para que este objetivo seja alcançado, sem se preocupar com sistemas de autenticação e restrições de acesso.

Um erro comum ao adotar essa prática é a confusão por parte dos programadores do significado de código simples e código fácil. Nem sempre o código mais fácil de ser desenvolvido (que demanda menor tempo) levará a uma solução mais simples para o projeto. Esse entendimento é fundamental para o bom andamento do XP. Código fácil deve ser identificado e substituído por código simples e que atenda integralmente ao pedido e que deverá ser entregue pela equipe.
Muitas pesquisas indicando que a maior parte das funcionalidades desenvolvidas num projeto acaba esquecida, não sendo utilizadas pelos mesmos usuários que a definiram. Tudo isso para chegar à conclusão de que os projetos de software frequentemente investem grande parte dos recursos (tempo, pessoas e dinheiro) em esforços desnecessários, que não precisariam ser feitos, pois os clientes simplesmente não as usam! Alguns pontos ajudam a esclarecer essa triste conclusão:

• O escopo é fixado no início e alterações no mesmo são evitadas e o que foi pensado há um ano pode ter deixado de ser verdade, devido a alterações que ocorreram na própria realidade do cliente.

• Os desenvolvedores criam soluções genéricas para facilitar possíveis alterações que possam ocorrer no escopo, mas que no momento não existem e podem nem vir a existir.

• Os desenvolvedores produzem funcionalidades adicionais na tentativa de antecipar o que o usuário pode vir a solicitar no futuro, mas que na prática pode não acontecer, gerando um trabalho que poderia ser simplesmente evitado.

Para que uma equipe de desenvolvimento possa trabalhar com iterações curtas, é necessário que ela seja capaz de receber um pequeno escopo de funcionalidades no início de cada iteração e construí-las completamente dentro de um curto prazo de tempo.

Isso cria a necessidade de concentrar esforços apenas nos essenciais para terminar as funcionalidades da iteração, evitando generalizações que ainda não se mostrem necessárias (e que podem nunca vir a serem) e a criação de funcionalidades que ainda não tiverem sido solicitadas pelos usuários. Ao invés de tentar prever que mudanças o usuário solicitará e, portanto, que generalizações serão úteis, os desenvolvedores procuram simplificar o sistema, tornando-o mais fácil de ser alterado no futuro.

Colunista Portal - Educação
O Portal Educação possui uma equipe focada no trabalho de curadoria de conteúdo. Artigos em diversas áreas do conhecimento são produzidos e disponibilizados para profissionais, acadêmicos e interessados em adquirir conhecimento qualificado. O departamento de Conteúdo e Comunicação leva ao leitor informações de alto nível, recebidas e publicadas de colunistas externos e internos.
Seja um colunista
Sucesso! Recebemos Seu Cadastro.

ASSINE NOSSA NEWSLETTER