Showing posts with label software livre. Show all posts
Showing posts with label software livre. Show all posts

Monday, May 12, 2014

Inovação no Desenvolvimento de Software

Tive a oportunidade de trabalhar em diversas empresas de software (já se vão mais de 30 anos), e a maioria delas tem o mesmo principio no desenvolvimento de seus produtos. O modelo adotado tanto pelas grandes empresas do exterior quanto pelas brasileiras é idêntico. Eles desenvolvem um sistema inicial e com o passar do tempo vão adicionando novas funcionalidades (por força do mercado, por solicitação de clientes, etc) e acabam criando um excesso de funcionalidades. Com isto o sistema se torna mais complexo a cada ciclo de nova versão e atualização.
A maioria das empresas de software mantém praticamente inalterado a fórmula que as trouxe sucesso no passado mas que não garantirá o seu futuro. Porquê ?
As novas funcionalidades adicionadas são acumuladas e nem sempre revistas e periodicamente são enviadas para clientes com contratos de manutenção, obrigando-os a reimplantarem o sistema, mesmo que não tenham necessidade do que está sendo entregue, ou queiram apenas uma parte do todo.
O problema se inicia basicamente ai... 
Como os software rodam nos servidores dos clientes, os fornecedores não tem ideia de quais as funcionalidades os clientes realmente usam e nem imaginam quais as dificuldades reais os clientes passam com o uso do produto.
Por sua vez os fornecedores não tem condições de garantir que todos os clientes migrem simultaneamente para a última versão e acaba ficando com gastos de manutenção não previstos e suporte em diversas versões, o que reduz a rentabilidade da empresa, sem que ela tenha uma alternativa imediata para este problema a não ser insistir para que os clientes migrem para uma nova versão.
O que poderia contribuir com os fornecedores, seria ouvir os clientes, eventualmente, alguns pedidos, sugestões e criticas são formulados. Portanto muitas das novas funcionalidades não se mostram atrativas para muitos clientes. Eles não precisam delas e não deveriam ser incorporadas ao núcleo do sistema.
Uma das soluções seria o modelo SaaS (Software as Service), aonde o fornecedor, por ter o software operando em seus servidores teria maior domínio da situação. Com esta característica o fornecedor tem condições de entender o cenário de uso dos sistemas e pode ser mais responsivo no momento de necessidade de uma atualização massiva.
Para que isto aconteça se faz necessário redesenhar o software atual para o modelo de cloud e desenvolver outros diretamente para este novo modelo. Vale comentar que não é simplesmente operá-lo em uma máquina virtual da mesma forma que o software é operado hoje. Se faz necessário uma nova arquitetura, modular com ampla adoção dos conceitos de SOA, aonde a tônica seriam os mecanismos de rastreamento e capacidade de se configurar automaticamente para que cada usuário tenha as funcionalidades que precisa e pague apenas pelo que utiliza. 
Em função de operar nos servidores do fornecedor em cloud, todos usuários passam a ter a mesma versão.
Um outro ponto importante a citar, diz respeito aos processos de desenvolvimento de software que precisam ser aprimorados para que a entrada em operação de uma nova versão não provoque danos, pois com o modelo de cloud, um erro afeta todos os usuários do sistema e portanto devem implementar mecanismos de retorno imediato a versão anterior. Claro que a divisão da aplicação e bons mecanismos de qualidade podem reduzir estes problemas.
Os bastidores das empresas de software tendem a se modificar muito para atender as sempre constantes novas demandas, mas é de fundamental importância que os fornecedores se adaptem para melhorar a experiência dos clientes. Imagine que toda vez que você tiver que migrar a versão do ERP você precisa fazer uma implantação. Isto não cabe mais neste novo cenário, alguns clientes podem aproveitar para validar o uso do software do concorrente exatamente neste momento, pois o stress do processo é muito parecido. 
O design de interface passa a ter um papel importante no projeto de software, pois com uma interface de fácil utilização reduz a necessidade de treinamento do usuário final. As interfaces atuais merecem ser aprimoradas para se encaixarem no modelo de APPS já consolidado no mundo mobile. Devem ser mais intuitivos e de fácil uso.
Com este novo paradigma, as empresas de software deve sofrer uma grande modificação no processo o desenvolvimento. As adições de novas funcionalidades e as alterações devem ser feitas de  forma contínua, permitindo agilidade na implantação. 
A oportunidade para um novo modelo de negócios está aberta e em processo de consolidação, portanto em vez de receber 500 K no ato da venda que tal receber um milhão em forma de micro pagamentos, um formato totalmente diferente do que é hoje.
O próprio software pode embutir mecanismos de incentivo à aquisição de novas funcionalidades, como a Amazon usa para vender livros tipo “quem comprou este livro, também comprou este outro” pode ser adaptado para “quem usa esta funcionalidade, também usa esta outra”.
O processo de vendas precisa se modificar. Vendemos software como Henry Ford iniciou a venda de carros padronizados em 1908. Parafraseando Ford - "O cliente pode ter o carro que quiser contanto que seja preto". "O cliente pode ter o software que quiser contanto que tenha uma tela azul no inicio!"
O software precisa ser um conjunto de funcionalidades onde o cliente escolhe o seu próprio cardápio e monta o seu próprio aplicativo. A venda deixa de ser produto padronizado para venda consultiva, onde é muito mais importante entender as necessidades e demandas do cliente e de seu negócio do que a tecnologia que está no software. 
O discurso não é mais enlatado, mas individualizado, um para um. 
A industria do software não será a mesma como a conhecemos hoje. Big Data, Plataformas Sociais, Mobildiade e Cloud estão transformando todos os setores e estas ondas também vão afetar todos independente de tamanho. Será que os CIO das industrias de Software estão se preparando para estas mudanças ?

