Você está na página 1de 24

Processo de Software - Reviso

Curso de Especializao DEINF - UFMA


Desenvolvimento Orientado a Objetos
Prof. Geraldo Braz Junior

Referncias: Pressman, R. S. Engenharia de Software, McGraw-Hill, 6. Edio, 2006


Sommerville, I. Engenharia de Software, 8 edio, 2007.
Sumrio
Introduo
Conceitos Bsicos
Processo de Software
Modelos de processo de Software e seus paradigmas
Perguntas Comuns

2
Conceitos Bsicos
Mtodos
Mtodos: proporcionam os detalhes de como fazer para
construir o software.
Envolvem um amplo conjunto de tarefas
Um mtodo de ES uma aproximao estruturada para o
desenvolvimento de software
Objetivo: Produo de software de alta qualidade e com bom
custo-benefcio.

3
Conceitos Bsicos
Mtodos devem incluir os seguintes componentes:
Descrio grficas.
Descries dos modelos do sistema que
devero ser desenvolvidos e da notao
usada para os definir. Ex. Modelos de
objetos, fluxos de dados etc.
Regras
Restries que se aplicam a modelos de
sistema. Ex.Cada entidade deve ter um
nico nome.
4
Conceitos Bsicos
Mtodos devem incluir os seguintes componentes
(cont.):
Recomendaes
Conselho em prtica de projeto. Ex.
Nenhum objeto deve ter mais que sete sub-
objetos.
Diretrizes de processo
Descrio das atividades que podem ser
seguidas. Ex. Atributos de objetos devem ser
documentados.
5
Conceitos Bsicos
Ferramentas: fornecem suporte
automatizado ou semi aos mtodos.
Existem atualmente ferramentas para
sustentar cada um dos mtodos
Quando as ferramentas so integradas
estabelecido um sistema de suporte ao
desenvolvimento de software chamado
CASE - Computer Aided Software Engineering
6
Conceitos Bsicos
Procedimentos: constituem o elo de ligao que mantm
juntos os mtodos e as ferramentas para desenvolvimento
do software.
Seqncia em que os mtodos sero aplicados
Produtos (deliverables) que se exige que sejam entregues
Controles que ajudam assegurar a qualidade e coordenar as
alteraes
Marcos de referncia que possibilitam administrar o progresso do
software

7
Processos de Software
Um processo de software um mtodo para
desenvolver ou produzir software.
A pesquisa em processo de software lida com
mtodos e tecnologias estimativas, suporte e melhoria
das atividades de desenvolvimento de software.
Define quem faz o que, quando e como.

8
Processo de Software
Modelagem: uma tcnica de engenharia aprovada e
bem aceita
modelos de arquitetura de casas e de grandes prdios
modelos matemticos a fim de analisar os efeitos de ventos e
tremores de terra --> causas
O que um MODELO?

9
Modelos
uma simplificao da realidade.
Planos de detalhes, podem ser estruturais (organizao do
sistema) ou comportamentais (dinmica do sistema)
Modelos so construdos para permitir um
melhor entendimento sobre o sistema que
est sendo construdo.
Especificar a estrutura e comportamento
Guia para construo do sistema
Documentam as decises tomadas
Nenhum modelo nico suficiente.
Conjunto de modelos independentes
10
Modelos

11
Objetivos da Modelagem
Abstrao
Melhor entendimento e maior compreenso
Visualizao
Visualizao antecipada antes da implementao
Vises complementares do software
Especificao
Descrio precisa do que deve ser feito
Construo
Gerao automtica com ferramentas baseadas em modelos
Documentao
Comunicao entre equipes na diferentes fases do ciclo de vida

12
Modelo X Processo
Um modelo algo terico, um conjunto de possveis aes.
O processo deve determinar aes prticas a serem realizadas
pela equipe como prazos definidos e mtricas para se avaliar
como elas esto sendo realizadas

