informática, multimídia e...

27
Informática, Multimídia e Internet Engenharia de Software 1ª Série Profa. Késsia R. C. Marchi

Upload: hacong

Post on 28-Jan-2019

215 views

Category:

Documents


0 download

TRANSCRIPT

Informática, Multimídia e Internet

Engenharia de Software

1ª Série

Profa. Késsia R. C. Marchi

Engenharia de Software

• Definição de Engenharia de Software

• Cenário Atual de Desenvolvimento

• Requisitos

Prof. Késsia R. C. Marchi2

Engenharia de Software

• ENGENHARIA

– É a arte das construções, embasada no conhecimento científico e empírico, adequada ao atendimento das necessidades humanas.

• ENGENHAR

– É idear, maquinar, inventar, engendrar, produzir.

Prof. Késsia R. C. Marchi3

Engenharia de Software

• SISTEMA– Conjunto de partes que interagem entre

si, visando um objetivo comum.

– Em informática é o conjunto do software, hardware e recursos humanos.

• SOFTWARE (SW)– Subsistema de um sistema

computacional.

– São os programas de computadores.

Prof. Késsia R. C. Marchi4

Características de um SW

Software é tanto um PRODUTO como um veículo para desenvolver um produto;

Software é desenvolvido por engenharia e não manufaturado;

Prof. Késsia R. C. Marchi5

Conceito de Software

Definição mais exata

“Software não é apenas o programa mastambém toda a documentação

associada e os dados de configuraçãonecessários para fazer com que essesprogramas operem corretamentes.”

Ian Sommervile

Prof. Késsia R. C. Marchi6

Importância do SW

• foco no negócio empresarial

– objetivo de auxiliar os processos de tomada de decisões (estratégicas, táticas e operacionais).

• com "inteligência"

Prof. Késsia R. C. Marchi7

Crise do SW

• Ocorre quando o software não satisfaz seus envolvidos, sejam clientes e/ou usuários, desenvolvedores ou empresa.

• Problemas não se limitam ao software que não funciona adequadamente, mas abrange:• desenvolvimento, testes, manutenção, suprime

nto, etc.Prof. Késsia R. C. Marchi8

Exemplos de Crise

As estimativas de prazo e de custo freqüentemente são

imprecisas

“Não dedicamos tempo para coletar dados

sobre o processo de desenvolvimento de

software”

“Estimativas são feitas a olho, com

resultados ruins”

Prof. Késsia R. C. Marchi9

Exemplos de Crise

• Logo:

“Os prazos arrastam-se por meses”

“Causa insatisfação para o cliente e

falta de confiança”

“Sem nenhuma indicação sólida de

produtividade, não podemos avaliar com

precisão a eficácia de novas

ferramentas, métodos ou padrões”

Prof. Késsia R. C. Marchi10

Exemplos de Crise

A produtividade das pessoas da área de software não

tem acompanhado a demanda por seus serviços

“Os projetos de desenvolvimento de software normalmente são efetuados apenas com um vago indício das exigências do cliente”

“A comunicação entre o cliente e o desenvolvedor de software é muito fraca”

Prof. Késsia R. C. Marchi11

Exemplos de Crise

A qualidade de software às vezes é menos que adequada

Não uso de técnicas de teste sistemáticas e

completas

Só recentemente começam a surgir conceitos

quantitativos sólidos de garantia de qualidade

de software

Prof. Késsia R. C. Marchi12

Abrangência da Crise

• A chamada crise do Software abrange todos os problemasrelacionados a:– Como Sistemas computacionais são

construidos

– Como sistemas computacionais sãoimplantados ou sistemas antigos sãosubstituidos

– Como é provida a manutenção daquantidade crescente de software

Prof. Késsia R. C. Marchi13

Reflexão

• O que os erros de um projeto mal elaborado pode provocar?

Prof. Késsia R. C. Marchi14

Anti-Crise

• União e trabalho conjunto e harmonioso de três elementos: – empresa (alta administração),

– cliente e/ou usuário e

– a área de informática (desenvolvedores de soluções).

• Área de Informática: agentes de mudança.

