Introdução a Engenharia de Software€¦ · Introdução a Engenharia de Software PROFESSORA:...

26
Introdução a Engenharia de Software PROFESSORA: NAAN CARDOSO EMAIL: [email protected]

Transcript of Introdução a Engenharia de Software€¦ · Introdução a Engenharia de Software PROFESSORA:...

Page 1: Introdução a Engenharia de Software€¦ · Introdução a Engenharia de Software PROFESSORA: NAAN CARDOSO EMAIL: NAAN.CARDOSO@FTC.EDU.BR

Introdução a Engenharia de SoftwarePROFESSORA: NAAN CARDOSO

EMAIL: [email protected]

Page 2: Introdução a Engenharia de Software€¦ · Introdução a Engenharia de Software PROFESSORA: NAAN CARDOSO EMAIL: NAAN.CARDOSO@FTC.EDU.BR

Máquina de Turing, Filme: O jogo da imitação.

Para que serve uma máquina?

Page 3: Introdução a Engenharia de Software€¦ · Introdução a Engenharia de Software PROFESSORA: NAAN CARDOSO EMAIL: NAAN.CARDOSO@FTC.EDU.BR

Resolver problemas mais rápido e eficiente que o ser humano.

Page 4: Introdução a Engenharia de Software€¦ · Introdução a Engenharia de Software PROFESSORA: NAAN CARDOSO EMAIL: NAAN.CARDOSO@FTC.EDU.BR

A matemática é um problema?

Page 5: Introdução a Engenharia de Software€¦ · Introdução a Engenharia de Software PROFESSORA: NAAN CARDOSO EMAIL: NAAN.CARDOSO@FTC.EDU.BR

E agora?

Page 6: Introdução a Engenharia de Software€¦ · Introdução a Engenharia de Software PROFESSORA: NAAN CARDOSO EMAIL: NAAN.CARDOSO@FTC.EDU.BR

Comercialização e Industrialização• Início em 1950

• Poucos fabricantes

• Poucos compradores• Custos

• Mão de obra especializada;

• Infraestrutura

• Utilizados para:• Ciências• Censos• Folha de pagamentos

• Brasil:• 1957• Calcular o consumo de água na

cidade de SP.

Page 7: Introdução a Engenharia de Software€¦ · Introdução a Engenharia de Software PROFESSORA: NAAN CARDOSO EMAIL: NAAN.CARDOSO@FTC.EDU.BR

Comercialização e Industrialização• Um único fabricante era

responsável por:•Fornecer

•Desenvolver Software

•Treinamento

•Suporte

•Manutenção

Page 8: Introdução a Engenharia de Software€¦ · Introdução a Engenharia de Software PROFESSORA: NAAN CARDOSO EMAIL: NAAN.CARDOSO@FTC.EDU.BR

E o Software?• Não tinha um valor intrínseco

• Era um complemento visto o alto valor do equipamento

Page 9: Introdução a Engenharia de Software€¦ · Introdução a Engenharia de Software PROFESSORA: NAAN CARDOSO EMAIL: NAAN.CARDOSO@FTC.EDU.BR

Funcionamento• Configuração própria

• Um computador, um programa

• Não havia padronização

Page 10: Introdução a Engenharia de Software€¦ · Introdução a Engenharia de Software PROFESSORA: NAAN CARDOSO EMAIL: NAAN.CARDOSO@FTC.EDU.BR

Linguagens de Programação• Linguagens mais alto nível que

Assembler.• Aumento da produtividade;

• Facilidade de aprendizado;

• Novos equipamentos permitiamque os programas fossemrecompilados.

• FORTRAN (FORmula TRAnslator)

Page 11: Introdução a Engenharia de Software€¦ · Introdução a Engenharia de Software PROFESSORA: NAAN CARDOSO EMAIL: NAAN.CARDOSO@FTC.EDU.BR

Início de padronização

• Em 1959 os EUA impôs aos fabricantes umpadrão de sistemas administrativos.

