• Nenhum resultado encontrado

ifal-gsdw-aula3-

N/A
N/A
Protected

Academic year: 2021

Share "ifal-gsdw-aula3-"

Copied!
48
0
0

Texto

(1)

FAQs Engenharia de Software Elementos Modelos de Ciclo de Vida Outros elementos Processo

Gerenciamento de Desenvolvimento de Software

Introdu¸c˜ao

(Aula 2)

Leonardo Medeiros

Instituto Federal de Alagoas

(2)

Roteiro

1 FAQs 2 Engenharia de Software Motiva¸c˜ao da ES Hist´orico Crise do Software 3 Elementos

4 Modelos de Ciclo de Vida Modelos Sequenciais Modelos Incrementais Modelos Iterativos 5 Outros elementos Linguagem 6 Processo

(3)

FAQs Engenharia de Software Elementos Modelos de Ciclo de Vida Outros elementos Processo

Pergunta

O que ´e software ?

Resposta

Programas de computador e documenta¸c˜ao associada. Os produtos de software podem ser desenvolvidos para um cliente espec´ıfico ou para um mercado geral.

(4)

Pergunta

O que ´e software ?

Resposta

Programas de computador e documenta¸c˜ao associada. Os produtos de software podem ser desenvolvidos para um cliente espec´ıfico ou para um mercado geral.

(5)

FAQs Engenharia de Software Elementos Modelos de Ciclo de Vida Outros elementos Processo

Pergunta

O que ´e Engenharia de Software?

Resposta

´

E uma disciplina da Engenharia relacionada a todos os aspectos de produ¸c˜ao de software.

(6)

Pergunta

O que ´e Engenharia de Software?

Resposta

´

E uma disciplina da Engenharia relacionada a todos os aspectos de produ¸c˜ao de software.

(7)

FAQs Engenharia de Software Elementos Modelos de Ciclo de Vida Outros elementos Processo

Pergunta

Qual o Objetivo Principal e final da constru¸c˜ao de um sistema ?

Resposta

O objetivo principal e final da constru¸c˜ao de sistema ´e “adi¸c˜ao de valor” `a empresa ou pessoas que dele necessitam. Isso implica que pelo menos a produtividade dos envolvidos deve ser melhorada para que tenha sentido a sua existˆencia.

(8)

Pergunta

Qual o Objetivo Principal e final da constru¸c˜ao de um sistema ?

Resposta

O objetivo principal e final da constru¸c˜ao de sistema ´e “adi¸c˜ao de valor” `a empresa ou pessoas que dele necessitam. Isso implica que pelo menos a produtividade dos envolvidos deve ser melhorada para que tenha sentido a sua existˆencia.

(9)

FAQs Engenharia de Software Elementos Modelos de Ciclo de Vida Outros elementos Processo

Motiva¸c˜ao da ES

Motiva¸c˜ao

A principal motiva¸c˜ao para a produ¸c˜ao de software utilizando metologias de desenvolvimento. ´E justamente o crescimento exponencial da complexidade dos softwares produzidos.

A complexidade n˜ao se restringe apenas a tecnologia utilizada, mas tamb´em a tudo que tange o pr´oprio desenvolvimento.

(10)

Complexidade de Desenvolvimento

Complexidade Pessoas Tecnologia Cultura Legisla¸c˜ao Capacidade de processamento Frequˆencia de acesso

(11)

FAQs Engenharia de Software Elementos Modelos de Ciclo de Vida Outros elementos Processo

Motiva¸c˜ao da ES

Engenharia de Software

Segundo Friedrich Ludwig Bauer, ”Engenharia de Software ´e a cria¸c˜ao e a utiliza¸c˜ao de s´olidos princ´ıpios de engenharia a fim de obter software de maneira econˆomica, que seja confi´avel e que trabalhe eficientemente em m´aquinas reais”

(12)

Hist´

orico (1/3)

Antes 1969

desenvolvimento fora de controle

surge termo ENGENHARIA DE SOFTWARE

