Buscar

Aula_10 - Processo Unificado de Desenv de SW

Prévia do material em texto

PROCESSOS DE DESENVOLVIMENTO DE SOFTWARE
Aula 10 – Processo Unificado de Desenvolvimento de Software
Processo Unificado de Desenvolvimento de Software – Aula 10
PROCESSOS DE DESENVOLVIMENTO DE SOFTWARE
 
 
O Processo Unificado surgiu da necessidade de um processo de engenharia de software para construção de sistemas OO
É um processo iterativo e incremental, na medida em que está baseado em refinamentos e incrementos sucessivos que convergem para um produto bem formatado.
Em cada iteração 
Incrementa-se o sistema com base na expertise obtida nas iterações anteriores e no feedback do usuário.
É definido um pequeno conjunto de requisitos, que são projetados, implementados e testados (pelos usuários), o que traz feedback rápido dos usuários e desenvolvedores.
Se tem a chance de modificar ou adaptar a compreensão dos requisitos
DEFININDO
Processo Unificado de Desenvolvimento de Software – Aula 10
PROCESSOS DE DESENVOLVIMENTO DE SOFTWARE
 
 
RUP – Rational Unified Process – Processo unificado desenvolvido pela empresa Rational, depois comprado pelo IBM e batizado de IRUP (IBM Rational Unified Process)
Baseado em Orientação a Objeto, especificamente dirigido por casos de uso  comportamento do sistema e comunicação entre os participantes do projeto
Baseado na UML (Unified Modelling Language)
Centrado na arquitetura baseada em componentes.
Adequado a projetos de SW de maior complexidade
DEFININDO
Processo Unificado de Desenvolvimento de Software – Aula 10
PROCESSOS DE DESENVOLVIMENTO DE SOFTWARE
 
 
Um dos pilares do RUP é a incorporação de “boas práticas” que visam reduzir o risco e tornar o desenvolvimento mais eficiente.
As Boas Práticas são:
Desenvolver iterativamente (requisitos vão sendo entendidos e refinados durante o processo)
Gerenciar Requisitos
Utilizar arquitetura baseada em componentes
Modelar SW visualmente
Aferição contínua de qualidade do SW
Controlar de mudanças do Software
DEFININDO
Processo Unificado de Desenvolvimento de Software – Aula 10
PROCESSOS DE DESENVOLVIMENTO DE SOFTWARE
 
 
As boas práticas são entrelaçadas em quatro definições
Funções: conjunto de atividades
Disciplinas: áreas de esforço na engenharia de SW
Atividades: definições de como os artefatos são construídos e avaliados
Artefatos: resultados do trabalho produzido e avaliado.
RUP divide o trabalho em 4 fases:
Concepção: definição do escopo do projeto
Elaboração: elaboração básica do software
Construção: implementação e testes
Transição: implantação
DEFININDO 
Processo Unificado de Desenvolvimento de Software – Aula 10
PROCESSOS DE DESENVOLVIMENTO DE SOFTWARE
 
 
DEFININDO ****
Processo Unificado de Desenvolvimento de Software – Aula 10
PROCESSOS DE DESENVOLVIMENTO DE SOFTWARE
 
 
2 dimensões
 Eixo horizontal
Representa o TEMPO
Mostra os aspectos do ciclo de vida a medida que se desenvolve: FASES E ITERAÇÕES
 Eixo vertical
