Você está na página 1de 22

PROCESSOS DE DESENVOLVIMENTO DE

SOFTWARE
Rational Unified Process RUP
O RUP um processo de desenvolvimento de software
que utiliza a Unified Modeling Language - UML como
notao de uma srie de modelos que compem os
principais resultados das atividades de uma metodologia.
O RUP utiliza pequenos ciclos do projeto (mini-projetos),
que correspondem a uma iterao e resultam em um
incremento no software.

PROCESSOS DE DESENVOLVIMENTO DE
SOFTWARE
Rational Unified Process RUP
Embora o RUP sugira um processo, ele pode ser considerado
como:
uma abordagem de desenvolvimento de software que
iterativa, centrada na arquitetura e dirigida por casos de uso,
ou seja, levantamento de requisitos baseados na viso do
usurio;
um processo de engenharia de software bem definido e bem
estruturado. Ele claramente define quem o responsvel pelo
que, como as coisas so feitas e quando faz-las;
um produto processo que fornece um framework de processo
customizvel para a engenharia de software. Essas
customizaes podem ser feitas para suportar pequenas
equipes e abordagens disciplinadas ou menos formal para o

PROCESSOS DE DESENVOLVIMENTO DE
SOFTWARE
Rational Unified Process RUP
Desenvolvimento iterativo controlado superior
abordagem tradicional em cascata por vrias razes:
Gerenciar a mudana de requisitos;
Integrao contnua;
Reduo dos riscos;
Possibilidade de mudanas tticas;
Facilita o reuso;
Resulta numa arquitetura mais robusta;

Aprendizado;
Refinamento do processo.

PROCESSOS DE DESENVOLVIMENTO DE
SOFTWARE
Rational Unified Process RUP
Todos os componentes do processo, da captura dos requisitos
aos testes, so dirigidos por casos de uso.

PROCESSOS DE DESENVOLVIMENTO DE
SOFTWARE
Rational Unified Process RUP
Os Casos de Uso definidos para um sistema so a base de
todo o processo de desenvolvimento. Eles orientam o
desenvolvimento:
Na anlise de requisitos os casos de uso so usados
para capturar os Requisitos;
No design devem ser identificadas as classes a partir
dos casos de uso;
Na implementao os casos de uso so implementados;
Nos testes os casos de uso devem ser verificados. Os
casos de uso tornam-se casos de teste.

PROCESSOS DE DESENVOLVIMENTO DE
SOFTWARE
Rational Unified Process RUP

PROCESSOS DE DESENVOLVIMENTO DE
SOFTWARE
RUP Estruturao do processo

PROCESSOS DE DESENVOLVIMENTO DE
SOFTWARE
RUP - Fases do ciclo de vida do software

O processo tem quatro fases:


Incio (Inception): definio do escopo do projeto
Elaborao (Elaboration): planejamento do projeto,
especificao das caractersticas e design da arquitetura
Construo (Construction): construo do produto
Transio (Transition): colocar em ao (deployment) para a
comunidade de usurios

PROCESSOS DE DESENVOLVIMENTO DE
SOFTWARE
RUP Iteraes do ciclo de vida do software

Uma iterao um ciclo completo de desenvolvimento


finalizando com uma verso (release) de um produto
executvel que um pedao incrementado no produto final
em desenvolvimento.

PROCESSOS DE DESENVOLVIMENTO DE
SOFTWARE
RUP Desenvolvimento iterativo

PROCESSOS DE DESENVOLVIMENTO DE
SOFTWARE
Praxis

desenhado
para
suportar
projetos
realizados
individualmente ou por pequenas equipes, com durao de seis
meses a um ano;
Abrange tanto mtodos tcnicos (requisitos, anlise, desenho,
testes e implementao, etc) quanto mtodos gerenciais
(gesto de requisitos, gesto de projetos, garantia da
qualidade, gesto de configuraes, etc);
Prope um ciclo de vida composto por fases que produzem
um conjunto precisamente definido de artefatos (documentos e
modelos);
Sua linguagem de modelagem a UML;
Reflete muitos elementos do Processo Unificado;
Assim como o RUP, um processo concreto, ou seja, contm

PROCESSOS DE DESENVOLVIMENTO DE
SOFTWARE
Work Breakdown Structure WBS (Estrutura Analtica
de Trabalho EAT)
O WBS um chek-list que identifica todas as partes do
projeto e as tarefas associadas.
pea central no planejamento de qualquer projeto.
Contm dois tipos de elementos:
Pacote Trabalho Corresponde a uma atividade que ser
atribuda a uma pessoa ou equipe.
Tarefa Resumo Corresponde a um agrupamento de
pacotes
de
trabalho.
Quando uma equipe recebe um pacote de trabalho, ela
poder listar o conjunto de atividades que precisam ser
executadas e distribuir estas atividades entre os membros
da equipe. O pacote de trabalho representa, ento, o menor

PROCESSOS DE DESENVOLVIMENTO DE
SOFTWARE
Work Breakdown Structure WBS (Estrutura Analtica de
Trabalho EAT)
Existem WBS padro para determinados tipos de projetos, que
podem servir como ponto de partida para a criao do WBS
especfico para o projeto, Exemplo: Engenharia Civil,
Aeronutica, Desenvolvimento de Software, etc.
O WBS para desenvolvimento de software pode ser baseado em
diferentes linguagens de modelagem (Anlise Essencial, UML,
etc) e diferentes metodologias de desenvolvimento (Rational
Unified Process - RUP, Praxis, etc).
O critrio de finalizao de uma tarefa pode ser definido atravs
das respostas s seguintes requisitos:
O que significa terminar esta tarefa? Como saber se tudo foi
feito corretamente?