1969-1971

desenvolvimento top-down e modularizado novas linguagens de programa¸c˜ao

(13)

FAQs Engenharia de Software Elementos Modelos de Ciclo de Vida Outros elementos Processo

Hist´orico

Hist´

orico (2/3)

1972-1973

programa¸c˜ao estruturada

propostas de apoio ao Desenvolvimento e Gerˆencia

1974-1975

conceitos de confiabilidade

controle da qualidade (teste sistem´atico, prova formal, tolerˆancia a falhas))

1976-1977

foco em requisitos

especifica¸c˜ao e projeto integra¸c˜ao e valida¸c˜ao das fases do ciclo de vida

(14)

Hist´

orico (3/3)

1978-1980

uso de ferramentas automatizadas cursos de engenharia de software

1980-1989

era CASE

1999 em diante

t´ecnicas de IA aplicas a Engenharia de Software, gerando as “ferramentas inteligentes”

(15)

FAQs Engenharia de Software Elementos Modelos de Ciclo de Vida Outros elementos Processo

Hist´orico

Era Qualidade

Foco no processo de desenvolvimento Artefatos de entrada e sa´ıda

Redu¸c˜ao de custos

Surgimento do processo interativo e incremental (Rational Unified Process)

Modelos de matura¸c˜ao de processos CMMI Busca por confiabilidade de prazos PMBOK

(16)

Qualidade na Pr´

atica

Opera¸c˜ao profissional

Processo de desenvolvimento transparente Retorno r´apido ao cliente

Alta produtividade

1 Ferramentas e processos padronizados

Alta qualidade

1 Dados hist´oricos, previsibilidade e an´alise de risco

(17)

FAQs Engenharia de Software Elementos Modelos de Ciclo de Vida Outros elementos Processo

Hist´orico

Pergunta

O que ´e um Software de Qualidade ?

Resposta

´

E aquele que satisfaz os requisitos solicitados. Deve ser f´acil de manter, ter boa performance, ser confi´avel e f´acil de usar.

(18)

Pergunta

O que ´e um Software de Qualidade ?

Resposta

´

E aquele que satisfaz os requisitos solicitados. Deve ser f´acil de manter, ter boa performance, ser confi´avel e f´acil de usar.

(19)

FAQs Engenharia de Software Elementos Modelos de Ciclo de Vida Outros elementos Processo

Crise do Software

Crise do Software

A crise do software foi um termo utilizado nos anos 70, quando a engenharia de software era praticamente inexistente.

O termo expressava as dificuldades do desenvolvimento de software frente ao r´apido crescimento da demanda por software, da

complexidade dos problemas a serem resolvidos e da inexistˆencia de t´ecnicas estabelecidas para o desenvolvimento de sistemas que funcionassem adequadamente ou pudessem ser validados.

(20)

Crise do Software

Resultados :

25 por cento dos projetos s˜ao cancelados

O tempo de desenvolvimento ´e bem maior do que o estimado 75 por cento dos sistemas n˜ao funcionam como planejado Manuten¸c˜ao e reutiliza¸c˜ao s˜ao dif´ıceis

(21)

FAQs Engenharia de Software Elementos Modelos de Ciclo de Vida Outros elementos Processo

Crise do Software

Crise do Software

Raz˜oes :

Falta de envolvimento do usu´ario An´alise e projeto inadequados Falta de flexibilidade no projeto Prazos longos

Elevada rotatividade de pessoal

M´a qualidade dos m´etodos, linguagens, ferramentas e processos

(22)

Crise do Software

Custos Altos :

Pouco controle sobre prazos e planejamento da equipe Baixa Reutiliza¸c˜ao de software

(23)

FAQs Engenharia de Software Elementos Modelos de Ciclo de Vida Outros elementos Processo

Crise do Software

Crise do Software

Cronogramas n˜ao cumpridos ?

Maior foco no gerenciamento no projeto e defini¸c˜ao de prazos com metas mais curtas;

