• Nenhum resultado encontrado

ES1 02 Introducao Engenharia Software

N/A
N/A
Protected

Academic year: 2019

Share "ES1 02 Introducao Engenharia Software"

Copied!
54
0
0

Texto

(1)

Alexandre de Andrade Barbosa

(2)

Introdu¸c˜ao `a Engenharia de Software

Objetivos

Objetivos

(3)
(4)

Introdu¸c˜ao `a Engenharia de Software

A crise de software

O cen´ario atual (Breve resumo) Software e Engenharia de Software

Introdu¸c˜ao `a Engenharia de Software

Como uma casa ´e constru´ıda?

(5)

Como uma casa ´e constru´ıda?

(6)

Introdu¸c˜ao `a Engenharia de Software

A crise de software

O cen´ario atual (Breve resumo) Software e Engenharia de Software

Introdu¸c˜ao `a Engenharia de Software

Software est´a presente em praticamente todas as atividades

Bancos

Institui¸c˜

oes de ensino

Aeroportos

Sistemas m´edicos

...

(7)

Termo utilizado nos anos 60/70, quando ES praticamente n˜ao

existia

(8)

Introdu¸c˜ao `a Engenharia de Software

A crise de software

O cen´ario atual (Breve resumo) Software e Engenharia de Software

A crise de software

O desenvolvimento informal de software n˜ao era adequado

Os problemas:

estouro do or¸camento e prazo;

baixa qualidade dos produtos;

inadequa¸c˜ao aos requisitos;

odigo dif´ıcil de manter;

dificuldades de gerenciamento.

(9)

Alguns profissionais defendem...

(10)

Introdu¸c˜ao `a Engenharia de Software

A crise de software

O cen´ario atual (Breve resumo)

Software e Engenharia de Software

O cen´ario atual (Breve resumo)

O que vocˆe acha?

(11)

sede em Boston

Possui uma equipe de profissionais com vasta experiˆencia em

avalia¸c˜ao de riscos, custos, retorno e valor sobre investimentos

em TI

Coleta informa¸c˜oes sobre projeto de TI

Auxiliam na obten¸c˜ao de sucesso estudando e exibindo casos de

fracasso

(12)

Introdu¸c˜ao `a Engenharia de Software

A crise de software

O cen´ario atual (Breve resumo)

Software e Engenharia de Software

O cen´ario atual (Breve resumo)

Alguns dos relat´orios do TSG relacionados aos estudos sobre

projetos de TI:

(13)

Constru¸c˜ao de pontes X Constru¸c˜ao de software

Pontes:

normalmente finalizadas dentro do tempo e custo previsto;

em geral n˜ao apresentam problemas (n˜ao caem);

Software:

normalmente finalizados acima do tempo e custo previsto

em geral apresentam problemas;

(14)

Introdu¸c˜ao `a Engenharia de Software

A crise de software

O cen´ario atual (Breve resumo)

Software e Engenharia de Software

O cen´ario atual (Breve resumo)

Pontes:

3.000 anos de experiˆencia;

projeto ´e extremamente detalhado;

projeto n˜ao sofre modifica¸c˜

oes (ele fica congelado).

Software:

´area bastante recente;

projeto detalhado...

(15)

Sucesso

: projeto conclu´ıdo no prazo, dentro do or¸camento e com

todas as funcionalidades

Desafiador

: projeto operacional, mas conclu´ıdo fora do prazo,

fora do or¸camento, e/ou com poucas funcionalidades

(16)

Introdu¸c˜ao `a Engenharia de Software

A crise de software

O cen´ario atual (Breve resumo)

Software e Engenharia de Software

(17)
(18)

Introdu¸c˜ao `a Engenharia de Software

A crise de software

O cen´ario atual (Breve resumo)

Software e Engenharia de Software

O cen´ario atual (Breve resumo)

Sucesso

: o conjunto de restri¸c˜oes n˜ao ´e muito exigente?

Desafiador

: se o produto est´a em uso e agrega valor, o projeto

n˜ao pode ser considerado como um caso de sucesso?

(19)

Uma m´edia de 189% de custos acima do esperado

Uma m´edia de 222% de tempo acima do esperado

Em m´edia 61% das funcionalidades foram entregues.

(20)

Introdu¸c˜ao `a Engenharia de Software

A crise de software

O cen´ario atual (Breve resumo)

Software e Engenharia de Software

(21)
(22)

Introdu¸c˜ao `a Engenharia de Software

A crise de software

O cen´ario atual (Breve resumo)

Software e Engenharia de Software

O que ´e software?

(23)

Software ´e...

1

conjunto de instru¸c˜

oes que quando executadas fornecem a fun¸c˜ao

(24)

Introdu¸c˜ao `a Engenharia de Software

A crise de software

O cen´ario atual (Breve resumo)

