Pular navegação

Olá!

Venho novamente falar de software como produto falando de extensão e configuração. Estes 2 conceitos são muito comuns quando a gente tem que fazer o famigerado documento de requisitos do software.

Mas não é só de porque está escrito no documento de requisitos que o software deve ser extensível que magicamente ele será. É necessário um planejamento onde o software tem que ser extensível e configurável. Neste primeiro artigo vou falar de configuração.

Por que deixar um software configurável? Um software como produto deve resolver um problema de um nicho de mercado, mas os clientes têm regras de negócios diferentes. Porém, se é possível mapear todas as regras possíveis ou a grande maioria delas, é interessante a gente deixe todas ou a maioria funcionalidades possíveis dentro do software e assim, para cada caso é só mudar “a chave” para uma configuração ou para outra.

Vamos fazer um exercício de imaginação: Vamos construir um carro universal no qual você pode andar em qualquer país do mundo, mas vamos nos aprofundar mais indo no sistema de ar deste carro.

Todos nós sabemos do calor brasileiro, logo é muito interessante um ar condicionado para refrescar. Agora imagine que este mesmo carro está sendo vendido na Rússia. Sabemos que na Rússia o inverno é bem rigoroso, chegando a temperaturas negativas, logo um russo precisa de um aquecedor. Entenderam a analogia? Um produto configurável funciona para clientes diferentes, porém executando a sua ação que no nosso caso é o sistema de ar.

Como ninguém faz carros universais, um exemplo real na área de software é o Linux! Quem já fez a famigerada compilação do Kernel sabe que há milhares de opções e podemos ter Linuxes bem diferentes entre si apenas compilando de uma forma ou outra. Outro caso bem simples são as configurações dos navegadores como Página Inicial, alertas, validações, etc.

Mas sempre tenha em mente que ao montar uma configuração, na verdade, estão sendo criadas 2 ou mais funcionalidades. Com isso o tempo de desenvolvimento aumenta. Então sempre faça a seguinte pergunta: Esta configuração é necessária e vamos atacar clientes que precisem disso? Assim, sempre é possível fazer um produto que melhor se ajuste ao seu público-alvo.

One Trackback/Pingback

  1. [...] artigo anterior eu falei de como configuração pode ajudar a ter um software compatível com várias [...]

Deixe uma resposta

Preencha os seus dados abaixo ou clique em um ícone para log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Sair / Alterar )

Imagem do Twitter

You are commenting using your Twitter account. Sair / Alterar )

Foto do Facebook

You are commenting using your Facebook account. Sair / Alterar )

Connecting to %s

Seguir

Obtenha todo post novo entregue na sua caixa de entrada.