Como a engenharia de software surgiu de uma crise científica

496 visualizações

Publicada em

Seminário de um ensaio em Filosofia das Ciências, abordando a Estrutura das Revoluções Científicas de Thomas Kuhn, e reflexões complementares. Esse seminário é parte dos encontros da disciplina de Filosofia das Ciências, da UFPB, 2015.2. (versão 1, primeira e segunda parte completos)

Publicada em: Educação
  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

Como a engenharia de software surgiu de uma crise científica

  1. 1. Como a Engenharia de Software surgiu de uma crise científica Seminário de um ensaio em Filosofia das Ciências, abordando a Estrutura das Revoluções Científicas de Thomas Kuhn, e reflexões complementares Universidade Federal da Paraíba (UFPB) Centro de Ciências Humanas, Letras e Artes Departamento de Filosofia – Filosofia das Ciências Aislan Fernandes - 2015.1 27/04/2016 (v2)
  2. 2. Roteiro •Primeira parte • Ensaio: resumo, conceitos preliminares e introdução • A Gift from Pandora's Box: The Software Crisis, tese de María Eloína Peláez Valdez Segunda parte • Conceitos de A Estrutura das Revoluções Científicas, de Thomas Kuhn Terceira parte • Can Thomas Kuhn’s Paradigms Help Us Understand Software Engineering (WERNICK, Paul; HALL, Tracy) • Tractatus, Wittgenstein (5.1361) • Propedêutica Lógico-Semântica, Ernst Tugendhat (14.5. Necessidade causal) • Ciência e Dialética em Aristóteles, Oswaldo Porchat • Psicanálise, Merleau Ponty (Fenomenologia da Percepção) • Modelo Relativístico do Cérebro, Miguel Nicolelis • Sobre as leis da física, Richard Feynman.
  3. 3. Como a Engenharia de Software surgiu de uma crise científica •Este ensaio apresenta diferentes faces da Crise do Software, de modo a entender não apenas a relação, estreitamente íntima, com a Engenharia de Software, mas fornecer subsídios para analisar movimentos recentes pós-agilidade, ou melhor, pós-engenharia, como o Software Craftsman, como também, a chamada Crise do Software 2.0, a partir da estrutura das revoluções científicas de Thomas Kuhn, especialmente sua noção de crise científica, por meio de uma pesquisa exploratória bibliográfica e qualitativa. Essa pesquisa contempla um levantamento histórico das forças que moldaram a Crise do Software, com base nas descobertas de María Eloína Peláez Valdez, em seguida compara os entendimentos principais dessa crise com o conceito de crise científico-revolucionário, de modo a validar o surgimento da engenharia de software de uma crise científica, mas não como resposta científica, por fim, analisa movimentos recentes à agilidade. •Resumo do artigo 1 Introdução 2 A Crise do Software 3 A Crise Científico- Revolucionária 4 Crise do Software 2.0 5 Software Craftsman
  4. 4. Como a Engenharia de Software surgiu de uma crise científica •Conceitos preliminares • Objetivo da Engenharia de Software  poder entregar o que o cliente precisa (novo ou modificado) • Fundamentos da Engenharia de Software • Ciência da Computação  base tecnológica • Administração  base gerencial • Outros • Fundamentos da Engenharia Civil • Física • Química • Administração • Outros
  5. 5. Como a Engenharia de Software surgiu de uma crise científica •Introdução • Desde a década de 1960, engenharia de software é tradicionalmente tida como um paradigma • No sustento de várias comunidades acadêmicas, profissionais, públicas e empresariais • Quando passou a ser tida como o modelo de solução-problema ao que se denominou nessa época de Crise do Software • Passou por evoluções, gerando leis (“ciência do software”) e modelos de processo • Problemas  movimentos controversos • Movimento ágil é dito revolucionário aos modelos de engenharia • Software Craftsman é dito pós-agilidade e pós-engenharia, e propõe uma arte do software e não uma ciência • Crise do Software 2.0 Evolução Lei da Modificação Contínua (1974) Lei da Complexidade Crescente (1974) Lei da Auto- Regulação (1974) Lei a Conservação da Estabilidade Organizacional (1980) Lei da Conservação da Familiaridade (1980)
  6. 6. Como a Engenharia de Software surgiu de uma crise científica: A Crise do Software Material didático clássico Perigo de uma nova crise Engenharia: substrato do software Conferência internacional da OTAN, na Alemanha, em 1968 Crise do software: atraso, $$$, difícil, lento, inseguro etc
  7. 7. Como a Engenharia de Software surgiu de uma crise científica: A Crise do Software A Gift from Pandora's Box: The Software Crisis (María Eloína Peláez Valdez) Prática “comercial” americana (FORTRAN) x Prática “científica” europeia (ALGOL) Linguagem proprietária de máquina (IBM) x Linguagem universal de algoritmo Hardware > software Década de 40 (tubos) > 50 (transistors) > 60 (software) > 68 (IBM 360)! Imprudência dos fabricantes americanos = Imprudência de Epimeteu
  8. 8. Como a Engenharia de Software surgiu de uma crise científica: A Crise do Software Década de 60: hiatos internos e externos + pressões Promessa de fabricante x Habilidade de programador Capacidade do hardware x Habilidade do software Demandas de usuários x Desempenho de produtores Desejo de usuários (fetiche) x Necessidade reais de usuários (solução) Ciências da Administração: computador informa, até pensa! Gerente x Programador => Analista de Sistemas Software houses (30%-50%): software como algo próprio Hiatos Pressões Conferência OTAN 1968: o que é o software? (não havia “software” antes de 1960)
  9. 9. Como a Engenharia de Software surgiu de uma crise científica: A Crise do Software Conferência 1968 (Alemanha) • Comitê de Ciência da OTAN: Grupo de Estudos em Ciência da Computação (1967) • Proposta: “Engenharia de Software” (análogo às engenharias) • Sucesso: reconhecimento comum dos problemas • Uso público: “crise do software” • Segurança da vida das pessoas • Baixa confiança dos clientes • Natureza do software e da “engenharia” • Crise científica? Conferência 1969 (Roma) • Fracasso: sem reconhecimento comum para solução da crise • Paradigma atual (FORTRAN-IBM) com problemas • Conflito de comunidades de praticantes • Acadêmicos  crise como um resultado de métodos não científicos e das técnicas mais baixas usadas por pessoas da indústria • Industrialistas  acadêmicos como amadores arrogantes sem capacidades gerenciais em projetos de larga escala • Fracasso de plano piloto com diferentes visões • Crise científica?
  10. 10. Como a Engenharia de Software surgiu de uma crise científica: A Crise do Software Programação Estruturada • Modelo liderado por Edsger Dijkstra • Engenheiro matemático (Alemanha) • Habilidades por ciência • Foco científico no resultado • Pensamento matemático • Após 70, perde força e até sentido original. Engenharia de Software • Modelo liderado por Fred Brooks • Engenheiro técnico (EUA) • Habilidades por experiência • Foco prático no resultado • “Lógica” intuitiva • Lições aprendidas de dentro dos fracassos da IBM • Prevalece como prática de mercado e estudo de academia Este conflito não se encontra em material didático clássico. O mundo após 1969 estava dividido entre 2 modelos.
  11. 11. Como a Engenharia de Software surgiu de uma crise científica: As Crises Crise do software = Crise científica? Uma ciência (prática ou teórica?) da computabilidade em “crise” (pq?) Comunidades em conflito por divergência de modelos (pq?) “Mudança de paradigma” como “revolução” na maneira como pensam (!?) Forças sociais e psicológicas = compromissos (não é razão científica) Valdez não conhece Thomas Kuhn em sua tese Fim da primeira parte
  12. 12. A Estrutura das Revoluções Científicas • Reunião cumulativa de fatos, teorias e métodos !?Progresso • Acúmulo gradual de conhecimentos e/ou experimentos !? Revoluções • Não acidental • Razão de ser das revoluções Estrutura (KUHN, 2013, p. 14; 42-43; 61) Fonte: História da Física e da Química
  13. 13. A Estrutura das Revoluções Científicas “Ciência normal” sem crise •Funciona bem sob um paradigma “Ciência normal” em crise •Não funciona bem sob sérias anomalias Resolução da crise •Sob um novo paradigma (p. 14; 42-43; 60) Crise Não conseguir mais manipular com competência seus próprios problemas Progresso Afastar-se do que funciona bem na “ciência normal” Estereótipo de progresso Reunião cumulativa de fatos, teorias e métodos [Como] Incomensurabilidade das teorias conflitantes [Então] Mudança de concepção do mundo (conversão) do que uma escolha de uma nova teoria Ciência normal? Paradigma? Anomalias? Incomensurabilidade?
  14. 14. A Estrutura das Revoluções Científicas Paradigma Estrito • Razão de união da comunidade • Forma uma tradição coerente • Servem de compromissos • Interno (mais técnico) • Realizações científicas, universalmente reconhecidas, ao longo do tempo, fornecedoras de problemas e soluções modelares • Modelos = exemplos aceitos de prática científica, incluindo leis, teorias, aplicações, experimento e instrumentação Paradigma Abrangente • Partilhado pela comunidade • Constelação de crenças, valores, técnicas e semelhantes Sociedade Paradigma abrangente Comunidade Paradigma estrito Paradigma = estrito + abrangente Sucesso de uma teoria = torna-se paradigma  promessa de sucesso de seu paradigma  mais persuasivo! Nenhuma teoria explica todos os fatos (Popper) (p. 53; 28; 280, 286; 80; 88)
  15. 15. A Estrutura das Revoluções Científicas • Ciência normal = pesquisa científica firmemente baseada, no paradigma • Atualização da promessa de sucesso do paradigma • Espécie de trabalho de acabamento, articulação e reforço do próprio paradigma • Ocupam-se a maioria dos cientistas, em boa parte de sua carreira, em três classes de foco (teoria e prática) • Aumentar a precisão da teoria paradigmática • Desenvolver a aparelhagem capaz de resolver o problema-modelo • Resolver ambiguidades residuais (numa geração anterior) • Pesquisa normal = alcançar o antecipado de uma nova maneira • Rejeitar problemas não redutíveis ao seu modelo solução-problema ou demasiadamente problemáticos, com termos e conceitos de um paradigma • Novidade inesperada é um fracasso • Resolução de quebra-cabeças, cujas peças e ações já estão comprometidas com as regras do jogo (p. 88-89; 90-92; 100; 104-106; 112) “Progresso normal”
  16. 16. A Estrutura das Revoluções Científicas • Ciência normal bem-sucedida não descobre novidades, mas as suprime • Cientistas não trabalham, com segurança, sem os modelos paradigmáticos, nos quais foram educados, mesmo sem ter consciência plena das características que formam o paradigma de sua própria comunidade • Segurança abalada quando problemas extraordinários se tornam sérias anomalias • Tentativa de ajustar a teoria ao fato, convertendo o anômalo em esperado, não é suficiente ou satisfatório (fracassos cada vez mais frequentes do aditivo teórico) • Enquanto não convertido, o fato extraordinário não é visto como completamente científico • Força para suprimir = força de eclosão de um estado de crise (paradoxalmente) • Crise é um sentimento geral técnico, de funcionamento defeituoso, • Mesmo havendo um sucesso de popularidade da teoria enquanto atacada – por isso observadores externos, não impactados tecnicamente pela crise, julgam-na como etapas normais de um desenvolvimento científico linear • Só quem melhor conhece os detalhes com precisão, sabe o que é a anomalia • Sintomas da crise  Muitas teorias concorrentes  Número maior de casos anômalos  Crescente indeterminação  Decrescente utilidade  Proliferação de versões distintas da teoria Crise abre caminho para uma mudança de paradigma, não para seu abandono, do contrário não haveria ciência ou cientista! (p. 119, 121; 127-128; 141-143; 178; 151, 163; 162)
  17. 17. A Estrutura das Revoluções Científicas • Revolução = reconstrução dos compromissos do grupo • Processo revolucionário • Consciência comum de que algo saiu errado (estado da crise) apresenta uma adesão ou atenção maior de cientistas • Padrão passa a ser questionado (os mesmos problemas modelos, anteriormente aceitos, passam a ser questionados) • Processo de transição, de intensa pesquisa ou ciência extraordinária • Pode tomar tempo considerável, desde a consciência do fracasso (descontentamento explícito) ao novo paradigma • Estado da crise • Intensificam-se polarizações, desacordo entre escolas, recusas obstinadas das anomalias e disputas na sociedade, inclusive com persuasão de massa, nos quais os procedimentos da própria ciência normal simplesmente não conseguem ser usados para defendê-la (exemplo: Cartas Abertas de Sociedades). • Fim da crise • Nem sempre quando surge um novo candidato a paradigma e a subsequente batalha por sua aceitação • Não há mudança de paradigma só porque existem surpresas e dificuldades • Algumas vezes ou a ciência normal acaba sendo capaz de resolver o problema provocador da crise ou os cientistas rotulam o problema, colocando-o de lado, para ser resolvido, por uma geração futura, com instrumentos mais elaborados • Lembre de uma das classes de foco da ciência normal! (p. 165, 171; 175-176; 179-180; 168)
  18. 18. A Estrutura das Revoluções Científicas • Mudança de percepção com a mudança de paradigma • Os mesmos dados são vistos sob diferentes relações, com mesma acuracidade de antes, não como uma mera reinterpretação dos dados • O cientista passa a trabalhar em um mundo novo, apesar de ser o mesmo mundo, porém de conceitos reformulados (incompatíveis e incomensuráveis com os anteriores), dos quais depende para interpretar os dados • Numa mudança de definição não há um aprendizado gradual • Exemplo de Dalton • Não se interessava por Química, nem era químico, mas como metereologista, contudo, revolucionou a maneira de praticar a química, com seu novo sistema de filosofia química, apesar de fortes oposições • Ilustra a falta da neutralidade lógica ou experimental numa transição – Max Planck acreditava, com muito pesar, no fato de uma nova verdade científica triunfar, sob seus oponentes, quando a geração corrente morresse e uma nova se familiarizasse com ela • Revolução = conversão • Persuasão dos melhores argumentos, contendo a alegação de resolver os problemas, mesmo não resolvendo de fato, numa decisão de fé, baseada na promessa de sucesso do novo e crescente paradigma (p. 211, 214, 217; 226-227; 249-250; 258-259; 315-316)
  19. 19. Fim da segunda parte A Estrutura das Revoluções Científicas • Revolução = mudança de paradigma, mediante um processo persuasivo • Prevalência das paixões dos cientistas, em detrimento da cientificidade, para preservar sua teoria • Não são preparados para as crises (assim como estudantes) • Não há em sua educação, especialmente em ciências exatas e naturais, o conhecimento de história e filosofia • Razão pela qual muitas crises e revoluções são invisíveis a muitos praticantes e leigos, tendo em seu lugar a história da ciência como um desenvolvimento cumulativo e linear • Depreciação dos fatos históricos • Próprio dos compromissos de uma ciência normal • Principais manuais científicos, junto a obras filosóficas e textos de divulgação, referem-se a um corpo já articulado de problemas, pertencentes a paradigmas aceitos por uma comunidade científica, na época em que foram escritos • Esses manuais fazem os estudantes e profissionais se sentirem participantes de uma longa tradição, que de fato nunca existiu, ou pior, sugerem uma acumulação gradual de fatos, conceitos, leis ou teorias, pelos cientistas, desde os primeiros empreendimentos científicos, porém muitos dos avanços só existiram após revoluções científicas (p. 267-268; 231-235)
  20. 20. Reflexões das primeiras partes • Pressman (2010) e Sommerville (2011), fontes de autoridade histórica da ciência normal, desenham uma linearidade irreal, da história do software, comparado ao levantamento de Valdez (1988), como se houvesse o entendimento pacífico ou unânime, de um desenvolvimento gradual, da crise à engenharia, e não revolucionário. • Contornos da crise do software • Como crise científico-revolucionária • Como tipos de fracassos de projetos de software • Como histórico na década de 60 • Como ameaça ou até realidade na atualidade • Movimentos pós-agilidade e pós-engenharia são retrocessos à comunidade da engenharia de software, mas são anomalias.
  21. 21. Reflexões complementares • “Na generalização de Einstein para a gravitação, a descrição de Newton é inadequada e complicada” (Feynman. p. 59) • “Matematicamente, as três diferentes formulações (...) têm as mesmas consequências” (p. 58) • “Psicologicamente elas são diferentes porque fornecem pontos de partida completamente distintos” (p. 59) • “O físico sempre está interessado no caso especial, nunca no caso geral” (p. 61) • “A ciência ficaria estagnada se só fizéssemos experimentos nos domínios cujas leis conhecemos. Mas os físicos experimentais investigam, com diligência e esforço, exatamente aqueles domínios em que parece mais provável encontrar erros nas teorias. Em outras palavras, estamos sempre tentando provar que estamos errados, pois só dessa maneira podemos progredir.” (Feynman. p. 164)
  22. 22. Reflexões complementares • “Os eventos do futuro, não podemos derivá-los dos presentes. A crença no nexo causal é a superstição.” (Wittgenstein. Tractatus. 5.1361) • Hume: leis naturais são co-ocorrências regulares • “Mas o fato de podermos continuar a aplicar esse aparato conceitual não é garantido pelas necessidades naturais, sendo, antes, simplesmente algo em que nós confiamos” (Ernst Tugendhat. Propedêutica Lógico-Semântica. p. 199) • Hume: toda regularidade é acidental • Algumas regularidades são explicadas por estruturas (Strawson, Quine, Madden, Ernst) • Regularidade fática e universal, mas não há nenhuma razão para ser necessariamente assim
  23. 23. Reflexões complementares • O caso da Psicanálise • Fenomenologia da Percepção (1945), Merleau Ponty • Sujeito da percepção  objeto científico • Causalidade psíquica  inconsciente = “o outro sensível” • Método analítico: um-a-um • Construção do caso clínico  preparação do objeto científico • Desconstruir valores (paradigmáticos) na análise  aberto a anomalias • Psicologia  mente, comportamento e a consciência

×