13
Modelos de processo de software
Um conjunto de atividades fundamentais exigida para
desenvolver um sistema de software
Especificao.
Projeto e implementao.
Validao.
Evoluo.
Um modelo de processo de software uma
representao abstrata de um processo. Representa uma
descrio de um processo a partir de uma perspectiva
particular.

14
Modelos de processo de software -
Paradigmas
Uma estratgia de desenvolvimento que
englobe processos, mtodos e ferramentas,
e as fases de desenvolvimento...
Exemplo:
Modelo Seqencial (ciclo de vida
clssico), Modelo de Prototipao,
Modelos Evolutivos (Modelo Incremental
e Espiral), Modelo de Mtodos Formais,
Orientado a reuso, etc.
15
Modelo em Cascata
Mtodo sistemtico e seqencial
O resultado de uma fase se constitui na entrada da outra.
Cada fase estruturada como um conjunto de atividades
que podem ser executadas por pessoas diferentes,
simultaneamente.

16
Modelo em Cascata

17
Modelo Evolutivo
Abordagem baseada na idia de desenvolver uma
implementao inicial, expor o resultado ao comentrio
do usurio e fazer seu aprimoramento por meio de
muitas verses.
As atividade de desenvolvimento e validao so
desempenhadas paralelamente, com um rpido feedback
entre elas.

18
Modelo Evolutivo
Tipos de desenvolvimento Evolutivo:
Desenvolvimento Exploratrio: trabalha-se junto com o cliente, a fim
de explorar seus requisitos e entregar um sistema final.
O desenvolvimento se inicia com as partes do sistema que so mais bem
compreendidas.
O sistema evolui com o acrscimo de novas caractersticas medida que
elas so propostas pelo cliente.
Prottipo Descartvel: o objetivo compreender os requisitos do
cliente e, a partir disso, desenvolver uma melhor definio de
requisitos para o sistema.
O prottipo se concentra em fazer experimentos com partes dos
requisitos que estejam mal entendidos.

19
Modelo Espiral
Desenvolvido pala englobar as melhores caractersticas do ciclo de
vida clssico e do paradigma evolutivo.
So avaliados riscos explicitamente e so solucionados ao longo do
processo.
Processo representado como uma espiral em lugar de ser
representado como uma seqncia de atividades
Cada loop na espiral representa uma fase do processo de software.
No existem fases fixas.
Engloba as melhores caractersticas do ciclo de vida clssico como o
da Prototipao, adicionando um novo elemento: a anlise de riscos

20
Modelo Espiral

21
Perguntas Comuns
Qual a diferena entre processo de software e ciclo de
vida?
Processo de software refere-se a todas as atividades, bem
como relacionamentos, artefatos, ferramentas, papis etc,
necessrias para construir, entregar e manter um produto de
software.
J o ciclo de vida apresenta uma representao alto nvel do
processo de software executado (processo de software real)
ou como deveria ser executado, ou seja, normalmente,
ciclos de vida determinam as fases e o relacionamento entre
as fases.

22
Perguntas Comuns
O que so recursos?
Recursos relacionam-se com diversos componentes do
processo de software, por exemplo, tcnicas, mtodos e
ferramentas.
O que so artefatos?
Artefato um tipo de recurso produzido ou consumido em
uma atividade. Nesse contexto, um artefato pode ser
utilizado como uma entrada (matria-prima) para uma
determinada atividade e/ou como uma sada de uma
atividade (resultado da execuo de uma atividade).
Ex: cdigo-fonte, cdigo executvel, manual de padres,
relatrio de resultados, documento de requisitos, plano de
trabalho, etc.
23
Perguntas Comuns
O que so agentes?
Agentes ou atores so as entidades que executam atividades
por intermdio de um papel.
O que so papis?
Papis representam um conjunto de responsabilidades,
obrigaes, permisses e habilidades necessrias para
executar uma atividade ou sub-atividade. Geralmente, papis
so desempenhados por agentes humanos. Um sinnimo de
papel seria cargo ou funo.
Uma atividade pode exigir diversos papis para ser executada
e um papel pode ser aplicado em diversas atividades.

24

Você também pode gostar