Resumo do Código de Ética de Engenharia de Software
Como as demais profissões reconhecidas, a Engenharia de Software também já possui a definição de um Código de Ética, resultante dos esforços de uma equipe de trabalho multinacional liderada pela IEEE/ACM.
Está-se buscando a identificação da Engenharia de Software, e este código confere identidade à profissão.
Não se pretende que os profissionais apenas o conheçam, mas sim que o utilizem no sentido de desenvolver a cultura da responsabilidade dos engenheiros de software em relação à sociedade. A sociedade, por sua vez, está empenhada em obter qualidade nos produtos e nos serviços, o que se cristaliza na adoção de leis como o código do consumidor, criando uma cultura favorável a ética nos negócios.
A cultura ética impõe alto grau de responsabilidade, mas facilita a tomada de decisões, contribuindo para o desenvolvimento de uma sociedade mais humana.
1. A Ética na Engenharia de Software
[GOT99] divide a ética pode em três níveis, onde:
- No Primeiro Nível se encontram todas as obrigações compartilhadas pela humanidade, como integridade, justiça, lealdade, moral;
- No Segundo Nível estariam as preocupações gerais de todas as profissões, como maiores cuidados com o bem-estar social, e
- No Terceiro Nível os padrões inerentes a cada profissão, constantes no seu código de ética.
O Código de Ética e de Práticas Profissionais de Engenharia de Software, proposto como um padrão para ensino e prática de engenharia de software, documenta as obrigações éticas e profissionais para engenheiros de software.
O código deve ensinar sobre que padrões a sociedade espera deles, o que seus pares se esforçam para obter, e sobre o que esperar uns dos outros. Ainda, o código deve informar ao público sobre as responsabilidades que são importantes para a profissão de engenheiro de software.
O Código de Ética para Engenharia de Software se propõe a ser um guia para membros da profissão emergente de engenharia de software. O código foi desenvolvido por uma equipe de trabalho multinacional com apoio de outros profissionais da indústria, governo, milícia e educação.
No código foram tratados todos os aspectos inerentes a área de engenharia de software, considerando a importância do ambiente ético não só durante a fase de desenvolvimento, mas também, com igual responsabilidade, na manutenção do software. A qualidade da manutenção depende do profissionalismo do engenheiro de software, porque a manutenção é normalmente examinada sob um aspecto somente, enquanto um novo desenvolvimento é revisto de modo geral e em um nível corporativo. [ROG99]
2. Razões para adotar o Código de Ética de Engenharia de Software
- Serve de inspiração para o ideal da profissão
- Normaliza os procedimentos, facilitando a tomada de decisões
- Serve para educar engenheiros formados e aspirantes a assumir padrões de qualidade no seu trabalho
- Serve para educar administradores sobre como devam ser as leis e qual o nível de responsabilidade sobre os efeitos e impactos dos produtos desenvolvidos
- Serve para educar o público sobre quais são as práticas aceitáveis na profissão
- Deve suportar profissionais quando precisem se opor contra quem esteja agindo de forma inconsistente com o código
- Incentiva a disciplina e determinação em relação aos quesitos mínimos a serem observados na profissão
- São usados para elevar a imagem da profissão junto ao público.
Os produtos de software estão presentes em toda a sociedade moderna, também no Brasil, e avaliamos que é importante fazer reconhecida a profissão de Engenharia de Software. Podemos adotar também no Brasil este código, desenvolvido por uma equipe de profissionais de diversos ramos e países, aprovado pela IEEE/ACM, com conteúdo universal e bem adaptado às necessidades brasileiras.
3. Código de Ética e Práticas Profissionais de Engenharia de Software
O Código contém oito Princípios relativos ao ambiente e a decisões feitas por profissionais de engenharia de software, incluindo praticantes, educadores, administradores, supervisores e elaboradores e políticas, bem como estagiários e estudantes da profissão. Os Princípios identificam os relacionamentos eticamente responsáveis dos quais os indivíduos, grupos e organizações participam e as obrigações primárias referentes a estes relacionamentos. As Cláusulas de cada Princípio são ilustrações de algumas das obrigações incluídas nestes relacionamentos. Estas obrigações estão fundamentadas na humanidade dos engenheiros de software, especialmente aos cuidados dedicados às pessoas afetadas pelo trabalho de engenheiros de software, e nos únicos elementos da prática de engenharia de software. O Código prescreve estas obrigações de qualquer um que deseja ou aspira ser um engenheiro de software.
Não é sua intenção que as partes individuais do Código sejam usadas isoladamente para justificar erros de omissão ou delegação. A lista de Princípios e cláusulas não é exaustiva. As Cláusulas não devem ser lidas como divisoras do aceitável e inaceitável na conduta profissional em todas as situações práticas. O Código não é um simples algoritmo ético que gera decisões éticas. Em algumas situações, padrões podem gerar tensão entre si ou em relação a outras fontes de padrões. Estas situações requerem que o engenheiro de software use julgamento ético para agir de um modo que seja mais consistente com o espírito do Código de Ética e Práticas Profissionais, dadas as circunstâncias.
Tensões éticas podem ser mais bem dimensionadas pelo uso inteligente de princípios fundamentais, em vez de cegas dependências em regulamentações detalhadas. Estes Princípios devem influenciar engenheiros de software a considerar amplamente que é afetado por seu trabalho; para examinar se os mesmos e seus colegas estão tratando outros seres humanos com respeito; para considerar como o público, se razoavelmente bem informado, pode ver suas decisões; para analisar como o menos favorecido será afetado pelas suas decisões; e para considerar quando seus atos seriam julgados importantes para o ideal profissional trabalhando como um engenheiro de software. Em todos estes julgamentos, é primário levar-se em consideração a saúde, segurança e bem-estar do público; ou seja, o “Interesse Público” é o centro deste Código.
O contexto dinâmico e de demanda de engenharia de software requer um código que seja adaptável e relevante para novas situações na medida em que ocorrem. Entretanto, mesmo nesta generalização, o Código provê suporte para engenheiros de software e administradores de engenheiros de software que necessitem tomar ações positivas num caso específico documentando um caso ético da profissão. O Código auxilia a definir as ações que são eticamente impróprias para serem solicitadas para um engenheiro de software ou um time de engenheiros de software.
O Código não é simplesmente para julgar a natureza de atos questionáveis, também tem uma função educativa muito importante. Como este Código expressa o consenso da profissão em questões éticas, é um meio para educar tanto o público, quanto aspirantes à profissão, sobre as obrigações éticas de todos os engenheiros de software.”
3.1. Resumo dos Princípios
Segundo [ROG99]:
“A versão resumida do código sintetiza aspirações em um nível de abstração muito alto. As cláusulas que estão incluídas na versão completa dão exemplo e detalhes de como estas aspirações mudam o modo como agimos como profissionais de engenharia de software. Se as aspirações, os detalhes podem se tornar legalistas e tediosos; sem os detalhes, as aspirações podem parecer de alta importância, mas vazias de significado real; juntas, as aspirações e os detalhes, forma um código coeso.
Os engenheiros de software devem estar convictos a fazer do conjunto da análise, da especificação, do projeto, do desenvolvimento, do teste e da manutenção de software, uma profissão benéfica e respeitada. De acordo com o seu comprometimento com a saúde, segurança, e bem-estar do público, os engenheiros de software devem adotar os oito princípios.
- Público. Engenheiros de Software devem atuar consistentemente com os interesses públicos.
- Clientes e empregados. Engenheiros de Software devem atuar de modo a atender os melhores interesses dos seus clientes e empregados, consistentemente com os interesses públicos.
- Produto. Engenheiros de Software devem assegurar que seus produtos e modificações relacionadas atendam os melhores padrões profissionais possíveis.
- Julgamento. Engenheiros de Software devem manter a integridade e independência nos seus julgamentos profissionais.
- Administração. Administradores e líderes de Engenharia de Software devem aderir e promover uma abordagem ética ao gerenciamento do desenvolvimento e manutenção de software.
- Profissão. Engenheiros de Software devem desenvolver a integridade e reputação da profissão consistentemente com os interesses do público.
- Companherismo. Engenheiros de Software devem ser justos e dispostos a auxiliar seus colegas.
- Identidade. Engenheiros de Software devem participar do aprendizado de suas vidas valorizando a prática da sua profissão e devem promover uma abordagem ética à prática da profissão.”
Analisando os princípios, observa-se que logo o primeiro, do público, está de acordo com a aspiração maior do profissional, que não se limita a executar com perfeição o seu trabalho, mas sim, que o seu trabalho sirva para o bem público, de acordo com o pensamento ético universal. Assim também são universais os princípios sexto (profissão), sétimo (coleguismo) e oitavo (identidade).
O segundo princípio, relativo a clientes e empregados, está de acordo com as leis brasileiras de defesa do consumidor e também com os primeiros princípios elaborados para a empresa e seus empregados desde o início do século XX.
Com o terceiro, podemos associar também a lei brasileira de defesa do consumidor, no que se refere à qualidade dos produtos. É muito importante também constar do código de ética o aspecto das modificações, característica própria dos produtos de software, que estão em constante evolução e devem garantir não somente o atendimento de solicitações do cliente, mas a sua satisfação com a qualidade da manutenção.
Buscando os itens do quarto princípio no Anexo I, onde se encontra o código de ética completo, compreende-se melhor o princípio do julgamento, que previne o profissional para assinar somente documentos para os quais esteja habilitado, não participar de práticas financeiras impróprias, subornos, duplo faturamento, manter objetividade profissional com respeito a qualquer software ou documento relacionado que seja chamado a avaliar.
Observamos, porém que o profissional pode ser prejudicado pelas intenções do próprio cliente, que por sua vez pratica irregularidades. Cabe ao profissional de Engenharia de Software manter-se íntegro, e evitar tais práticas. Precisamos de um público melhor informado, precisamos divulgar as experiências em que os princípios éticos se mostrem eficazes para a expansão de negócios que geram retorno de investimentos enquanto proporcionam bem-estar, para o desenvolvimento desta cultura da ética.
Muito importante também o quinto princípio, sobre a administração. O profissional que assume responsabilidades como administrador deve ter em mente que as suas decisões afetam seus subordinados e o destino das empresas. Se o exemplo de administração não observa a ética profissional, o nível de comprometimento dos subordinados decresce, e a credibilidade é afetada no seu todo.
Grande Abraço,
Gilberto Ribeiro.