Baixe o app para aproveitar ainda mais
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
Compartilhar