ENGENHARIA DE SOFTWARE
Engenharia de Software - RUP
Viu algum erro neste material? Contate-nos em: degravacoes@[Link]
ENGENHARIA DE SOFTWARE - RUP
ENGENHARIA DE SOFTWARE – RUP, PROCESSO UNIFICADO
PROCESSO UNIFICADO
• Processo de software “dirigido a casos práticos, centrado na arquitetura, iterativo
e incremental”, desenvolvido como uma metodologia para os métodos e ferramen-
tas da UML.
Obs.: � A o compreender o conteúdo de UML, será possível projetar o software
adequadamente.
• O Processo Unificado é, algumas vezes, chamado de Processo Unificado Racional -
RUP (Rational Unified Process) em homenagem a Rational Corporation (posterior-
mente adquirida pela IBM).
• Um dos primeiros contribuidores para o desenvolvimento e refinamento do PU é um
desenvolvedor de ambientes completos (ferramentas e tecnologia) que dão suporte
ao processo.
[Link] 1
ENGENHARIA DE SOFTWARE
Engenharia de Software - RUP
Viu algum erro neste material? Contate-nos em: degravacoes@[Link]
Obs.: O processo unificado corresponde a um processo voltado à entrega de software.
É importante destacar que o desenvolvimento ágil não é centrado na arquitetura, e
sim em resolver MVP.
Características
• Usa orientação a objetos em sua concepção e é projetado e documentado utili-
zando a notação UML (Unified Modeling Language).
Obs.: A UML corresponde a uma linguagem de modelagem que é independente de
linguagem de programação e de processos.
5m
• Processo considerado pesado e preferencialmente aplicável a grandes equipes.
• Pelo fato de ser amplamente customizável, torna possível que seja adaptado para
projetos de qualquer escala.
• Modular e automatizado. Sendo apoiado por ferramentas de desenvolvimento inte-
gradas da IBM.
MÉTODOS CONCORRENTES DO RUP
• “Cleanroom” (considerado pesado), Primeira BIOS para PC.
Obs.: O “Cleanroom” corresponde à ideia de separar as equipes, cabendo destacar que
uma equipe não podia saber do que a outra fazia.
• Métodos Ágeis (leves) como a Programação Extrema (XP-Extreme Programming),
Scrum, FDD e outros.
LINHAS MESTRAS
• Gestão de requisitos
• Uso de arquitetura baseada em componentes
• Uso de software de modelos visuais
• Verificação da qualidade do software
• Gestão e controle de mudanças do software
Obs.: Verificação ≠ Validação.
10m
A verificação está relacionada ao processo, enquanto a validação está relacionada
ao produto.
[Link] 2
ENGENHARIA DE SOFTWARE
Engenharia de Software - RUP
Viu algum erro neste material? Contate-nos em: degravacoes@[Link]
FASES
• Linhas mestras são gerais a serem utilizadas ao percorrer o ciclo de vida de um projeto.
• As fases indicam a ênfase que é dada no projeto em um dado instante.
• Para capturar a dimensão do tempo de um projeto, o RUP divide o projeto em quatro
fases diferentes:
– Iniciação ou Concepção: ênfase no escopo do sistema;
– Elaboração: ênfase na arquitetura;
– Construção: ênfase no desenvolvimento;
– Transição: ênfase na implantação.
GRÁFICO DE BALEIAS
Obs.: Design = projeto.
Observa-se que gráfico de baleia é responsável por demonstrar a intensidade de
uma determinada disciplina.
[Link] 3
ENGENHARIA DE SOFTWARE
Engenharia de Software - RUP
Viu algum erro neste material? Contate-nos em: degravacoes@[Link]
PHASES
15m
• Inception pode ser entendido como Iniciação ou Concepção.
• Algumas questões fazem essa confusão para tentar levar o candidato ao erro.
• Seis (6) disciplinas de engenharia de software e três (3) de apoio/suporte.
DISCIPLINAS
ENGENHARIA DE SOFTWARE
• Modelagem de Negócios
• Requisitos
• Análise e Projeto (“Design”)
• Implementação
• Teste
• Implantação
[Link] 4
ENGENHARIA DE SOFTWARE
Engenharia de Software - RUP
Viu algum erro neste material? Contate-nos em: degravacoes@[Link]
APOIO/SUPORTE
• Configuração e Gerência de Mudança
• Gerência de Projeto
• Ambiente
4 PS
FUNCIONAMENTO
• As fases são compostas de iterações.
• As iterações são janelas de tempo.
• As iterações possuem prazo definido enquanto as fases são objetivas.
• Todas as fases geram artefatos. Estes serão utilizados nas próximas fases e docu-
mentam o projeto, além de permitir melhor acompanhamento.
PRINCÍPIOS E MELHORES PRÁTICAS
• Desenvolvimento de software iterativo.
• Gerenciamento de requisitos.
• Uso de arquitetura baseada em componente.
• Modelagem visual de software.
• Verificação da qualidade do software.
• Controle de alteração no software.
ITERATIVO E INCREMENTAL
• A integração é feita passo a passo durante o processo de desenvolvimento, limitan-
do-se cada passo a poucos elementos.
• A integração é menos complexa, reduzindo seu custo e aumentando sua eficiência.
[Link] 5
ENGENHARIA DE SOFTWARE
Engenharia de Software - RUP
Viu algum erro neste material? Contate-nos em: degravacoes@[Link]
• Partes separadas de projeto e/ou implementação podem ser facilmente identifica-
das para posterior reuso.
• Mudanças de requisitos são registradas e podem ser acomodadas.
• Os riscos são abordados no início do desenvolvimento e cada iteração permite a
verificação de riscos já percebidos, bem como a identificação de novos.
20m
• A arquitetura de software é melhorada através de um exame repetitivo dos
artefatos.
1. (2019/FCC/SEMEF/MANAUS/AM/ASSISTENTE TÉCNICO DE TECNOLOGIA DA INFORMAÇÃO
DA FAZENDA MUNICIPAL/PROGRAMADOR)
Considerando o uso do RUP (Rational Unified Process), deve-se considerar que, segundo
essa técnica:
a. a disciplina Modelagem de Negócio apresenta maior atividade na fase de Construção.
b. o número de iterações em cada uma de suas quatro fases é variável, conforme o projeto.
c. a disciplina Requisitos apresenta menor atividade na fase de Concepção (Inception).
d. a disciplina de Teste não é executada na fase de Elaboração.
e. a disciplina Configuração e Gerenciamento de Mudanças não é executada na fase de
Elaboração.
Considerando o uso do RUP, deve-se ter em conta que o número de iterações em cada uma
de suas quatro fases é variável, conforme o projeto.
A disciplina de teste é executada na fase de elaboração.
25m
[Link] 6
ENGENHARIA DE SOFTWARE
Engenharia de Software - RUP
Viu algum erro neste material? Contate-nos em: degravacoes@[Link]
2. (2019/CESPE/SLU-DF/ANALISTA DE GESTÃO DE RESÍDUOS SÓLIDOS/INFORMÁTICA)
Acerca de conceitos e disciplinas da engenharia de software, julgue o item que se segue:
No processo unificado, requisitos é a disciplina que demanda maior esforço nas fases de
elaboração e construção de software.
No processo unificado, requisitos não são a disciplina que demanda maior esforço nas fases
de elaboração e construção de software.
3. (2016/FCC/CREMESP/ANALISTA DE TECNOLOGIA DA INFORMAÇÃO/ANÁLISE
DE SISTEMAS)
Considere que um Analista de Sistemas sugeriu a implementação de um novo projeto com
base em um processo de software que organiza suas iterações em quatro fases principais:
1) Concepção: levantar, de forma genérica e pouco precisa, o escopo do projeto. O
objetivo é ter uma visão inicial do problema, estimar esforço e prazos e determi-
nar se o projeto é viável e merece uma análise mais profunda.
2) Elaboração: levantar todos, ou a maior parte dos requisitos. Em uma primeira
iteração alguns requisitos, de maior risco e valor arquitetural, são especificados
em detalhes, implementados e servem como base de avaliação junto ao usuário
e desenvolvedores para o planejamento da próxima iteração. Ao fim da fase, 90%
[Link] 7
ENGENHARIA DE SOFTWARE
Engenharia de Software - RUP
Viu algum erro neste material? Contate-nos em: degravacoes@[Link]
dos requisitos devem ter sido levantados em detalhes, o núcleo do sistema deve
ter sido implementado com alta qualidade, os principais riscos devem ter sido
tratados, podendo-se fazer estimativas mais realistas.
3) Construção: implementar, de forma iterativa, os elementos restantes de menor
risco e mais fáceis e preparação para a implantação.
4) Transição: realizar testes finais e implantação.
O processo de software indicado pelo Analista é o
a. Desenvolvimento Concorrente.
b. Rapid Application Development − RAD.
c. Processo Unificado.
d. Espiral.
e. Baseado em Componentes.
30m
GABARITO
1. b
2. E
3. c
�Este material foi elaborado pela equipe pedagógica do Gran Concursos de acordo com a aula
preparada e ministrada pelo professor Washington Henrique Almeida.
A presente degravação tem como objetivo auxiliar no acompanhamento e na revisão do con-
teúdo ministrado na videoaula. Não recomendamos a substituição do estudo em vídeo pela lei-
tura exclusiva deste material.
[Link] 8