Escolar Documentos
Profissional Documentos
Cultura Documentos
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
PROCESSOS DE DESENVOLVIMENTO DE
SOFTWARE
RUP Iteraes do ciclo de vida do software
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
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.
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