Maior intera¸c˜ao entre usu´ario e analista para que haja um entendimento das necessidades do software;

Barreiras tecnol´ogicas

(24)

Crise do Software

Busca por m´etricas

Como medir a produtividade das equipes de desenvolvimento? Como medir a qualidade do software produzido?

Como detectar e consertar os erros em prazo h´abil?

1 etricas

2 Processo de Desenvolvimento

(25)

FAQs Engenharia de Software Elementos Modelos de Ciclo de Vida Outros elementos Processo

Crise do Software

Chaos Report 2009

Chaos 2009

Desenvolvido pelo Standish Group.

Como medir a qualidade do software produzido?

Chaos Report – Relat´orio que demonstra as taxas de sucesso e falhas dos projetos de software.

(26)

Chaos Report 2009

Chaos 2009

(27)

FAQs Engenharia de Software Elementos Modelos de Ciclo de Vida Outros elementos Processo

Elementos x Atividades

Elementos

Modelos do Ciclo de Vida Linguagens

M´etodos

Ferramentas Processos

Elementos

Modelagem de Neg´ocio Elicita¸c˜ao de Requisitos An´alise e Projeto Implementa¸c˜ao Testes

(28)

Modelos de Ciclo de Vida

Uma representa¸c˜ao abstrata e simplificada do processo de desenvolvimento software, tipicamente mostrando as principais atividades e dados usados na produ¸c˜ao e manuten¸c˜ao de software

(29)

FAQs Engenharia de Software Elementos Modelos de Ciclo de Vida Outros elementos Processo

Modelos de Ciclo de Vida

Tipos:

Cascata Espiral Incremental Seq¨uencial linear Prototipa¸c˜ao

(30)

Modelos de Ciclo de Vida

3 Abordagens Principais:

(31)

FAQs Engenharia de Software Elementos Modelos de Ciclo de Vida Outros elementos Processo

Modelos Sequenciais

Modelos de Ciclo de Vida

(32)

Modelos de Ciclo de Vida

Modelos Sequenciais

Organizam o processo em uma seq¨uˆencia linear de fases.

1 Waterfall (Cascata)

Quando empregar

1 Problema cujos requisitos s˜ao muito bem definidos

(33)

FAQs Engenharia de Software Elementos Modelos de Ciclo de Vida Outros elementos Processo

Modelos Incrementais

Modelos de Ciclo de Vida

Modelos Incrementais:

Software produzido por incrementos (m´odulos); Incrementos

1 Seu desenvolvimento segue o modelo sequencial; 2 Exigem revis˜ao do cliente;

(34)

Modelos de Ciclo de Vida

Modelos Incrementais Vantagens

Menor custo e tempo para entrega da 1a vers˜ao;

Menor risco e n´umero de mudan¸cas nos req. (pelo fato dos inc. serem menores que o sw todo).

Desvantagens

Requisitos inst´aveis ou incompletos os quais geram muitas mudan¸cas nos incrementos;

(35)

FAQs Engenharia de Software Elementos Modelos de Ciclo de Vida Outros elementos Processo

Modelos Incrementais

Modelos Incrementais

RAD - Desenvolvimento R´apido

(36)

Modelos Iterativos

N˜ao se preocupa em entregar de vers˜oes operacionais desde o primeiro ciclo;

1 Geralmente produzem prot´otipos ou modelos.