Software e Engenharia de Software

O que ´e software?

Software ´e...

1

conjunto de instru¸c˜

oes que quando executadas fornecem a fun¸c˜ao

e o desempenho desejados

2

estruturas de dados que permitem aos programas manipular

(25)

Software ´e...

1

conjunto de instru¸c˜

oes que quando executadas fornecem a fun¸c˜ao

e o desempenho desejados

2

estruturas de dados que permitem aos programas manipular

adequadamente a informa¸c˜ao

(26)

Introdu¸c˜ao `a Engenharia de Software

A crise de software

O cen´ario atual (Breve resumo)

Software e Engenharia de Software

O que ´e software?

Produto gen´

erico

. S˜ao sistemas produzidos por uma empresa e

disponibilizados no mercado para qualquer cliente.

Produto sob encomenda

. S˜ao sistemas personalizados para um

determinado cliente, o qual contrata uma empresa de

(27)

´

E um produto

. Programas que permitem o uso do hardware.

Est´a presente nos celulares, nos computadores, nos carros, nos

avi˜oes, ...

´

(28)

Introdu¸c˜ao `a Engenharia de Software

A crise de software

O cen´ario atual (Breve resumo)

Software e Engenharia de Software

O que ´e software?

Software de sistema

. Cole¸c˜ao de programas que servem a outros

programas (ex. compiladores)

Software de tempo real

. Programas que possuem o tempo de

resposta como um fator cr´ıtico (ex. software para controle de

uma caldeira)

Software de neg´

ocios

. Programas que fornecem apoio para as

atividades de neg´ocios (ex. sistema de folha de pagamento)

Software cient´ıfico

. Programas que fornecem suporte para as

atividades cient´ıficas (ex. software para compara¸c˜ao de DNA)

(29)
(30)

Introdu¸c˜ao `a Engenharia de Software

A crise de software

O cen´ario atual (Breve resumo)

Software e Engenharia de Software

O que ´e Engenharia de Software?

(31)

Segundo uma pesquisa realizada nos EUA

(32)

Introdu¸c˜ao `a Engenharia de Software

A crise de software

O cen´ario atual (Breve resumo)

Software e Engenharia de Software

O que ´e Engenharia de Software?

Qual a melhor profiss˜ao?

Segundo uma pesquisa realizada nos EUA

1

Mathematician (Matem´atico)

2

Actuary (Avaliador)

3

Statistician (Estat´ıstico)

4

Biologist (Bi´

ologo)

5

Software Engineer (Engenheiro de Software)

6

Computer Systems Analyst (Analista de Sistemas)

7

Historian (Historiador)

8

Sociologist (Soci´

ologo)

(33)

Engenharia de Software (ES) ´e uma disciplina de engenharia

relacionada a todos os aspectos de produ¸c˜ao de software

[Som2007]

Processo de software inclui

An´alise

Projeto

Codifica¸c˜ao

Verifica¸c˜ao e Valida¸c˜ao

Implanta¸c˜ao

(34)

Introdu¸c˜ao `a Engenharia de Software

A crise de software

O cen´ario atual (Breve resumo)

Software e Engenharia de Software

O que ´e Engenharia de Software?

An´alise

Busca identificar quais caracter´ısticas e funcionalidades s˜ao

desejadas pelo cliente

(35)

Projeto

Busca identificar como as caracter´ısticas e funcionalidades

desejadas ser˜ao implementadas

(36)

Introdu¸c˜ao `a Engenharia de Software

A crise de software

O cen´ario atual (Breve resumo)

Software e Engenharia de Software

O que ´e Engenharia de Software?

Codifica¸c˜ao

Consiste na implementa¸c˜ao das especifica¸c˜oes

Transforma¸c˜ao dos modelos em c´

odigo execut´avel

(37)

Verifica¸c˜ao

“Estamos construindo o produto corretamente?”

“As sa´ıdas fornecidas s˜ao as sa´ıdas corretas?”

Valida¸c˜ao

“Estamos construindo o produto correto?”

(38)

Introdu¸c˜ao `a Engenharia de Software

A crise de software

O cen´ario atual (Breve resumo)

Software e Engenharia de Software

O que ´e Engenharia de Software?

Implanta¸c˜ao

Planejamento e execu¸c˜ao das medidas necess´arias para o software

entrar em uso para o cliente

(39)

Evolu¸c˜ao

Ap´os entrar em uso o software dever´a sofrer modifica¸c˜

oes

Corre¸c˜ao de erros

Solicita¸c˜ao de mudan¸cas

(40)

Introdu¸c˜ao `a Engenharia de Software

A crise de software

O cen´ario atual (Breve resumo)

Software e Engenharia de Software

O que ´e Engenharia de Software?

(41)

Gerenciamento

(42)