Wednesday, December 21, 2011

Aprovada pelo Governo Preferência por uso de software livre

A proposta que garante preferência para software livre na contratação de bens e serviços de informática pela União, pelos estados, Distrito Federal e os municípios foi aprovada na quarta-feira, 14, pela Comissão de Trabalho, Administração e Serviço Público da Câmara dos Deputados.

A relatora da matéria, deputada Manuela D'Ávila (PC do B-RS), recomendou a aprovação da proposta. 
O texto aprovado é um substitutivo adotado pela Comissão de Ciência e Tecnologia, Comunicação e Informática ao Projeto de Lei 2269/99, do ex-deputado e atual senador Walter Pinheiro (PT-BA).

Pelo texto, software livre é aquele que garante a qualquer usuário, sem custos adicionais, a execução do programa para qualquer fim; a redistribuição de cópias; o estudo de seu funcionamento, permitindo a sua adaptação às necessidades do usuário, seu melhoramento e a publicação dessas melhorias; e o acesso ao código fonte (conjunto de instruções em linguagem inteligível de programação de computadores, o qual, processado, irá gerar o programa ou aplicativo).

O substitutivo altera a Lei de Licitações (Lei 8.666/93). Segundo a lei, para a contratação de bens e serviços de informática, a administração deve adotar obrigatoriamente a licitação do tipo “técnica e preço”. A proposta estabelece que, adicionalmente, a administração deverá observar a preferência por programas de computador livres e com formatos abertos de arquivos.

Conforme o texto, formato aberto de arquivo é aquele que possibilita a comunicação entre aplicativos e plataformas; pode ser adotado sem quaisquer restrições ou pagamento de direitos; e pode ser implementado de forma plena e independente por distintos fornecedores de programas de computador, em múltiplas plataformas, sem qualquer remuneração relativa à propriedade intelectual. A contratação de programas-proprietários só ocorrerá em casos de “justificada inadequação” do software livre. Neste caso, a avaliação das propostas deverá considerar os custos totais, incluindo instalação, licenciamento e suporte.

O texto foi aprovado com emenda da relatora, que torna obrigatória a utilização de padrões abertos nos serviços públicos prestados através de meios eletrônicos. 
A emenda estabelece que esses serviços devem estar disponíveis a qualquer cidadão para completo acesso através de pelo menos um software livre. A ideia é não obrigar o cidadão a usar software de um determinado fornecedor.

Segundo Manuela D'ávila, a adoção do software livre tem o objetivo de aumentar a competitividade da indústria nacional de equipamentos de informática, oferecer capacitação para trabalhadores do setor e diminuir o gasto público com o licenciamento de programas de computador. A proposta, que tramita em caráter conclusivo, será analisada agora pela Comissão de Constituição e Justiça e de Cidadania. As informações são da Agência Câmara.


Fonte: TI Inside