Prof. Késsia R. C. Marchi15

Engenharia de Software

• A Engenharia de Software é a aplicação de uma abordagem sistemática, disciplinada e quantificável no desenvolvimento, operação e manutenção de software.

(IEEE Standard 610.12)

Prof. Késsia R. C. Marchi16

CONCEITO DE ENGENHARIA DE SOFTWARE

• É metodologia de desenvolvimento e manutenção de sistemas modulares com:

– adequação aos requisitos funcionais do negócio dos clientes e seus respectivos procedimentos;

– efetivação de padrões de qualidade e produtividade em suas atividades e produtos;

– fundamentação na Tecnologia da Informação disponível, viável e oportuna;

– planejamento e gestão de atividades, recursos, custos e datas.

Prof. Késsia R. C. Marchi17

Objetivos da Eng. De SW

• Aprimoramento da qualidade dos produtos de software;

• Aumento da produtividade no desenvolvimento, operação e manutenção de sw;

• Permitir que profissionais tenham controle sobre o desenvolvimento de sw dentro de prazos, custos e níveis de qualidade desejados.

Prof. Késsia R. C. Marchi18

Fundamentos da Eng. De SW

• Ciência da Computação– fundamentos científicos

• Administração de Projetos– gestão

• Comunicação– oral e escrita, motivação interna, satisfação

do cliente

• Técnica de Solução de Problemas– resultados, soluções integradas e

inteligentes

Prof. Késsia R. C. Marchi19

Engenharia de Software

• Em suma, desenvolver software é uma atividade quenão se confunde com escrever programas paracomputador.

• Desenvolvimento de software complexo envolveprocedimentos que exigem a abordagem simultânea e integra de aspectos técnicos e gerenciais.

• Deve-se prover o software com um modelo de alto nível onde os aspectos técnicos e gerenciaiscoexistam. Esse modelo recebeu a denominação de Ciclo de Vida do Software.

Prof. Késsia R. C. Marchi20

Engenheiro de Software

• Profissional da área de informática que desenvolve soluções profissionais utilizando-se dos recursos de software, observando os padrões de qualidade requeridos.

• Gestor e gerador de soluções.

• Habilidades do engenheiro de software:– técnica

– de negócios

– comportamental

Prof. Késsia R. C. Marchi21

Cenário Atual

• Gasta-se cada vez mais na manutenção e testes de sistemas.

• 85% dos erros são causados por defeitos inseridos durante a análise de requisitos e projeto de sistemas.

Prof. Késsia R. C. Marchi22

Cenário Atual

Prof. Késsia R. C. Marchi23

% Custos de Desenvolvimento

% dos defeitos introduzidos

% dos defeitos encontrados

Custo relativo de correção

Análise de Requisitos 5 55 18 1

Projeto 25 30 10 1 - 1.5

Códificação e testes de unidade 50

Teste 10 10 50 1 - 5

Validação e Documentação 10

Manutenção 5 22 10 - 100

Cenário Atual

Prof. Késsia R. C. Marchi24

Análise de RequisitosProjeto

Teste

Manutenção

11,5

5

100

Custo relativo de correção

Custo relativo de correção

Cenário Atual

• Outros custos não facilmente mensurável

– Perda de oportunidade;

– Perda de confiança do cliente;

– Perda de cliente;

Prof. Késsia R. C. Marchi25

Cenário Atual

• Os erros mais caros são aqueles cometidos no processo de requisitos e descobertos pelo usuário.

Prof. Késsia R. C. Marchi26

Referências

• FRESSATI, W. Notas de Aula – Engenharia de Software. 2005.

• REZENDE,D. Sistemas de Informações Organizacionais. 2. ed. Editora Atlas. São Paulo, 2007.

• SOMMERVILLE, I. Engenharia de Software. Editora Addison Wesley. São Paulo, 2003.

• PRESSMAN. R. Engenharia de Software. Editora McGraw-Hill. São Paulo, 2006.

• http://standards.ieee.org/reading/ieee/std_public/description/se/610.12-1990_desc.html

Prof. Késsia R. C. Marchi27