Desenvolvimento de software: processos que garantem qualidadeA cada novo projeto de desenvolvimento de software, as empresas e os profissionais envolvidos devem ter em mente que, durante sua execução, é necessário seguir um conjunto de atividades bem estruturadas para que se tenha um produto de boa qualidade e que atenda às necessidades dos usuários. Porém, esses processos nem sempre são seguidos à risca Pedro Henrique Pioner (*) Mesmo que não exista uma receita pronta para se desenvolver um software, os requisitos básicos devem ser cumpridos para se compor o esboço de qualquer tipo de projeto, independentemente do seu objetivo ou nível de complexidade. A criação do software Para executar um bom projeto, a equipe responsável precisa levantar e validar com o cliente os requisitos necessários antes de dar início à sua produção. Essa etapa é essencial para se definir o escopo e é realizada por meio de uma série de reuniões, pelas quais a equipe alinha as informações e as traduz para uma linguagem técnica. A elaboração de uma especificação técnica e funcional, com o descritivo das características do software, permite avaliar se as informações estão de acordo com o que foi passado na fase de levantamento de requisitos. Somente após esse processo, tem início o desenvolvimento, onde são implementados os códigos e os testes necessários, dentro do ambiente de Quality Assurance. Feito isso, as funcionalidades do projeto são novamente validadas com o cliente e, caso não haja necessidade de mudanças, o software é migrado e instalado em um ambiente final – o Ambiente de Produção -, considerando as mesmas configurações de softwares usadas no Quality Assurance. Realidade do mercado O desenvolvimento de software por meio de processos é uma metodologia que ainda é pouco utilizada na prática pelas empresas. Em parte, isto ocorre já na fase de negociação com o cliente. Por um lado, o cliente tenta realizar o menor investimento, enquanto a empresa precisa aplicar uma série de processos para realizar a entrega com máxima qualidade, o que acaba gerando um custo maior do projeto. Outra questão é a necessidade de rápida entrega prometida pela equipe comercial. Diante disso, muitas vezes, a qualidade é deixada em segundo plano, fazendo com que vários processos da fase de desenvolvimento sejam deixados de lado, baixando o valor final e comprometendo a qualidade da solução. Em geral, alguns clientes têm noção do que isso pode representar, mas não levam em consideração e preferem arriscar, mesmo tendo que gastar um pouco mais no futuro, caso haja a necessidade de modificação ou manutenção no produto final. No longo prazo, poderá haver uma mudança no mercado, uma vez que os sistemas tendem a se tornar mais robustos e mais complexos, obrigando a indústria a seguir determinados modelos de qualidade. Com isso, os projetos que não atenderem aos padrões e procedimentos necessários, poderão comprometer vários objetivos futuros de negócio. (*) É consultor SharePoint e Project Server da Oplen. | Apesar das vantagens, débito ainda é pouco aceito no e-commerce Hoje em dia quando apresentamos o cartão para pagar uma conta em qualquer estabelecimento comercial, uma das perguntas que mais estamos acostumados a ouvir é se “quer passar no crédito ou débito?”. A questão é pertinente, afinal, os dois modelos trazem vantagens e desvantagens ao lojista e consumidor, e as condições devem ser avaliadas para a decisão. Mas, por que esse hábito comum no varejo físico ainda não chegou ao ambiente virtual? O cartão de crédito é o principal meio de pagamento no e-commerce, seja à vista ou parcelado, muito à frente dos outros métodos, como o débito online, o boleto e o cartão de débito. Esse último, inclusive, é utilizado por 100 milhões de pessoas, seja num plástico distinto (Visa Electron, Maestro, Elo, Hiper) ou até Múltiplo (o mesmo plástico processa débito e crédito). Tanta gente atualmente sai para trabalhar ou passear com apenas um documento e o cartão no bolso, pela praticidade e até pela segurança de não precisar carregar dinheiro em espécie. Neste contexto, seria oportuno oferecer ao consumidor a possibilidade de pagar nas lojas online também com o cartão de débito. Isso ainda não acontece porque a grande maioria dos lojistas virtuais ainda não tem o costume de oferecer esse meio de pagamento. A tecnologia está disponível e tem como principal vantagem o recebimento do valor da transação à vista, ou seja, depositado na conta corrente já no dia seguinte, contra os 30 dias programados para o depósito da venda a crédito, que, quando é parcelada, tem o valor diluído em 60, 90 dias, ou até mais. Outros benefícios incluem o pagamento por taxas mais baixas de comissão às adquirentes e a prevenção contra fraudes, já que o comprador precisa ser identificado. A soma dos custos de não receber a vista, que muitas vezes significa pagar para antecipar os recebíveis, e a proteção contra a fraude são fatores que levam as lojas incentivar os meios de pagamento à vista, muitas vezes em detrimento da experiência do usuário – já que o processo de conversão e prazo de entrega são maiores para o boleto – mediante descontos de até 15%. No caso de um pagamento por cartão de débito, o estabelecimento comercial recebe uma confirmação definitiva da venda, sem risco de fraude, e pode proceder imediatamente com o envio. O varejo físico está cada dia mais virtual, valendo-se da tecnologia para melhorar a experiência de compra. O comércio eletrônico deve adotar o cartão de débito para trazer retorno em curto prazo. O cliente, por sua vez, pode fazer sua parte, sugerindo a adoção do débito para ter mais opções de pagamento. No final, ambos saem ganhando. (Fonte: Jerome Pays é diretor de e-commerce da Lyra Network, multinacional francesa especializada em transmissão de pagamentos e criadora do gateway PayZen – www.payzen.com.br). Sete dicas para monitorar a rede e garantir que as ferramentas de segurança estão ativasJürgen Thiel (*) Suas definições de vírus estão atualizadas? Os backups são válidos? O firewall está online? A segurança só existe quando as ferramentas de proteção estão funcionando, por isso é estratégico considerar a adoção de uma solução central de segurança capaz de monitorar ferramentas tradicionais de proteção e assegurar seu correto funcionamento. O que acontece se um vírus não é detectado ou um Trojan ultrapassa o firewall? Uma solução de monitoramento apropriada detecta e notifica o administrador de redes sobre situações indesejáveis, como a proliferação de tráfegos, o rápido esgotamento da memória ou um tráfego atípico de e-mails. O aspecto essencial de um conceito de segurança abrangente é a possibilidade de visualizar rapidamente todas as ferramentas de segurança em tempo real, sem precisar dispor cada solução individualmente. A solução de monitoramento, então, precisa ser capaz de integrar todas as ferramentas usadas e mapeá-las sem grandes esforços em uma central com visão panorâmica. Nem todas as ferramentas de segurança são capazes de atender a todos esses requisitos. Algumas não oferecem as funções necessárias, enquanto outras são bastante caras, complexas ou onerosas. Abaixo estão alguns critérios que devem ser considerados ao avaliar uma solução de monitoramento mais completa: 1. Monitoramento intuitivo dos dispositivos e da interface de programação dos aplicativos (API) Infraestruturas de TI modernas são complexas e heterogêneas. A solução ideal processa todas as funções necessárias para controlar a infraestrutura de TI de forma completa, incluindo quantos protocolos comuns forem possíveis, como SNMP, Ping, FTP, http, NetFlow, sFlow, jFlow, WMI ou packet sniffing (“farejamento de pacotes”). Em conjunto com uma API bem documentada, praticamente todos os aparelhos e aplicações podem ser conectados – bem como outras ferramentas de segurança, sensores, câmeras de segurança, etc. E quando isso pode ser feito de forma fácil com a ajuda apenas de apresentações e exemplos, significa que é quase a solução ideal. 2. “All Inclusive” Muitos sistemas de monitoramento são oferecidos como um kit e requerem pagamentos extras para quase todas as funções, geralmente um custo significante. A solução de monitoramento correta sempre oferecerá quantas opções forem possíveis na versão básica. Quando é feita a comparação de preço entre ferramentas de monitoramento, deve-se incluir o custo de módulos adicionais. 3. Comportamento incomum É claro que se deve saber definir limites individuais para notificações e alarmes em uma solução de monitoramento. Além disso, o software precisa ser esperto o suficiente para reconhecer um comportamento atípico, ainda que os parâmetros definidos não tenham sido alcançados. Por exemplo: se um vírus começa a produzir um aumento no tráfego de dados na rede, uma solução inteligente detecta esse movimento e avisa, de modo que o administrador de rede possa tomar as medidas necessárias. 4. Armazenamento (e publicação) de dados A maioria das soluções de gerenciamento usa base de dados SQL para armazenar o monitoramento de dados, porém essa não é a melhor forma. As bases de dados SQL não foram desenvolvidas para guardar dados de monitoramento (pois muitos documentos pequenos que entram cronologicamente em intervalos curtos não são registrados), e os dados do monitoramento não podem ser armazenados nos mesmos, no formato RAW devido à estrutura do servidor SQL, mas somente compactado. Isso pode ser especialmente problemático para uma solução de monitoramento empregada como ferramenta de segurança, se uma pesquisa de longo prazo for requerida para identificar vulnerabilidades. Como uma tela interativa (Painéis e Mapas), tenha certeza de que a solução não oferece apenas a Windows GUI, mas uma interface web, e se possível, aplicativos para os sistemas mobiles mais populares. Os painéis e mapas devem ser facilmente customizados, além de permitir a apresentação dos dados de forma clara e atrativa: gráficos bem elaborados são mais apreciados do que tabelas e listas antiquadas. Relatórios de HTML ou PDF podem ser feitos com ferramentas padrões ou de terceiros, produzidos na hora ou agendados. Os relatórios geralmente oferecem a opção de visualizar a informação por um período específico. Isso possibilita mapear e avaliar o histórico dos dados. O ideal é que a solução ofereça relatórios integrados, além de caminhos para criar telas e mapas customizados. É interessante que possa gerar mapas em HTML customizados no qual todos os elementos do projeto de segurança sejam claramente exibidos. Possivelmente com um plano de fundo, em que sensores físicos, câmeras de segurança, etc, sejam posicionados. 5. Funcionalidade Mesmo que uma nova solução de monitoramento seja implementada e instalada como uma ferramenta de segurança central num projeto, ainda assim ela precisa ser utilizável. Se a solução for muito complexa em seu uso diário, provavelmente não funcionará como foi projetada. Um software de segurança inútil não é apenas um investimento desnecessário, mas também um risco porque cria uma ilusão de segurança. Além disso, o manuseio fácil do software deveria ser um dos principais tópicos da lista de avaliação. Algumas vezes, até faz sentido dispensar um ou outro recurso adicional, se a aceitação e o uso da solução estiverem assegurados. 6. Preço e Licenciamento Claro que preço e licença são importantes quando se adquire uma solução de monitoramento. Em primeiro lugar vem a transparência. Todos os custos estão disponíveis? A licença é clara? Se os módulos e os adicionais estão disponíveis, qual deles você pode precisar em um primeiro momento ou em um futuro próximo? Geralmente há custos escondidos nos módulos que são armadilhas devido a modelos de licença que não são compreensíveis. Nesses casos é necessário um upgrade para uma licença maior em curto tempo. 7. Teste Instale e teste o software! Não confie em lista de funcionalidades, consultores, ou no marketing dos fabricantes. Uma solução de segurança central é um elemento chave em um conceito abrangente de proteção. Somente se o software “for funcional” terá a aceitação necessária para exercer o seu papel. E se logo no teste ficar provado ser difícil de realizar a instalação, então sérios problemas entravarão a versão completa. (*) É gerente de desenvolvimento de negócios da Paessler no Brasil. Graduado em Ciências da Computação, com mais de 20 anos de experiência na área de TI, Thiel é fluente no idioma português e o primeiro executivo da empresa residente no Brasil. |