290 likes | 390 Views
PSBD II Projeto de Sistemas de Banco de Dados II. Rational Unified Process – Visão Geral. Um processo é um conjunto de passos parcialmen-te ordenados, com o objetivo de atingir uma meta
E N D
Rational Unified Process – Visão Geral • Um processo é um conjunto de passos parcialmen-te ordenados, com o objetivo de atingir uma meta • Na Engenharia de Software, a meta é entregar, de maneira eficiente e previsível, um produto de software capaz de atender às necessidades do negócio.
Rational Unified Process – Visão Geral RUP • é um processo de Engenharia de Software • oferece uma abordagem baseada em disciplinas para atribuir tarefas e responsabilidades • sua meta é garantir a produção de um software de qualidade que atenda às necessidades dos usuários, dentro de um cronograma e orçamento previsíveis. • é um processo iterativo
Rational Unified Process – Princípios Fundamentais • Dirigido por casos de uso • os casos de uso são a força condutora de todo o processo de desenvolvimento • Centrado em arquitetura • a arquitetura é a organização principal do sistema como um todo • Iterativo e incremental • uma iteração é um miniprojeto que resulta em uma versão liberada interna ou externamente (release)
RUP – Artefatos, Trabalhadores e Atividades • Artefato • qualquer porção significativa de informação interna ou a ser fornecida a interessados externos que desempenhe um papel no desenvolvimento do sistema. • Trabalhador • papel que um indivíduo pode desempenhar no projeto. • Atividade • tarefa que um trabalhador executa para produzir um artefato.
RUP – Fases e Iterações • Fase é o período de tempo entre dois importantes marcos de progresso do processo em que: • um conjunto bem definido de objetivos é alcançado, • artefatos são concluídos e • decisões são tomadas em relação à passagem para a fase seguinte • Uma iteração representa um ciclo completo de desenvolvimento, desde a captação dos requisitos na análise até a implementação e realização de testes, resultando na versão de um projeto executável.
RUP – Fases e Iterações • Em cada fase, ocorrem várias iterações. • O marco de progresso representa o ponto no tempo para avaliar como as metas foram alcançadas e se o projeto necessitará ser reestruturado de alguma maneira para prosseguir.
Rational Unified Process – Fases e Workflows Workflow do processo Workflow de suporte
RUP – Fase de Concepção • Objetivo • Estabelecer a viabilidade do sistema proposto • Tarefas a serem executadas • Definir o escopo do sistema • Esboçar uma arquitetura candidata • Identificar riscos críticos e determinar quando e como o projeto os abordará • Iniciar a análise econômica do projeto
RUP – Fase de Concepção • Marco “Objetivos do Ciclo de Vida” • Os principais interessados concordam com o escopo • A arquitetura candidata equaciona claramente um conjunto de requisitos de alto nível • A análise econômica é sólida o suficiente para justificar a continuidade do projeto
RUP – Fase de Elaboração • Objetivo • Estabelecer a capacidade para a construção de um novo sistema, dadas as restrições financeiras, de cronograma, etc. • Tarefas a serem executadas • Capturar a maioria dos requisitos funcionais válidos restantes • Expandir a arquitetura candidata em uma base arquitetônica (versão interna) • Abordar riscos significativos de forma contínua • Finalizar a análise econômica e preparar um plano para orientar a próxima fase
RUP – Fase de Elaboração • Marco “Arquitetura do Ciclo de Vida” • A maioria dos requisitos funcionais foi capturada no modelo de casos de uso • A base arquitetônica é um sistema pequeno e enxuto, que servirá como um alicerce sólido para o desenvolvimento progressivo do projeto • A análise econômica foi definida como viável e o plano da fase de Construção já foi elaborado
RUP – Fase de Construção • Objetivo • Construir um sistema capaz de operar bem em ambientes beta de clientes. • Tarefas a serem executadas • Tarefas que englobam a construção do sistema de modo interativo e incremental, de forma a garantir que a viabilidade do sistema está sempre evidente na forma executável
RUP – Fase de Construção • Marco “Capacidade Operacional Inicial” • Um conjunto de clientes beta tem um sistema operacional mais ou menos completo em suas mãos
RUP – Fase de Transição • Objetivo • Tornar disponível o sistema completamente funcional aos usuários (implantação). • Tarefas a serem executadas • Corrigir os defeitos e modificar o sistema para corrigir os problemas não identificados previamente.
RUP – Após a Fase de Transição • Verificar se os objetivos do ciclo de vida foram alcançados e determina se deverá iniciar outro ciclo de desenvolvimento. • Avaliar as lições aprendidas no projeto para aprimorar o processo de desenvolvimento a ser aplicado no próximo projeto. • A Concepção e a Elaboração abrangem as atividades de engenharia do ciclo de desenvolvimento. • A construção e a transição constituem a produção do ciclo de desenvolvimento.
RUP – Fluxos de Trabalho (Workflows) • Cada workflow representa um conjunto de atividades que os membros do projeto executam. • Seis workflows atravessam o conjunto das quatro fases: • Modelagem de negócios • Requisitos • Análise • Projeto • Implementação • Teste
RUP – Workflow Modelagem de Negócios • Descreve a estrutura e a dinâmica da empresa, garantindo que clientes, usuários e desenvolvedores tenham a mesma visão da organização para a qual o sistema será desenvolvido.
RUP – Workflow Requisitos • Objetivo: capturar os requisitos do sistema a ser desenvolvido • Construir • modelo de casos de uso para captura os requisitos funcionais do sistema • protótipo de interface • O modelo de casos de uso é a base para qualquer outra atividade dentro do processo de desenvolvimento • A maior dificuldade nesta etapa é capturar requisitos de forma que clientes possam entender claramente o que o sistema se propõe a fazer
RUP – Workflow Análise • Objetivo: compreender mais precisamente os casos de uso definidos no Modelo de Casos de Uso do workflow de Requisitos. • Os casos de uso são refinados e estruturados do ponto de vista dos desenvolvedores. • O Modelo de análise é composto basicamente por: • diagrama de classes • diagramas de colaboração • uma descrição arquitetural do modelo de análise, definindo e descrevendo os artefatos significativos e relevantes do modelo de análise.
RUP – Workflow Projeto • Objetivo: produzir um modelo já voltado para a implementação. • Os níveis de detalhes para cada realização de casos de uso, bem como descrições de classes, são aprofundados. • São desenvolvidos: • novos diagramas de classes, criados a partir da reestruturação das classes e realização de casos de uso do modelo de análise. • diagramas de Seqüência • casos de uso são agrupados em Subsistemas
RUP – Workflow Implementação • Desenvolve-se tudo o que for necessário para produzir um sistema executável: os componentes executáveis, arquivos, tabelas (base de dados), etc. • Os componentes do modelo de implementação são desenvolvidos a partir dos elementos do modelo de projeto (classes), descrevendo-se como estes elementos são implementados em termos de arquivos de código fonte, executáveis e outros. • Leva em consideração o desenvolvimento do software, os testes unitários e teste de integração. • Os componentes são organizados de acordo com os mecanismos de estruturação e modularização disponíveis no ambiente de implementação e na linguagem de programação utilizada.
RUP – Workflow Teste • Objetivo: criar o modelo de testes, o qual descreve como os testes de sistema e de integração são realizados sobre o modelo de implementação. • O modelo de testes é composto por: • casos de teste, • procedimentos de teste e • componentes de teste. • Os casos de teste fundamentam-se em casos de uso. • Um procedimento de teste especifica como realizar um ou vários casos de teste ou partes deles.
RUP – Exercício • Considere um projeto cuja duração total estimada é de 20 semanas e a duração relativa de cada fase é a mostrada na tabela acima. • defina a duração de cada iteração e o número total de iterações para o projeto em questão • elabore um cronograma mostrando as fases do RUP e as iterações dentro de cada fase • que atividades mais se concentram em cada fase? • descreva o trabalho da equipe durante a primeira iteração • descreva o trabalho da equipe durante a segunda iteração e iterações seguintes • que artefatos são entregues ao final da fase de concepção? • e ao final da fase de construção? • descreva como os fluxos de atividades são exercitados em cada fase • que fase demanda maior esforço de programação? • que fase demanda maior esforço de elaboração de casos de uso?
RUP – Questões para discussões • Descreva os papeis dentro do RUP