Escolar Documentos
Profissional Documentos
Cultura Documentos
em Engenharia de Software
Carlos Miguel Amorim Sousa1, Mrio Rui Cabral Aguiar2, Orlando Lopes Silva3
ei03031@fe.up.pt,
ei01051@fe.up.pt,
3
ei03079@fe.up.pt
Resumo. Pretende-se neste artigo explicar o Cdigo de tica e Deontologia Profissional em Engenharia
de Software. Apresentando sua histria e sua evoluo at aos dias de hoje. Listando tambm seus
princpios e modo de uso na vida diria de um engenheiro de software profissional. So retratados os
seus casos de utilizao em diversas actividades da sociedade actual, dilemas ticos e adeso a este
cdigo por parte das pessoas ligadas a este tipo de actividade profissional.
2.2 Princpios
1
Principio 1:
Pblico
Principio 2:
Cliente e Empregador
Principio 3:
Produto
3.01. Empenhar-se por mais qualidade, custos aceitveis, e prazos razoveis, assegurando que
significantes tradeoff sejam claros e aceites pelo empregador e o cliente, e estejam disponveis para
considerao por parte do utilizador e do pblico.
3.02. Assegurar objectivos propcios para qualquer projecto em que trabalha.
3.03. Identificar e definir assuntos ticos, econmicos, culturais, legais e ambientes que estejam
relacionados com o projecto.
3.04. Assegurar que so qualificados para qualquer projecto que trabalhem, ou propor para trabalhar numa
combinao de educao, treino e experincia.
3.05. Assegurar que o mtodo apropriado usado em qualquer projecto em que trabalha.
3.06. Trabalhar seguindo normas profissionais.
3.07. Empenhar-se em entender as especificaes do software em que iro trabalhar.
3.08. Assegurar que as especificaes de software estejam bem documentadas e que satisfaa os requisitos
dos utilizadores.
3.09. Assegurar estimativas realistas do custo, prazos possveis, qualidade, em qualquer projecto em que
trabalhem.
3.10. Assegurar testes adequados, debugging e reviso do software e documentos relacionados em que
trabalhem.
3.11. Assegurar uma documentao adequada, incluindo problemas encontrados e solues adoptadas para
qualquer projecto em que trabalhem.
3.12. Trabalhar para desenvolver software que respeite a privacidade de quem ir ser afectado por esse
software.
3.13. Usar apenas informao precisa, obtida por meios ticos e legais, e usar apenas de maneira
autorizada.
3.14. Manter a integridade da informao, tendo ateno a sua desactualizao e possvel falha.
3.15. Tratar todas as formas de manuteno de software com o mesmo profissionalismo como se trata-se
de um novo desenvolvimento.
4
Principio 4:
Julgamento
Principio 5:
Gesto
Os gerentes e lderes de engenharia de software adoptaro e promovero uma abordagem tica para a
gesto do desenvolvimento e da manuteno do software.
5.01. Assegurar uma boa gesto para qualquer projecto em que trabalhar, incluindo procedimentos
eficazes para promoo da qualidade e reduo do risco.
5.02. Assegurar que os engenheiros sejam informados das normas antes de as usar.
5.03. Assegurar que os engenheiros conhecem as politicas do empregador e procedimentos para proteger
suas palavras-chave, ficheiros e informao confidencial para o empregador ou confidencial para
outros.
5.04. Designar trabalho apenas aps ter em conta as contribuies da educao e experincia mostrada e o
desejo de prosseguir os estudos e adquirir mais experincia.
5.05. Assegurar estimativas realistas dos custos, prazos, pessoa, qualidade e gastos em qualquer projecto
em que trabalhe e providenciar acesso a essas estimativas.
5.06. Atrair potenciais engenheiros de software apenas com a descrio completa das condies de
trabalho.
5.07. Oferecer uma remunerao justa.
5.08. No impedir injustamente que uma pessoa tome um cargo para o qual est qualificada.
5.09. Assegurara que h um acordo justo quanto propriedade de qualquer software, processo, pesquisa,
escrito ou outra propriedade intelectual para q qual um engenheiro de software contribuiu.
5.10. Providenciar auditorias para qualquer violao das polticas do empregador ou deste cdigo.
5.11. No pedir a um engenheiro de software que faa algo de inconsistente com o cdigo.
5.12. No punir ningum por expressar problemas ticos para com um projecto.
6
Principio 6:
Profisso
6.11. Reconhecer que violar este cdigo inconsistente com ser um engenheiro ode software profissional.
6.12. Expor a sua preocupao s pessoas envolvidas quando detectadas violaes significativas do
cdigo.
6.13. Relatar as violaes do cdigo s autoridades quando for impossvel consultar as pessoas envolvidas.
7
Principio 7:
Os Colegas
Princpio 8:
Pessoal
no deve comentar com ningum. Caso seja necessrio comentar com um superior, por exemplo, esse
abrangido pela mesma regra de confidencialidade.
No entanto, nem todos os casos de tica que envolvem computadores so problemas de tica na rea
de computao. Por exemplo, no caso de uma pessoa, para poder comprar remdios de uso contnuo para a
sua me, usa um computador para aplicar golpes em clientes de um banco. Esse caso no pode ser
considerado um caso de tica em computao, da mesma forma que um advogado que encomenda o
assassinato da esposa no um caso de tica na rea legal.
A tica na rea de computao deve abranger as aces dos profissionais de computao no seu
papel como profissionais de computao.
3.2 Automao de decises
Foram vrias as causas que conduziram a sociedade automao de um sistema, entre elas, o
aumento da concorrncia com a globalizao, o encarecimento das matrias-primas e o desenvolvimento da
tecnologia, sendo um dos principais objectivos garantir melhor distribuio das tarefas entre o usurio e o
computador.
O nvel de automao est relacionado com a transferncia de responsabilidade do homem para o
sistema de automao:
Transferncia obrigatria: segurana ou preciso exigidas so incompatveis com a habilidade
humana
Transferncia planejada: as tarefas podem ser realizadas pelo homem, mas o sistema de automao
aumenta a produtividade.
Benefcios da automao:
Qualidade assegurada dentro de limites estabelecidos
Reduo de custos atravs de:
Racionalizao de trabalho
Eficincia no processo
3.4 Internet
Com a elevada afluncia para a Internet e a sua expanso escala mundial, aumenta a
responsabilidade do engenheiro de software quando implicado em projectos relacionados com a web.
As possibilidades de desrespeito pelos princpios do cdigo de tica so vrias pelo que sero
apresentados alguns casos em que tal acontece.
O abuso dos motores de busca e a procura duma posio privilegiada fez nascer uma nova
problemtica. Os sites utilizavam todos os meios possveis para desviarem a ateno dos motores de busca
de maneira a conseguirem uma posio que no mereciam.
Actualmente este fenmeno est mais controlado devido ao trabalho realizado pelas equipas de vrios
motores de busca. Uma tcnica utilizada pelos criadores dos sites e que j no permitida era escreverem
palavras-chave da mesma cor do fundo da pgina, sendo assim invisveis para quem visita a pgina mas
entrando na pesquisa do motor de busca. Outra tcnica evitada pelos motores de busca consiste em repetir
palavras-chave nas tag META do cdigo fonte dos sites.
A controvrsia destas medidas dos motores de busca prende-se com o facto de serem estes a ditar as suas
prprias leis e no existe nenhum regulamento consensual por parte dos utilizadores da Internet sobre este
assunto.
Um dos aspectos mais badalados do momento a difuso pela web de produtos pirateados. A grande
questo para os engenheiros de software consiste em saber onde termina a sua responsabilidade neste
assunto e comea a responsabilidade dos consumidores ou provedores destes servios, no esquecendo que
o primeiro principio do cdigo de tica leva a agir sempre para o interesse pblico. A violao de direitos
de autor prtica frequente na Internet, at nas mais simples aces, como por exemplo na criao de um
site em que se utiliza documentos ou informaes pertencentes a outro sem o referir.
O correio electrnico tambm utilizado como meio de infraco ao cdigo de tica, nomeadamente
no que diz respeito ao SPAM e utilizao do e-mail para fins no consentidos pelo destinatrio deste tipo
de correio electrnico. Estas atitudes so geralmente levadas a cabo com fins publicitrios.
O contedo das pginas web tem restries legais e ticas. Nesse papel os profissionais de software
funcionam como intermedirios entre os donos (ou provedores de contedo) e os consumidores da
informao e a sua aco pode prevenir ou facilitar a ocorrncia de condutas consideradas eticamente
imprprias pela sociedade. Por um lado, podem ser responsabilizados por aces criminosas com origem
no seu sistema ou material imprprio armazenado em seus equipamentos e, por outro lado, no h regras
claras quanto a que tipo de censura poderiam exercer sobre o trfego de mensagens ou sobre o contedo
dos sites que administram.
Alguns estudiosos deste assunto comparam a informao que circula pela Internet com a informao
que circula pelo servio telefnico. Seguindo essa analogia, o provedor do servio no responsvel pelo
contedo da informao e nem tem o direito de censura sobre seus usurios. Outra analogia pode ser feita
com os jornais, em que as empresas jornalsticas tm alguma responsabilidade sobre o contedo do que
publicam ou ento a tem quem assina a matria. A primeira analogia parece estar mais prxima do correio
electrnico e a segunda mais prxima da web. A mxima que considera que a liberdade de uns acaba
quando comea a dos outros tambm vlida para a Internet, isto porque todo o tipo de pessoas e de todas
as idades utiliza a Internet no seu dia-a-dia. Esta situao origina um conceito de liberdade de informao
para a Internet e deve ser tomado em conta pelos responsveis de pginas web.
3.5 Sistemas Crticos
A rea de software relacionada com os sistemas crticos a que exige maior responsabilidade por
parte dos engenheiros de software. Isto porque qualquer falha tem, geralmente, consequncias gravssimas.
Nos sistemas crticos, a confiabilidade dos mesmos normalmente a propriedade mais importante. A
confiabilidade do sistema reflecte o grau de confiana desse sistema, isto , reflecte a confiana do
utilizador de que o sistema operar como esperado e que no falhar em situaes normais. Os custos de
uma falha do sistema podem ser extremamente elevados. Sistemas inseguros ou que no so confiveis so
rejeitados porque podem causar percas de informao com consequncias graves a nvel de custos de
recuperao.
Existem vrios tipos de sistemas crticos:
Sistemas crticos com relao segurana so aqueles que controlam algum dispositivo,
com componentes de tempo real e que tm potencial para ameaar a vida de pessoas,
causar ferimentos ou danos materiais no caso de falhas. Como exemplo h os
equipamentos mdicos e os sistemas de proteco de centrais nucleares e qumicas.
O engenheiro de software deve ter em conta estes critrios principais, porque existem outros, e
assumir total responsabilidade na aprovao de um software. Estes sistemas necessitam de tcnicas de
desenvolvimento e de avaliao que garantam que o produto seguro. Depois desta fase vem outra
igualmente importante que consiste na verificao e validao do produto.
Para este tipo de sistemas, so de relevante importncia os principios do cdigo de tica relacionados
com o interesse pblico, realando o facto do engenheiro de software assumir total responsabilidade sobre
o seu trabalho, e com o produto visto que este tem de ser de elevada qualidade e fiabilidade total.
Um exemplo de uma falha num sistema crtico aconteceu em Fevereiro de 1992 em Atlanta, Estado
Unidos, quando hackers penetraram na rede de computadores da Equifax e tiveram acesso aos ficheiros dos
consumidores, nmeros de cartes de crdito e outras informaes. Este tipo de acontecimentos bastante
frequente em sistemas pouco protegidos e pode ter as mais variadas consequncias.
5 Adeso ao cdigo
Aceitando que estes cdigos de tica so agora o mtodo natural de promover o profissionalismo e
comportamento tico entre os engenheiros de software, deve-se, ento, assegurar que tais cdigos so
respeitados e correctamente mantidos. Para assegurar a adeso ao cdigo de tica, necessrio reduzir
qualquer possibilidade de confuso do significado deste cdigo e de suas intenes. Esta clarificao no s
assegura que os seguidores recebem directrizes claras e especificas das suas expectativas de desempenho,
mas tambm assegura que a violao do cdigo de tica ser correctamente e justamente acompanhada de
aces disciplinares.
Actualmente, nem a IEEE Computer Society, o ACM, nem qualquer outra organizao tem qualquer
autoridade significativa para impor o cdigo. A conformidade com o cdigo de tica voluntria. Com o
passar do tempo, no entanto, a engenharia de software seguir o mesmo caminho que as outras profisses.
O cdigo de tica ser imposto para profissionais, o que ser benfico para engenheiros de software
individuais, para seus empregadores e clientes, e o pblico.
Os engenheiros de software devem ser encorajados a melhorar o ambiente ao aderir aos princpios de
desenvolvimento sustentvel com o objectivo de aumentar a qualidade de vida do pblico. Acm disso
devem trabalhar sob um padro de comportamento profissional que exige adeso aos princpios altos de
conduta tica.
Existem ainda muitos profissionais de engenharia de software que no do grande importncia ao
cdigo de tica, visto ser um cdigo relativamente recente. O que no quer dizer que no seja respeitado,
at porque muitos dos princpios do cdigo de tica e deontologia profissional para a engenharia de
software confundem-se com a tica humana e os princpios morais que cada um deve ter da vida em
sociedade.
A adeso a este cdigo implicaria um conjunto de benefcios a todas as partes envolvidas na
engenharia de software profissional, dos quais se destacam alguns:
- Atrair empregadores empregadores conscientes e dedicados que desejam produzir software de
qualidade;
- Reputao a adeso ao cdigo promove a imagem tica de uma companhia e o reconhecimento
pblico da realizao de trabalho com qualidade;
- Imagem profissional uma companhia ganhar o respeito da concorrncia;
- Confiana do pblico o software desenvolvido vai ao encontro do interesse pblico seguindo
altos padres de confidencialidade;
- Padres internos A relao entre engenheiros de software sair melhorada com a adopo do
cdigo de tica.
6 Dilemas ticos
Os dilemas ticos surgem quando pessoas tm pontos de vistas diferentes.
Como reagir quando se discorda das polticas dos nveis mais altos de gesto da companhia?
Depende da natureza dos indivduos em particular e da natureza dessa discordncia.
Defender sua posio dentro da organizao ou se resignar quanto a esse princpio?
Uma soluo possvel empregador e empregado tornarem, com antecedncia, seus pontos de vista
conhecidos. Na maioria dos casos, so problemas de menor importncia e acabam sendo resolvidos sem
dificuldades. Porm, defender seus princpios pode muitas vezes significar um pedido de demisso e
causar danos a outras pessoas, tais como, seu cnjuge ou seus filhos.
Quando revelar gerncia um problema com um projecto de software?
Se o problema for discutido enquanto for apenas uma suspeita, poder estar exagerando sua reaco
situao mas se deixar para resolver muito tarde, poder ser impossvel resolver as dificuldades.
O que fazer quando o empregador age de modo anti-tico?
A dvida que nos surge se devemos manter a confidencialidade ou alertar o cliente que o sistema
entregue pode no ser seguro. Nesta situao devemos sempre tentar resolver a situao visando aos
direitos do empregador. Mas, se for uma situao perigosa ser justificvel divulgar a questo
imprensa.
Referncias:
1.
ACM: Software Engineering Code of Ethics and Professional Practice, ACM/IEEE joint task force,
consultado em Novembro de 2005, http://www.acm.org/serving/se/code.htm
2.
3.
Terrell Ward Bynum, A very short story of computer ethics, consultado em Novembro de 2005,
http://www.southernct.edu/organizations/rccs/resources/research/introduction/bynum_shrt_hist.html
4.
5.
6.