• COBOL (COmmon Business Oriented Language);

• Documentação.

Page 12: Introdução a Engenharia de Software€¦ · Introdução a Engenharia de Software PROFESSORA: NAAN CARDOSO EMAIL: NAAN.CARDOSO@FTC.EDU.BR

Sistemas Operacionais• Computadores mais rápidos;

• Evolução do equipamento;

• Tamanho menor;

• Conectados a impressoras, monitores;

• Multitarefa

Page 13: Introdução a Engenharia de Software€¦ · Introdução a Engenharia de Software PROFESSORA: NAAN CARDOSO EMAIL: NAAN.CARDOSO@FTC.EDU.BR

E o Software?• No fim da década de 1960:

• Software começa a ser visto como produto a parte.

• Empresas começam a se dedicar exclusivamente a fabricação de softwares.

• Empresas desenvolviam seu próprio software.

• 1969 o governo do EUA processa a IBM por não discriminar valores diferentespor serviços (hardware e software)

• 70% do mercado

• Referência de valores

• Maior oferta, menor preço

• Maior adoção

Page 14: Introdução a Engenharia de Software€¦ · Introdução a Engenharia de Software PROFESSORA: NAAN CARDOSO EMAIL: NAAN.CARDOSO@FTC.EDU.BR

Microinformática• Circuitos integrados, microprocessador;

• Miniaturização dos componentes eletrônicos;

• PARC (Palo Alto Research Center)

• WYSIWYG (What You See Is What You Get);

• Padrão ETHERNET

• Primeiro WORM, utilizado depois como malware

• Impressora a laser

• SmallTalk, uma das linguagens pioneira na implementação da orientação a objetos

• Criação de jogos em rede

Page 15: Introdução a Engenharia de Software€¦ · Introdução a Engenharia de Software PROFESSORA: NAAN CARDOSO EMAIL: NAAN.CARDOSO@FTC.EDU.BR

Microinformática• Em 1975 surge os

primeiros computadorespessoais:

• Altair 8800, sistema operacionaldesenvolvido em BASIC por Paul Allene Bill Gates, que em seguida fundarama Microsoft;

• Apple desenvolvido por Steve Wozniake Steve Jobs fundaram a Apple.

Page 16: Introdução a Engenharia de Software€¦ · Introdução a Engenharia de Software PROFESSORA: NAAN CARDOSO EMAIL: NAAN.CARDOSO@FTC.EDU.BR

E o Software?

Na década de 1970 começa a se tornar atividade principal em algumas empresas, a exemplo da Microsoft.

SAP: fundada em 1971 na Alemanha, por engenheiros egressos da IBM e a principal desenvolvedora mundial de sistemas ERP.

Oracle: fundada em 1976 (Rational) principal empresa mundial de SGBDs, também desenvolvedora de sistemas coorporativos.

TOTVS: fundada em 1969 (SIGA) maior empresa privada nacional desenvolvedora de software e de sistemas empresariais.

Page 17: Introdução a Engenharia de Software€¦ · Introdução a Engenharia de Software PROFESSORA: NAAN CARDOSO EMAIL: NAAN.CARDOSO@FTC.EDU.BR

Software como produto• Década de 1980

• Crescimento na venda de computadores;

• Padrão aberto não proprietário de hardware;

• Primeira planilha eletrônica VisiCalc;

• Microsoft como grande fornecedora de software (SO e Word e Excel)

Page 18: Introdução a Engenharia de Software€¦ · Introdução a Engenharia de Software PROFESSORA: NAAN CARDOSO EMAIL: NAAN.CARDOSO@FTC.EDU.BR

Software Proprietário x Software Livre

Page 19: Introdução a Engenharia de Software€¦ · Introdução a Engenharia de Software PROFESSORA: NAAN CARDOSO EMAIL: NAAN.CARDOSO@FTC.EDU.BR

Software Proprietário x Software Livre• Software proprietário:• Busca do lucro;

• Diminuir pirataria;

• Software Livre:• Software GNU;