Representa as DISCIPLINAS, que agrupam as atividades. 
A METODOLOGIA RUP
Processo Unificado de Desenvolvimento de Software – Aula 10
PROCESSOS DE DESENVOLVIMENTO DE SOFTWARE
 
 
Desenvolver iterativamente :planejar os incrementos de software com base nas prioridades do cliente e desenvolver e entregar o mais cedo possível às de de maior prioridade
Gerenciar Requisitos: documentar os requisitos, acompanhar as mudanças, analisando-as antes de aceitar.
Utilizar arquitetura baseada em componentes: Reduzir a quantidade de software a ser desenvolvido, custos e riscos
Modelar SW visualmente: Usar modelos da UML
Aferição contínua de qualidade do SW: Garantir que atenda aos padrões de qualidade da empresa
Controlar de mudanças do Software: usar um sistema de gerenciamento de mudanças
AS BOAS PRÁTICAS DO RUP
Processo Unificado de Desenvolvimento de Software – Aula 10
PROCESSOS DE DESENVOLVIMENTO DE SOFTWARE
 
 
AS FASES DO RUP
Processo Unificado de Desenvolvimento de Software – Aula 10
PROCESSOS DE DESENVOLVIMENTO DE SOFTWARE
 
 
Concepção :Estudo de Viabilidade + parte da análise de Requisitos 
Levantar os principais requisitos e compreender o sistema de forma abrangente
Elaboração: Maior parte da análise dos requisitos: análise de domínio (Casos de Uso) e o projeto (arquitetura do sistema). Ao final da fase deveremos ter:
Modelo de requisitos do sistema
Descrição da arquitetura do SW (componentes)
Plano de desenvolvimento do SE
Construção: Essencialmente envolve a programação e testes.
Transição: Implantação no usuário, de um SW pronto e documentado (manuais)
AS FASES DO RUP
Processo Unificado de Desenvolvimento de Software – Aula 10
PROCESSOS DE DESENVOLVIMENTO DE SOFTWARE
 
 
As fases de Elaboração e Construção ocorrem dentro dos ciclos iterativos
A cada ciclo iterativo, um conjunto de requisitos.
Análise/Projeto (elaboração) e Desenvolvimento e testes
AS FASES DO RUP
Processo Unificado de Desenvolvimento de Software – Aula 10
PROCESSOS DE DESENVOLVIMENTO DE SOFTWARE
 
 
AS FASES DO RUP
Processo Unificado de Desenvolvimento de Software – Aula 10
PROCESSOS DE DESENVOLVIMENTO DE SOFTWARE
 
 
AS FASES DO RUP
Processo Unificado de Desenvolvimento de Software – Aula 10
PROCESSOS DE DESENVOLVIMENTO DE SOFTWARE
AS DISCIPLINAS (WORKFLOW) DO RUP
 
 
Modelagem do negócio: processos de negócio são modelado
Requisitos: Os agentes que interagem com o sistema são identificados e os requisitos modelados em casos de uso
Análise e Projeto: Um modelo de projeto é criado e documentado usando modelos de arquitetura, modelos de componente, modelos de objetos e modelos de sequencia (UML)
Implementação: Os componentes de sistema são implementados e estruturados em subsistemas
Teste: Realizado em conjunto com a implementação. O teste de sistema segue o término da implementação
Implantação: Uma versão do produto é criada e implantada (instalação e treinamento). Variante: teste de sistema
Processo Unificado de Desenvolvimento de Software – Aula 10
PROCESSOS DE DESENVOLVIMENTO DE SOFTWARE
AS DISCIPLINAS (WORKFLOW) DO RUP
 
 
Gerenciamento de Configuração e mudança: Apoia e gerencia as mudanças no sistema
Gerenciamento de Projetos: Apoia o gerenciamento do sistema, usando boas práticas de projeto (PMBOK é uma delas).
Ambiente: Disponibilizar ferramentas apropriadas de SW para a equipe de desenvolvimento.
Processo Unificado de Desenvolvimento de Software – Aula 10
PROCESSOS DE DESENVOLVIMENTO DE SOFTWARE
FUNCIONAMENTO
 
 
O PU consiste num conjunto de ciclos (sequencia das 4 fases) durante a vida do sistema
Cada ciclo compreende a versão do produto e é subdivido nas 4 fases
Cada fase é dividida em iterações que passam por todas as disciplinas ou workflow (ou fluxos de trabalho).
Vamos exemplificar com a disciplina REQUISITOS
O Modelo de Casos de Uso é desenvolvido em vários incrementos, onde as iterações irão adicionar novos casos de uso e/ou novos detalhes as descrições dos casos de uso.
Processo Unificado de Desenvolvimento de Software – Aula 10
PROCESSOS DE DESENVOLVIMENTO DE SOFTWARE
FUNCIONAMENTO – DISCIPLINA DE REQUISITOS
 
 
Casos de Uso
Concepção: identificados os mais relevantes , delimitando domínio do sistema
Elaboração: A maioria dos requisitos é capturada e formatada no diagrama de caso de uso e devidamente especificados. Ao final dessa fase, preve-se 80% dos casos de uso. Vejamos o desenho e observe a maioria nessa fase
Os requisitos que sobram são capturados e implementados durante a construção
Na fase de Transição, basicamente, existirão capturas de casos de uso na medida em que ocorrem mudanças
Processo Unificado de Desenvolvimento de Software – Aula 10
PROCESSOS DE DESENVOLVIMENTO DE SOFTWARE
FUNCIONAMENTO
 
 
Processo Unificado de Desenvolvimento de Software – Aula 10
PROCESSOS DE DESENVOLVIMENTO DE SOFTWARE
FUNCIONAMENTO – DISCIPLINA DE ANÁLISEO produto resultando é o modelo de análise (diagramas UML)
Refinar os requisitos para construir o diagrama conceitual de classes, e em seguida: diagramas de interações (sequencia, colaboração) e estados.
O fluxo de análise tem maior importância na fase de ELABORAçÃO.
O modelo de analise cresce incrementalmente na medida em que os casos de uso são analisados.
Para cada ITERAÇÂO, seleciona-se os casos de uso que serão realizados no modelo de análise.
O modelo de Projeto será construído com base no modelo de análise e descreverá o sistema num nível físico (linguagens, SO, bancos de dados, interfaces com usuários...).
Processo Unificado de Desenvolvimento de Software – Aula 10
PROCESSOS DE DESENVOLVIMENTO DE SOFTWARE
FUNCIONAMENTO
 
 
Processo Unificado de Desenvolvimento de Software – Aula 10
PROCESSOS DE DESENVOLVIMENTO DE SOFTWARE
CONCLUSÕES – RUP ou IRUP
 
 
Foi criado para ser um processo ágil de desenvolvimento e prega uma abordagem realística para a condução de um projeto. 
No RUP as atividades (disciplinas) são repetidas quantas vezes forem preciso, em ciclos organizados. 
Não há um plano detalhado para todo um projeto. Há um plano de alto nível (chamado Plano de Fases) que estima a data de término do projeto e outros marcos de referência principais. 
Um plano detalhado (chamado Plano de Iterações) somente planeja a iteração a ser feita em seguida. 
O planejamento detalhado é feito de forma adaptativa, de iteração para iteração. 
Processo Unificado de Desenvolvimento de Software – Aula 10
PROCESSOS DE DESENVOLVIMENTO DE SOFTWARE
VARIAÇÕES NA REALIZAÇÃO (SEM A MODELAGEM DE NEGÓCIOS)
Processo Unificado de Desenvolvimento de Software – Aula 10
PROCESSOS DE DESENVOLVIMENTO DE SOFTWARE
PRINCIPAIS CONCEITOS APRESENTADOS NA AULA.
O RUP e suas características: iterativo e incremental
Trabalha em conjunto com a UML
Base: Boas práticas (6)
Desenvolver iterativamente, Gerenciar Requisitos, Utilizar arquitetura baseada em componentes, Modelar SW visualmente, Aferição contínua de qualidade do SW e Controlar de mudanças do Software
Base: Iterações, Fases (4) e as Disciplinas (9)
Fases: Concepção, Elaboração, Construção e Transição.
Disciplinas: Modelagem do negócio, Requisitos, Análise e Projeto, Implementação, Testes, Implantação, Gerenciamento e Configuração de Mudança, Gerenciamento de Projetos, Ambiente

Continue navegando