Microsoft Security Development Lifecycle (SDL)

Ora aqui está um documento importante, leitura obrigatória para gestores de equipas de desenvolvimento e, claro, para todos os programadores que procurem melhorar a qualidade das suas aplicações. Qualidade, sim, porque as características dos controlos de segurança, o reforço dos testes inseridos no código e, naturalmente, as vulnerabilidades dos programas são, na sua essência, questões de qualidade.

O documento que descreve a metodologia Microsoft para endereçar, ao nível do processo de desenvolvimento, os desafios da segurança aplicacional, intitula-se, simplesmente, Microsoft Security Development Lifecycle. Retirei este excerto da introdução porque, na minha opinião, tem um ou dois aspectos importantes que queria sublinhar. Diz assim:

Todos os programadores têm que endereçar as ameaças à segurança. Os utilizadores, hoje, exigem software seguro e de confiança, e os programadores que endereçarem eficazmente as ameaças, mais do que os outros, podem ganhar uma vantagem competitiva no mercado. Para além disso, um sentimento crescente de responsabilidade social, obriga os programadores a criar aplicações que requeiram um menor número de actualizações (patches) e menor gestão de segurança.

A privacidade também exige atenção. Ignorar as preocupações de privacidade dos utilizadores pode conduzir à paragem das implementações, a litígios, a exposição negativa nos media, e a falta de confiança. Os programadores que protegem a privacidade ganham a lealdade dos utilizadores e distinguem-se dos concorrentes.

Este documento descreve as alterações, obrigatórias ou recomendadas, ao processo e ferramentas de desenvolvimento aplicacional. Estas alterações devem ser integradas nos processos de desenvolvimento existentes, para facilitarem as melhores práticas, e alcançarem melhorias na segurança e na privacidade que sejam mensuráveis.

Muito bem. Quero realçar o seguinte: tal como esperamos — aliás, tal como exigimos — aos fabricantes dos mais variados bens de consumo, uma responsabilização pela qualidade e segurança dos produtos que põem no mercado, também devemos exigir que os mesmos requisitos sejam satisfeitos pelos produtores de software.

Mais, independentemente das exigências dos consumidores (ou utilizadores, clientes, como preferirem), parece-me fundamental promover uma cultura de responsabilidade social que possa transportar, para a esfera do desenvolvimento aplicacional, um conjunto de valores que visem, por um lado, garantir a protecção dos sistemas de informação, e, por outro lado, garantir a privacidade individual e das organizações.

Esta tomada de consciência pode dar origem, numa primeira instância, a iniciativas por parte dos gestores dos processos de desenvolvimento. Mas não termina aí: é essencial incorporar, na cultura dos próprios programadores, este sentido de responsabilidade para garantir uma melhoria significativa nos produtos acabados.

E pronto. Convencidos? Espero que sim; esforcei-me à brava! : ) Vão lá buscar o documento e dêem-lhe a leitura necessária. Onde? Por aqui: www.microsoft.com/downloads/...