• Free Software Foundation (FSF);

• Liberdade para: executar, copiar, distribuir, estudar,mudar e melhorar o software, e que não deve serconfundido com software grátis.

Page 20: Introdução a Engenharia de Software€¦ · Introdução a Engenharia de Software PROFESSORA: NAAN CARDOSO EMAIL: NAAN.CARDOSO@FTC.EDU.BR

E o Software?• Ao final da década de 1980 tinha

ficado evidente que o softwareera algo que, sim tinha valoreconômico significativo.

Page 21: Introdução a Engenharia de Software€¦ · Introdução a Engenharia de Software PROFESSORA: NAAN CARDOSO EMAIL: NAAN.CARDOSO@FTC.EDU.BR

Influência da Internet• A partir de 1990 a evolução da internet se acelera e começa a surgir empresas

focadas nessa área.

• Google, Amazon;

• Serviços voltado para internet:

• Comércio eletrônico;

• Redes Sociais;

• Cloud Computing:

• Infraestrutura;

• Software como serviço;

• Plataforma como serviço;

Page 22: Introdução a Engenharia de Software€¦ · Introdução a Engenharia de Software PROFESSORA: NAAN CARDOSO EMAIL: NAAN.CARDOSO@FTC.EDU.BR

Internet das Coisas• A evolução do hardware permite uma

nova visualização e aplicação desoftwares;

• Jogos para entretenimento e também treinamento(simuladores)

• Smartphones;

• Computação vestível;

• Atualizações de aparelhos como geladeiras e televisões;

Page 23: Introdução a Engenharia de Software€¦ · Introdução a Engenharia de Software PROFESSORA: NAAN CARDOSO EMAIL: NAAN.CARDOSO@FTC.EDU.BR

Redes Sociais• O crescimento das redes sociais e as imensas possibilidades de

desenvolvimento de aplicativos;

• Podem ser executados de dentro delas, a partir delas, que delas extraem e/ouenviam dados;

• Tudo isso impacta significativamente no desenvolvimento de software.

Page 24: Introdução a Engenharia de Software€¦ · Introdução a Engenharia de Software PROFESSORA: NAAN CARDOSO EMAIL: NAAN.CARDOSO@FTC.EDU.BR

Big Data• O acumulo de gigantescas quantidades de informações nas bases de dados

corporativas;

• A necessidade de extrair informações relevantes das massas de dadosdisponíveis na Internet e nas rede sociais;

• Impulsiona a busca para análise, interpretação e apresentação dos mesmos.

Page 25: Introdução a Engenharia de Software€¦ · Introdução a Engenharia de Software PROFESSORA: NAAN CARDOSO EMAIL: NAAN.CARDOSO@FTC.EDU.BR

E o Software?

Fonte: The Standish Group

Fatores que tornam um projeto crítico

% de Respostas

1. Falta de especificação do usuário 12.8%

2. Requisitos incompletos 12.3%

3. Mudança de Requisitos 11.8%

4. Falta de apoio do Executivo 7.5%

5. Tecnologia Imatura 7.0%

6. Falta de Recursos 6.4%

7. Expectativas Irreais 5.9%

8. Objetivos Obscuros 5.3%

9. Tempo Irreal 4.3%

10. Tecnologia Nova 3.7%

11. Outros 23.0%

Page 26: Introdução a Engenharia de Software€¦ · Introdução a Engenharia de Software PROFESSORA: NAAN CARDOSO EMAIL: NAAN.CARDOSO@FTC.EDU.BR

Atividade• Dividam-se em grupos de até 2 pessoas.

• Pensar em alguma possibilidade de software, para qualquer área com oobjetivo de resolver qualquer problema.

• Escrever um texto que responda as seguintes perguntas:

• Qual o problema a ser resolvido?

• Quais os aspectos que envolvem esse problema, em que área esta localizado (comercial,médico, logística, outro, qual?) ?

• Qual a motivação para resolver esse problema?

• Quais objetivos devem ser alcançados ?