PROCESSOS DE DESENVOLVIMENTO DE
SOFTWARE

Exemplo de WBS para desenvolvimento de software basead


Projeto de
Desenvolvimento
de Software

Requisitos do
Negcio

Modelo de
Negcio

Especificao

Implementao

Testes

Implantao

Modelo de
Caso de Uso

Camada de
Regras de Negcio

Modelo de
Testes

Banco de
Dados

Modelo de
Anlise

Camada de
Persistncia

Testes de
Integrao

Aplicaes
De Software

Modelo de
Designe

Camada de
Dados

Aplicaes de
Usurios

Modelo de
Implantao

Camada de
Interface com o
Usurio (GUI)

Treinamento

Modelo de
Implementao

Manual do
Usurio

PROCESSOS DE DESENVOLVIMENTO DE
SOFTWARE
Os processos essenciais a qualquer projeto esto
representados no diagrama de rede (ou diagrama de
precedncia) abaixo:

Planejamento
do Escopo
do Produto

Definio das
Atividades

Seqncia das
Atividades
Programao

Definio
do WBS

Planejamento
dos Recursos

Estimativas e
Duraes
Planejamento
Global
Estimativa
dos Custos

Planejamento
dos Riscos

Oramento
dos Riscos

PROCESSOS DE DESENVOLVIMENTO DE
SOFTWARE
Alm dos processos da figura anterior, alguns
projetos requerem tambm os processos auxiliares
abaixo:
Planejamento
da Qualidade

Planejamento
Organizacional

Contratao
de Pessoal

Planejamento
de Aquisies

Preparao da
Documentao

Planejamento
da
Comunicao

Identificao
dos Riscos

Anlise
Qualitativa

Anlise
Quantitativa

Planos de
Resposta ao
Risco

PROCESSOS DE DESENVOLVIMENTO DE
SOFTWARE
Planejamento do Escopo do Projeto
A entrada para este processo a descrio do produto
que ser produzido, ou do servio a ser executado pelo
projeto.
O escopo do produto no deve ser confundido com o
escopo do projeto. O escopo do projeto define o
conjunto de trabalhos que sero executados para
construir e entregar o produto.
Como o escopo do projeto descreve as principais
atividades a serem executadas, a base para a
elaborao do cronograma e do oramento.
Algumas vezes necessrio especificar o que o produto
no vai produzir, principalmente quando existe algo que

PROCESSOS DE DESENVOLVIMENTO DE
SOFTWARE
Processos podem ser definidos para:
Desenvolvimento de software
Manuteno de software
Aquisio de software
Contratao de software
Para cada um desses processos, pode-se definir sub
processos.

PROCESSOS DE DESENVOLVIMENTO DE
SOFTWARE

Embora
existam
vrias
ferramentas para ajudar as
organizaes a desenvolver
software com qualidade, a
maioria
das
organizaes
gasta
suas
energias
apagando incndios
O fogo est sob controle
Reao (e no agindo pr-ativamente)
No h tempo para melhoria

Os bombeiros se queimam
As cinzas podem voltar a se incendiar mais tarde
Sua nica forma de controle - preveno de
incndio

PROCESSOS DE DESENVOLVIMENTO DE
SOFTWARE
Referncias Bibliogrficas
Albuquerque, Antonio Roberto; Schiavo, Luciano. Uma viso de abordagem de desenvolvimento de
software do Rational Unified Process. Disponvel em <http://www.simpep.feb.unesp.br/Artigos
%20Apresentados.htm>. Acesso em 01/02/2005.
Hazan, Claudia. Implantao de um processo de medies de software. Disponvel em
http://www.bfpug.com.br/Artigos/Palestra%20_Medicoes%20Claudia%20Hazan.pdf . Acesso em
03/02/2005.
Leite,
Jair
C.
Processo
de
Desenvolvimento
de
Software.
<www.dimap.ufrn.br/~jair/ES/slides/Processo.pdf>. Acesso em 01/02/2005.

Disponvel

em

Martins, Jos Carlos Cordeiro. Gerenciando projetos de desenvolvimento de software com PMI, RUP
e UML. Rio de Janeiro: Brasport, 2004.
Paula Filho, Wilson de Pdua. Engenharia de Software Fundamentos, Mtodos e Padres. Rio de
Janeiro: LTC, 2003.
Ribeiro, Carlos Augusto. Apostila de Engenharia de Requisitos.
Souza, Isabel Fernandes de. Apostila de Engenharia de Sistemas de Informao Qualidade Parte
VIII.
Sommerville, Ian. Engenharia de Software. So Paulo: Pearson Education, 2003.
<http://www.ibm.com/br/products/software/rational/des.phtml>. Acesso em 03/02/2005.
<http://www.esicenter.unisinos.br/index.php?pg=frm_rumocmmi25.php>. Acesso em 03/02/2005.
<www.dimap.ufrn.br/~jair/ES/slides/rup.pdf> . Acesso em 01/03/2005.

Tpico 3 - Paradigmas do Desenvolvimento de


Software
Conceitos da Modelagem Estruturada
Conceitos da Modelagem Essencial
O Paradigma Orientado a Objetos
o Objetos e classes
o Relacionamentos entre objetos
o Abstrao
o Polimorfismo, Herana e Encapsulamento

PARADIGMAS DO DESENVOLVIMENTO DE
SOFTWARE
Consideraes sobre a Modelagem
A modelagem um tcnica de engenharia
aprovada e bem-aceita;
Um modelo uma simplificao da realidade;
Construmos modelos para compreender melhor o
sistema que estamos desenvolvendo;
Construmos modelos de sistemas complexos
porque no possvel compreend-los em sua
totalidade;
Um modelo expresso atravs de uma linguagem

Você também pode gostar