Introdu¸c˜ao `a Engenharia de Software

A crise de software

O cen´ario atual (Breve resumo)

Software e Engenharia de Software

O que ´e modelo de processo de software?

Um modelos de processo de software representa a maneira como

as diferentes fases de um processo s˜ao executadas e interligadas

´

E uma representa¸c˜ao simplificada de um processo de software

Exemplos de modelos de processo de software:

Cascata ou sequencial linear;

Prototipa¸c˜ao

(43)

Um processo de software ´e um conjunto de atividades e

resultados associados que produz um produto de software

Exemplos de processo de software:

eXtreme Programming

SCRUM

RUP

(44)

Introdu¸c˜ao `a Engenharia de Software

A crise de software

O cen´ario atual (Breve resumo)

Software e Engenharia de Software

Qual a diferen¸ca entre ES e CC?

Ciˆ

encia da Computa¸c˜

ao

. Teorias e m´etodos que comp˜

oem a base

de computadores e de sistemas de software.

Engenharia de Software

. Pr´atica relacionada a produ¸c˜ao de

software.

(45)
(46)

Introdu¸c˜ao `a Engenharia de Software

A crise de software

O cen´ario atual (Breve resumo)

Software e Engenharia de Software

Qual ´e o objetivo da ES?

Software “t´a rodando” X Software de qualidade

Objetivo da ES ´e produzir software:

(47)

International Organization for Standardization

(ISO)

(48)

Introdu¸c˜ao `a Engenharia de Software

A crise de software

O cen´ario atual (Breve resumo)

Software e Engenharia de Software

O que ´e qualidade de software?

De forma resumida a ISO 9126 / NBR 13596 observa se o

produto de software possui as seguintes caracter´ısticas

Funcionalidade (satisfaz as necessidades?)

Confiabilidade (´e imune a falhas?)

Usabilidade (´e f´acil de usar?)

Eficiˆencia (´e r´apido e “enxuto”?)

Manutenibilidade (´e f´acil de modificar?)

Portabilidade (´e f´acil de usar em outro ambiente?)

(49)

Os custos associados a produ¸c˜ao de software dependem de

muitos fatores:

Tipo do sistema desenvolvido;

Quantidade e qualidade dos membros da equipe;

Ferramentas e Hardware dispon´ıvel

(50)

Introdu¸c˜ao `a Engenharia de Software

A crise de software

O cen´ario atual (Breve resumo)

Software e Engenharia de Software

(51)

O que ´e software?

O que ´e/foi a crise de software?

O que ´e Engenharia de Software?

Qual o papel do engenheiro de software?

(52)

Introdu¸c˜ao `a Engenharia de Software

A crise de software

O cen´ario atual (Breve resumo)

Software e Engenharia de Software

Resumo

Software = algoritmo + estruturas de dados + documenta¸c˜

ao

A crise de software foi o termo utilizado para descrever os problemas relacionados ao

desenvolvimento informal de software

Engenharia de Software (ES) ´

e uma disciplina relacionada a todos os aspectos da

produ¸c˜

ao de software

O engenheiro de software deve utilizar metodologias, t´

ecnicas e ferramentas da ES

para produzir software de qualidade

(53)

Ian Sommerville

Engenharia de software.

Pearson, 8a. edi¸c˜ao, 2007.

Cap´ıtulo 1: Introdu¸c˜ao.

Roger S. Pressman

Engenharia de software.

(54)

Introdu¸c˜ao `a Engenharia de Software

A crise de software

O cen´ario atual (Breve resumo)

Software e Engenharia de Software

Perguntas?

Alexandre de Andrade Barbosa

Referências

Documentos relacionados

do produto foi maior, pode ser visto uma reação do controlador e uma mudança na referência de corrente para rejeitar esse evento o mais rápido possível, por isso, nessa

Já o Ministério do Turismo (2010), divulga não apenas as atribuições gerais que o guia deve cumprir, mas também as atribuições específicas de acordo com a

VIVIANE APARECIDA LOPES OLIVEIRA 0002087. WECERLY PIRES

Determinação da distância focal através da divergência de raios paralelos A tabela a seguir mostra os valores obtidos experimentalmente com o espelho convexo.. A quantidade

Kulčar 40 , encontrou benefícios semelhantes (Tabela 3) e, além disso, ao acompanhar os membros permanentes do grupo por um período de 10 anos, constatou uma

A origem do nome Açaí é que nós justamente tivemos o trabalho né, foi o processo foi feito com o SEBRAE né, foi dado as aulas pra nós, aí então, lá no curso ela pediu pra

A função gerente de obras torna-se cada vez mais necessária na construção civil, pois o setor está cada vez mais desenvolvendo e aprimorando a área de coordenação

Na Nova Zelândia em sistemas pastoris as vacas produzem em média 17 litros de leite ao dia, enquanto nos produtores analisados neste estudo a média de