Vers˜oes operacionais s˜ao produzidas `a medida em que os requisitos v˜ao ficando mais claros e est´aveis;

Quando empregar

1 Problemas muito complexos

2 Requisitos s˜ao muito vol´ateis ou que n˜ao podem ser totalmente especificados no in´ıcio do desenvolvimento.

(37)

FAQs Engenharia de Software Elementos Modelos de Ciclo de Vida Outros elementos Processo

Modelos Iterativos

Modelos Iterativos

Modelos Iterativos (Evolutivos ou Evolucion´arios)

(38)

Linguagem

Nota¸c˜ao com sintaxe e semˆantica bem definidas com representa¸c˜ao gr´afica ou textual

Usada para descrever os artefatos gerados durante o desenvolvimento de software

(39)

FAQs Engenharia de Software Elementos Modelos de Ciclo de Vida Outros elementos Processo

Linguagem

M´etodo

Descri¸c˜ao sistem´atica de como deve-se realizar uma determinada atividade ou tarefa A descri¸c˜ao ´e normalmente feita atrav´es de padr˜oes e guias.

(40)

Ferramentas

Provˆe suporte computacional a um determinado m´etodo ou linguagem Ambiente de desenvolvimento: conjunto de ferramentas integradas (CASE).

(41)

FAQs Engenharia de Software Elementos Modelos de Ciclo de Vida Outros elementos Processo

Processo de Software

bloco

Um conjunto de atividades cujo objetivo ´e o desenvolvimento ou evolu¸c˜ao do software

Conjunto coerente de atividades para especifica¸c˜ao, projeto, implementa¸c˜ao e teste de sistemas de software

As atividades que s˜ao envolvidas no desenvolvimento de produtos de software.

(42)

Processo

Conjunto de atividades: bem definidas

com respons´aveis

com artefatos de entrada e sa´ıda

com dependˆencias entre as mesmas e ordem de execu¸c˜ao com modelo de ciclo de vida

(43)

FAQs Engenharia de Software Elementos Modelos de Ciclo de Vida Outros elementos Processo

Vocˆ

es j´

a viram ?

(44)
(45)

FAQs Engenharia de Software Elementos Modelos de Ciclo de Vida Outros elementos Processo

(46)

O que ”sabemos”aqui?

Todo o Pressman ou Sommerville (Software Engineering)

ou seja: requisitos, especifica¸c˜oes, refinamento, valida¸c˜ao e verifica¸c˜ao, m´etodos, t´ecnicas, linguagens e ferramentas, componentes, reutiliza¸c˜ao, manuten¸c˜ao, modelagem de processos, qualidade, reengenharia,, verifica¸c˜ao, valida¸c˜ao e teste... al´em de programa¸c˜ao!...

(47)

FAQs Engenharia de Software Elementos Modelos de Ciclo de Vida Outros elementos Processo

´

E Necess´

ario saber:

O Escopo e Or¸camento do Projeto

Devemos ter a verdadeira no¸c˜ao de que ferramentas e t´ecnicas de engenharia de software ser˜ao realmente ´uteis para o projeto que iremos desenvolver.

Inicialmente devemos focar na necessidade do cliente e de que maneira poderemos atendˆe-lo.

(48)

Referências

Documentos relacionados

O Estado Burocrático- Industrial e o Estado Gerencial são estados de transição de uma política de elites para uma democracia moderna, ou seja, em uma democracia na qual a sociedade

AtravŽs dessas iniciativas, Paula e Cristiano buscam atingir o quanto antes a vis‹o da Onodera EstŽtica - Unidade Bela Vista ÒSer referncia no ramo de estŽtica

A pecuária de corte no Brasil passa por rápidas e intensas transformações que acionam, diretamente, diversos segmentos de sua estrutura de produção, passando pelos geradores

Acredita-se que as pes- soas especiais devem estar presentes não só como ouvintes, mas como agentes que possam estar envolvidos nas discussões e decisões sobre uma

3.2 Objetivos específicos a utilizar técnicas de sensoriamento remoto para determinar índices de vegetação e avaliar a dinâmica da cobertura vegetal no Alto Ipanema ao longo dos anos

Professor André: A questão da robótica na licenciatura eu tive uma introdução mas foi bem rápida, não foi bem detalhada não, mas a questão de trabalhar na escola foi quando chegou

Os desfechos pesquisados foram o impacto do diabetes mellitus tipo 1 sobre a qualidade de vida de crianças e adolescentes com esse problema e os principais

tratando do ambiente escolar, quando a criança se desvincula do seio familiar para inserir na escola ela já trás consigo um referencial de aprendizagem referente aos